在AES加密(.net框架)中,公钥和私钥是如何使用的?
公钥和私钥是否组合在一起形成一个完整的密钥,然后算法使用公钥+私钥来加密数据?
(以下用于示例目的的简化密钥)
例如,公钥= 12345私钥= 67890
所以生成加密结果时使用的密钥是:1234567890
正如其他人所说,AES是一种对称算法(私钥加密).这涉及单个密钥,它是发送者和接收者之间的共享秘密.类比是没有邮件槽的锁定邮箱.任何想要离开或阅读邮件的人都需要拥有邮箱的密钥.
如果您真的想知道AES的血腥细节,那么一路上会有一个极好的卡通片来指导您.
公钥加密涉及每个接收者所涉及的两个相关密钥 - 私钥是仅由接收者知道的秘密,以及所有发送者都知道的相关公钥.
发件人使用收件人的公钥加密邮件.该消息只能由具有与公钥匹配的私钥的收件人解密.
公钥加密的类比是带有邮件槽的锁定邮箱.邮件插槽暴露并可供公众访问.它的位置(街道地址)是公钥.任何知道街道地址的人都可以上门并通过插槽发送书面信息.但只有拥有私钥的人才能打开邮箱并阅读邮件.
AES是一种对称算法,因此它没有公钥和私钥 - 只有共享密钥.