CN113254968A - 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质 - Google Patents

减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质 Download PDF

Info

Publication number
CN113254968A
CN113254968A CN202110627289.XA CN202110627289A CN113254968A CN 113254968 A CN113254968 A CN 113254968A CN 202110627289 A CN202110627289 A CN 202110627289A CN 113254968 A CN113254968 A CN 113254968A
Authority
CN
China
Prior art keywords
key
slave
host
key exchange
calculation result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110627289.XA
Other languages
English (en)
Other versions
CN113254968B (zh
Inventor
官志勇
刘玉兵
方虹
冯学裕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengtian Weiye Ningbo Chip Technology Co ltd
Original Assignee
Jingcheng Microelectronics Ningbo Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jingcheng Microelectronics Ningbo Co ltd filed Critical Jingcheng Microelectronics Ningbo Co ltd
Priority to CN202110627289.XA priority Critical patent/CN113254968B/zh
Publication of CN113254968A publication Critical patent/CN113254968A/zh
Application granted granted Critical
Publication of CN113254968B publication Critical patent/CN113254968B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种减少模逆计算的ECC密钥交换方法及系统,通过发起并响应互联网密钥交换建立请求;对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。优点:由于采用了模乘运算算法,只需一次点乘运算,避免了复杂费时的模逆运算,优化了硬件面积,减少了计算时间,开销最小,时间最短,最适合用硬件实现。

Description

减少模逆计算的ECC密钥交换方法、系统、网络设备及存储 介质
技术领域
本发明涉及数据安全技术领域,尤其涉及一种减少模逆计算的ECC密钥交换方法、系统、网络设备及存储介质。
背景技术
椭圆曲线密码学,简称ECC,是一种基于椭圆曲线数学理论实现的非对称加密算法,属于已知类型的公钥密码学,其中公钥和私钥的关系基于椭圆曲线在有限域上的代数结构。根据该方法,陷门函数是离散对数在有限域上的解。这个问题在本领域中被称为“离散对数问题”,在有限域上的椭圆曲线的情况下,是“椭圆曲线离散对数问题”,并且已经被证明比其他公钥方法所基于的问题更棘手。相比RSA而言,ECC优势是可以使用更短的密钥,来实现与RSA相当或更高的安全。据研究,160位的ECC密钥将提供与1024位RSA私钥等效的安全级别,210位的ECC密钥将提供与2048位RSA私钥等效的安全级别,以及512位的ECC私钥将提供与15360位RSA私钥等效的安全级别。因此,与RSA-类算法相比,ECC方法的这些更短的密钥长度极大地降低了相关计算的计算成本。
在互联网,多媒体等领域需要对创作内容或者个人隐私等内容进行保护时,需要对内容进行加解密。加解密需要对加密的密钥进行保护。为了保护密钥,不能公开的进行传播,而通常采用本地产生密钥的密钥交换方法来保护。密钥交换是一种共享密钥产生机制,通过某种算法,主机不需要公开密钥,从机却可以产生和主机一致的共享密钥。利用ECC的原理,有一种基本的密钥交换方法,比如ECDHKE。利用ECDHKE可以在主机和从机获得一致的密钥。这种方案只需要进行一次点乘运算,因此适合用硬件实现。
然而,目前密钥交换方案中需要进行模逆运算,计算量大,计算单元难以复用,计算时间长。针对上述这种情况,本发明提出了一种减少模逆计算的ECC密钥交换方法、系统、网络设备及存储介质,能够有效地对现有技术进行改进,以克服其不足。
发明内容
本发明针对现有技术的不足,本发明提供了一种减少模逆计算的ECC密钥交换方法、系统、网络设备及存储介质,以解决现有技术的上述问题,其具体方案如下:
第一方面,本发明提供了一种减少模逆计算的ECC密钥交换方法,所述方法包括:
发起并响应互联网密钥交换建立请求;
对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
优选地,所述发起并响应互联网密钥交换建立请求,所述方法包括:
所述从机通过互联网向所述主机密钥交换发送建立请求,所述主机接收到所述建立请求后预留会话通道,为所述密钥交换建立端到端的密钥会话。
优选地,所述主机生成主机密钥,并将相应计算结果发送至从机,所述方法包括:
所述主机通过预留会话通道从所述从机中读取所述公钥,并产生一个随机数;
所述主机根据所述公钥与所述随机数求出主机共享密钥,同时将所述主机共享密钥以雅可比坐标形式(Xz,Yz,Zz)存储相应计算结果;
所述主机计算主机公钥,并将所述主机公钥以笛卡尔坐标形式(xzg,yzg)存储计算结果,同时将笛卡尔坐标形式(xzg,yzg)结果传输至所述从机。
优选地,所述从机接收所述计算结果,并根据所述计算结果进行相关计算,所述方法包括:
所述从机接收所述笛卡尔坐标形式(xzg,yzg),并根据所述从机私钥与所述笛卡尔坐标形式(xzg,yzg)通过点乘运算求出从机共享密钥,同时将所述从机共享密钥以雅可比坐标形式(Xc,Yc,Zc)存储计算结果。
优选地,所述直至密钥交换过程完成为止,所述方法包括:
所述主机从所述从机读取所述Zc,并将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh);
将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),以完成所述密钥交换过程。
优选地,将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh)及将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),所述方法包括:
所述主机和从机对将所述坐标形式(Xz,Yz)与所述坐标形式(Xc,Yc)按以下置换公式:
Xh=Xz×Zc 2,Yh=Yz×Zc 3
Xs=Xc×Zz 2,Ys=Yc×Zz 3
求取(Xh,Yh)与(Xs,Ys)。
优选地,所述方法还包括:
所述从机向所述主机发送密钥更新请求信息,该请求信息中包括用于生成新的会话密钥的随机数;
所述主机接收所述密钥更新请求信息并进行有效性验证,若所述密钥更新请求信息有效,则生成新的会话密钥。
第二方面,本发明提供了一种减少模逆计算的ECC密钥交换系统,所述系统包括:
请求处理模块,用于发起并响应互联网密钥交换建立请求;
认证生成模块,用于对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
计算交换模块,用于所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
第三方面,本发明提供了一种减少模逆计算的ECC密钥交换网络设备,所述网络设备包括:
通信总线,用于实现处理器与存储器间的连接通信;
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如下步骤:
发起并响应互联网密钥交换建立请求;
对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的方法。
本发明的有益效果:本发明的一种减少模逆计算的ECC密钥交换方法、系统、网络设备及存储介质,通过发起并响应互联网密钥交换建立请求;对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。优点:由于采用了模乘运算算法,只需一次点乘运算,避免了复杂费时的模逆运算,优化了硬件面积,减少了计算时间,开销最小,时间最短,最适合用硬件实现。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,附图中的实施例不构成对本发明的任何限制,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明减少模逆计算的ECC密钥交换方法一实施例流程示意图。
图2是本发明减少模逆计算的ECC密钥交换系统一实施例结构示意图。
图3是本发明减少模逆计算的ECC密钥交换网络设备一实施例结构示意图。
具体实施方式
下面结合附图与实施例对本发明技术方案作进一步详细的说明,这是本发明的较佳实施例。应当理解,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例;需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
椭圆曲线(Elliptic curve,EC)是满足方程:
y2+axy+by=x3+cx2+dx+e
的曲线,其中x,y的计算是基于有限域的整数模运算。为了满足交换群的要求,其中的系数并不是任意的,需要满足一定的约束;而不同的系数代表不同族系的椭圆曲线。比如当椭圆曲线的特征不为2时,椭圆曲线可以可以简化成:
y2=x3+ax+b
为了简化讨论,以下的讨论以上式为基础。但是本文的结论并不局限于该式子限定的椭圆曲线类型。
满足上面方程的点(x,y)就是椭圆曲线中的点。这些点之间可以进行运算,不同点之间的加法运算称为点加;相同点的加法称之为倍点。运算法则:任意取椭圆曲线上两点P、Q(若P、Q两点重合,则做P点的切线)做直线交于椭圆曲线的另一点R’,过R’做y轴的平行线交于R,且规定P+Q=R。
ECC点乘可以分解成点加和倍点。具体而言,就是将乘法的系数用二进制展开,每个比特或者是1或者是0;1的话意味着该位需要进行点加操作;0的话意味着该位需要进行倍点操作。点加和倍点可以在不同的坐标系中实现,有不同的算法和开销。常用的坐标系有仿射坐标系和雅可比投影坐标系。其中,仿射坐标系也就是普通的笛卡尔坐标系。
笛卡尔坐标系中ECC上的两个不同点的加法:
GF(p):仿射坐标上不同点的加法:
(x1,y1)+(x2,y2)=(x3,y3)其中x1≠x2
Figure BDA0003102036500000041
x3=λ2-x1-x2(modp)
y3=λ(x1-x3)-y1(modp)
把直线方程y-y1=λ*(x-x1),利用一元三次方程的根与系数的关系,就可以得出x1+x2+x3=λ^2,其中,λ就是直线的斜率。
笛卡尔投影坐标系中ECC上的两个相同点的加法:
GF(p):仿射坐标上相同点的加法:
(x1,y1)+(x1,y1)=(x3,y3)其中x1≠0
Figure BDA0003102036500000042
x3=λ2-2x1(modp)
y3=λ(x1-x3)-y1(modp)
普通仿射坐标的点乘运算需要执行模逆运算,而模逆运算算法复杂,需要的时间很长,开销较大,因此不适合采用硬件实现。所以我们通常采用雅可比投影坐标。
雅可比坐标系ECC上的两个不同点的加法:
GF(p)
P=(X1,Y1,Z1);Q=(X2,Y2,Z2);P+Q=(X3,Y3,Z3) P≠±Q
(x,y)=(X/Z2,Y/Z3)→(X,Y,Z)
λ1=X1Z2 2
λ2=X2Z1 2
λ3=λ12
λ4=Y1Z2 3
λ5=Y2Z1 3
λ6=λ45
λ7=λ12
λ8=λ45
Z3=Z1Z2λ3
X3=λ6 27λ3 2
λ9=λ7λ3 2-2X3
Y3=(λ9λ68λ3 3)/2
雅可比投影坐标系ECC上的两个同点的加法:
GF(p):投射坐标上相同点的加法:
P=(X1,Y1,Z1);P+P=(X3,Y3,Z3)
(x,y)=(X/Z2,Y/Z3)→(X,Y,Z)
λ1=3X1 2+aZ1 4
Z3=2Y1Z1
λ2=4X1Y1 2
X3=λ1 2-2λ2
λ3=8Y1 4
λ4=λ2-X3
Y3=λ1λ43
使用雅可比投射坐标基本上不需要求逆运算。但是需要在开始和结束时进行这种仿射坐标和投射坐标之间的转换。而从雅可比坐标转换到仿射坐标仍然需要执行模逆运算。而如果采用快速的模逆运算算法,比如扩展欧几里得算法,其算法难以和普通的ECC操作共享操作单元,因此硬件开销还是很大。
本发明实施例技术方案的主要思想:发起并响应互联网密钥交换建立请求;对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
为了更好的理解上述的技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
实施例一
本发明一实施例提供了一种减少模逆计算的ECC密钥交换方法,如图1所示,该方法具体可以包括如下步骤:
步骤S101,发起并响应互联网密钥交换建立请求。
示例性地,本实施例应用于包括用户终端、路由器、服务器与业务系统的服务访问系统中,用户终端可以通过有线或无线通讯方式发送携带有比如设备标识、地址位置等用户信息的业务承载认证请求,路由器、服务器依次获取该用户终端发送的认证请求,并最终访问业务系统。本实施例中各步骤的执行主体具体可以为访问功能的各种设备。
本发明申请实施例中,具体地是所述从机通过互联网向所述主机密钥交换发送建立请求,所述主机接收到所述建立请求后预留会话通道,为所述密钥交换建立端到端的密钥会话。
需要说明的是,本实施例中各步骤的执行主体具体可以为物联网设备的电子设备,还可为其他可实现相同或相似功能的设备,例如:手机、个人电脑,PAD等,本实施例对此不作限制。
步骤S102,对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机。
作为示例,建立请求的合法性验证的内容可以包括:建立请求的安全性、授权建立主机的资格以及建立请求内容的合法性。
在本发明实施例的建立请求合法性验证处理应用到计算机中的情况下,数据处理工作者通过键盘等的输入接口,向上述设置的预定区域输入建立请求命令。
为确保安全性,在数据处理工作者要建立请求时,要求数据处理工作者输入合法的验证信息,以确定该建立请求是否有权限访问该主机的数据文件。例如,数据拥有者的主机可预先设置允许访问数据文件的合法账户,又称白名单用户。
当验证通过后,所述主机通过预留会话通道从所述从机中读取所述公钥,并产生一个随机数;所述主机根据所述公钥与所述随机数求出主机共享密钥,同时将所述主机共享密钥以雅可比坐标形式(Xz,Yz,Zz)存储相应计算结果;所述主机计算主机公钥,并将所述主机公钥以笛卡尔坐标形式(xzg,yzg)存储计算结果,同时将笛卡尔坐标形式(xzg,yzg)结果传输至所述从机。
步骤S103,所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
本发明申请实施例中,具体地是所述从机接收所述笛卡尔坐标形式(xzg,yzg),并根据所述从机私钥与所述笛卡尔坐标形式(xzg,yzg)通过点乘运算求出从机共享密钥,同时将所述从机共享密钥以雅可比坐标形式(Xc,Yc,Zc)存储计算结果。
进一步,所述主机从所述从机读取所述Zc,并将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh);将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),以完成所述密钥交换过程。
较佳地,所述将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh)及将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),所述方法具体可以包括:所述主机和从机对将所述坐标形式(Xz,Yz)与所述坐标形式(Xc,Yc)按以下置换公式:
Xh=Xz×Zc 2,Yh=Yz×Zc 3
Xs=Xc×Zz 2,Ys=Yc×Zz 3
求取(Xh,Yh)与(Xs,Ys)。
在一个可选实施例中,所述方法还可以包括:所述从机向所述主机发送密钥更新请求信息,该请求信息中包括用于生成新的会话密钥的随机数;所述主机接收所述密钥更新请求信息并进行有效性验证,若所述密钥更新请求信息有效,则生成新的会话密钥。
实施例二
本发明一实施例提供了一种减少模逆计算的ECC密钥交换系统,如图2所示,该系统具体可以包括如下模块:
请求处理模块,用于发起并响应互联网密钥交换建立请求。
示例性地,本实施例应用于包括用户终端、路由器、服务器与业务系统的服务访问系统中,用户终端可以通过有线或无线通讯方式发送携带有比如设备标识、地址位置等用户信息的业务承载认证请求,路由器、服务器依次获取该用户终端发送的认证请求,并最终访问业务系统。本实施例中各步骤的执行主体具体可以为访问功能的各种设备。
本发明申请实施例中,具体地是所述从机通过互联网向所述主机密钥交换发送建立请求,所述主机接收到所述建立请求后预留会话通道,为所述密钥交换建立端到端的密钥会话。
需要说明的是,本实施例中各步骤的执行主体具体可以为物联网设备的电子设备,还可为其他可实现相同或相似功能的设备,例如:手机、个人电脑,PAD等,本实施例对此不作限制。
认证生成模块,用于对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机。
作为示例,建立请求的合法性验证的内容可以包括:建立请求的安全性、授权建立主机的资格以及建立请求内容的合法性。
在本发明实施例的建立请求合法性验证处理应用到计算机中的情况下,数据处理工作者通过键盘等的输入接口,向上述设置的预定区域输入建立请求命令。
为确保安全性,在数据处理工作者要建立请求时,要求数据处理工作者输入合法的验证信息,以确定该建立请求是否有权限访问该主机的数据文件。例如,数据拥有者的主机可预先设置允许访问数据文件的合法账户,又称白名单用户。
当验证通过后,所述主机通过预留会话通道从所述从机中读取所述公钥,并产生一个随机数;所述主机根据所述公钥与所述随机数求出主机共享密钥,同时将所述主机共享密钥以雅可比坐标形式(Xz,Yz,Zz)存储相应计算结果;所述主机计算主机公钥,并将所述主机公钥以笛卡尔坐标形式(xzg,yzg)存储计算结果,同时将笛卡尔坐标形式(xzg,yzg)结果传输至所述从机。
计算交换模块,用于所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
本发明申请实施例中,具体地是所述从机接收所述笛卡尔坐标形式(xzg,yzg),并根据所述从机私钥与所述笛卡尔坐标形式(xzg,yzg)通过点乘运算求出从机共享密钥,同时将所述从机共享密钥以雅可比坐标形式(Xc,Yc,Zc)存储计算结果。
进一步,所述主机从所述从机读取所述Zc,并将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh);将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),以完成所述密钥交换过程。
较佳地,所述将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh)及将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),所述方法具体可以包括:所述主机和从机对将所述坐标形式(Xz,Yz)与所述坐标形式(Xc,Yc)按以下置换公式:
Xh=Xz×Zc 2,Yh=Yz×Zc 3
Xs=Xc×Zz 2,Ys=Yc×Zz 3
求取(Xh,Yh)与(Xs,Ys)。
在一个可选实施例中,所述方法还可以包括:所述从机向所述主机发送密钥更新请求信息,该请求信息中包括用于生成新的会话密钥的随机数;所述主机接收所述密钥更新请求信息并进行有效性验证,若所述密钥更新请求信息有效,则生成新的会话密钥。
实施例三
本发明一实施例提供了一种减少模逆计算的ECC密钥交换网络设备,如图3所示,该网络设备具体可以包括如下模块:
通信总线,用于实现处理器与存储器间的连接通信;
存储器,用于存储计算机程序;存储器可能包含高速RAM存储器,也可能还包含非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器可选的可以包含至少一个存储装置。
处理器,用于执行上述计算机程序以实现如下步骤:
首先,发起并响应互联网密钥交换建立请求。
示例性地,本实施例应用于包括用户终端、路由器、服务器与业务系统的服务访问系统中,用户终端可以通过有线或无线通讯方式发送携带有比如设备标识、地址位置等用户信息的业务承载认证请求,路由器、服务器依次获取该用户终端发送的认证请求,并最终访问业务系统。本实施例中各步骤的执行主体具体可以为访问功能的各种设备。
本发明申请实施例中,具体地是所述从机通过互联网向所述主机密钥交换发送建立请求,所述主机接收到所述建立请求后预留会话通道,为所述密钥交换建立端到端的密钥会话。
需要说明的是,本实施例中各步骤的执行主体具体可以为物联网设备的电子设备,还可为其他可实现相同或相似功能的设备,例如:手机、个人电脑,PAD等,本实施例对此不作限制。
然后,对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机。
作为示例,建立请求的合法性验证的内容可以包括:建立请求的安全性、授权建立主机的资格以及建立请求内容的合法性。
在本发明实施例的建立请求合法性验证处理应用到计算机中的情况下,数据处理工作者通过键盘等的输入接口,向上述设置的预定区域输入建立请求命令。
为确保安全性,在数据处理工作者要建立请求时,要求数据处理工作者输入合法的验证信息,以确定该建立请求是否有权限访问该主机的数据文件。例如,数据拥有者的主机可预先设置允许访问数据文件的合法账户,又称白名单用户。
当验证通过后,所述主机通过预留会话通道从所述从机中读取所述公钥,并产生一个随机数;所述主机根据所述公钥与所述随机数求出主机共享密钥,同时将所述主机共享密钥以雅可比坐标形式(Xz,Yz,Zz)存储相应计算结果;所述主机计算主机公钥,并将所述主机公钥以笛卡尔坐标形式(xzg,yzg)存储计算结果,同时将笛卡尔坐标形式(xzg,yzg)结果传输至所述从机。
最后,所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
本发明申请实施例中,具体地是所述从机接收所述笛卡尔坐标形式(xzg,yzg),并根据所述从机私钥与所述笛卡尔坐标形式(xzg,yzg)通过点乘运算求出从机共享密钥,同时将所述从机共享密钥以雅可比坐标形式(Xc,Yc,Zc)存储计算结果。
进一步,所述主机从所述从机读取所述Zc,并将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh);将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),以完成所述密钥交换过程。
较佳地,所述将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh)及将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),所述方法具体可以包括:所述主机和从机对将所述坐标形式(Xz,Yz)与所述坐标形式(Xc,Yc)按以下置换公式:
Xh=Xz×Zc 2,Yh=Yz×Zc 3
Xs=Xc×Zz 2,Ys=Yc×Zz 3
求取(Xh,Yh)与(Xs,Ys)。
在一个可选实施例中,所述方法还可以包括:所述从机向所述主机发送密钥更新请求信息,该请求信息中包括用于生成新的会话密钥的随机数;所述主机接收所述密钥更新请求信息并进行有效性验证,若所述密钥更新请求信息有效,则生成新的会话密钥。
本实施例中的处理器可能是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。上述处理器可以是微处理器或者上述处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
实施例四
本发明一实施例提供了一种计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现上述的减少模逆计算的ECC密钥交换方法。
综上所述,本发明实施例提供的一种减少模逆计算的ECC密钥交换方法、系统、网络设备及存储介质,通过发起并响应互联网密钥交换建立请求;对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。优点:由于采用了模乘运算算法,只需一次点乘运算,避免了复杂费时的模逆运算,优化了硬件面积,减少了计算时间,开销最小,时间最短,最适合用硬件实现。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明是参照本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种减少模逆计算的ECC密钥交换方法,其特征在于,所述方法包括:
发起并响应互联网密钥交换建立请求;
对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
2.根据权利要求1所述的减少模逆计算的ECC密钥交换方法,其特征在于,所述发起并响应互联网密钥交换建立请求,所述方法包括:
所述从机通过互联网向所述主机密钥交换发送建立请求,所述主机接收到所述建立请求后预留会话通道,为所述密钥交换建立端到端的密钥会话。
3.根据权利要求1所述的减少模逆计算的ECC密钥交换方法,其特征在于,所述主机生成主机密钥,并将相应计算结果发送至从机,所述方法包括:
所述主机通过预留会话通道从所述从机中读取所述公钥,并产生一个随机数;
所述主机根据所述公钥与所述随机数求出主机共享密钥,同时将所述主机共享密钥以雅可比坐标形式(Xz,Yz,Zz)存储相应计算结果;
所述主机计算主机公钥,并将所述主机公钥以笛卡尔坐标形式(xzg,yzg)存储计算结果,同时将笛卡尔坐标形式(xzg,yzg)结果传输至所述从机。
4.根据权利要求3所述的减少模逆计算的ECC密钥交换方法,其特征在于,所述从机接收所述计算结果,并根据所述计算结果进行相关计算,所述方法包括:
所述从机接收所述笛卡尔坐标形式(xzg,yzg),并根据所述从机私钥与所述笛卡尔坐标形式(xzg,yzg)通过点乘运算求出从机共享密钥,同时将所述从机共享密钥以雅可比坐标形式(Xc,Yc,Zc)存储计算结果。
5.根据权利要求4所述的减少模逆计算的ECC密钥交换方法,其特征在于,所述直至密钥交换过程完成为止,所述方法包括:
所述主机从所述从机读取所述Zc,并将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh);
将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),以完成所述密钥交换过程。
6.根据权利要求5所述的减少模逆计算的ECC密钥交换方法,其特征在于,将所述主机共享密钥部分结果(Xz,Yz)和从机Zc进行投影处理获得(Xh,Yh)及将所述从机雅可比坐标形式部分结果(Xc,Yc)和主机Zz进行投影处理获得(Xs,Ys),所述方法包括:
所述主机和从机对将所述坐标形式(Xz,Yz)与所述坐标形式(Xc,Yc)按以下置换公式:
Xh=Xz×Zc 2,Yh=Yz×Zc 3
Xs=Xc×Zz 2,Ys=Yc×Zz 3
求取(Xh,Yh)与(Xs,Ys)。
7.根据权利要求1-6任一项所述的减少模逆计算的ECC密钥交换方法,其特征在于,所述方法还包括:
所述从机向所述主机发送密钥更新请求信息,该请求信息中包括用于生成新的会话密钥的随机数;
所述主机接收所述密钥更新请求信息并进行有效性验证,若所述密钥更新请求信息有效,则生成新的会话密钥。
8.一种减少模逆计算的ECC密钥交换系统,其特征在于,所述系统包括:
请求处理模块,用于发起并响应互联网密钥交换建立请求;
认证生成模块,用于对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
计算交换模块,用于所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
9.一种减少模逆计算的ECC密钥交换网络设备,其特征在于,所述网络设备包括:
通信总线,用于实现处理器与存储器间的连接通信;
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如下步骤:
发起并响应互联网密钥交换建立请求;
对所述建立请求进行验证,当验证通过后,主机生成主机密钥,并将相应计算结果发送至从机;
所述从机接收所述计算结果,并根据所述计算结果进行相关计算,直至密钥交换过程完成为止。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法。
CN202110627289.XA 2021-06-04 2021-06-04 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质 Active CN113254968B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110627289.XA CN113254968B (zh) 2021-06-04 2021-06-04 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110627289.XA CN113254968B (zh) 2021-06-04 2021-06-04 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质

Publications (2)

Publication Number Publication Date
CN113254968A true CN113254968A (zh) 2021-08-13
CN113254968B CN113254968B (zh) 2022-07-05

Family

ID=77186517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110627289.XA Active CN113254968B (zh) 2021-06-04 2021-06-04 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质

Country Status (1)

Country Link
CN (1) CN113254968B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090041229A1 (en) * 2007-08-07 2009-02-12 Atmel Corporation Elliptic Curve Point Transformations
CN101931529A (zh) * 2010-08-09 2010-12-29 中兴通讯股份有限公司 一种数据加密方法、数据解密方法及节点
US20140064491A1 (en) * 2010-12-01 2014-03-06 King Fahd University Of Petroleum And Minerals Method of performing xz-elliptic curve cryptography for use with network securtiy protocols
CN106992855A (zh) * 2017-03-15 2017-07-28 西安电子科技大学 基于离散轨迹的密钥交换方法
CN109145616A (zh) * 2018-08-01 2019-01-04 上海交通大学 基于高效模乘的sm2加密、签名和密钥交换的实现方法及系统
CN111010277A (zh) * 2019-12-27 2020-04-14 北京海泰方圆科技股份有限公司 密钥交换方法、装置和存储介质、计算装置
EP3809627A1 (fr) * 2019-10-16 2021-04-21 IDEMIA France Procédé de génération d'une clé publique et entité électronique associée
CN112887096A (zh) * 2021-02-20 2021-06-01 山东区块链研究院 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090041229A1 (en) * 2007-08-07 2009-02-12 Atmel Corporation Elliptic Curve Point Transformations
CN101931529A (zh) * 2010-08-09 2010-12-29 中兴通讯股份有限公司 一种数据加密方法、数据解密方法及节点
US20140064491A1 (en) * 2010-12-01 2014-03-06 King Fahd University Of Petroleum And Minerals Method of performing xz-elliptic curve cryptography for use with network securtiy protocols
CN106992855A (zh) * 2017-03-15 2017-07-28 西安电子科技大学 基于离散轨迹的密钥交换方法
CN109145616A (zh) * 2018-08-01 2019-01-04 上海交通大学 基于高效模乘的sm2加密、签名和密钥交换的实现方法及系统
EP3809627A1 (fr) * 2019-10-16 2021-04-21 IDEMIA France Procédé de génération d'une clé publique et entité électronique associée
CN111010277A (zh) * 2019-12-27 2020-04-14 北京海泰方圆科技股份有限公司 密钥交换方法、装置和存储介质、计算装置
CN112887096A (zh) * 2021-02-20 2021-06-01 山东区块链研究院 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
侯惠芳: "基于CPK和改进ECDH算法的可证安全的认证协议", 《计算机科学》 *
杨军: "椭圆曲线点阵群:同时实施密钥交换与保密性的一种新途径", 《西南民族大学学报(自然科学版)》 *
樊华: "椭圆曲线密码算法的快速实现研究", 《中国优秀硕士论文全文数据库》 *

Also Published As

Publication number Publication date
CN113254968B (zh) 2022-07-05

Similar Documents

Publication Publication Date Title
CN110378139B (zh) 一种数据密钥保护方法、系统及电子设备和存储介质
CN107294714B (zh) 密钥协商方法、装置及其设备
CN104683099A (zh) 一种改进的加密/解密内容和分发加密内容的方法和装置
CN109919611B (zh) 基于对称密钥池服务器的抗量子计算区块链交易方法和系统
US20160269397A1 (en) Reissue of cryptographic credentials
CN111294203B (zh) 信息传输方法
WO2019110018A1 (zh) 通信网络系统的消息验证方法、通信方法和通信网络系统
CN109918888B (zh) 基于公钥池的抗量子证书颁发方法及颁发系统
CN106972924B (zh) 加密、解密、电子签章、验证签章的方法及装置
CN110380845B (zh) 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备
CN110138548B (zh) 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统
CN111080296B (zh) 一种基于区块链系统的验证方法及装置
JP2002535878A (ja) 公開鍵および秘密鍵による暗号化方法
WO2019110399A1 (en) Two-party signature device and method
CN109905229B (zh) 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统
WO2022267314A1 (zh) 一种基于智能合约的数据处理方法及装置
KR20200046481A (ko) 난수 생성기, 이를 포함하는 암호화 장치 및 이의 동작 방법
CN113779606A (zh) 一种降低隐私泄露风险的信息校验方法及系统
KR20230154929A (ko) 데이터 전송 방법, 장치 및 전자 기기, 저장 매체
CN109687961B (zh) 基于对称密钥池路由装置的抗量子计算区块链交易方法和系统
CN110176989B (zh) 基于非对称密钥池的量子通信服务站身份认证方法和系统
CN1968086B (zh) 用于通信网络的用户验证系统和方法
JP2956709B2 (ja) 公開鍵生成方法及び装置
JPH10240128A (ja) 暗号装置、暗号鍵生成方法及び暗号鍵管理方法、並びに素数生成装置及び素数生成方法
CN113254968B (zh) 减少模逆计算的ecc密钥交换方法、系统、网络设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230829

Address after: 315000 8 Binjiang Road, Cixi hi tech Industrial Development Zone, Ningbo City, Zhejiang Province

Patentee after: Chengtian Weiye (Ningbo) chip technology Co.,Ltd.

Address before: 315000 8 Binjiang Road, Cixi hi tech Industrial Development Zone, Ningbo City, Zhejiang Province

Patentee before: Jingcheng Microelectronics (Ningbo) Co.,Ltd.

TR01 Transfer of patent right