2013-02-23 55 views
2

我需要簽署本機安裝程序的Adobe AIR應用程序。現在我只有Windows版本,但很快我會將它移植到其他操作系統,包括移動操作系統。我應該爲Adobe AIR應用程序獲取哪些代碼簽名證書(.exe,.dmg,.deb,.rpm)

我的查詢是我是否需要爲每一個獲得單獨的代碼簽名證書還是足夠?還有32位和64位的問題嗎?

Verisign已分別爲Windows(.exe)和Adobe AIR(01​​和.airi)分類證書。我應該得到哪一個?

回答

2

銷售代碼簽名證書的CA始終假裝您需要不同的證書來簽署不同類型的應用程序。這基本上是一個騙局。大多數時候證書完全一樣,只有文件格式可能不同。即使您的代碼簽名工具不支持文件格式,也可以在不同格式之間進行轉換。所以基本上你購買哪種證書並不重要。

如果您將AIR應用程序與捕捉運行時打包在一起,則可以使用adt工具簡單地使用自簽名證書。以後只需簽署使用adt和您的安裝程序創建的可執行文件就非常重要。如果您直接使用adt創建本機安裝程序,請使用代碼簽名選項提供您的證書。

在Windows下,如果要使用捕獲運行時進行打包,則應使用Microsoft的signtool實用程序來簽署應用程序的.exe文件和安裝程序。所以我會選擇Windows的代碼簽名證書。但正如我所說,這並不重要(並且有比Verisign更便宜的選項)。

在Mac OS X(「Gatekeeper」)下,情況稍有不同。您只能使用Apple頒發的證書。您必須註冊「Mac Developer Program」(每年99美元)才能獲得OS X的代碼簽名證書。如果您使用Captive運行時,請使用codesign實用程序對使用adt創建的應用程序包進行簽名。如果您創建.pkg安裝程序,請使用productbuild工具的--sign選項。 iOS應用程序有一個類似的「iOS開發人員計劃」。

在Linux下,您不會使用CA頒發的證書對軟件包進行簽名。您只需使用您可以免費創建的GPG密鑰簽名即可。您必須發佈您的公共GPG密鑰,以便您的客戶可以確保您的軟件包有效。

對於Android應用程序,您可以簡單地使用自簽名證書AFAIK。

32位和64位應用程序的簽名方式完全相同。你不需要單獨的證書。但adt只會創建32位應用程序。

相關問題