代码签名

Adobe AIR 要求所有 AIR 应用程序都需要进行数字签名。代码签名是一种数字签名代码过程,用于确保软件和发布者身份的完整性。开发人员可以通过证书颁发机构 (CA) 颁发的证书或构建自签名证书对 AIR 应用程序进行签名。

使用公认的证书颁发机构 (CA) 颁发的证书对 AIR 文件进行数字签名,可以向用户提供重要保证:他们正在安装的应用程序没有被意外或恶意更改。使用公认的证书颁发机构 (CA) 颁发的证书对 AIR 文件进行数字签名还可以将开发人员标识为签名者(发布者)。AIR 可识别由 Verisign 和 Thawte 证书颁发机构颁发的代码签名证书。如果开发人员已使用 Verisign 或 Thawte 证书对 AIR 文件进行签名,则 AIR 应用程序安装程序在安装过程中将显示发布者名称。

如果 AIR 应用程序已使用可信证书签名,或者所使用的签名证书链接到安装计算机上的可信证书,则 AIR 应用程序安装程序在安装过程中将显示发布者名称。证书颁发机构 (CA) 在颁发高可靠性证书之前,将使用已建立的验证过程对发布者或开发人员的身份进行验证。

开发人员还可以使用他们自己创建的自签名证书对 AIR 应用程序进行签名。但是,AIR 应用程序安装程序会将这些应用程序表示为来自未经验证的发布者。

对 AIR 文件进行签名后,安装文件中将包含一个数字签名。此签名包括程序包的摘要,用于证实 AIR 文件自签名以来未经修改;此签名还包括有关签名证书的信息,用于证实发行商身份。

AIR 使用的公钥基础结构 (PKI) 通过操作系统的证书存储支持。安装 AIR 应用程序的计算机必须直接信任用于对 AIR 应用程序签名的证书,或者该计算机必须信任将证书链接到可信证书颁发机构的证书链,以便验证发布者信息。

如果 AIR 文件用未链至其中一个受信根证书(通常,这些证书包括所有自签名证书)的证书进行签名,则无法核实发行商信息。尽管 AIR 可以确定该 AIR 文件自签名后没有被更改,但无法验证实际创建和签署该文件的人员。

有关代码签名过程和认可的证书格式的详细信息,请参阅开发人员文档。

使用桌面本机安装程序的代码签名

将应用程序打包成本机安装程序时,可以选择应用本机代码签名。只有 Windows 支持本机代码签名。请参阅 MSDN: Introduction to Code Signing

移动平台上的代码签名

在移动平台上,根据平台约定和要求对 AIR 应用程序进行签名。开发人员使用 AIR SDK 中的工具和满足移动平台要求的证书对其应用程序进行签名。移动 AIR 应用程序的安装由设备操作系统处理,而不是由 AIR 运行时处理。因此,AIR 不会对应用程序签名或证书持有者身份进行验证。