不经意传输协议:发送方发送n条消息,接收方获得m条
根据上面的例子,传输n条消息时,接收方得到其中的m条的协议应该是:
- 发送方产生2n个公钥/私钥密钥对,并将其中的n个公钥发送给接收方。
- 接收方选择一个对称算法的密钥,并选择其中一个公钥来加密该密钥,将加密后的密钥发送给发送方。
- 发送方使用其私钥解密接收方发送的密钥,如果成功则说明接收方选择的是正确的公钥,否则说明选择的是错误的公钥。
- 发送方使用正确的密钥加密n条消息,并将其发送给接收方。
- 接收方收到加密后的消息,使用正确的密钥解密其中的m条消息,另外的消息对其来说是无意义的。
- 发送方在协议完成后将其私钥发送给接收方,以便接收方验证发送方没有进行欺骗。
通过这个协议,接收方能够得到m条消息,而发送方无法知道接收方得到的是哪些消息,从而防止了发送方的攻击。同时,接收方也无法知道发送方加密了哪些消息,直到发送方公开其私钥。
原文地址: https://www.cveoy.top/t/topic/oIyP 著作权归作者所有。请勿转载和采集!