首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >公钥InfraStructure中的私钥加密

公钥InfraStructure中的私钥加密
EN

Cryptography用户
提问于 2012-11-22 17:24:32
回答 1查看 1.6K关注 0票数 -1

在公钥基础结构中,数据块的MD5是用发送方的私钥加密的,这个加密的MD5 --以及数据--再次使用像AES或3 3DES这样的算法加密。

在这里,发送者的私钥用于使用AES…加密。是这样吗?

这是我所理解的一个粗略的实现:

  • DATA =应该通过PKI散列=MD5(数据)发送的文本
  • 加密=RSAENCRYPT(私钥,散列)=使用发送方私钥加密的散列
  • cipher= AES( key,DATA+hash) = param 1是加密密钥,param 2是连接的数据和散列。
  • 加密密钥=RSAENCRYPT(私钥,密钥)= AES密钥,用发件人的私钥加密
  • masterKEY =RSAENCRYPT(公钥,密钥)=加密密钥,用接收机的公钥加密

这是对的,还是我遗漏了一些重要的东西?

EN

回答 1

Cryptography用户

发布于 2012-11-23 12:28:55

这是不对的。实际上,你使用RSA是完全错误的。

在公钥方案中,有两个密钥,一个用于加密,一个用于解密。如果你用私钥加密.公钥将被用来解密。这意味着每个人都可以解密,因为公钥是公共的。

如果使用公钥方案和私钥来创建某些内容,则只能使用签名。在这种情况下,您必须使用某种符号函数,而不是加密;它们是不平等的。

如果我们忽略了错误的RSA加密,那么就没有什么剩余的了:

  • 使用MD5散列数据
  • 您使用AES加密密钥下的data+key。
  • 您使用RSA和接收方公钥传输密钥(这是RSA加密的使用方式)。

然而..。这只是一个简单的“发送加密消息”算法:用对称密码和随机密钥加密,用公钥方案加密密钥和接收公钥。MD5哈希值根本不起任何作用:它没有被检查,它无助于验证发送者,也没有实现消息的完整性。

但即使我们假设,你也想用RSA来签名而不是加密.我还是不明白你在努力实现什么。

票数 2
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/5459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档