Skip to content

Latest commit

 

History

History
43 lines (39 loc) · 3.52 KB

RSA科普.md

File metadata and controls

43 lines (39 loc) · 3.52 KB

https://web.thuhole.com/##1159 【RSA科普】 非对称加密科普(别再开洞问了)

非对称加密,电脑生成一对公钥和私钥,满足这个性质:任何一段明文用公钥加密后只能用私钥解密。用公钥不能解密公钥加密的密文。用公钥可以算出私钥,但RSA算法的密钥要求的算力远远超出目前人类的计算机能力。因此,接收方公布公钥后,发送方将明文用公钥加密,放在不安全信道上传送。此时只有有私钥的那个人能解密,别人没有私钥一定无法解密。例子就是#303。

上述通信模型是单向通信,即一个发送方单向给接收方传送数据。除了单向通信以外,rsa算法由于特殊的设计还可以进行身份验证。即:发送方公开一段文字,要求接收方用私钥对该段文字进行加密。接收方如果确实有对应的私钥,那么加密出来的密文可以被发送方用公钥进行解密,解密出来是这段文字就说明身份是对的。任何其他人由于拿不到私钥,因此没法完成要求的加密。例子就是#767中有人要求验证dz身份,dz用自己的私钥加密了一段文字放在#807中。

最后一个问题是:如果要进行双向通信,比如私密聊天,怎么办呢?答案就是两个人各自生成一对公钥和私钥,自己拿着自己的私钥,公布自己的公钥。说话的时候,用自己的私钥加密,对方用对应公钥解密。听话的时候,对方用对方的私钥加密,自己用对方的公钥解密。 (6-21 18:49:49 315关注 21回复)

[Alice] 老密码学了 [Bob] 棒诶 [Carol] Re : 我的公匙 test MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCKzFoyZ4Z3ybL84kIFpDqUTXA8Tq6E1VdO8wF8Rp62f2vnOnBWIdoDO7if65TlR9d59fyn7NjOUcZZkadFmmrCck6SFIpRm6LAVNzOKrpLjaWwysAmCZO5pky147uSN8wpnTF7zV9wJwtZLpAQrR5cMzri2YTP8pHPS8SJCoWsCwIDAQAB [Dave] 感谢!终于弄明白了 [洞主] 说到密码学,turing当年在二战时候造的机器就是为了破解德国人的密码的……这是历史上图灵机做出的第一个伟大贡献。 [Eve] 我有点懵的,如果双向通信,我公布了公钥,又在不安全信道传输加密数据,那不是所有看到公钥的人都能解密我的信息了吗(小白瑟瑟发抖 [洞主] Re Eve: 仔细看。通信的时候,你给人发信息不是用你的私钥加密,是用对方的公钥加密。 [Francis] 感谢!顶! [Grace] 学到了,谢谢密码学带师! [Hans] 感谢! [Isabella] 感谢! [Jason] Re 洞主:原文说 “说话的时候,用自己的私钥加密,对方用对应公钥解密。” 这和你给Eve的回答矛盾? [Kate] 感谢 [洞主] Re Jason: 双向通信是有两对私钥和公钥,本质上是两组单向通信。这么解释OK吗? [Louis] 原文改为“说话的时候,用对方的公钥加密,对方用对应私钥解密。听话的时候,对方用我的公钥加密,我用自己的私钥解密。”就好啦 [Margaret] 稍微补充一点,实际做签名验证的时候,一般是对散列值用私钥加密,而不是原文内容;散列值计算使用散列函数,即把内容映射到某个指定数域的函数,保证1.不同的输入对应的输出几乎一定不同2.函数在密码学意义不可逆 为了方便理解,可能说的有点点不严谨,欢迎指正 [Nathan] 🐴了 [Olivia] 好 [Paul] Re : mark [Queen] mark [Richard] tag: RSA介绍 RSA使用说明 RSA说明 怎么用RSA怎么用 公钥怎么用公钥 私钥怎么用私钥 加密怎么用 乱码怎么用 是在哪加密的 是怎么加密的