当前位置: 首页 > 专利查询>厦门大学专利>正文

一种基于二进制域的椭圆曲线密码体制的改进模除方法技术

技术编号:15961491 阅读:46 留言:0更新日期:2017-08-11 07:53
一种基于二进制域的椭圆曲线密码体制的改进模除方法,涉及域运算方法。提供一种约减效率高、运算速度快的基于二进制域的椭圆曲线密码体制的改进模除算法。根据r(t)=y(t)/x(t)mod F(t),算法先将寄存器A、B、U、V赋予对应初始值,再通过一次性判断寄存器中最低两位二进制数据的值,实现对应约减操作,直到寄存器A中存储的数值降为1,寄存器U中存储的数值即为模除结果r(t)。通过Verilog语言实现算法并仿真,对比改进的欧几里得算法及费马小定理算法,该算法在时间消耗方面存在优势,有效加速了模除计算,可用于ECC加解密IP核中。

Improved modulo elimination method for Elliptic Curve Cryptosystem Based on binary domain

An improved modular elimination method for Elliptic Curve Cryptosystem Based on binary domain, involving domain computing method. An improved algorithm for Elliptic Curve Cryptosystem Based on binary domain is proposed to reduce the efficiency and speed. According to R (T) = y (T) /x (T) mod F (T) algorithm, first register A, B, U, V gives the corresponding initial value, and then through a one-time judgment register a minimum of two binary data value, the corresponding reduction operation, until the A value storage register down to 1, send the stored U in the numerical model is in addition to the results of R (t). Through the Verilog language algorithm and simulation, the Euclidean algorithm and improved algorithm of Fermat's theorem, the algorithm has advantages in terms of time consumption, effectively accelerate the modular addition calculation, can be used for ECC encryption IP core.

【技术实现步骤摘要】

本专利技术涉及域运算方法,尤其是涉及一种基于二进制域的椭圆曲线密码体制的改进模除方法
技术介绍
随着科学技术的发展,我们的生活质量得到了巨大的改善,与此同时,信息安全问题也日趋严峻,无时无刻不威胁着我们的财产安全及个人隐私。由于不同场景有着不同的需求,所运用的加密体系与加密算法也因此有所不同,目前的加密体系主要有对称加密与非对称加密两种。自Diffie.W和Hellman.M于1976年共同提出了公钥加密体系,其便成为密码学研究领域的重要课题,且始终在信息安全方面发挥重要作用。与对称加密不同,非对称加密的通信双方分别有自己的公钥和私钥。目前对于公钥加密体系构建是基于三大数学难题,一是大数因子分解难解性,二是离散对数难解性,三是椭圆曲线离散对数难解性。椭圆曲线密码体制的安全基础便是椭圆曲线离散对数难解性,该体制由Miller([1]V.S.Miller,“Useofellipticcurvesincryptography,”AdvancesinCryptology-CRYPTO’85Proceedings.Springer,1986,pp.417–426)与Koblitz([2]N.Koblitz,“Ellipticcurvecryptosystems,”Mathematicsofcomputation,vol.48,no.177,pp.203–209,1987)所提出。椭圆曲线一般表示为y2+axy+by=x3+cx2+dx+e,这类曲线称为Weierstrass方程,曲线由所有满足该方程的点(x,y)共同组成,在硬件设计中,通常采用其特殊形式y2+xy=x3+ax2+1,其中a的值为0或,1,该形式的曲线称为Koblitz椭圆曲线。椭圆曲线密码体制是在有限域上计算实现的,有限域分为二进制域GF(2m)与素数域GF(p),其中二进制域适合硬件实现,椭圆曲线密码体制的主要运算有点运算和域运算,点运算由点加和点倍所组成的点乘所构成。域运算由模加、模平方、模乘、模逆所构成。其中,模逆的时间消耗是最多的,目前研究模逆运算的算法有以下几类代表:一是扩展欧几里得相关算法([3]J.H.Guo,C.L.Wang,”SystolicarrayimplementationofEuclid'salgorithmforinversionanddivisioninGF(2m)”.IEEETransactionsonComputers.1998,47(10):1161-1167),二是扩展欧几里得改进算法([4]S.C.Shantz,“FromEuclid’sGCDtoMontgomerymultiplicationtothegreatdivide,”Tech.Rep.TR-2001-95,SunMicrosystems,1995),三是基于费马小定理的求逆算法([5]T.Itoh,S.Tsujii,“AFastAlgorithmforComputingMultiplicativeInversesinGF(2m)UsingNormalBases,”IECE,Japan,1986,pp.31–36PaperofTechnicalGroup,TGIT86-44.),改进费马小定理算法(M.J.Zhi,“DesignandImplementationofEllipticCurveCryptographyoverGF(2m)”,DissertationofShanghaiJiaoTongUniversity,2007)。
技术实现思路
本专利技术的目的在于提供可验证的、运算速度快,通过一次性检验数据最低两位的奇偶性,减少时间消耗,以实现约减效率高、运算速度快的域运算的一种基于二进制域的椭圆曲线密码体制的改进模除方法。本专利技术基于二进制域的椭圆曲线密码体制的改进模除方法之一,包括以下步骤:1)根据椭圆曲线密码体制的相关原理,设在二进制域GF(2m)中,已知两个阶数小于阈值m的元素x(t)和y(t),分别作为两个输入元素,同时根据NIST(美国国家标准与技术研究院)所推荐的Koblitz椭圆曲线参数,选择一个已知的阶数等于阈值m的既约多项式F(t);根据模除公式r(t)=y(t)/x(t)modF(t),得到模除结果r(t),或表示为y(t)≡r(t)x(t)modF(t);将使用四个寄存器A、B、U、V存储算法中所需要的中间数据,达到对模除公式r(t)=y(t)/x(t)modF(t),或y(t)≡r(t)x(t)modF(t)进行迭代约减计算的目的,首先,依次对所述四个寄存器A、B、U、V进行初始化赋值;2)在对四个寄存器A、B、U、V完成初始赋值之后,算法开始对寄存器A、B中所存储的数值进行迭代约减,在约减的过程中,四个寄存器A、B、U、V需要始终维持A×y(t)≡U×x(t)modF(t)及B×y(t)≡V×x(t)modF(t)两个公式的恒等性,从A×y(t)≡U×x(t)modF(t)及B×y(t)≡V×x(t)modF(t)两个公式观察到,当寄存器A、B中所存储的数值的发生变化之后,寄存器U、V中所存储的数值也会随之发生变化;3)算法通过判断寄存器中所存储的中间数值的低位奇偶性,使用硬件操作中的移位和异或完成迭代与约减计算;4)经过一定轮次的迭代与约减计算,寄存器A中所存储的数值将会降为1,整个除法运算的过程终止,设此时的U为UA=1,则此时的恒等式将变为y(t)≡UA=1x(t)modF(t),即UA=1的值与公式r(t)=y(t)/x(t)modF(t)中的r(t)相同,此时,寄存器U存储的数值为模除结果r(t)。本专利技术基于二进制域的椭圆曲线密码体制的改进模除方法之二,包括以下步骤:1)当寄存器A的最低两位为00,寄存器A将连续进行两次左移;接着判断寄存器U的数值,如果寄存器U的最低两位为00,寄存器U将连续进行两次左移;如果寄存器U的最低两位为10,寄存器U的值将变为寄存器U连续左移两次与F(t)左移一次的数据之和;如果寄存器U的最低两位为01,寄存器U的值将变为寄存器U连续左移两次与F(t)左移两次的数据之和;如果寄存器U的最低两位为11,寄存器U的值将变为寄存器U连续左移两次与F(t)左移两次的数据与F(t)左移一次的数据之和;2)当寄存器A的最低两位为10,寄存器A将进行一次左移;接着判断寄存器U的数值,如果寄存器U为偶数,那么寄存器U将进行一次左移;如果寄存器U为奇数,寄存器U的值将变为寄存器U与F(t)之和的二分之一;3)当寄存器B的最低两位为00,寄存器B将连续进行两次左移;接着判断寄存器V的数值,如果寄存器V的最低两位为00,寄存器V将连续进行两次左移;如果寄存器V的最低两位为10,寄存器V的值将变为寄存器V连续左移两次与F(t)左移一次的数据之和;如果寄存器V的最低两位为01,寄存器V的值将变为寄存器V连续左移两次与F(t)左移两次的数据之和;如果寄存器V的最低两位为11,寄存器V的值将变为寄存器V连续左移两次与F(t)左移两次的数据与F(t)左移一次的数据之和;4)当寄存器B的最低两位为10,寄存器B将进行一次左移;接着判断寄存器V的数值,如果寄存器V为偶数,那么寄存器V将进行一次左移;如果本文档来自技高网
...
一种基于二进制域的椭圆曲线密码体制的改进模除方法

【技术保护点】
一种基于二进制域的椭圆曲线密码体制的改进模除方法,其特征在于包括以下步骤:1)根据椭圆曲线密码体制的相关原理,设在二进制域GF(2m)中,已知两个阶数小于阈值m的元素x(t)和y(t),分别作为两个输入元素,同时根据NIST(美国国家标准与技术研究院)所推荐的Koblitz椭圆曲线参数,选择一个已知的阶数等于阈值m的既约多项式F(t);根据模除公式r(t)=y(t)/x(t)mod F(t),得到模除结果r(t),或表示为y(t)≡r(t)x(t)mod F(t);将使用四个寄存器A、B、U、V存储算法中所需要的中间数据,达到对模除公式r(t)=y(t)/x(t)mod F(t),或y(t)≡r(t)x(t)mod F(t)进行迭代约减计算的目的,首先,依次对所述四个寄存器A、B、U、V进行初始化赋值;2)在对四个寄存器A、B、U、V完成初始赋值之后,算法开始对寄存器A、B中所存储的数值进行迭代约减,在约减的过程中,四个寄存器A、B、U、V需要始终维持A×y(t)≡U×x(t)mod F(t)及B×y(t)≡V×x(t)mod F(t)两个公式的恒等性,从A×y(t)≡U×x(t)mod F(t)及B×y(t)≡V×x(t)mod F(t)两个公式观察到,当寄存器A、B中所存储的数值的发生变化之后,寄存器U、V中所存储的数值也会随之发生变化;3)算法通过判断寄存器中所存储的中间数值的低位奇偶性,使用硬件操作中的移位和异或完成迭代与约减计算;4)经过一定轮次的迭代与约减计算,寄存器A中所存储的数值将会降为1,整个除法运算的过程终止,设此时的U为UA=1,则此时的恒等式将变为y(t)≡UA=1x(t)mod F(t),即UA=1的值与公式r(t)=y(t)/x(t)mod F(t)中的r(t)相同,此时,寄存器U存储的数值为模除结果r(t)。...

【技术特征摘要】
1.一种基于二进制域的椭圆曲线密码体制的改进模除方法,其特征在于包括以下步骤:1)根据椭圆曲线密码体制的相关原理,设在二进制域GF(2m)中,已知两个阶数小于阈值m的元素x(t)和y(t),分别作为两个输入元素,同时根据NIST(美国国家标准与技术研究院)所推荐的Koblitz椭圆曲线参数,选择一个已知的阶数等于阈值m的既约多项式F(t);根据模除公式r(t)=y(t)/x(t)modF(t),得到模除结果r(t),或表示为y(t)≡r(t)x(t)modF(t);将使用四个寄存器A、B、U、V存储算法中所需要的中间数据,达到对模除公式r(t)=y(t)/x(t)modF(t),或y(t)≡r(t)x(t)modF(t)进行迭代约减计算的目的,首先,依次对所述四个寄存器A、B、U、V进行初始化赋值;2)在对四个寄存器A、B、U、V完成初始赋值之后,算法开始对寄存器A、B中所存储的数值进行迭代约减,在约减的过程中,四个寄存器A、B、U、V需要始终维持A×y(t)≡U×x(t)modF(t)及B×y(t)≡V×x(t)modF(t)两个公式的恒等性,从A×y(t)≡U×x(t)modF(t)及B×y(t)≡V×x(t)modF(t)两个公式观察到,当寄存器A、B中所存储的数值的发生变化之后,寄存器U、V中所存储的数值也会随之发生变化;3)算法通过判断寄存器中所存储的中间数值的低位奇偶性,使用硬件操作中的移位和异或完成迭代与约减计算;4)经过一定轮次的迭代与约减计算,寄存器A中所存储的数值将会降为1,整个除法运算的过程终止,设此时的U为UA=1,则此时的恒等式将变为y(t)≡UA=1x(t)modF(t),即UA=1的值与公式r(t)=y(t)/x(t)modF(t)中的r(t)相同,此时,寄存器U存储的数值为模除结果r(t)。2.一种基于二进制域的椭圆曲线密码体制的改进模除方法,其特征在于包括以下步骤:1)当寄存器A的最低两位为00,寄存器A将连续进行两次左移;接着判断寄存器U的数值,如...

【专利技术属性】
技术研发人员:郭东辉林思远郭鑫
申请(专利权)人:厦门大学
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1