解决方案

首页 > 解决方案 > 正文内容

公钥和公钥证书关系(关于证书,CA,公/私钥,签名的一些理解)证书和公钥的区别,难以置信,

wangqiang9个月前 (12-13)解决方案226

背景:

如题,最早看到这些关键字的时候已经是两三前年的事了,那时查阅过相关资料简单的了解过它们一下;直到最近在回顾笔记的时候,发现有些地方理解的不是很通透;遂在以前笔记基础上做了一点归纳和总结,顺便在这颗粒机里记录一下。

做过后端开发的童鞋都知道,服务之间的通信基本上都是通过HTTP协议进行的;但有的时候为了安全,我们希望通信时传递的数据是经过加密的,不希望数据在传递过程中被第三方窃取;或者通信双方需要对彼颗粒机此进行认证,来确定对方的身份。这时我们就需要用到HTTPS协议,而提到该协议,就必须了解标题中提到的关键字。

场景:

在开始之前,用最常见的浏览器访问网站的例子来看一个问题 -> 浏览器怎么确定访问目标是颗粒机可信的,而不是被其它第三方假冒的?

示意图(红线连接着假冒的服务)

一种办法是: 受访问的服务需要提供能证明自己身份的东西,这就引出了->证书。 但是怎么证明证书是有效的? 假冒的服务器也可以有证书,所以颗粒机证书上要有一个可信的标识,代表它是经过认证的,这个标识就是-> 签名;那这个签名又是咋来的? 总不能服务自己给自己签吧... 所以需要一个特殊的机构来进行,这个机构是大家公认的可靠第三方,只要证书有它颗粒机的签名,就可以信任这个证书,这个机构就是CA(certificate authority)。至此,证书,CA,签名的关系就说完了。 (注: 浏览器对服务器的认证,通常是单向认证-即只校验服务器的证书;颗粒机 在日常开发时,服务与服务之间走HTTPS,都是需要双向认证的-即双方都需要提供自己的证书,并进行校验)

CA,证书,签名之间的关系

认证说完后,再来说说如何对数据加解密。一般来说双方需要协商一个加/解算颗粒机法,并使用相同的秘钥对数据进行加/解密。设秘钥为key, 加密算法为encrypt,解密算法为decrypt, 数据为msg, 密文为ciphertext。 加密方: ciphertext=encry颗粒机pt(msg, key);解密方: msg=decrypt(ciphertext, key)。 注意,这里加解密用的key是相同的,这种用相同key进行加解密的方法是对称加密算法。对称加密通信存在一些颗粒机问题: 因为key是相同的,如果key被泄露,作为服务方,你发出的所有消息都可以被持有key的人解密,并且持有key的人还可以假冒你对信息签名。所以需要使用另外一种方案,这种方案需要做到加解密时用的k颗粒机ey是不同的,经过一个key加密的数据,需要另外一个key来解密; 这种加解密方案就是非对称加解密,它需要一对秘钥才能工作,即公/私钥。与之相关的加解密过程是: 加密方: ciphertext=enc颗粒机rypt(msg, publick_key), 解密: msg=decrypt(ciphertext, private_key)。通过这种方式,在需要通信的时候把公钥下发出去,持有公钥的客户端加密的数颗粒机据,只能由持有私钥的服务端解开,客户端无法通过公钥解密其它客户端发送的信息,从而保证数据的安全。

HTTPS请求流程:

解释完标题中的关键字,再看下HTTPS的请求流程,可以加深理解。

步骤:

1.浏览器发起颗粒机https请求

2.服务器返回它的证书

3.浏览器通过CA的公钥对证书签名进行校验,检查证书是否有效

4.浏览器生成一个临时秘钥并用服务器的公钥对它加密,然后将其发送给服务器

5.服务器用私钥解密,得到浏览器颗粒机发送给它的秘钥, 然后用该秘钥对数据进行加密

6.浏览器得到加密数据,并用发给服务端的秘钥进行解密
示意图

看完这幅图应该会有一些疑问,双方真正通信时用的秘钥,是相同的!也就是说,实际通信时,双方仍然用的是颗粒机对称加密方法。为什么会这样 ? 这也是我最初的疑问,为什么对称加密和非对称加密在HTTPS中都有用到?带这个问题,我们看下这两种加密方法在HTTPS协议中起到的作用。

非对称加密作用: 证书签名(CA的颗粒机私钥签), 验签(用CA的公钥验); 客户端用服务端的公钥对临时秘钥加密,服务端用私钥对数据解密,得到客户端送给它的秘钥。

对称加密的作用: 双方后面交换数据时才会用到。

这里之所以要再生成秘钥,是因为直颗粒机接用私钥对真实数据加密,性能不如对称加密,基于这个理由,后面的通信仍然使用的是对称加密;因为每次通信都会生成临时秘钥,所以对称秘钥只对一次通信有效,不用担心泄露问题。

一些详情:

证书: 在前面的描述中多颗粒机次提到证书,证书里主要有版本号,序列号,签名算法,有效期,所有者(服务端)的公钥... 除此以外,还有CA的签名。

关于签名和验签:

签名: signature=encrypt(hash(text), p颗粒机rivate_key) 解释: 先对信息进行hash生成一个摘要,再对摘要进行加密。(这里的text可以是任何数据, 证书,或其它信息)

验签: 对比 decrypt(signature, public颗粒机_key) == hash(text) 解释: 用公钥对签名解密得到加密前的hash值, 再对明文进行hash, 看看两者的hash值是否一样,如果一样则验签通过,并且内容没有被篡改,如果不一样则验签颗粒机失败。

其它:

如果你看过网上的文章,大家基本都在说公钥加密,私钥解密,私钥总是用作签名;为什么都这样说呢? 回到非对称加密最初的设计 -> 一个key加密的信息,只能由另一个key解密; 基于此,公钥加颗粒机密的信息只能由私钥解开(只有一个人能解开),那么用公钥加密是合乎情理的,因为能解密的只有一人; 反过来,如果私钥对数据加密,但公钥是在网络上广泛流传的,即使加密还是有很多人能够解密,所以用私钥加密数据颗粒机意义不大;基于此,如果用私钥来签名就比较合适了,因为只有你下发的公钥才能解开,其它人下发的公钥无法解开你的签名。

扫描二维码推送至手机访问。

版权声明:本文由木屑颗粒机_燃烧生物颗粒机那里有_生物质燃料颗粒机器设备发布,如需转载请注明出处。

转载请注明出处https://zqklj.cn/post/6991.html

分享给朋友:

相关文章

智能印章的利弊(什么是智能/电子印章??智能/电子集章本怎么玩??)智能印章到底有什么技术含量,墙裂推荐,

智能印章的利弊(什么是智能/电子印章??智能/电子集章本怎么玩??)智能印章到底有什么技术含量,墙裂推荐,

可以把可以把集点卡都丢啦!因为电子印章来了! 现代人几乎人人一台智慧型手机,那我们干脆把这些票券和集点卡都做成app,要用的时候再打开就行了啊?是的,现行的电子集章服务大多...

总公司签约分公司收款的法律依据(总公司签合同,可以由分公司开具发票吗?)总公司签约分公司收款合法吗,越早知道越好,

总公司签约分公司收款的法律依据(总公司签合同,可以由分公司开具发票吗?)总公司签约分公司收款合法吗,越早知道越好,

▼财税干货超级多,点击预约有收获▼(如显示已结束,可点开预约下一场哦) 最近有学员朋友咨询:“我们是一家工程设计公司,合同由总公司和甲方签订,但项目地甲方以当地政府要求将税款交到当地,让我们在...

优博讯做什么产品(优博讯:着力强化对软硬件产品所搭载芯片和操作系统的安可替代每日经济新闻2021-07-19 20:35每日经济新闻2021-07-19 20:35)2021年优博讯公司订单什么样,新鲜出炉,

每经AI快讯,有投资者在投资者互动平台提问:董秘你好,请问贵公司在人工智能方面,有打算和华为的昇腾合作吗? 优博讯(300531.SZ)...

银行电子签约系统个贷(商业银行如何通过电子签章&电子合同降本增效?)银行电子签约对账未达标,万万没想到,

银行电子签约系统个贷(商业银行如何通过电子签章&电子合同降本增效?)银行电子签约对账未达标,万万没想到,

早在2019年,央行发布《金融科技(FinTech)发展规划(2019-2021年)》已经明确提出“要综合运用数字签名等技术手段,强化金融交易规范管理,保障金融交易过程的可追溯和不可抵赖,提...

电子劳动合同签署平台(电子劳动合同来了!你知道怎么签吗?)电子劳动合同怎么签才有效果,一篇读懂,

电子劳动合同签署平台(电子劳动合同来了!你知道怎么签吗?)电子劳动合同怎么签才有效果,一篇读懂,

近日,北京市人社局发消息称将推广使用电子劳动合同。同时,北京市还将结合优化营商环境、开展便民利企服务的相关要求,逐步推广电子劳动合同在不同场景的应用,搭建全市统一的电子劳动合同管理平台。...

黔西南州水库和生态移民局(黔西南水文:全力以赴做好防汛备汛“水文”章)黔西南州水资源公报,奔走相告,

黔西南州水库和生态移民局(黔西南水文:全力以赴做好防汛备汛“水文”章)黔西南州水资源公报,奔走相告,

原标题:黔西南水文:全力以赴做好防汛备汛“水文”章 人勤春光好,备汛时节忙。水准点校核、大断面测量、设施设备维修养护……春回大地,贵州省黔西南州处处涌动着备汛的热潮。为确保安全平稳度...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
现在,非常期待与您的又一次邂逅做木屑颗粒机我们是认真的!

我们努力让每一台锯末颗粒机的邂逅总能超越期待