首页 > 编程知识 正文

rsa一个私钥对应多个公钥,rsa生成公钥和密钥对

时间:2023-05-03 23:29:34 阅读:135904 作者:2279

一、公钥加密

让我想想。 我找了一个是1,另一个是2的数字。 我喜欢2这个数字,所以我不告诉你们(私钥)而是留下来。 然后,我会告诉大家1是我的公钥。

我有文件,不能给别人看,所以用1加密了。 别人找到了这个文件,但他不知道2是解密的私钥,所以他解不开。 只有我可以用数字2,也就是我的私钥解密。 这样可以保护数据。

我的zxddyx用我的公钥1加密字符a,加密成b,放在网上。 别人偷了这个文件,但别人解不开。 因为别人不知道2是我的私钥,所以只有我能解密,解密后得到a。 这样就可以发送加密的数据了。

二、私钥签名

如果我用私钥加密数据(当然,只有我能用私钥加密。 因为只有我知道2是我的私钥),所有人都会看到我的内容。 因为他们知道我的公钥是1,所以这个加密有什么用呢?

但我的zxddyx说有人冒充我给他发了信息。 我该怎么办? 我要寄的信,内容是c,用我的私钥2加密。 加密的内容是d,发送到x,解密后告诉你是否是c。 他用我的公钥1解密,发现还是c。

此时,他认为能用我的公钥解密的数据,必然是用我的私钥加密的。 我知道只有我有私钥,所以他可以确认确实是我发的。 这样就可以确认发货人的身份了。 这个过程称为数字签名。 当然具体的过程有点复杂。 用私钥加密数据。 用途是数字签名。

总结:公钥和私钥是成对的,相互解密。

公钥加密、私钥解密。

私钥的数字签名、公钥的验证。

举个例子

例如,有两个用户时尚的金鱼和ddh,时尚的金鱼想用双重密钥加密技术把明文发送到ddh。 ddh有一对公钥和私钥。 加密的解密过程如下。

DH把他的公钥发给时尚金鱼。

时尚金鱼用ddh的公钥加密她的信息,发送到ddh。

DH用他的私钥解密了时尚金鱼的信息。

上面的过程可以如下图所示,时尚金鱼用ddh的公钥加密,ddh用自己的私钥解密。

示例和图示根据《网络安全基础 应用与标准第二版》

RSA算法

RSA公钥加密算法由Ron Rivest、Adi Shamirh和LenAdleman (麻省理工学院)于1977年开发。 RSA因开发他们三人的名字而得名。 RSA是目前最具影响力的公钥加密算法,能够抵抗所有已知的密码攻击,被ISO推荐为公钥数据加密标准。 RSA算法基于非常简单的数论事实。 将两个大素数相乘非常容易,但对其乘积进行因式分解非常困难,所以可以公开乘积作为密钥。

在openssl中,如果知道私钥,则可以直接使用以下命令生成公钥:

RSA-in RSA _ private _ key.PEM-pub out-out RSA _ public _ key.PEM

所以,如果你公开了私钥,说明公钥也告诉了他们

公钥由私钥生成

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。