我正在研究"椭圆曲线密码学".看起来像那样; 很难理解"身份元素"的概念.
其实我的问题是为什么我们需要"身份元素"?据我所知,我们需要"身份元素"来定义任何组元素P的反向-P.我是否正确?
还有人能给我看一些关于椭圆曲线加密的介绍材料吗?
许多加密证明依赖于关于"对象集"的非常一般的数学概念.其中一些概念是"组"(阿贝尔组),"模块","字段"和"环".对于这些结构化的对象集合,一旦你接受用于构造它们的基本公理为真,就会以非常一般的方式推导和证明许多引理和定理.
可以构造这些结构.您需要"元素","身份元素","反向元素"和"操作"以及一些假定为始终为真的"公理".(例如"使用操作XY,将其应用于ELEMENT和INVERSE_ELEMENT,结果将始终为IDENTITY_ELEMENT.")因此,如果您可以验证任何一组对象是否满足上述结构之一的最小前提条件,那么它还将满足所有普遍证明的高水平定理.
对于椭圆曲线,你只需证明所有的基本成分(即公理定义的属性)就可以使它们成为阿贝尔群,而BANG!,你已经证明了与阿贝尔群相关的所有其他定理也是正确的.阿贝尔群体的公理前提条件之一是"身份因素".
我发现这本出版物是对Elliptic Curve密码学的一个非常好的介绍,适用于具有一定数学背景的人.它附带了很多可以在线玩的Java小程序.不幸的是,这只是德国人,但也许这对你有所帮助:
http://www.warendorf-freckenhorst.de/elliptische-kurven/frame.html
另一款可以让你玩各种加密算法(包括Elliptic Curves)的软件是现在开源的"CrypTool",提供英语,德语和西班牙语版本.它适用于对技术或IT事物感兴趣的任何人:
https://www.cryptool.org/en/
https://www.cryptool.org/en/ct1-download-en(下载)
以下是对演示文稿形式的CrypTool的简短介绍:
http://www.cryptool.de/download/CrypToolPresentation-en.pdf
编辑:这是Elliptic Curve数学的英语入门:http: //www.certicom.com/index.php/ecc-tutorial