关于AIR代码签名及发布者标识符的相关介绍

代理客
• 阅读 465

使用由公认的证书颁发机构 (CA) 颁发的代码签名证书对您的AIR安装文件进行数字签名可以向您的用户提供重要保证,即他们正在安装的应用程序没有被意外或恶意更改,并将您标识为签名者(发布者)。

一、关于 AIR 代码签名

对AIR文件进行签名时,安装文件中会包含一个数字签名。签名包括包的摘要,用于验证AIR文件自签名后是否未被更改,它包括有关签名证书的信息,用于验证发布者身份。

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

如果AIR文件使用的证书未链接到受信任的根证书之一(通常这包括所有自签名证书),则无法验证发布者信息。虽然AIR可以确定AIR包自签名以来没有被更改,但无法知道谁实际创建并签署了文件。

所以一定要选择可信的代码签名证书品牌,如Comodo、DigiCert等。

二、关于 AIR 发布者标识符

重要提示: 从AIR1.5.3开始,发布者ID已弃用,不再根据代码签名证书计算。新应用程序不需要也不应该使用发布者ID。更新现有应用程序时,您必须在应用程序描述符文件中指定原始发布者ID。

在AIR1.5.3之前,AIR应用程序安装程序会在安装AIR文件期间生成发布者ID。这是用于签署AIR文件的证书的唯一标识符。如果您为多个AIR应用程序重复使用相同的证书,它们会收到相同的发布者ID。使用不同的证书签署应用程序更新,有时甚至更新原始证书实例会更改发布者ID。

在AIR 1.5.3及更高版本中,发布者ID不是由AIR分配的。使用AIR 1.5.3发布的应用程序可以在应用程序描述符中指定发布者 ID 字符串。您应该只在为最初为1.5.3之前的AIR版本发布的应用程序发布更新时指定发布者ID。如果您未在应用程序描述符中指定原始ID,则新的AIR包不会被视为现有应用程序的更新。

要确定原始发布者ID,请找到出版商编号安装原始应用程序的META-INF/AIR 子目录中的文件。此文件中的字符串是发布者ID。您的应用程序描述符必须在应用程序描述符文件的命名空间声明中指定AIR 1.5.3运行时(或更高版本),以便手动指定发布者ID。

发布者ID(如果存在)用于以下目的:

作为加密本地存储的加密密钥的一部分

作为应用程序存储目录路径的一部分

作为本地连接的连接字符串的一部分

作为身份字符串的一部分,用于通过 AIR 浏览器内API调用应用程序

作为OSID的一部分(在创建自定义安装/卸载程序时使用)

当发布者ID更改时,依赖ID的任何AIR功能的行为也会更改。例如,无法再访问现有加密本地存储中的数据,并且任何与应用程序创建本地连接的Flash或AIR实例都必须使用连接字符串中的新ID。已安装应用程序的发布者ID在AIR1.5.3 或更高版本中无法更改。如果在发布AIR包时使用不同的发布者ID,安装程序会将新包视为不同的应用程序而不是更新。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
java访问Https服务的客户端示例
关于证书1、每个人都可以使用一些证书生成工具为自己的https站点生成证书(比如JDK的keytool),大家称它为“自签名证书”,但是自己生成的证书是不被浏览器承认的,所以浏览器会报安全提示,要求你手动安装证书,提示风险,是否继续等。只有通过权威的CA机构付费获得的证书才能被浏览器承认。2、证书(无客户端服务端之分)保存着IP信息、证书过
Stella981 Stella981
3年前
Linux CA
CA(CertificateAuthority)证书颁发机构主要负责证书的颁发、管理以及归档和吊销。证书内包含了拥有证书者的姓名、地址、电子邮件帐号、公钥、证书有效期、发放证书的CA、CA的数字签名等信息。证书主要有三大功能:加密、签名、身份验证。1.什么是CA认证?CA认证,即CA认证机构,为电子签名相关各方提供真实性、可靠性验证
Wesley13 Wesley13
3年前
JAVA_RSA_的加解密
RSA为非对称加密算法。数字签名的过程:1、对明文数据进行HASH加密,不可逆;2、对加密后的数据再用RSA的私钥进行二次加密。数字签名的验证过程:1、对明文数据进行HASH加密,不可逆;2、用RSA的公钥对数字签名后的数据进行解密;3、把1的结果和2的结果进行比较是否相等。RSA加密的过程和解密的过程都需要三步:加/解密、分组、填充。这三部分每
Easter79 Easter79
3年前
SSL Certificate Signed Using Weak Hashing Algorithm 和SSL Medium Strength Cipher Suites Supported的...
这两天有个项目被扫描器报了几个中危,都是SSL证书的问题。记录一下解决方案吧。第一个问题:SSLCertificateSignedUsingWeakHashingAlgorithm这里的原因是因为使用弱算法签名的证书。解决方案查了下总结下来是换算法。操作步骤:  1、从证书颁发机构安装服务器的身份验证证书  2、在注册表H
Stella981 Stella981
3年前
SSL Certificate Signed Using Weak Hashing Algorithm 和SSL Medium Strength Cipher Suites Supported的...
这两天有个项目被扫描器报了几个中危,都是SSL证书的问题。记录一下解决方案吧。第一个问题:SSLCertificateSignedUsingWeakHashingAlgorithm这里的原因是因为使用弱算法签名的证书。解决方案查了下总结下来是换算法。操作步骤:  1、从证书颁发机构安装服务器的身份验证证书  2、在注册表H
Wesley13 Wesley13
3年前
Java基础学习总结(16)——Java制作证书的工具keytool用法总结
一、keytool的概念  keytool是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。在JDK 1.4以后的版本中都包含了这一工具,它的位置为%JAVA\_HOME%\\bin\\keytool.exe,如下图所示:
Wesley13 Wesley13
3年前
VC++网络安全编程范例(2)
数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。每个用户自己设定一把特定的仅为本人所知的私有密钥(私钥),用它进行解密和签名;同时设定一把公共密钥(公钥)并由本人公开,为一组用户所共享,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样信息就可以安全无误地到达目的地了。通过数字的手段
Stella981 Stella981
3年前
Node.js 中使用 ECDSA 签名遇到的坑
文/Fenying最近有个朋友问我关于Node.js下使用ECDSA的问题,主要是使用Node.js的Crypto模块无法校验网络传输过来的签名结果。在踩坑无数后,终于搞清楚了原因。坑0x00:签名输出格式在排除了证书、消息不一致的可能之后,我开始对比使用Node.js签名的结果与网络传输过来的签
Wesley13 Wesley13
3年前
Exchange Server 的OWA 邮件签名大小限制
随着电子邮件的普及应用,五花八门的邮件签名也随着每个人的创意诞生了。作为ExchangeServer的客户端访问方式之一,OWA也同样提供了邮件签名的设置选项。但是,有时用户会发现,当他想在OWA中为自己的邮箱设定一个COOL的邮件签名时,有可能会得到“未保存您的更改,因为电子邮件签名过大。请使用较小的格式。”这样的错误。为什么?原来OWA邮件签名大小也
融云IM即时通讯 融云IM即时通讯
6个月前
融云IM干货丨如何为App Key配置HTTPS证书?
为AppKey配置HTTPS证书主要涉及以下几个步骤:生成密钥对和自签名证书:使用openssl工具生成密钥对和自签名证书,这是配置HTTPS的基础。可以通过以下命令生成:opensslgenrsaoutmykey.pem2048opensslreqnew
网页防篡改技术:保护网站安全与完整性的关键
页防篡改需要应用多种技术手段,包括使用数字签名、监测软件、IP封堵、数据加密等方式,以便有效地检测和预防网页被恶意篡改的行为。
代理客
代理客
Lv1
明月几时有?把酒问青天。
文章
3
粉丝
0
获赞
0