我们是密码学的业余爱好者。我们必须在Java中实现与椭圆曲线密码学相关的不同算法。到目前为止,我们已经能够从维基百科的椭圆曲线密码学页面中识别出一些关键算法,如ECDH、ECIES、ECDSA、ECMQV。
现在,我们无法理解如何从何处开始实现这些算法。另外,Java是否已经在其体系结构中提供了这些算法?或者我们必须使用像BouncyCastle这样的API (我们在这个站点上看到了它)?或者我们可以使用标准代码单独实现这些算法吗?任何帮助都将不胜感激!
发布于 2012-06-21 13:45:32
是的,你总是可以依靠Bouncy城堡库来实现最需要的算法,当然也包括椭圆曲线密码。没有必要实现你自己的,相反,如果你发现任何问题,试着去修复它。
来自Oracle的OpenJDK 7和Java7SE早期版本只包含椭圆曲线密码学的综合API,但是您需要一个JCE提供者(如弹跳城堡)来提供实际的实现。
发布于 2012-06-20 08:19:12
您可以观看OpenSource项目TextSecure,这是一个用于安卓的短信/文本应用程序,它可以在GSM电话网络上发送加密的短信,其想法与OpenPGP相同,但使用的是ECDH和ECDSA。所有这些都是用BouncyCastle实现到应用程序中的。
https://github.com/WhisperSystems/TextSecure/tree/master/src/org/bouncycastle
发布于 2014-04-18 17:10:24
这将描述简单的椭圆曲线密码学http://javaconceptzz.blogspot.com/2013/08/java-eliptic-curve-cryptography.html。
https://stackoverflow.com/questions/11115336
复制相似问题