我感到无聊,所以我开始研究密码学。我对这个公平硬币翻转协议(protocol)感兴趣。该协议(protocol)适用于公钥加密,但需要算法通勤(我猜是像 RSA 一样)。我认为用 C 或 C++ 编写它会很有趣,并且想知道人们通常如何在 C 或 C++ 中进行这种公钥加密。例如,协议(protocol)的前几个步骤是:

  • Alice 和 Bob 都生成一个公钥/私钥对(这是交换 secret )
  • Alice 生成两条消息,一条表示正面,另一条表示尾部,并使用她的 key 对它们进行加密,然后将它们发送给 Bob。
  • ...
  • ...

  • 现在,对于消息,我可能会使用一个字符串,但是否有任何好的库来生成公钥/私钥和加密给定的字符串等?

    最佳答案

    看看类似 crypto++ 的东西,而不是自己做密码学。还有其他商业图书馆,但这应该给你一个良好的开端。

    关于c - 实现公平硬币翻转,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3994436/

    10-10 13:08