非对称加密中的公私钥究竟是如何工作的

 我来答
腾扬数码
2022-07-05 · TA获得超过2813个赞
知道小有建树答主
回答量:3679
采纳率:100%
帮助的人:198万
展开全部
一直以来,对于加解密这块接触的非常少,遇到问题也只能咨询同事,尴尬的是越解释越糊涂,考虑到网络安全和数据加密也是微服务开发中的一个重要环节,同时为了尽可能弄明白加解密这块,遂将一些有用的思考整理下来,分享给大家。

在加解密的领域中,非对称加密(Asymmetric Cryptographic Algorithm)已经渗入到网络交互的各个环节中了,我们都知道其中主流的RSA加密算法包含一对公私钥(Public Key & Private Key),但他们究竟是如何一起工作的?

下面会用微服务对接为例子来解释公私钥的交互过程。

正如在图中看到的,在服务双方对接之前,双方需要交换各自的公钥,这样Service A就会有:

下面开始交互过程。

这里解释一下,“数据签名/加签”其实就是用自己的私钥去给数据Hash做一层加密,对方在收到数据签名的时候,可以使用对方的公钥来解密这个签名,就会得到来自对方的数据Hash,紧接着用自己的私钥解密出数据并Hash,来比较两个Hash数据看是否一致来确认是否有被第三方篡改。

在Service B收到Service A的请求后,它需要先使用B_private.key 来解密Data得到明文数据,然后使用A_public.key来验证签名,对比签名中的Hash和自己手上的数据Hash是否一致,这就是Service B中的验签流程。
在验签和解密通过后,它就可以继续走自己的业务逻辑了。

对于Service B往Service A发送请求,和上面的流程一样只是流程方向反过来了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式