繁体   English   中英

SSL证书签名验证

[英]SSL certificate signature verification

我正在尝试手动验证嵌入式板上的证书,因为它不支持Openssl或其他库。 但是,它确实具有用于MD5和SHA1哈希以及RSA加密的库。

根据我对验证证书的了解,首先计算证书的SHA1哈希(或MD5); 然后使用CA的公钥解码签名以获得散列值。 这两个哈希值应相同。

SHA1哈希产生一个20字节的值,而MD5产生16个字节的值。 但是,签名的RSA解码没有。 如果CA的密钥为1024位,则解码签名为80bytes; 如果CA的密钥是512位,则解码的签名将是40个字节。 因此,我无法真正将20字节的SHA1值与40或80字节的解码签名进行比较。

难道我做错了什么? 还是我错过了一步?

缺少的位是填充算法。

您将RSA与特定的填充算法一起使用,并且相同的算法还告诉您如何获取结果(解密签名时)并从中提取实际数据(哈希)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM