首页 > 代码库 > 公钥与私钥和加签与验签
公钥与私钥和加签与验签
在公司查问题时遇到一个关于公钥与私钥和加签与验签的问题,当时不太明白,后来弄明白了感觉挺有意思的,所以想分享一下。
为了说明问题,假设现在有a,b,c三家公司,彼此都有业务往来。
假设a,b公司都会向c公司发送报文,而c公司为了能够保证报文的安全性便会给a,b公司一个公钥(不是什么公司都能向自己发报文的,必须是自己指定的公司才可以),自己会有一个对应的私钥,而a,b公司在向c公司发送报文时就可以使用c公司提供的公钥对报文进行加密(公钥主要用来进行加密),当c公司取得报文后就会使用自己的私钥对报文进行解密(私钥主要用来解密),如果解密成功则表示该报文是正确的,可以进行接收(这就是公钥与私钥的使用)。
然而当c取得了报文后,a和b公司都可以向自己发送报文,那怎么判断这个报文是a的还是b的呢,这就要用到加签与验签了。
为了能够表明自己的身份,a或b公司便会向自己的报文里边加入一个签名,同时都会给c公司一个自己的公钥用于对自己的签名进行解密用的,于是当c公司得到报文后,假设使用a提供的公钥对报文中的签名进行解密,如果解密成功则说明该报文是a公司提供的(这样便证明了身份)。
总结:公钥与私钥是用来加密与加密的,加签与验签是用来证明自己身份的。
公钥与私钥和加签与验签
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。