我想使用非对称椭圆曲线密码术而不是 RSA 或 ElGamal 等其他算法来实现“我自己的混合加密引擎”。
假设我想使用提供更高安全性的曲线,我应该使用哪些曲线?根据我读过的内容,我认为 521 位曲线可能是理想的。是否有更安全的方案?
在 C/C++(不使用 C++ STL)中最安全的实现是什么,例如,防止侧信道攻击?我想将它作为一个“单独的”模块来实现,所以我希望能有干净的源代码或好的引用资料。
最佳答案
在考虑是否有任何标准曲线可能不够安全之前,我先去确保加密模式确实是安全的,可以抵御普通的旧式选择密文攻击。 我认为 Cramer 和 Shoup 的论文“针对自适应选择密文攻击的实用公钥加密方案的设计和分析”,2003 年是分析混合加密方案的良好起点。
至于定时攻击:OpenSSL 包含已实现的少量选定曲线的实现,以便它们在恒定时间内运行。
关于c - C中ECC的实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6566093/