【发布时间】:2013-09-25 04:57:08
【问题描述】:
Android Jellybean 使用 ca 根证书。这些证书命名是基于证书主题的 MD5 哈希。我想改变它,使它使用 SHA-1 而不是 MD5。我的疑问是,显然 Apache 和谐(Android 使用的)会生成与 openssl 不同的 SHA-1 哈希。 Android SHA-1 实现是否损坏?
【问题讨论】:
标签: android security certificate sha1
Android Jellybean 使用 ca 根证书。这些证书命名是基于证书主题的 MD5 哈希。我想改变它,使它使用 SHA-1 而不是 MD5。我的疑问是,显然 Apache 和谐(Android 使用的)会生成与 openssl 不同的 SHA-1 哈希。 Android SHA-1 实现是否损坏?
【问题讨论】:
标签: android security certificate sha1
因此,openssl 似乎没有遵循与 MD5 相同的 SHA1 约定。 在计算-subject_hash(SHA1基于证书的DN)时,openssl首先计算DN的CANONICAL表示,然后生成de ASN1。 DER 格式基于 CANONICAL 格式,然后将结果传递给 SHA1 算法。
您必须修改 Apache Harmony 代码才能获得与 openssl 中相同的结果
【讨论】: