TLS/SSL数字证书里的指纹算法、签名算法和签名哈希算法各是做什么用的?
2019-05-08 · 百度认证:Gworg官方账号,科技领域创作者
您好!
作用与目的相同都是为了进行加密,更好的保护平台,SSL安全哈希算法,是数字签名算法标准,所以无论您在哪里注册无论多少价格的证书,其算法基本上都是相同的!
申请SSL证书为考虑到浏览器兼容性,保持更多的浏览器可以访问,通常采取加密算法:RSA 2048 bits,签名算法:SHA256WithRSA,该算法被公认使用,就是百度也使用该算法!
RSA加密算法:公钥用于对数据进行加密,私钥用于对数据进行解密。
RSA签名算法:在签名算法中,私钥用于对数据进行签名,公钥用于对签名进行验证。
加密算法分为两大类:1、对称加密算法 2、非对称加密算法。
由于计算能力的飞速发展,从安全性角度考虑,很多加密原来SHA1WithRSA签名算法的基础上,新增了支持SHA256WithRSA的签名算法。该算法在摘要算法上比SHA1WithRSA有更强的安全能力。目前SHA1WithRSA的签名算法会继续提供支持,但为了您的应用安全,强烈建议使用SHA256WithRSA的签名算法。
你就解答一下图上的“指纹算法”是用来做什么的吧?
CA颁发证书主要内容:
指纹算法:将证书内容进行HASH计算的算法,如sha1
指纹:证书内容HASH以后的内容(不可逆),用户识别证书是否篡改
签名算法:对指纹进行签名的算法(CA用自己的私钥对指纹签名,浏览器通过内置CA跟证书公钥进行解密,如果解密成功就确定证书是CA颁发的)。
指纹是在证书信息(证书机构,公司名,证书有效期等)后面加上一段内容,保证信息没有被修改过。具体操作是将将原来的信息通过指纹算法算法(一个hash算法)计算得到指纹与原信息一起发出去。用户收到这份数据后,首先将原信息用同样的指纹算法计算结果,将得到的结果与指纹对比,如果一致,则说明信息没有被修改过。当然这个过程是有危险的,黑客完全可以修改内容并重新通过指纹算法生成指纹。这里需要使用加密算法来解决这个隐患。
假设一个公司B company向证书机构xxx CA申请SSL证书,他会得到一张类似下面这张图的证书
B company得到这张证书后,会在与用户通信的过程中将证书发送给用户,用户首先会检测办法证书的机构,如果是大家都公认的证书机构,操作系统在出厂时会内置这个机构的机构信息和公钥,例如xxx CA,如果是一个不受信任的证书机构,应用程序(比如浏览器)会发出警告,如果是受信任的证书机构,应用程序会使用预置的xxx CA的公钥去解密最后的指纹内容和指纹算法,然后再把前面的证书内容用指纹算法计算后与指纹内容比对,由于指纹内容是由证书机构唯一的私钥加密的,因此只要比对成功说明证书是没有人被人修改过的。接下来用户就可以放心使用该公司的公钥了。
2019-06-28 · 多品牌域名证书,代码签名证书,IP证书
签名哈希算法:签名之前对证书主体部分进行哈希的算法,它和签名算法结合,是签名及认证的一部分。
指纹算法:是对签名之后的证书文件计算一下散列值,只是用于检测证书是否被篡改,类似于去网站下载一个安装包,严谨一点的网站会给一个MD5的值,便于你下载之后再MD5一下核对。
证书指纹何时用到?举个例子,在导入某CA根证书或证书链时,会去该CA官方网站下载相关证书,下载好了之后可以手工检查一下指纹,确认无误再导入。
2019-05-08 · 百度认证:安徽斯百德信息技术有限公司
签名算法:sha256RSA指的是用SHA256和RSA两种算法共同进行签名
签名哈希算法:指的是签名算法中的哈希算法是用sha256
指纹算法:是用来做用户认证的
其实没必要了解的那么清楚的,表情(哭唧唧)!
没必要了解清楚,还学什么
广告 您可能关注的内容 |