[发明专利]一种基于四基二进制底层模运算的快速加密系统有效
申请号: | 201910548928.6 | 申请日: | 2019-06-24 |
公开(公告)号: | CN110493003B | 公开(公告)日: | 2021-08-17 |
发明(设计)人: | 胡恩;熊晓明;黄宏敏;张明森 | 申请(专利权)人: | 广东工业大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L29/06 |
代理公司: | 广东广信君达律师事务所 44329 | 代理人: | 杨晓松 |
地址: | 510062 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于四基二进制底层模运算的快速加密系统,包括用于实现系统的签名验签和加解密功能的协议层,以及用于实现曲线域算术和素数域模运算的运算层,其中:所述的运算层包括标量乘模块,标量乘模块上连接有用于进行杂凑运算的SM3模块、用于产生随机数的随机数发生器,标量乘模块包括点加模块和倍点模块,用于实现模逆、模乘和模加减运算;本方案通过改进椭圆曲线加密系统的底层模运算,实现了基于四基二进制底层模运算的快速加密系统,本专利的主要创新点在于将四基二进制快速模运算引入椭圆曲线加密系统,进而提升加密系统的运算效率。 | ||
搜索关键词: | 一种 基于 二进制 底层 运算 快速 加密 系统 | ||
【主权项】:
1.一种基于四基二进制底层模运算的快速加密系统,其特征在于,包括用于实现系统的签名验签和加解密功能的协议层,以及用于实现曲线域算术和素数域模运算的运算层,其中:所述的运算层包括标量乘模块,标量乘模块上连接有用于进行杂凑运算的SM3模块、用于产生随机数的随机数发生器,标量乘模块包括点加模块和倍点模块,用于实现模逆、模乘和模加减运算;所述的系统工作方式如下:/n(1)对于发送方/n发送选择需要使用的功能,如选择对数据通信进行签名,则执行步骤10;如选择对通信数据进行加密,则执行步骤20:/n选择签名方式的流程如下:/n步骤10,发送方将私钥和待签名消息输入系统;/n步骤11,系统调用随机数发生器产生256位的随机数K;/n步骤12,检测随机数K是否符合加密要求,即判断K是否满足1≤K≤n-1;如不满足则通过随机数发生器重新产生随机数K;其中,n表示椭圆曲线基点G的阶;/n步骤13,将符合加密要求的随机数K发送给标量乘模块,计算标量乘[K]G;其中G表示椭圆曲线的基点;同时,发送方需要签名的消息传递至SM3模块进行杂凑运算;/n标量乘模块运算完毕后返回的结果是一个点的坐标,记为(x1,y1);SM3模块运算后返回的是一个比特串u;/n步骤14,计算r=x1 mod n,然后判断r是否为0,如果为0,则说明随机数K不符合要求,则重新生成随机数K并执行步骤12至步骤14;如果r不为0,则说明签名计算正确;/n步骤15,通过标量乘模块计算s=K*(u+r*dA)mod n,其中dA表示发送方的私钥;/n步骤16,判断s是否为0,如果为0则随机数K仍然不符合要求,重新生成随机数K并执行步骤12至步骤16;如果s不为0,则表明签名计算正确,得到签名数据(r,s)并将签名数据发送给接收方用于数据验证;/n选择加密方式的流程如下:/n步骤20,发送方将公钥和待加密的消息输入系统;/n步骤21、步骤22同步骤11、步骤12;/n步骤23,将符合加密要求的随机数K发送给标量乘模块计算标量乘[K]G;其中G表示椭圆曲线的基点,标量乘计算完毕后得到结果C1=(x1,y1),然后继续计算标量乘[K]PB,其中PB表示公钥;标量乘[K]PB的结果为一个点的坐标,记为s=(x2,y2);/n步骤24,计算C2=M异或x2,其中M表示待加密的消息;然后将(C1,C2)作为密文发送给接收方;/n(2)对于接收方/n接收方选择需要使用的功能,如选择对通信数据进行验证,则执行步骤30,如选择对通信数据进行解密,则执行步骤40:/n选择验证模式的流程如下:/n步骤30,接收方将公钥PA、来自于发送方的签名数据(r,s)、消息M输入到系统中;/n步骤31,系统判断签名数据(r,s)是否合法,即是否满足1≤r≤n-1,1≤s≤n-1;如r或s任意一个不满足,则判断签名不能通过,并发出错误警告;如签名合法,则进行下一步;/n步骤32,将M传递给SM3模块计算杂凑值,同时利用标量乘模块计算s的逆;计算完成后,得到杂凑值e和逆值u,然后分别计算e*u得到结果t1,计算r*u得到结果t2;/n步骤33,将t1、t2传递给标量乘模块,计算标量乘[t1]G和标量乘[t2]PA;将两个标量乘的结果相加得到结果(x1,y1),判断(x1,y1)是否为0,若是,则验证不通过,发出错误警告;若否,则进行下一步;/n步骤34,计算R=x1 mod n,并判断R与r是否相等,是则验证通过,系统给出提示“此消息来自目标发送方”;否则验证失败,即发出错误警告“此消息被破坏,或者来自未知的第三方”;/n选择解密模式的流程如下:/n步骤40,接收方将来自于发送方的密文(C1,C2)以及私钥dB输入系统;/n步骤41,将私钥dB传递给标量乘模块,计算标量乘[dB]C1,计算结果为一个坐标(x,y);/n步骤42,判断x,y是否同时为0,如果是则发出提示信息:“解密失败”,如果否,则计算C2异或x,得到的结果即消息M,将消息M输出。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东工业大学,未经广东工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910548928.6/,转载请声明来源钻瓜专利网。