CN113242129B - 一种基于格加密的端到端数据机密性和完整性保护方法 - Google Patents

一种基于格加密的端到端数据机密性和完整性保护方法 Download PDF

Info

Publication number
CN113242129B
CN113242129B CN202110508571.6A CN202110508571A CN113242129B CN 113242129 B CN113242129 B CN 113242129B CN 202110508571 A CN202110508571 A CN 202110508571A CN 113242129 B CN113242129 B CN 113242129B
Authority
CN
China
Prior art keywords
module
key
lwe
terminal
lattice
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.)
Active
Application number
CN202110508571.6A
Other languages
English (en)
Other versions
CN113242129A (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.)
Southeast University
Original Assignee
Southeast University
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 Southeast University filed Critical Southeast University
Priority to CN202110508571.6A priority Critical patent/CN113242129B/zh
Publication of CN113242129A publication Critical patent/CN113242129A/zh
Application granted granted Critical
Publication of CN113242129B publication Critical patent/CN113242129B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于格加密的端到端数据机密性和完整性保护方法,采用自主设计基于格的密钥协商算法,实现终端与终端之间密钥协商,生成安全的会话密钥;通过自主设计基于R‑LWE难题的加解密算法,实现终端与终端之间的数据加解密,完成数据机密性保护,并且可防止量子计算攻击;通过自主设计基于R‑LWE难题的PDP完整性验证算法,实现终端与终端之间数据签名生成、标签证据聚合、以及数据完整性验证,同时支持批量验证,降低标签生成开销,完成数据完整性保护,并且可防止量子计算攻击;本发明可以实现端到端数据机密性和完整性保护,同时防止量子计算攻击,同时通过设计一种基于格的密钥协商方法,使得本方法更加高效、安全、实用。

Description

一种基于格加密的端到端数据机密性和完整性保护方法
技术领域
本发明涉及计算机网络通信领域以及网络安全领域,特别涉及基于格加密的端到端数据机密性和完整性保护方法。
背景技术
随着量子计算的快速发展,格密码被认为是目前最有前途的抵抗量子计算机攻击的密码体制。格理论主要是由Ajtai提出的,证明了格上困难问题在一般情况下的困难性等价于最差情况下的困难性。之后,基于格理论的密码方案迅速发展。目前对格密码的研究主要集中在基于格的密码方案设计以及格上困难问题的求解等。基于格的密码方案设计主要包括加密算法、签名算法和密钥协商算法三个方面。基于格的密码方案主要有以下优势:第一,基于格的加密、签名和密钥协商算法能够有效抵抗量子计算攻击;第二,基于格理论设计的算法更加简单高效。基于格密码的端到端数据传输方案目前还很少,传统的端到端数据传输方案主要基于传统的密码学难题,无法抵抗量子计算攻击,端到端数据的机密性和完整性也无法得到保证。本专利主要针对端到端数据传输设计了一种基于格加密的数据机密性和完整性保护方法,该方法基于格难题,可以抵抗量子计算攻击,并且简单高效,同时可以实现数据传输过程数据机密性和完整性保护。
专利申请CN201610494970.0一种基于标识密码系统的前向端到端安全即时通信方法,该方法包括注册部分,建立会话通道,双方正式通信;在注册部分,密钥生成中心生成系统参数,为每台设备生成并分发密钥;在建立会话通道部分,由通信的任意一方发送第一个消息,发起加密通道的建立;另一方回复消息后,完成认证过程,并完成零时密钥和会话密钥的初始化;在双方正式通信部分,会话密钥按照协议所阐述的策略更新临时密钥和会话密钥;该方法基于标识的密码系统,使用双线性对的方式进行密钥协商;于是该方法的密钥协商和加密阶段都无法抵抗量子计算攻击,并且该方法无法保证传输过程中数据的完整性;
专利申请CN201711287004.2端到端认证及密钥协商方法、装置及系统,该系统包括第一通信设备和第二通信设备,其中第一通信设备用语想第二通信设备发送第一条消息,第一条消息包括第一密钥生成参数,第二通信设备用语对第一条通信设备进行身份认证并接收第一通信设备发送的第一条消息,根据第二密钥生成参数以及第一条消息中包含的第一密钥生成参数生成安全参数,第二通信设备向第一通信设备发送第二条消息,第二条消息包括第二密钥生成参数;第一通信设备用语对第二通信设备进行身份认证,并接收第二条消息,根据第一条密钥生成参数和第二条消息中的第二密钥生成参数生成安全参数,以实现端到端的身份认证以及密钥协商;该方法存在中间人攻击、以及无法抵抗量子计算攻击;
专利申请201710815182.1一种基于格密码的双向认证密钥协商方法与系统,该方法设计了一种基于格密码的数字证书;其次,初始化参与密钥协商双方的格证书以及双方的参数,然后互相交换对方的证书并认证,若认证失败,则直接退出,不进行下一步操作;若认证成功,互相交换参数,根据自己的参数与对方的参数计算出会话密钥;该发明所公开的方法,设计了一种格证书,让格证书参与了认证过程,同时还设计了一种基于格密码的密钥协商方法;但是该方案需要过多的交互过程,在实际中很难实现,协商过程过于复杂,参数取值过大,增加了系统的开销。同时,该方案只涉及密钥协商,没有涉及传输过程数据的机密性和完整性保证问题;
专利申请201811017203.6基于容器的即时通信软件的端到端加密系统及方法,该方法包括数据处理模块、密钥管理模块、数据加解密模块、密码算法模块、Hook处理模块和沙盒模块;该方法保证用户本地数据的存储安全,以及保证用户数据的传输安全;用户可以选择是否对数据进行加密,以及用户可以自定义密钥,并可定期进行密钥更新修改;该方案也存在许多问题,一方面,如果在传输的过程中,攻击者将密文进行篡改,则接收端收到的密文则是错误的,于是解密得到的数据也是错误的;另一方面,随着量子计算机的发展,现有的加密算法无法抵抗量子计算攻击,所以该方法在量子计算环境下是不安全的;
专利申请202011041819.4适用于即时通信的端到端加密方法及系统,该系统包括信息发送方生成源链密钥并对源链密钥加密发送给信息接收方,信息接收方解获取源链密钥明文;信息发送方和接收方均利用所述源链密钥通过相同的加密算法生成相同的会话密钥和子链密钥,信息发送方利用会话密钥对信息加密并发送给信息接收方,信息接收方利用会话密钥解密获取信息明文;该系统保证了每条信息使用不同的密钥加密,可以实现一次一密,提高了系统的安全性;如果该系统中源链密钥在加密传输的过程中被攻击获取,则以后的加解密都是无效的,即该系统是不安全的;并且该系统没有保证密文的完整性,以及该方案无法防止量子计算攻击;
专利申请CN202010707091.8一种端到端的数据安全传输网络通信方法及装置,该方法利用NAT穿透技术在终端和网络附属存储设备之间简历点对点的虚拟数据传输连接通道,基于UDP协议进行自有数据封包格式的数据传输;在传输过程中,利用预设的对称加密算法在数据发送方将原始数据和加密密钥进行加密运算处理后,得到加密密文,并将加密密文发送给接收方;该方法中加密算法使用传统的对称加密方法,并且需要通信双方预先分发好密钥,预先分发密钥在实际系统中不可取;并且该方法没有保证传输过程中数据的完整性,一旦完整性被破坏,则接收方收到的数据是错误的;此外,该方案基于传统的密码学难题,不能防止量子计算攻击;
专利申请202011344414.8一种基于混合加密算法的电力数据隐私通信方法,该方法中发送方随机生成AES会话密钥,并使用会话密钥对待传输的电力数据明文m进行加密,得到密文M;发送方采用椭圆加密算法会话密钥进行加密,得到加密后的密钥,并使用数字签名;将密文M与加密后的密钥及数字签名一起发送给接收方;接收方使用ECC解密算法解密出会话密钥并进行签名验证;若签名验证通过,则使用会话密钥对密文M进行解密,得到原电力数据m;若签名不通过,返回错误信息。该发明通过混合加密,保证数据的机密性和完整性,但是该方案还存在很多的问题,一方面该方案采用椭圆加密算法对会话密钥进行加密,无法抵抗量子计算攻击;另一方面采用会话密钥直接对数据进行加密,同样无法抵抗量子计算攻击,并且效率比较低。
专利申请202011026219.0一种认证加密方法、验证解密方法和通信方法;发送端的认证加密方法包括:生成可重复使用的初始向量;根据明文和附属数据,结合所述、共享密钥生成消息认证码;根据初始向量和消息认证码结合共享密钥生成密钥流;根据密钥流对明文进行加密,将获得的密文和所述消息认证码、附属数据、初始向量发送至接收端;接收端的验证解密方法包括:根据消息认证码、初始向量结合共享密钥生成密钥流;根据密钥流解析密文,生成明文;根据明文和初始向量,结合共享密钥、生成消息认证码;判断两个消息认证码是否一致,如果一致,输出明文;该方案使用共享密钥在实际中是不可行的,容易遭受攻击,则无法保证数据的机密性,并且,该方案无法抵抗量子计算攻击。
专利申请202011090575.9一种云存储公开审计方法,提供了一种云存储公开审计方法,其中包括通过采用基于格的云存储公开审计方法并结合轻量级认证技术,将完整性审计工作委托给一个能够获悉公钥的可信第三方来完成;由于该方法基于格难题,因此一方面该方法能够抵抗量子计算攻击,具有较好的安全性,另一方面终端用户所需要的计算开销较小,文件上传与验证过程的效率较高;但是,该方案没有考虑公开审计过程中的数据隐私保护问题;
期刊《计算机研究与发展》2017.10期论文“RAKA:一种新的基于Ring-LWE的认证密钥协商协议”,该论文基于环上带错误学习问题困难假设,采用调和技术构造了一种新的认证密钥协商协议RAKA,该方案采用格上陷门函数技术提供了单向认证功能,并且在Ring-LWE假设下证明是安全的;该方案的安全性是基于格上困难问题,因此可以抵抗量子计算攻击;但该研究内容存在以下缺陷:第一、该方案协商过程中没有身份认证,不能抵抗中间人攻击;第二、该方案采用陷门函数,运算复杂度高;第三,该方案只涉及密钥协商,没有涉及传输保证数据的机密性和完整性;
期刊《西安电子科技大学学报》2015.01期论文“两方量子密钥协商协议的改进”,针对Hsueh和Chen的基于最大纠缠态两方量子密钥协商协议存在安全漏洞,即发送方可单方控制共享密钥的问题,通过增加接收方的幺正操作给出了一个改进方案.利用幺正操作来代替对发送方的安全检测,这从根本上满足了量子密钥协商中各参与者都贡献于共享密钥的生成和分配这一基本要求,从而使其抗发送方攻击的安全性依赖于基本物理原理而非检测光子技术。该方案可有效抵抗外部攻击和参与者攻击;但该研究内容存在以下缺陷:第一、该方案借助了安全检测技术和幺正操作,不适用于一般情形下;第二、此研究只涉及密钥协商,不涉及后续数据传输,无法保证传输数据的机密性和完整性。
发明内容
针对上述提到的量子计算攻击和端到端数据机密性和完整性保护问题,本发明基于格加密设计了一种端到端数据机密性和完整性保护方法。该方法适用于任何端到端数据加密,整个密钥协商,数据加解密,数据完整性验证过程,都是基于格难题设计的,在实现数据机密性和完整性保护的同时,还能够抵抗量子计算攻击。
为了达到以上目的,本发明提供如下技术方案:
本发明提供一种基于格加密的端到端数据机密性和完整性保护方法,基于格的参数生成模块,终端A基于格的密钥协商模块,终端B基于格的密钥协商模块,基于R-LWE的加密模块,基于R-LWE的解密模块,基于R-LWE的PDP签名生成模块,以及基于R-LWE的PDP完整性验证模块,其特征在于:
所述的基于格的参数生成模块负责定义基于格难题的参数,定义基于误差学习难题R-LWE难题的环R,足够大的奇素数q,格上的离散高斯分布参数,以及陷门函数生成算法等相关参数,从而完成基于格的参数生成;
所述的终端A基于格的密钥协商模块负责与终端B基于格的密钥协商模块进行密钥协商,主要负责生成终端A基于格的密钥协商模块自己的公私钥对,将公钥发送给终端B基于格的密钥协商模块,在接收到终端B基于格的密钥协商模块的公钥后计算出一个值,对该值进行变换和MD5处理后得到会话密钥;
所述的终端B基于格的密钥协商模块负责与终端A基于格的密钥协商模块进行密钥协商,主要负责生成终端B基于格的密钥协商模块自己的公私钥对,将公钥发送给终端A基于格的密钥协商模块,在接收到终端A基于格的密钥协商模块的公钥后计算一个值,对该值进行变换和MD5处理后得到会话密钥;
所述的基于R-LWE的加密模块负责对明文数据块进行加密处理,主要采用终端A基于格的密钥协商模块协商得到的会话密钥对明文数据块进行加密,然后将密文传递给基于R-LWE的PDP签名生成模块生成标签;
所述的基于R-LWE的解密模块负责根据基于R-LWE的PDP完整性验证模块所接收的密文,使用会话密钥对密文进行解密,得到明文消息;
所述的基于R-LWE的PDP签名生成模块负责对基于R-LWE的加密模块所生成的密文产生对应的标签,并将多个密文标签进行聚合生成标签证据,然后将多个密文和标签证据聚合后发送给基于R-LWE的PDP完整性验证模块;
所述的基于R-LWE的PDP完整性验证模块负责验证收到来自基于R-LWE的PDP签名生成模块的多个密文和标签证据,判断密文是否完整,若判断密文完整,则将密文传递给基于R-LWE解密模块,否则将密文丢弃。
作为本发明进一步改进,所述的基于格的参数生成模块包括初始化参数的选择,陷门函数的生成。首先,设定
Figure BDA0003058339320000051
其中n为2的幂次方,f(x)在有理域内不可约;令
Figure BDA0003058339320000052
为整数多项式对f(x)取余的环,其中R为小于n阶的多项式;q=1mod2n为足够大的公共素数,通过求余所得,使得
Figure BDA0003058339320000053
其中Rq的元素为系数为{0,···,q-1}的多项式;
Figure BDA0003058339320000054
为误差分布,H为哈希函数,
Figure BDA0003058339320000055
H2:{0,1}*→Rq;陷门函数生成算法为RLWETrapGen(n,q),其中,n=k+2,输入为k和q,选择随机数a∈Rq,确定ν=(ν12,···,νk)和ρ=(ρ12,···,ρk),其中
Figure BDA0003058339320000056
输出为C=(a,1,g1-(aρ11),···,gk-(aρkk))和陷门TC=(ρ,ν),其中,g=(g1,g2,···,gk);Cha(·)是一个输入为x∈Zp,输出为y=Cha(x)∈{0,1}的函数。Mod2(·)是一个输入为x∈Zp和y,输出为k=Mod2(x,y)∈{0,1}的函数。
作为本发明的进一步改进,所述的终端A基于格的密钥协商模块主要负责与所述终端B基于格的密钥协商模块进行密钥协商生成会话密钥。终端A基于格的密钥协商模块选择随机数a∈Rq,从χ中选择误差向量ei,选择私钥si∈Rq,公钥为pi=a·si+2ei∈Rq,其中
Figure BDA0003058339320000057
然后将公钥发送给所述终端B基于格的密钥协商模块;终端B基于格的密钥协商模块生成公私钥对后,将终端B基于格的密钥协商模块的公钥及协商信息发送给终端A基于格的密钥协商模块,终端A基于格的密钥协商模块收到终端B基于格的密钥协商模块的公钥pj和wj,ep后,计算出一个值ki=(pj·si+2ep)·ep+2ei',其中
Figure BDA0003058339320000058
接着计算σi=mod2(ki,wi)∈{0,1}n,最后计算出会话密钥ski=MD5(σi)。
作为本发明的进一步改进,所述的终端B基于格的密钥协商模块主要负责与所述的终端A基于格的密钥协商模块进行密钥协商生成会话密钥;终端B基于格的密钥协商模块选择随机数a∈Rq,从χ中选择误差向量ej,选择私钥sj∈Rq,公钥为pj=a·sj+2ej∈Rq,其中
Figure BDA0003058339320000059
在收到来自终端A基于格的密钥协商模块的协商信息后,计算kj=(pi·sj+2ep)·ep+2e'j,其中
Figure BDA0003058339320000061
wj=Cha(kj)∈{0,1}n,然后计算σj=mod2(kj,wj)∈{0,1}n,最后计算会话密钥skj=MD5(σj);密钥协商完成,会话密钥为sk=ski=skj
作为本发明的进一步改进,所述的基于R-LWE的加密模块主要采用对称加密,选择明文消息M={m1,m2,···,mn},mi∈{0,1},sk为所述的终端A基于格的密钥协商模块协商生成的会话密钥,ei满足
Figure BDA0003058339320000062
在环上选择随机数a∈Rq;所述的基于R-LWE的加密模块生成密文ci=(a·sk+ei+mi)modM,然后将生成的密文块传递给基于R-LWE的PDP签名生成模块生成标签,完成完整性保护。
作为本发明的进一步改进,所述的基于R-LWE的解密模块接收基于R-LWE的PDP完整性验证模块验证后的密文,利用协商所得会话密钥sk进行解密;解密过程通过计算
Figure BDA0003058339320000063
其中ei为误差向量,可以忽略不计,最后得到明文消息。
作为本发明的进一步改进,所述的基于R-LWE的PDP签名生成模块包括标签生成模块和标签聚合模块;负责生成密文的标签,并根据PDP技术聚合标签生成标签证据。
所述的标签生成模块选择向量g=(20,21,…,2k-1),通过RLWETrapGen(n,q)算法生成向量
Figure BDA0003058339320000064
和门陷TC,其中q和n是两个整数;
Figure BDA0003058339320000065
是一个随机置换函数,其中
Figure BDA0003058339320000066
根据终端A基于格的密钥协商模块所生成的会话密钥生成签名密钥:sksig=(Τ(ν),T(ρ)),其中
Figure BDA0003058339320000067
对于多个来自基于R-LWE加密模块密文数据块C={c1,c2,…,cL},计算ci′=rici,其中ri=H1(i);随机选择a∈Rq,并计算B=(a,1,g1-(aρ1+v1),…,gk-(aρk+vk));计算hi=H2(i)+Cci′,其中1≤i≤L,H2:{0,1}*→Rq;最后计算ci′的标签ti=RLWESamplePre(B,T,hi,s),其中s是高斯抽样参数;
所述的标签聚合模块根据标签生成模块生成的标签计算签名证据
Figure BDA0003058339320000068
其中di=Hκ(i),然后将Γ={δ,c}发送给基于R-LWE的PDP完整性验证模块。
作为本发明的进一步改进,所述的基于R-LWE的PDP完整性验证模块接收到基于R-LWE的PDP签名生成模块信息后,计算
Figure BDA0003058339320000069
其中ξ=RLWESamplePre(C,TC,w,s),w←U Rq;然后判断μ′=Bδ是否成立,如果该等式成立,则表明收到的多个密文都是完整的,并将密文发送给基于R-LWE的解密模块;否则表明密文的完整性被破坏,于是将密文数据丢弃。
有益效果
与现有技术相比,本发明的有益效果在于:本发明提供了一种基于格加密的端到端数据机密性和完整性保护方法;本发明基于格难题完成密钥协商,数据加密和数据完整性验证,可以有效抵抗量子计算攻击。在密钥协商过程,终端的公私钥是基于格难题构建的,在传输的过程可以有效抵抗量子计算攻击,协商得到的会话密钥只有双方知道,同时可防止中间人攻击,安全性非常高。加密过程采用基于R-LWE难题的格加密,非常简单高效,加密工作量小,并且可以抵抗量子计算攻击。同时,基于R-LWE的PDP数据完整性验证可以实现批量验证,降低标签的通信开销;并且该方法基于格上的R-LWE难题实现,可以防止抗量子计算攻击。本发明功能完整,既能保证数据的机密性,又能保证数据的完整性,并且可以防止量子计算攻击。
附图说明
图1是本发明的整体框图。
图2是本发明的密钥协商模型图。
图3是本发明的加解密流程图。
图4是本发明的标签证据生成流程图。
图5是本发明的标签证据验证流程图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
如图1所示为本发明的整体框图,本发明提供了一种基于格加密的端到端数据机密性和完整性保护方法,包括基于格的参数生成模块1,终端A基于格的密钥协商模块2,终端B基于格的密钥协商模块3,基于R-LWE的加密模块4,基于R-LWE的解密模块5,基于R-LWE的PDP签名生成模块6以及基于R-LWE的PDP完整性验证模块7。基于格的参数生成模块1主要负责系统初始化参数的选择和陷门函数的生成。终端A基于格的密钥协商模块2和终端B基于格的密钥协商模块3进行交互,主要完成基于格难题的密钥协商,得到会话密钥,为后面的加解密及完整性验证提供密钥。基于R-LWE的加密模块4和基于R-LWE的解密模块5进行交互,主要完成端到端数据基于R-LWE的加解密,保证数据的机密性,并且抵抗量子攻击。基于R-LWE的PDP签名生成模块6和基于R-LWE的PDP完整性验证模块7进行交互,主要完成基于R-LWE的PDP完整性验证,保证数据的完整性,同时可以抵抗量子计算攻击。
所述的基于R-LWE的PDP签名生成模块6包括标签生成模块6-1和标签聚合模块6-2;标签生成模块主要负责生成密文的标签,标签聚合模块主要负责并根据PDP技术聚合标签生成标签证据,然后将标签证据发送给基于R-LWE的PDP完整性验证模块7进行完整性验证,根据标签证据来判断受到的密文是否完整,来确保密文消息的完整性。该标签的生成基于R-LWE难题,所以完整性验证模块能够抵抗量子攻击。
基于格的参数生成模块完成初始化参数的选择,陷门函数的生成。首先,设定
Figure BDA0003058339320000081
其中n为2的幂次方,f(x)在有理域内不可约;令
Figure BDA0003058339320000082
为整数多项式对f(x)取余的环,其中R为小于n阶的多项式;q=1mod2n为足够大的公共素数,通过求余所得,使得
Figure BDA0003058339320000083
其中Rq的元素为系数为{0,···,q-1}的多项式;
Figure BDA0003058339320000084
为误差分布,H为哈希函数,
Figure BDA0003058339320000085
H2:{0,1}*→Rq;陷门函数生成算法为RLWETrapGen(n,q),其中,n=k+2,输入为k和q,选择随机数a∈Rq,确定ν=(ν12,···,νk)和ρ=(ρ12,···,ρk),其中
Figure BDA0003058339320000086
输出为C=(a,1,g1-(aρ11),···,gk-(aρkk))和陷门TC=(ρ,ν),其中,g=(g1,g2,···,gk);Cha(·)是一个输入为x∈Zp,输出为y=Cha(x)∈{0,1}的函数。Mod2(·)是一个输入为x∈Zp和y,输出为k=Mod2(x,y)∈{0,1}的函数。
如图2所示为本发明的密钥协商模型图。终端A基于格的密钥协商模块选择随机数a∈Rq,从χ中选择误差向量ei,选择私钥si∈Rq,公钥为pi=a·si+2ei∈Rq,其中
Figure BDA0003058339320000087
然后将公钥发送给所述终端B基于格的密钥协商模块;终端B基于格的密钥协商模块选择随机数a∈Rq,从χ中选择误差向量ej,选择私钥sj∈Rq,公钥为pj=a·sj+2ej∈Rq,其中
Figure BDA0003058339320000088
在收到来自终端A基于格的密钥协商模块的协商信息后,计算kj=(pi·sj+2ep)·ep+2e'j,其中
Figure BDA0003058339320000089
wj=Cha(kj)∈{0,1}n,然后计算σj=mod2(kj,wj)∈{0,1}n,最后计算会话密钥skj=MD5(σj);终端A基于格的密钥协商模块收到终端B基于格的密钥协商模块的公钥pj和wj,ep后,计算出一个值ki=(pj·si+2ep)·ep+2ei',其中
Figure BDA00030583393200000810
接着计算σi=mod2(ki,wi)∈{0,1}n,最后计算出会话密钥ski=MD5(σi)。到此,密钥协商完成,会话密钥为sk=ski=skj。上述的密钥协商是基于格难题中的R-LWE难题,该难题已经被证明可以抵抗量子计算攻击,所以整个密钥协商能够抵抗量子计算攻击。该密钥协商只需要两轮即可完成,提高了系统效率,同时安全性得到了保证,协商的密钥只有双方知晓,并且可以抵抗中间人攻击。
如图3所示为本发明的加解密流程图。基于R-LWE的加密模块主要采用对称加密,选择明文消息M={m1,m2,···,mn},mi∈{0,1},sk为所述的终端A基于格的密钥协商模块协商生成的会话密钥,ei满足
Figure BDA00030583393200000811
在环上选择随机数a∈Rq;所述的基于R-LWE的加密模块生成密文ci=(a·sk+ei+mi)modM,然后将生成的密文块传递给基于R-LWE的PDP签名生成模块生成标签,完成完整性保护。基于R-LWE的解密模块接收基于R-LWE的PDP完整性验证模块验证后的密文,利用协商所得会话密钥sk进行解密;解密过程通过计算
Figure BDA0003058339320000091
其中ei为误差向量,可以忽略不计,最后得到明文消息。加解密过程采用对称加密,一次可以完成多比特加密,简单高效,节省系统开销。密钥是通过密钥协商得到的,同时保证了密钥的安全性。整个加解密过程基于R-LWE难题,不仅保证了数据的机密性,而且可以抵抗量子计算攻击。
如图4所示为本发明的标签证据生成流程图。标签生成模块选择向量g=(20,21,…,2k-1),通过RLWETrapGen(n,q)算法生成向量
Figure BDA0003058339320000092
和门陷TC,其中q和n是两个整数;
Figure BDA0003058339320000093
是一个随机置换函数,其中
Figure BDA0003058339320000094
根据终端A基于格的密钥协商模块所生成的会话密钥生成签名密钥:sksig=(Τ(ν),T(ρ)),其中
Figure BDA0003058339320000095
对于多个来自基于R-LWE加密模块密文数据块C={c1,c2,…,cL},计算ci′=rici,其中ri=H1(i);随机选择a∈Rq,并计算B=(a,1,g1-(aρ1+v1),…,gk-(aρk+vk));计算hi=H2(i)+Cci′,其中1≤i≤L,H2:{0,1}*→Rq;最后计算ci′的标签ti=RLWESamplePre(B,T,hi,s),其中s是高斯抽样参数;所述的标签聚合模块根据标签生成模块生成的标签计算签名证据
Figure BDA0003058339320000096
其中di=Hκ(i),然后将Γ={δ,c}发送给基于R-LWE的PDP完整性验证模块。
如图5所示为本发明的的标签证据验证流程图。基于R-LWE的PDP完整性验证模块接收到基于R-LWE的PDP签名生成模块信息后,计算
Figure BDA0003058339320000097
其中ξ=RLWESamplePre(C,TC,w,s),w←U Rq;然后判断μ′=Bδ是否成立,如果该等式成立,则表明收到的多个密文都是完整的,并将密文发送给基于R-LWE的解密模块;否则表明密文的完整性被破坏,于是将密文数据丢弃。完整性验证过程采用基于R-LWE的PDP数据完整性验证,可以完成批量验证,降低标签的通信开销;同时该方法是基于格上的R-LWE难题实现,可以防止量子计算攻击。

Claims (8)

1.一种基于格加密的端到端数据机密性和完整性保护方法,包括基于格的参数生成模块(1),终端A基于格的密钥协商模块(2),终端B基于格的密钥协商模块(3),基于R-LWE的加密模块(4),基于R-LWE的解密模块(5),基于R-LWE的PDP签名生成模块(6),以及基于R-LWE的PDP完整性验证模块(7),其特征在于:
所述的基于格的参数生成模块(1)负责定义基于格难题的参数,定义基于误差学习难题R-LWE难题的环R,足够大的奇素数q,格上的离散高斯分布参数,以及陷门函数生成算法的 相关参数,从而完成基于格的参数生成;
所述的终端A基于格的密钥协商模块(2)负责与终端B基于格的密钥协商模块(3)进行密钥协商,负责生成终端A基于格的密钥协商模块(2)自己的公私钥对,将公钥发送给终端B基于格的密钥协商模块(3),在接收到终端B基于格的密钥协商模块(3)的公钥后计算出一个值,对该值进行变换和MD5处理后得到会话密钥;
所述的终端B基于格的密钥协商模块(3)负责与终端A基于格的密钥协商模块(2)进行密钥协商,负责生成终端B基于格的密钥协商模块(3)自己的公私钥对,将公钥发送给终端A基于格的密钥协商模块(2),在接收到终端A基于格的密钥协商模块(2)的公钥后计算一个值,对该值进行变换和MD5处理后得到会话密钥;
所述的基于R-LWE的加密模块(4)负责对明文数据块进行加密处理,采用终端A基于格的密钥协商模块(2)协商得到的会话密钥对明文数据块进行加密,然后将密文传递给基于R-LWE的PDP签名生成模块(6)生成标签;
所述的基于R-LWE的解密模块(5)负责根据基于R-LWE的PDP完整性验证模块(7)所接收的密文,使用会话密钥对密文进行解密,得到明文消息;
所述的基于R-LWE的PDP签名生成模块(6)负责对基于R-LWE的加密模块(4)所生成的密文产生对应的标签,并将多个密文标签进行聚合生成标签证据,然后将多个密文和标签证据聚合后发送给基于R-LWE的PDP完整性验证模块(7);
所述的基于R-LWE的PDP完整性验证模块(7)负责验证收到来自基于R-LWE的PDP签名生成模块(6)的多个密文和标签证据,判断密文是否完整,若判断密文完整,则将密文传递给基于R-LWE解密模块(5),否则将密文丢弃。
2.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的基于格的参数生成模块(1)包括初始化参数的选择,陷门函数的生成;首先,设定
Figure FDA0003058339310000011
其中n为2的幂次方,f(x)在有理域内不可约;令
Figure FDA0003058339310000012
为整数多项式对f(x)取余的环,其中R为小于n阶的多项式;q=1mod2n为足够大的公共素数,通过求余所得,使得
Figure FDA0003058339310000021
其中Rq的元素为系数为{0,…,q-1}的多项式;
Figure FDA0003058339310000022
为误差分布,H为哈希函数,
Figure FDA0003058339310000023
H2:{0,1}*→Rq;陷门函数生成算法为RLWETrapGen(n,q),其中,n=k+2,输入为k和q,选择随机数a∈Rq,确定ν=(ν12,…,νk)和ρ=(ρ12,…,ρk),其中
Figure FDA0003058339310000024
输出为C=(a,1,g1-(aρ11),…,gk-(aρkk))和陷门TC=(ρ,ν),其中,g=(g1,g2,…,gk);Cha(·)是一个输入为x∈Zp,输出为y=Cha(x)∈{0,1}的函数; Mod2(·)是一个输入为x∈Zp和y,输出为k=Mod2(x,y)∈{0,1}的函数。
3.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的终端A基于格的密钥协商模块(2)负责与所述终端B基于格的密钥协商模块(3)进行密钥协商生成会话密钥;终端A基于格的密钥协商模块(2)选择随机数a∈Rq,从χ中选择误差向量ei,选择私钥si∈Rq,公钥为pi=a·si+2ei∈Rq,其中
Figure FDA0003058339310000025
然后将公钥发送给所述终端B基于格的密钥协商模块(3);终端B基于格的密钥协商模块(3)生成公私钥对后,将终端B基于格的密钥协商模块(3)的公钥及协商信息发送给终端A基于格的密钥协商模块(2),终端A基于格的密钥协商模块(2)收到终端B基于格的密钥协商模块(3)的公钥pj和wj,ep后,计算出一个值ki=(pj·si+2ep)·ep+2e′i,其中
Figure FDA0003058339310000026
接着计算σi=mod2(ki,wi)∈{0,1}n,最后计算出会话密钥ski=MD5(σi)。
4.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的终端B基于格的密钥协商模块(3)负责与所述的终端A基于格的密钥协商模块(2)进行密钥协商生成会话密钥;终端B基于格的密钥协商模块(3)选择随机数a∈Rq,从χ中选择误差向量ej,选择私钥sj∈Rq,公钥为pj=a·sj+2ej∈Rq,其中
Figure FDA0003058339310000027
在收到来自终端A基于格的密钥协商模块(2)的协商信息后,计算kj=(pi·sj+2ep)·ep+2e′j,其中
Figure FDA0003058339310000028
wj=Cha(kj)∈{0,1}n,然后计算σj=mod2(kj,wj)∈{0,1}n,最后计算会话密钥skj=MD5(σj);密钥协商完成,会话密钥为sk=ski=skj
5.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的基于R-LWE的加密模块(4)采用格加密方法,选择明文消息M={m1,m2,…,mn},mi∈{0,1},sk为所述的终端A基于格的密钥协商模块(2)协商生成的会话密钥,ei满足
Figure FDA0003058339310000029
在环上选择随机数a∈Rq;所述的基于R-LWE的加密模块(4)生成密文ci=(a·sk+ei+mi)modM,然后将生成的密文块传递给基于R-LWE的PDP签名生成模块(6)生成标签,完成完整性保护。
6.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的基于R-LWE的解密模块(5)接收基于R-LWE的PDP完整性验证模块(7)验证后的密文,利用协商所得会话密钥sk进行解密;解密过程通过计算
Figure FDA0003058339310000031
其中ei为误差向量,可以忽略不计,最后得到明文消息。
7.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的基于R-LWE的PDP签名生成模块(6)包括标签生成模块(6-1)和标签聚合模块(6-2);负责生成密文的标签,并根据PDP技术聚合标签生成标签证据;
所述的标签生成模块(6-1)选择向量g=(20,21,…,2k-1),通过RLWETrapGen(n,q)算法生成向量
Figure FDA0003058339310000032
和门陷TC,其中q和n是两个整数;
Figure FDA0003058339310000033
是一个随机置换函数,其中
Figure FDA0003058339310000034
根据终端A基于格的密钥协商模块(2)所生成的会话密钥生成签名密钥:sksig=(Τ(ν),T(ρ)),其中
Figure FDA0003058339310000035
对于多个来自基于R-LWE加密模块(4)密文数据块C={c1,c2,…,cL},计算c′i=rici,其中ri=H1(i);随机选择a∈Rq,并计算B=(a,1,g1-(aρ1+v1),…,gk-(aρk+vk));计算hi=H2(i)+Cc′i,其中1≤i≤L,H2:{0,1}*→Rq;最后计算c′i的标签ti=RLWESamplePre(B,T,hi,s),其中s是高斯抽样参数;
所述的标签聚合模块(6-2)根据标签生成模块(6-1)生成的标签计算签名证据
Figure FDA0003058339310000036
其中di=Hκ(i),然后将Γ={δ,c}发送给基于R-LWE的PDP完整性验证模块(7)。
8.根据权利要求1所述的一种基于格加密的端到端数据机密性和完整性保护方法,其特征在于:所述的基于R-LWE的PDP完整性验证模块(7)接收到基于R-LWE的PDP签名生成模块(6)信息后,计算
Figure FDA0003058339310000037
其中ξ=RLWESamplePre(C,TC,w,s),w←URq;然后判断μ′=Bδ是否成立,如果该等式成立,则表明收到的多个密文都是完整的,并将密文发送给基于R-LWE的解密模块(5);否则表明密文的完整性被破坏,于是将密文数据丢弃。
CN202110508571.6A 2021-05-10 2021-05-10 一种基于格加密的端到端数据机密性和完整性保护方法 Active CN113242129B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110508571.6A CN113242129B (zh) 2021-05-10 2021-05-10 一种基于格加密的端到端数据机密性和完整性保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110508571.6A CN113242129B (zh) 2021-05-10 2021-05-10 一种基于格加密的端到端数据机密性和完整性保护方法

Publications (2)

Publication Number Publication Date
CN113242129A CN113242129A (zh) 2021-08-10
CN113242129B true CN113242129B (zh) 2022-05-13

Family

ID=77133214

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110508571.6A Active CN113242129B (zh) 2021-05-10 2021-05-10 一种基于格加密的端到端数据机密性和完整性保护方法

Country Status (1)

Country Link
CN (1) CN113242129B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567929A (zh) * 2022-09-22 2023-01-03 景德镇陶瓷大学 密钥管理方法和装置、电子设备和存储介质
CN117240458B (zh) * 2023-11-13 2024-04-02 信联科技(南京)有限公司 一种用户自选子秘密的多秘密共享方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105787390A (zh) * 2016-03-02 2016-07-20 深圳大学 一种数据完整性的验证方法及其系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10742413B2 (en) * 2017-04-25 2020-08-11 International Business Machines Corporation Flexible verifiable encryption from lattices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105787390A (zh) * 2016-03-02 2016-07-20 深圳大学 一种数据完整性的验证方法及其系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"RL-ABE: A Revocable Lattice Attribute Based Encryption Scheme Based on R-LWE Problem in Cloud Storage";Siyu Zhao等;《IEEE Transactions on Services Computing ( Early Access )》;20200211;全文 *
"基于NTRU格的云数据可撤销属性基加密方案";江健豪 等;《东南大学学报(自然科学版)》;20201130;第50卷(第6期);全文 *
RAKA:一种新的基于Ring-LWE的认证密钥协商协议;杨亚涛等;《计算机研究与发展》;20171015(第10期);全文 *

Also Published As

Publication number Publication date
CN113242129A (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
CN107947913B (zh) 一种基于身份的匿名认证方法与系统
KR101394730B1 (ko) Id 기반 인증 키 동의 프로토콜을 수행하기 위한 방법 및 장치
CN110113155B (zh) 一种高效无证书公钥加密方法
CN107659395B (zh) 一种多服务器环境下基于身份的分布式认证方法及系统
CN109274502B (zh) 公钥加密及密钥签名的创建方法、设备及可读存储介质
US9130744B1 (en) Sending an encrypted key pair and a secret shared by two devices to a trusted intermediary
CN112104453B (zh) 一种基于数字证书的抗量子计算数字签名系统及签名方法
US12010216B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
JP2022537733A (ja) 認証付き鍵共有
CN114268439B (zh) 一种基于格的身份基认证密钥协商方法
CN113242129B (zh) 一种基于格加密的端到端数据机密性和完整性保护方法
CN113572603A (zh) 一种异构的用户认证和密钥协商方法
CN112422276B (zh) 一种多方密钥协商的实现方法及系统
CN113676448B (zh) 一种基于对称秘钥的离线设备双向认证方法和系统
CN113132104A (zh) 一种主动安全的ecdsa数字签名两方生成方法
Harn et al. General logic-operation-based lightweight group-key distribution schemes for Internet of Vehicles
CN108337087A (zh) 基于密码向量和斐波纳契矩阵的Diffie-Hellman加密算法
Pal et al. Diffie-Hellman key exchange protocol with entities authentication
CN112822015B (zh) 信息传输方法及相关装置
CN113014376B (zh) 一种用户与服务器之间安全认证的方法
Madhulika et al. Generating digital signature using DNA coding
CN114070549A (zh) 一种密钥生成方法、装置、设备和存储介质
Dugardin et al. A New Fair Identity Based Encryption Scheme
CN114070550B (zh) 一种信息处理方法、装置、设备和存储介质
CN112738038B (zh) 一种基于非对称口令认证的密钥协商的方法和装置

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