CN116055152A - 一种基于格的访问控制加解密方法及系统 - Google Patents

一种基于格的访问控制加解密方法及系统 Download PDF

Info

Publication number
CN116055152A
CN116055152A CN202310006490.5A CN202310006490A CN116055152A CN 116055152 A CN116055152 A CN 116055152A CN 202310006490 A CN202310006490 A CN 202310006490A CN 116055152 A CN116055152 A CN 116055152A
Authority
CN
China
Prior art keywords
key
ciphertext
encryption
bitdecomp
flatten
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.)
Pending
Application number
CN202310006490.5A
Other languages
English (en)
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.)
Beijing Jinghang Computing Communication Research Institute
Original Assignee
Beijing Jinghang Computing Communication Research Institute
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 Beijing Jinghang Computing Communication Research Institute filed Critical Beijing Jinghang Computing Communication Research Institute
Priority to CN202310006490.5A priority Critical patent/CN116055152A/zh
Publication of CN116055152A publication Critical patent/CN116055152A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/0852Quantum cryptography
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于格的访问控制加解密方法及系统,属于密码安全技术领域,解决了现有技术中无法抵抗量子计算机攻击的问题。密钥生成中心根据系统公共参数和主私钥分别生成正确加密密钥、重随机化密钥、解密密钥;发送端利用系统公共参数和加密密钥对消息加密后生成密文;信道控制处理器利用重随机化密钥对密文进行重随机化处理后发送到接收端;接收端利用解密密钥对重随机化处理后的密文进行解密得到密文中的消息。应用本发明的技术方案,在格结构下实现了访问控制加解密,确保了访问控制加密在量子攻击下的安全性。

Description

一种基于格的访问控制加解密方法及系统
技术领域
本发明涉及安全密码技术领域,尤其涉及一种基于格的访问控制加解密方法及系统。
背景技术
随着量子计算机研究不断取得突破,传统基于大整数分解、离散对数假设的公钥密码面临着被彻底攻破的风险,因为传统困难性假设在量子计算机下是多项式时间可解的。传统公钥加密(例如基于属性的加密或基于身份的加密),都是通过将接收端的权限与解密私钥绑定,实现接收端对信息数据的访问权限控制。但在通信网络中,将高密级的信息传输给低密级接收端,也被视为一种信息泄露。在此场景下,只限制接收端的信息访问权限已无法满足信息安全性要求。为阻止发送端将信息泄露给无关人员,需要对发送端的发送权限进行控制。
访问控制加密(Access Control Encryption)即为一种同时实现发送端发送权限与接收端阅读权限控制的加密方法。访问控制加密的控制机制关键在于实现信道的控制,要求所有发送端发送的信息必须经过信道控制器(例如核心局域网内的核心交换机),信道控制器对密文进行重随机化处理,在重随机化处理后,符合通信要求的密文将不受影响,不符合通信要求的密文(或任意信息)将被重随机化为乱码,确保不会泄露任何信息。在文献“Theory of Cryptography-14th International Conference,9986:547-576”中,以ElGamal加密算法(一个基于迪菲-赫尔曼密钥交换的非对称加密算法)为基础,提出了离散对数结构下访问控制加密的设计方法。利用ElGamal加密密文存在加法同态的性质,在信道控制处理器处,对发送端生成的密文进行了重随机化操作。在密钥生成时,根据访问策略,给与不同权限的发送端对应的加密私钥。在密文生成时,增加了加密私钥的ElGamal密文,辅助信道控制处理器实现密文重随机化。信道控制处理器通过重随机化秘密密钥,对发送端密文进行重随机化操作,确保满足访问策略的发送端与接收端通信不受影响,而不满足访问策略的通信将被盲化为随机信息(即乱码)。但是上述的以ElGamal加密为基础的设计方法,其安全性建立在离散对数假设之上,在量子计算机下无法满足安全性需求。
格是线性无关向量的整系数线性组合,是n维实空间的离散子群,其上的困难性假设在量子计算机下依然成立,且格结构具有计算简单、支持多种密码方案构造的优势。基于格的加密(Lattice-based cryptography)被认为可以抵抗量子计算机的攻击,在格结构下设计公钥密码方案已经成为密码密码学家抵抗量子攻击的重要方法。
目前,基于格来实现访问控制加密从而抵抗量子计算机攻击的方法尚处于起步阶段且存在难点,所以成果并不多。只有一篇文献“Applied Cryptography and NetworkSecurity-19th International Conference,12726:417--441”,提出了基于群加密(GroupEncryption)构造访问控制加密的技术方法,并基于格结构实现了群加密,从而实现了格结构下的访问控制加密。但是其技术方法需建立密钥数据库,对群加密的验证密钥信息进行存储与管理,执行群管理密钥生成、非交互零知识证明生成验证等高计算开销运算,显著降低了技术方案运行效率;且其加密算法中添加了签名、非交互零知识证明等技术要素,而基于格的非交互零知识证明目前多为理论构造,缺乏高效的实现;可见亟需一种简单、高效、切实可行的基于格的访问控制加解密方法及系统,以实现基于格结构可抵抗量子攻击的密码系统。
发明内容
鉴于上述的分析,本发明实施例旨在提供一种基于格的访问控制加解密方法及系统,用以解决如何基于格来实现访问控制加密从而抵抗量子计算机攻击的问题。
一方面,本发明实施例提供了一种基于格的访问控制加解密方法,包括:
密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥;
密钥生成中心根据系统公共参数和主私钥生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成加密密钥并根据通信策略选择是否发送至发送端;其中,系统公共参数是公开的,系统中各个网络节点均可获得,主私钥用来生成相关密钥;
发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器;其中,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为正确加密密钥;
信道控制处理器利用重随机化密钥对来自发送端的密文进行重随机化处理后发送到接收端;
接收端利用解密密钥对重随机化处理后的密文进行解密得到密文中的消息。
具体的,所述密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥,包括:
确定集合
Figure BDA0004037093200000031
为模q整数群;
通过对所述集合进行随机采样过程确定出系统公共参数pp=(q,m,n,χ,A),主私钥msk=(s,β);
其中,参数q为奇正整数,m、n为正整数,χ为高斯分布,q、m、n的取值和χ的参数取值均基于系统安全参数λ,由BKZ算法计算获得;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000032
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000033
随机选取的n维向量,e是从高斯分布χ随机选取元素构建得到的m维误差向量;
其中,
Figure BDA0004037093200000041
表示
Figure BDA0004037093200000042
上的n+1维向量,并作为解密私钥,β表示
Figure BDA0004037093200000043
上随机选取的整数,并作为正确加密密钥;
所述密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s。
进一步的,所述发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器的具体方式为:
根据输入的系统公共参数、加密密钥、消息,计算得到
C1=Flatten(ekIN+BitDecomp(R1A)))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A)))∈{0,1}N×N
将密文(C1,C2)发送至信道控制处理器,
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R1,R2∈{0,1}N×m,其中R1,R2为随机选取的N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵,A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000044
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000045
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure BDA0004037093200000046
表示奇正整数q的2进制分解位数;ek为加密秘钥,当ek=β时,为从密钥生成中心获得了正确加密密钥;μ表示消息,IN表示N维的单位矩阵。
更进一步的,所述信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行重随机化处理具体为:
C3=Flatten(-βIN+BitDecomp(R3A)))∈{0,1}N×N
C3'=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(Flatten(rIN)C'3)+C2),
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R3∈{0,1}N×m,R3为N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000051
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000052
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure BDA0004037093200000053
表示奇正整数q的2进制分解位数;-β表示表示
Figure BDA0004037093200000054
上随机选取的整数,并作为重随机化密钥;μ表示消息,IN表示N维的单位矩阵,
Figure BDA0004037093200000055
为均匀随机选取的整数。
信道控制处理器将重随机化处理的密文C'发送给接收端。
再进一步的,所述接收端利用解密密钥s对重随机化处理后的密文C'进行解密得到密文中的消息的具体方式为:
利用向量的2次幂扩展算法Powerof2对解密密钥进行处理得到向量v←Powerof2(s);
通过向量v对重随机化处理后的密文C'处理得到c=C'v;
对c利用最近平面算法获得明文信息μ’。
另一方面,本发明实施例提供了一种基于格的访问控制加解密系统,包括:
密钥生成中心,用于根据通信策略和安全参数确定出系统公共参数和主私钥,还根据系统公共参数和主私钥分别生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成正确加密密钥并根据通信策略选择是否发送至发送端;
发送端,用于利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器;其中,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为正确加密密钥;
信道控制处理器,用于利用重随机化密钥对来自发送端的密文进行重随机化处理后发送到接收端;
接收端,用于利用解密密钥对重随机化处理后的密文进行解密得到密文中的消息。
具体的,密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥的具体方式包括:
确定模q的整数集合
Figure BDA0004037093200000061
通过对所述集合进行随机采样与算数运算过程确定出系统公共参数pp=(q,m,n,χ,A),主私钥msk=(s,β);
其中,参数q为奇正整数,m、n为正整数,χ为高斯分布,q、m、n的取值和χ的参数取值均基于系统安全参数λ,由BKZ算法计算获得;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000062
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000063
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;其中,
Figure BDA0004037093200000064
表示
Figure BDA0004037093200000065
上的n+1维向量,并作为解密私钥,β表示
Figure BDA0004037093200000066
上随机选取的整数,并作为加密密钥;
所述密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s。
进一步的,所述发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器的具体方式为:
根据输入的系统公共参数、加密密钥、消息,计算得到
C1=Flatten(ekIN+BitDecomp(R1A)))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A)))∈{0,1}N×N
将密文(C1,C2)发送至信道控制处理器,
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R1,R2∈{0,1}N×m,其中R1,R2为随机选取的N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵,A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000067
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000071
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure BDA0004037093200000072
表示奇正整数q的2进制分解位数;ek为加密秘钥,当ek=β时,为从密钥生成中心获得了正确加密密钥;当ek是其它值时,可能为恶意发送者试图破解而使用的值;μ表示消息,IN表示N维的单位矩阵。
更进一步的,所述信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行重随机化处理具体为:
C3=Flatten(-βIN+BitDecomp(R3A)))∈{0,1}N×N
C3'=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(Flatten(rIN)C'3)+C2),
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R3∈{0,1}N×m,R3为N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure BDA0004037093200000073
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure BDA0004037093200000074
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure BDA0004037093200000075
表示奇正整数q的2进制分解位数;-β表示表示
Figure BDA0004037093200000076
上随机选取的整数,并作为重随机化密钥;μ表示消息,IN表示N维的单位矩阵,
Figure BDA0004037093200000077
为均匀随机选取的整数;
信道控制处理器将重随机化处理的密文C'发送给接收端。
再进一步的,所述接收端利用解密密钥s对重随机化处理后的密文C'进行解密得到密文中的消息的具体方式为:
利用向量的2次幂扩展算法Powerof2对解密密钥进行处理得到向量v←Powerof2(s);
通过向量v对重随机化处理后的密文C'处理得到c=C'v;
对c利用最近平面算法获得明文信息μ’。
与现有技术相比,本发明至少可实现如下有益效果之一:
1、与基于传统结构下的设计方法相比,在格结构下实现了访问控制加密方法,确保了访问控制加密方法在量子攻击下的安全性;
2、格结构多采用矩阵或多项式形式进行实例化,使得密文多以矩阵或多项式形式呈现,随机数与扰动误差结合形成的盲化因子,保证了方案的安全性;通过规约证明,攻击方案的算法可以转化为求解格上最短向量或最近向量困难问题的算法,并且求解困难问题目前不存在多项式时间量子算法,因此,格结构下的访问控制加密方案相比于传统结构下的方案,更能长时间保证安全性。
3、本技术方案采用了模块化的设计方法,以格结构上具有同态(可通过密文运算达到明文运算的效果)性质的加密方案为基础,在明文空间规模满足超多项的条件下,即可模块化实现访问控制加密方案,使得本方案更易于实现或更容易实现底层方案的替换,从而可以满足不同场景下,不同应用对于不同格结构的应用需求(安全性需求更高或性能需求更高),从而使得本技术方案更具普适性,更易于应用于多种场景。
本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为基于格实现访问控制加解密系统的示意图;
图2为基于格实现访问控制加解密方法的通信流程示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
根据当前密码学界的共识,格结构下的(可证明安全的)密码方案可以抵抗量子计算机攻击。本发明申请的技术方案就在于提供一种基于格的访问控制加解密方法及系统,用以抵抗量子计算机攻击,确保访问控制加密在量子攻击下的安全性。
由于格结构下的困难性假设在量子计算机下依然成立,从而保证了访问控制加密在量子计算机下的安全性。访问控制加密设计过程中需要从明文空间选择任意随机数作为加密密钥和重随机化密钥,为保证安全性,需加密空间至少为超多项式规模。
如图1所示,给出了基于格实现访问控制加解密的通信流程示意图。
图1中的基于格的访问控制加解密系统,包括密钥生成中心、信道控制处理器、发送端和接收端,其中:
密钥生成中心,用于根据通信策略和安全参数确定出系统公共参数和主私钥,还根据系统公共参数和主私钥分别生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成正确加密密钥并根据通信策略选择是否发送至发送端;
发送端,用于利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为正确加密密钥;信道控制处理器,用于利用重随机化密钥对来自发送端的密文进行重随机化处理后发送到接收端;接收端,用于利用解密密钥对重随机化处理后的密文进行解密,当发送端加密密钥为正确加密密钥时,解密得到密文中的消息。
密钥生成中心在具体实施时,根据通信策略P和安全参数λ,生成系统公共参数pp和主私钥msk,记作(pp,msk)←Setup(P,λ),其中,系统公共参数pp是公开的,系统中各个网络节点均可获得,主私钥msk用来生成相关密钥。通信策略P(Si,Rj)=1表示发送端Si允许接收端Rj接收消息,即密钥生成中心将生成的正确加密密钥发送至发送端,发送端利用正确加密密钥对消息进行加密;通信策略P为0则表示发送端Si不允许给接收端Rj接收消息,即密钥生成中心不发送正确加密密钥至发送端,发送端利用非正确加密密钥对消息进行加密。系统公共参数pp和主私钥msk具体是通过随机采样的方法来获得。
首先,设定参数m、n为正整数,q为奇正整数,q、m、n的取值均基于系统安全参数λ,由BKZ算法计算获得;
确定集合
Figure BDA0004037093200000101
为模q整数群。
之后,基于集合进行采样过程,均匀随机采样
Figure BDA0004037093200000102
t为n维向量且元素从
Figure BDA0004037093200000103
独立随机选取,记
Figure BDA0004037093200000104
s作为解密私钥,是
Figure BDA0004037093200000105
上的n+1维向量;均匀随机采样
Figure BDA0004037093200000106
B为mxn维矩阵且元素从
Figure BDA0004037093200000107
独立随机选取,B作为生成矩阵生成格;采样e←χm,e为m维向量且元素取自χ,其中,χ为高斯分布,e作为扰动向量构造困难问题,使t难以被破解;均匀随机选取
Figure BDA0004037093200000108
β为整数且从
Figure BDA0004037093200000109
独立随机选取,并作为正确加密密钥。
然后,计算得到b=Bt+e,为模q运算,记A=(bB),A为m×(n+1)维的整数矩阵,并作为加密公钥。
最后,输出系统公共参数pp=(q,m,n,χ,A),主私钥msk=(s,β)。
密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s,记作(ek,rk,dk)←KeyGen(pp,msk);然后输出重随机化密钥至信道控制处理器、输出解密密钥至接收端、并根据通信策略选择是否将输出的正确加密密钥发送至发送端。
发送端调用密文生成算法,输入系统公共参数pp,加密密钥ek,消息
Figure BDA0004037093200000111
记N=(n+1)l,其中
Figure BDA0004037093200000112
对数以2为底,
Figure BDA0004037093200000113
表示向下取整,均匀随机选取R1,R2∈{0,1}N×m,当获取了正确加密密钥时,加密秘钥ek=β,计算:
C1=Flatten(βIN+BitDecomp(R1A)))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A)))∈{0,1}N×N
由此,生成密文(C1,C2),发送端向信道控制处理器发送密文(C1,C2)。
其中,BitDecomp算法称为比特分解算法,输入向量
Figure BDA0004037093200000114
记ai为a的第i个分量,且ai二进制分解为
Figure BDA0004037093200000115
Figure BDA0004037093200000116
算法输出
Figure BDA0004037093200000117
记作
Figure BDA0004037093200000118
其中,BitDecomp算法的逆操作记作BitDecomp-1,输入
Figure BDA0004037093200000119
表示如上,计算
Figure BDA00040370932000001110
输出向量
Figure BDA00040370932000001111
其中,Flatten算法为BitDecomp与BitDecomp-1算法的复合操作,即输入向量
Figure BDA0004037093200000121
输出
Figure BDA0004037093200000122
记作
Figure BDA0004037093200000123
所有算法作用在矩阵上,表示分别作用在矩阵行向量上。
信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行处理,均匀随机选取
Figure BDA0004037093200000124
随机选取R3∈{0,1}N×m,重随机化处理得到
C3=Flatten(-βIN+BitDecomp(R3A)))∈{0,1}N×N
C3'=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(Flatten(rIN)C'3)+C2)
信道控制处理器将重随机化处理的密文C'发送给接收端。
接收端输入解密密钥s和重随机化处理的密文C',对密文C'进行解密,计算v←Powerof2(s),计算c=C'v,对c利用最近平面算法获得明文信息μ'。其中,Powerof2称为向量的2次幂扩展算法,输入向量
Figure BDA0004037093200000125
记bi为b的第i个分量,输出向量
Figure BDA0004037093200000126
当通信策略P(Si,Rj)=1时,发送端的加密密钥ek与信道控制处理器的重随机化密钥rk恰好满足ek+rk=0,根据加密方案具有的同态性质,重随机化操作后明文转化为r(ek+rk)+μ=μ,即密文中的消息不受影响;如果通信策略P(Si,Rj)=0,即发送端未接收到正确加密密钥时,发送端可能利用任意加密方式即非正确加密密钥进行加密;但由于加密密钥与重随机化密钥ek+rk≠0以显著概率成立,此时r(ek+rk)为随机数,重随机化后消息为r(ek+rk)+μ为随机消息,即接收端无法解密得到正确明文信息,从而避免了从接收端到发送端的信息泄露。
上述密钥生成中心、信道控制处理器、发送端和接收端中的计算均为模q运算,且取值空间为
Figure BDA0004037093200000127
以上方案针对系统中只有1个发送端和1个接收端的情形。
当系统中存在S个发送端,R个接收端时,密钥生成中心只需重复生成系统公共参数pp和主私钥mskR次,在生成密钥过程中令Si发送端正确加密密钥为eki={βj|P(Si,Rj)=1,j=1,Λ,R},重随机化密钥rk={βj|j=1,Λ,R},解密密钥为与身份对应的si。发送端在存在正确加密密钥的位置进行相同的加密操作,不存在正确加密密钥的位置,加密操作将生成随机密文。信道控制处理器与接收端只需在对应的位置做相同的操作即可。
如图2所示,进一步给出了一种基于格的访问控制加解密方法流程图,用于在图1所示的包括密钥生成中心、信道控制处理器、发送端和接收端的通信网络系统中实现访问控制加密,该方法包括如下步骤:
步骤S201,密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥;
步骤S202,密钥生成中心根据系统公共参数和主私钥分别生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成正确加密密钥并根据通信策略选择是否发送至发送端;
步骤S203,发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器;其中,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为正确加密密钥;
步骤S204,信道控制处理器利用重随机化密钥对来自发送端的密文进行重随机化处理后发送到接收端;
步骤S205,接收端利用解密密钥对重随机化处理后的密文进行解密,当发送端加密密钥为正确加密密钥时,接收端解密得到密文中的消息。
在步骤201中,更具体的,密钥生成中心根据通信策略P和安全参数λ,生成系统公共参数pp和主私钥msk,记作(pp,msk)←Setup(P,λ),其中,系统公共参数pp是公开的,系统中各个网络节点均可获得,主私钥msk用来生成相关密钥。通信策略P(Si,Rj)=1表示发送端Si允许给接收端Rj接收消息,即密钥生成中心将生成的正确加密密钥发送至发送端,通信策略P为0则表示发送端Si不允许给接收端Rj接收消息,即密钥生成中心不发送正确加密密钥至发送端。系统公共参数pp和主私钥msk具体是通过随机采样的方法来获得。
首先,设定参数m、n为正整数,q为奇正整数,
确定集合
Figure BDA0004037093200000141
为模q整数群。其中,m、n、q的取值均基于系统安全参数λ,由BKZ算法计算获得。
之后,基于集合进行采样过程,均匀随机采样
Figure BDA0004037093200000142
t为n维向量且元素从
Figure BDA0004037093200000143
独立随机选取,记
Figure BDA0004037093200000144
s作为解密私钥,是
Figure BDA0004037093200000145
上的n+1维向量;均匀随机采样
Figure BDA0004037093200000146
B为mxn维矩阵且元素从
Figure BDA0004037093200000147
独立随机选取,B作为生成矩阵生成格;采样e←χm,e为m维向量且元素取自χ,其中,χ为高斯分布,其基于系统安全参数λ,由BKZ算法计算获得,e作为扰动向量构造困难问题,使t难以被破解;均匀随机选取
Figure BDA0004037093200000148
β为整数且从
Figure BDA0004037093200000149
独立随机选取。
然后,计算得到b=Bt+e,本发明申请技术方案中所有计算均为模q运算,记A=(bB),A为m×(n+1)维的整数矩阵,并作为加密公钥。
最后,输出系统公共参数pp=(q,m,n,χ,A),主私钥msk=(s,β)。
在步骤202中,更具体的,密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s,记作(ek,rk,dk)←KeyGen(pp,msk);然后输出重随机化密钥至信道控制处理器、输出解密密钥至接收端、并根据通信策略选择是否将输出的正确加密密钥发送至发送端。
在步骤203中,更具体的,发送端调用密文生成算法,输入系统公共参数pp,加密密钥ek,消息
Figure BDA0004037093200000151
记N=(n+1)l,其中
Figure BDA0004037093200000152
对数以2为底,
Figure BDA0004037093200000153
表示向下取整,均匀随机选取R1,R2∈{0,1}N×m,当获取了正确加密密钥时,加密秘钥ek=β,计算:
C1=Flatten(βIN+BitDecomp(R1A)))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A)))∈{0,1}N×N
由此,生成密文(C1,C2),发送端向信道控制处理器发送密文(C1,C2)。
其中,BitDecomp算法称为比特分解算法,输入向量
Figure BDA0004037093200000154
记ai为a的第i个分量,且ai二进制分解为
Figure BDA0004037093200000155
Figure BDA0004037093200000156
算法输出
Figure BDA0004037093200000157
记作
Figure BDA0004037093200000158
其中,BitDecomp算法的逆操作记作BitDecomp-1,输入
Figure BDA0004037093200000159
表示如上,计算
Figure BDA00040370932000001510
输出向量
Figure BDA00040370932000001511
其中,Flatten算法为BitDecomp与BitDecomp-1算法的复合操作,即输入向量
Figure BDA00040370932000001512
输出
Figure BDA00040370932000001513
记作
Figure BDA00040370932000001514
所有算法作用在矩阵上,表示分别作用在矩阵行向量上。
在步骤204中,更具体的,信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行处理,均匀随机选取
Figure BDA00040370932000001515
随机选取R3∈{0,1}N×m,重随机化处理得到
C3=Flatten(-βIN+BitDecomp(R3A)))∈{0,1}N×N
C3'=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(rIN)C'3)。
信道控制处理器将重随机化处理的密文C'发送给接收端。
在步骤205中,更具体的,接收端输入解密密钥s和重随机化处理的密文C',对密文C'进行解密,计算v←Powerof2(s),计算c=C'v,对c利用最近平面算法获得明文信息μ’。其中,Powerof2称为向量的2次幂扩展算法,输入向量
Figure BDA0004037093200000161
记bi为b的第i个分量,输出向量
Figure BDA0004037093200000162
当通信策略P(Si,Rj)=1时,发送端的加密密钥ek与信道控制处理器的重随机化密钥rk恰好满足ek+rk=0,根据加密方案具有的同态性质,重随机化操作后明文转化为r(ek+rk)+μ=μ,即密文中的消息不受影响;如果通信策略P(Si,Rj)=0,则ek+rk≠0以显著概率成立,此时r(ek+rk)为随机数,重随机化后消息为r(ek+rk)+μ为随机消息,从而避免了从接收端到发送端的信息泄露。
上述步骤201至步骤205的密钥生成中心、信道控制处理器、发送端和接收端中的计算均为模q运算,且取值空间为
Figure BDA0004037093200000163
以上方案针对系统中只有1个发送端和1个接收端的情形。
当存在S个发送端,R个接收端时,密钥生成中心只需重复R次步骤S201,在生成密钥的步骤S202中令Si发送端获得正确加密密钥为eki={βj|P(Si,Rj)=1,j=1,Λ,R},重随机化密钥rk={βj|j=1,Λ,R},解密密钥为与身份对应的si。步骤S203中发送端在存在加密密钥的位置进行相同的加密操作,不存在加密密钥的位置,使用随机密文代替。步骤S204的信道控制处理器与步骤S205的接收端只需在对应的位置做相同的操作即可。
与现有技术相比,本实施例提供的技术方案更加简单、运行效率更高、更容易实现。首先,本技术方案采用了模块化的设计方式,基础方案为基于格的具有同态性的公钥加密方案,可以通过简单的替换即可实现技术方案的升级。其次,本技术方案各算法只涉及随机数采样、矩阵的加法或乘法运行,不涉及复杂密码概念的构造与实现,因此,方案的运行效率更高。最后,技术方案设计不需要非交互零知识证明等目前在格结构下,尚未有实际实现的密码概念,因此,更容易实现和应用。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种基于格的访问控制加解密方法,其特征在于:该方法包括:
密钥生成中心,根据通信策略和安全参数确定系统公共参数和主私钥,并根据所述系统公共参数和主私钥生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成正确加密密钥并根据通信策略选择是否发送该正确加密密钥至发送端;
发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器;其中,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为所述正确加密密钥;
信道控制处理器利用重随机化密钥对来自发送端的密文(C1,C2)进行重随机化处理后,发送到接收端;
接收端利用解密密钥s对重随机化处理后的密文C'进行解密;当所述加密密钥为所述正确加密密钥时,接收端解密得到密文中的消息。
2.根据权利要求1所述的方法,其特征在于,
所述密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥,包括:
确定集合
Figure FDA0004037093190000011
通过对所述集合进行随机采样确定系统公共参数pp=(q,m,n,χ,A)和主私钥msk=(s,β);
其中,参数q为奇正整数,m、n为正整数,χ为高斯分布,q、m、n的取值和χ的参数取值均基于系统安全参数λ,由BKZ算法计算获得;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure FDA0004037093190000014
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure FDA0004037093190000015
随机选取的n维向量,e是从高斯分布χ随机选取元素构建得到的m维误差向量;
其中,
Figure FDA0004037093190000012
表示
Figure FDA0004037093190000013
上的n+1维向量,并作为解密私钥,β表示
Figure FDA0004037093190000016
上随机选取的整数;
所述密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s。
3.根据权利要求2所述的方法,其特征在于,
所述发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器,包括:
根据输入的系统公共参数、加密密钥、消息,计算得到
C1=Flatten(ekIN+BitDecomp(R1A))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A))∈{0,1}N×N
将密文(C1,C2)发送至信道控制处理器,
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R1,R2∈{0,1}N×m,其中R1,R2为随机选取的N×m维的矩阵,矩阵元素为0或1;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure FDA0004037093190000021
表示奇正整数q的2进制分解位数;μ表示消息,IN表示N维的单位矩阵;当发送端接收到密钥生成中心发送的正确加密密钥时,ek=β。
4.根据权利要求3所述的方法,其特征在于,
所述信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行重随机化处理,包括:
C3=Flatten(-βIN+BitDecomp(R3A))∈{0,1}N×N
C′3=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(Flatten(rIN)C'3)+C2),
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R3∈{0,1}N×m为N×m维的矩阵,矩阵元素为0或1;
Figure FDA0004037093190000022
为均匀随机选取的整数。
信道控制处理器将重随机化处理的密文C'发送给接收端。
5.根据权利要求1-4任一项所述的方法,其特征在于,
所述接收端利用解密密钥s对重随机化处理后的密文C'进行解密得到密文中的消息,包括:
利用向量的2次幂扩展算法Powerof2对解密密钥进行处理得到向量v←Powerof2(s);
通过向量v对重随机化处理后的密文C'处理得到c=C'v;
对c利用最近平面算法获得明文信息μ′。
6.一种基于格的访问控制加解密系统,其特征在于,该系统包括密钥生成中心、信道控制处理器、发送端和接收端,其中:
密钥生成中心,用于根据通信策略和安全参数确定出系统公共参数和主私钥,还根据系统公共参数和主私钥分别生成重随机化密钥发送至信道控制处理器、生成解密密钥发送至接收端、生成正确加密密钥并根据通信策略选择是否发送至发送端;
发送端,用于利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器;其中,当发送端接收到密钥生成中心发送的正确加密密钥时,加密密钥为正确加密密钥;
信道控制处理器,用于利用重随机化密钥对来自发送端的密文进行重随机化处理后发送到接收端;
接收端,用于利用解密密钥对重随机化处理后的密文进行解密,当加密密钥为正确加密密钥时,解密得到密文中的消息。
7.根据权利要求6所述的系统,其特征在于,
密钥生成中心根据通信策略和安全参数确定出系统公共参数和主私钥的具体方式包括:
确定模q的整数集合
Figure FDA0004037093190000031
通过对所述集合进行随机采样与算数运算过程确定出系统公共参数pp=(q,m,n,χ,A),主私钥msk=(s,β);
其中,参数q为奇正整数,m、n为正整数,χ为高斯分布,q、m、n的取值和χ的参数取值均基于系统安全参数λ,由BKZ算法计算获得;A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure FDA0004037093190000044
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure FDA0004037093190000045
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;其中,
Figure FDA0004037093190000041
表示
Figure FDA0004037093190000042
上的n+1维向量,并作为解密私钥,β表示
Figure FDA0004037093190000046
上随机选取的整数,并作为正确加密密钥;
所述密钥生成中心利用系统公共参数pp和主私钥msk调用密钥生成算法生成正确加密密钥β、重随机化密钥rk=-β、解密密钥dk=s。
8.根据权利要求7所述的系统,其特征在于,所述发送端利用系统公共参数和加密密钥对消息加密后生成密文发送至信道控制处理器的具体方式为:
根据输入的系统公共参数、加密密钥、消息,计算得到
C1=Flatten(ekIN+BitDecomp(R1A))∈{0,1}N×N
C2=Flatten(μIN+BitDecomp(R2A))∈{0,1}N×N
将密文(C1,C2)发送至信道控制处理器,
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作,R1,R2∈{0,1}N×m,其中R1,R2为随机选取的N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵,A为m×(n+1)维的整数矩阵,并作为加密公钥,其表达式为A=(b B);其中B表示从集合
Figure FDA0004037093190000047
随机选取元素构建得到的m×n维矩阵;b=Bt+e,t为元素从集合
Figure FDA0004037093190000048
随机选取的n维向量,e是从误差分布χ随机选取元素构建得到的m维误差向量;N表示正整数,取值为(n+1)l,其中n为正整数,
Figure FDA0004037093190000043
表示奇正整数q的2进制分解位数;ek为加密秘钥,当从密钥生成中心获得了正确加密密钥时,ek=β;μ表示消息,IN表示N维的单位矩阵。
9.根据权利要求8所述的系统,其特征在于,
所述信道控制处理器利用重随机化密钥,对来自发送端的密文(C1,C2)进行重随机化处理具体为:
C3=Flatten(-βIN+BitDecomp(R3A))∈{0,1}N×N
C′s=Flatten(C1+C3)∈{0,1}N×N
C'=Flatten(Flatten(Flatten(rIN)C'3)+C2),
其中,BitDecomp为比特分解算法,Flatten为BitDecomp与BitDecomp-1算法的复合操作;R3∈{0,1}N×m,R3为N×m维的矩阵,矩阵元素为0或1,并作为加密随机数矩阵;-β表示表示
Figure FDA0004037093190000052
上随机选取的整数,并作为重随机化密钥;μ表示消息,IN表示N维的单位矩阵,
Figure FDA0004037093190000051
为均匀随机选取的整数;
信道控制处理器将重随机化处理的密文C'发送给接收端。
10.根据权利要求9所述的系统,其特征在于,
所述接收端利用解密密钥s对重随机化处理后的密文C'进行解密得到密文中的消息的具体方式为:
利用向量的2次幂扩展算法Powerof2对解密密钥进行处理得到向量v←Powerof2(s);
通过向量v对重随机化处理后的密文C'处理得到c=C'v;
对c利用最近平面算法进行解密,当发送端利用正确加密密钥加密时,解密获得明文信息μ′。
CN202310006490.5A 2023-01-04 2023-01-04 一种基于格的访问控制加解密方法及系统 Pending CN116055152A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310006490.5A CN116055152A (zh) 2023-01-04 2023-01-04 一种基于格的访问控制加解密方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310006490.5A CN116055152A (zh) 2023-01-04 2023-01-04 一种基于格的访问控制加解密方法及系统

Publications (1)

Publication Number Publication Date
CN116055152A true CN116055152A (zh) 2023-05-02

Family

ID=86121408

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310006490.5A Pending CN116055152A (zh) 2023-01-04 2023-01-04 一种基于格的访问控制加解密方法及系统

Country Status (1)

Country Link
CN (1) CN116055152A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117527223A (zh) * 2023-11-30 2024-02-06 山东大学 一种基于格的抗量子密码的分布式解密方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117527223A (zh) * 2023-11-30 2024-02-06 山东大学 一种基于格的抗量子密码的分布式解密方法及系统
CN117527223B (zh) * 2023-11-30 2024-04-16 山东大学 一种基于格的抗量子密码的分布式解密方法及系统

Similar Documents

Publication Publication Date Title
KR102116877B1 (ko) 오류를 갖는 페어링을 이용한 새로운 암호 시스템들
CN111342976B (zh) 一种可验证的理想格上门限代理重加密方法及系统
Hrestak et al. Homomorphic encryption in the cloud
CN108183791B (zh) 应用于云环境下的智能终端数据安全处理方法及系统
WO2018091084A1 (en) Homomorphic based method and system for securely aggregating data
Son et al. Conditional proxy re-encryption for secure big data group sharing in cloud environment
CN107086912B (zh) 一种异构存储系统中的密文转换方法、解密方法及系统
Dong et al. Achieving secure and efficient data collaboration in cloud computing
Diffie Conventional versus public key cryptosystems
Reshma et al. Pairing-free CP-ABE based cryptography combined with steganography for multimedia applications
CN116055152A (zh) 一种基于格的访问控制加解密方法及系统
Jiang et al. Revocable identity‐based matchmaking encryption in the standard model
Saeed et al. Improved cloud storage security of using three layers cryptography algorithms
Qin et al. Strongly secure and cost-effective certificateless proxy re-encryption scheme for data sharing in cloud computing
Zhang et al. New application of partitioning methodology: identity‐based dual receiver encryption
CN107294972B (zh) 基于身份的广义多接收者匿名签密方法
Hegde et al. A Comparative study on state of art Cryptographic key distribution with quantum networks
Ahila et al. State of art in homomorphic encryption schemes
Saha et al. Application of Randomness for Security and Privacy in Multi-Party Computation
Liu et al. Signcryption from NTRU lattices without random oracles
Zhiyong et al. On the LWE cryptosystem with more general disturbance
Anbhuvizhi et al. A Study On Cipher-Text Attribute Based Encryption Using Secret Sharing Schemes
Li et al. Intelligent federated learning on lattice‐based efficient heterogeneous signcryption
Lai Attribute-Based Encryption with Offline Computation and Outsourced Decryption
Shen et al. Asymmetric Group Key Agreement Protocol from Short Signatures

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