CN112291053A - 一种基于格与基本访问树的cp-abe方法 - Google Patents

一种基于格与基本访问树的cp-abe方法 Download PDF

Info

Publication number
CN112291053A
CN112291053A CN202011229123.4A CN202011229123A CN112291053A CN 112291053 A CN112291053 A CN 112291053A CN 202011229123 A CN202011229123 A CN 202011229123A CN 112291053 A CN112291053 A CN 112291053A
Authority
CN
China
Prior art keywords
basic
user
node
access tree
ciphertext
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
CN202011229123.4A
Other languages
English (en)
Other versions
CN112291053B (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.)
Chongqing Institute of Green and Intelligent Technology of CAS
Original Assignee
Chongqing Institute of Green and Intelligent Technology of CAS
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 Chongqing Institute of Green and Intelligent Technology of CAS filed Critical Chongqing Institute of Green and Intelligent Technology of CAS
Priority to CN202011229123.4A priority Critical patent/CN112291053B/zh
Publication of CN112291053A publication Critical patent/CN112291053A/zh
Application granted granted Critical
Publication of CN112291053B publication Critical patent/CN112291053B/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/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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)
  • Storage Device Security (AREA)

Abstract

本发明为一种基于格与基本访问树的CP‑ABE方法,属于信息安全领域,包括如下步骤:S1:初始化;S2:生成用户私钥并发送给相应用户;S3:生成析取表达式,构建基本控制访问树,由下及上计算出基本访问树第二层节点的值,再利用这些值计算出公开参数,最后将公开参数公开;S4:依次将明文进行加密,将计算出的密文公开;S5:对验证通过的基本结构利用自身私钥构造解密密文的私钥,最后对密文进行解密。本发明基于LWE和SIS的格困难问题结合CP‑ABE的加密方案,解决了PKI在物联网环境中因大规模用户、多属性系统中耗费过多宽带、计算以及空间资源的问题,抵抗量子算法可能在多项式时间内破解的风险,并且保持低密文膨胀率和较高加密速率的优点。

Description

一种基于格与基本访问树的CP-ABE方法
技术领域
本发明涉及一种基于格与基本访问树的CP-ABE方法,属于信息安全领域,尤其适用于一种基于格与基本访问树的CP-ABE方法。
背景技术
中央系统管理信息时,主要通过C/S模式,用户为获取信息有主动模式(信息存入云服务器中被远程授权用户访问)与被动模式(系统发送指令或密钥至相关用户)两种途径。为保证信息传递的安全,在主动模式下用户安全上传共享文件后,由可信第三方装置统一加密,并存储在云服务器上待用户访问;在被动模式下,中央系统需要先将指令或密钥加密再将指令发送给特定用户,用户解密密文并执行指令或得到密钥。然而,以公钥基础设施(public key infrastructure,PKI)为依托的传统公钥体系因其加密时的繁琐步骤在具有海量用户的系统中生成和交换数字证书时会带来巨大的时间和空间开销,并且针对某一个群体加密会浪费许多计算资源,因此,传统PKI无法支持上述系统的加解密应用。
密文-策略的属性基加密(Ciphertext-policy Attribute-based Encryption,CP-ABE)体制能够将加解密策略嵌入密文内,只有满足该策略的具有特定属性集合的用户才能够将密文还原。这种体制每次对一类用户群体加密,较每次使用该群体中每个用户的公钥进行加密再分别分发密文给相应用户而言,降低了密文的计算开销和发送密文的通信开销,简化了PKI在多用户系统中密钥的产生和分配工作,解决了传统公钥体制中因大量交换数字证书而降低系统效率的问题。
当前,能够抵抗量子攻击的可实用CP-ABE方案较少,并且传统公钥体制所基于的数学困难问题已经被证明可用Shor算法在多项式时间内求解,一旦普及实用量子计算机,当下所有传统的公钥加密体质都能够利用量子计算机在多项式时间内攻破,如RSA,DSA等。Zhang等人于2011年发表了“A Ciphertext Policy Attribute-Based Encryption Schemewithout Pairings”一文,该文提出的方案仅支持AND操作的控制访问结构,并且加解密时密文膨胀率较大,在实际中并不实用;Liu等人于2018年发表的“Secure and EfficientMulti-Authority Attribute-Based Encryption Scheme From Lattices”一文提出了一种基于LWE的多机构CP-ABE加密方案,然而针对每一个机构而言,同一个属性每种策略都需要重新生成并分配秘密值,并且该方案的噪声过大,且具有较大的密文膨胀率,也无法在工业中应用。因此,物互联的时代的当下,急需一种可实用的抗量子攻击的公钥加密的实用方案,基于格与CP-ABE加密机制相结合的加密方案有望替代传统的加密方案应用于物联网中,解决抗量子攻击的问。
发明内容
有鉴于此,本发明提供一种基于格与基本访问树的CP-ABE方法,基于容错学习(Learning With Error,LWE)和基于小整数解(Short Intger Solution,SIS)的格困难问题能够有效的抵抗量子算法的攻击,同时,CP-ABE加密方案支持一种有弹性的控制访问方法,能够帮助解决在海量设备系统中因复杂属性管理而浪费巨大计算和存储资源、高处理开销以及过多的通信带宽消耗等问题。
为达到上述目的,本发明提供如下技术方案:
一种基于格与基本访问树的CP-ABE方法,由可信第三方装置、两个及以上的用户端装置构成的系统进行实现,所述的可信第三方装置、用户端装置通过网络相连,且均为计算机。
包括如下步骤:
S1:可信第三方装置对系统进行初始化;
S2:可信第三方装置调用私钥生成方法,生成用户私钥并将其发送给相应用户;
S3:可信第三方装置将输入的控制访问策略表达式转化为析取表达式,通过析取表达式构建基本控制访问树,由下及上计算出基本访问树第二层节点的值,再利用这些值计算出公开参数,最后将公开参数公开;
S4:可信第三方装置根据公开参数,依次将明文进行加密,将计算出的密文公开;
S5:用户操作用户端装置,根据基本访问树的基本结构进行验证,对验证通过的基本结构利用自身私钥构造相应解密密文的私钥,最后对密文进行解密。
进一步,所述的步骤S1具体为:
S101:可信第三方装置初始化设定CP-ABE的总属性集合
Figure BSA0000224204380000021
用户U和对应的用户属性集合
Figure BSA0000224204380000022
其中,
Figure BSA0000224204380000023
S102:可信第三方装置对基于LWE和SIS问题以及CP-ABE公钥加密框架的固定参数初始化并公开;
S103:可信第三方装置结合固定参数对随机参数进行初始化;
其中,步骤S102所述的固定参数为安全参数λ,多项式次数n,m,k,l,模数q,方差σ,t,压缩参数dp,分块复用参数lp,均匀分布参数U(X),具体地:所述的λ根据预判敌手攻击次数2λ计算求得;所述的n为人为选取的2的幂次的整数;所述的q满足q≡1 mod 2n;所述的l=n/2,m=6n,k=m/l;所述的σ为满足
Figure BSA0000224204380000024
的任意浮点数;所述的参数t≥6为根据出错概率人为选取的任意浮点数;所述的压缩参数dp为满足不等式
Figure BSA0000224204380000025
的任意整数;所述的lp为大于1的整数,综合考虑效率和密文膨胀率来人为选定;所述的U(X)为关于随机变量X的有界均匀分布,其界为[0,q);
更进一步,所述的步骤S103具体为:
(1)可信第三方装置在均匀分布上进行随机采样得到A=(A0,A1,...,Ak-1)T和b=(b0,b1,...,bk-1)T,其中,
Figure BSA0000224204380000026
(2)可信第三方装置在均匀分布上进行
Figure BSA0000224204380000027
次随机采样,得到每个属性Rα对应的向量标签
Figure BSA0000224204380000028
将所有向量标签gα的集合记为
Figure BSA0000224204380000029
其中,
Figure BSA00002242043800000210
其中,| |为求取集合元素个数操作。
进一步,步骤S2所述的调用私钥生成方法生成第j个用户的私钥,具体为:
S201:计算第j个用户Uj的标签块
Figure BSA00002242043800000211
并对每个标签块求逆,得到矩阵
Figure BSA0000224204380000031
其中,Aifi,j=bi,i=0,...,k-1;
S202:遍历用户Uj的用户属性
Figure BSA0000224204380000032
根据每一个属性
Figure BSA0000224204380000033
对应的向量标签gi,计算私钥块
Figure BSA0000224204380000034
得到用户Uj的私钥
Figure BSA0000224204380000035
可优选的,步骤S201中的根据Aifi,j=bi计算第j个用户的标签块fi,j的方法具体为:首先,将Ai拆分成两部分
Figure BSA0000224204380000036
然后,将带求解的fi,j也拆分成两个部分
Figure BSA0000224204380000037
并对fi,j,1在均匀分布上随机采样
Figure BSA0000224204380000038
最后,运用公式计算出
Figure BSA0000224204380000039
并将两部分拼接成fi,j
进一步,步骤S3所述的将控制访问策略表达式
Figure BSA00002242043800000330
转化为带阈值逻辑的析取表达式
Figure BSA00002242043800000310
的转化算法
具体为:
输入:控制访问策略表达式
Figure BSA00002242043800000311
Figure BSA00002242043800000312
按照如下规则进行转化:
(1)控制访问策略表达式中的优先级用括号来规定,层次越深的括号内部的逻辑表达式的执行优先级越高;
(2)如果控制访问策略表达式中有“or”,尽量将“or”提出括号,使其优先级降为最低,如果“or”已经处于最低优先级,则无需变动控制访问策略表达式。
具体地,针对所有转化情形,规则示例如下:“and”优先级低于“or”:(A or B)andC=>(A and C)or(B and C);“of”优先级低于“or”:((A or B)of C of D)2=>(A of C ofD)2or(B of C of D)2;其余不变。其中,将逻辑阈值“THRESHOD”的表达符号记为“of”;“and”、“or”、“of”为逻辑属性;A、B、C、D为属性。
输出:析取表达式
Figure BSA00002242043800000313
进一步,步骤S3所述的通过析取表达式
Figure BSA00002242043800000314
构建基本控制访问树
Figure BSA00002242043800000315
其中,逻辑属性“or”将
Figure BSA00002242043800000316
分割为ln个基本表达式;算法具体为:
输入:析取表达式
Figure BSA00002242043800000317
(1)将逻辑属性“or”作为基本控制访问树
Figure BSA00002242043800000318
的根节点
Figure BSA00002242043800000319
(2)依次读取
Figure BSA00002242043800000320
中的ln个基本表达式,将其转化为生成树的基本结构
Figure BSA00002242043800000321
并将其连接至树
Figure BSA00002242043800000322
的根节点
Figure BSA00002242043800000323
其中,
Figure BSA00002242043800000324
中除叶子节点外均对应一个阈值,该值由
Figure BSA00002242043800000325
中的信息确定;i=1,2,...,ln;
输出:基本控制访问树
Figure BSA00002242043800000326
进一步,步骤S3所述的由下及上计算出基本访问树基本结构的根节点的节点值的算法具体为:
输入:基本结构
Figure BSA00002242043800000327
(1)遍历基本结构
Figure BSA00002242043800000328
中所有叶子节点对应的属性Rα,并对每一个
Figure BSA00002242043800000329
找到其相对应的标签向量
Figure BSA0000224204380000041
并将其赋值给基本结构
Figure BSA0000224204380000042
中相对应属性的叶子节点;
(2)当
Figure BSA0000224204380000043
中所有叶子节点均已赋值后,由下而上对各个节点进行插值求和得到节点值直至计算至
Figure BSA0000224204380000044
的最上层,将根节点值为此基本结构的秘密值si;其中,逻辑属性为“and”的父节点对应的子节点的插值为1;逻辑属性为“of”的父节点对应的子节点的插值为随机排序的编号值;需要注意的是,父节点下所有的子节点按照1开始进行编号。
输出:秘密值si
进一步,步骤S3所述的公开参数为
Figure BSA0000224204380000045
所述的
Figure BSA0000224204380000046
所述的ti=A si+ei,其中
Figure BSA0000224204380000047
为在期望为0、标准差为σ的离散高斯分布上选取的n维的模q整数向量。
进一步,步骤S4所述的加密过程为:
S401:将明文在
Figure BSA0000224204380000048
空间中进行的编码,生成系数向量m=(m1,...,mlp);
S402:根据离散高斯分布进行噪声采样
Figure BSA0000224204380000049
S403:计算密文块C1=rb;
S404:对每一个
Figure BSA00002242043800000410
和mi∈m,计算密文块C′i,j=rTtj+mi·「q/2dp」+e′i,j
S405:分别公布密文C1和{C′i,j}1≤i≤lp,1≤j≤ln
其中,
Figure BSA00002242043800000411
1≤i≤lp,1≤j≤ln。
进一步,步骤S5所述的解密过程具体为:
S501:用户Uj依次对基本控制访问树
Figure BSA00002242043800000412
的每一个基本结构
Figure BSA00002242043800000413
调用验证算法,如果存在第j*个基本结构
Figure BSA00002242043800000414
验证通过,则结束验证并进行下一步骤;如果所有的基本结构都验证失败,则无法解密;
S502:用户Uj对验证通过的基本结构
Figure BSA00002242043800000415
调用秘密重构算法生成其新秘密f′js*;其中,s*为基本结构
Figure BSA00002242043800000416
对应的秘密值;
S503:用户Uj利用新秘密s′=f′js*对基本结构
Figure BSA00002242043800000417
对应的密文片段C1
Figure BSA00002242043800000425
进行解密;具体的,针对每一个
Figure BSA00002242043800000418
计算
Figure BSA00002242043800000419
进一步,计算得到明文
Figure BSA00002242043800000420
其中,
Figure BSA00002242043800000421
Figure BSA00002242043800000422
可选的,所述的验证算法具体为:输入:基本结构
Figure BSA00002242043800000423
输出:验证结果;(1)遍历
Figure BSA00002242043800000424
中的属性,如果该属性同时是
Figure BSA0000224204380000051
的叶子节点属性,则将该叶子节点标记为1,否则标记为0;(2)从
Figure BSA0000224204380000052
的倒数第二层开始至最顶层结束,依次读取各非叶子节点的节点阈值hβ,同时对该节点的子节点中的标记值进行求和,得到计数值cβ;如果cβ≥hβ,则验证成功并将该节点标记为1,否则验证失败并将该节点标记为0;然后继续验证下一个节点,直至根节点验证完毕;最后,调用中序遍历算法对基本结构
Figure BSA0000224204380000053
各个节点进行遍历,如果存在某一层的所有节点均验证失败,则验证失败,否则验证成功。
本发明的正确性和安全性如下:
正确性:
Figure BSA0000224204380000054
解密正确时须满足m′i=mi,不妨令
Figure BSA0000224204380000055
因此应该满足
Figure BSA0000224204380000056
等式成立。通过上述不等式可以计算满足要求的压缩技术参数dp的最大取值。
安全性:
本发明的安全性由格上的LWE和SIS困难假设保障。
本发明的有益效果在于:本发明提供了一种基于格与基本访问树的CP-ABE方案,适用于服务器与客户端的通信的加密模式,基于LWE和SIS的格困难问题结合CP-ABE的加密方案,解决了PKI在物联网环境中因大规模用户、多属性系统中耗费过多宽带、计算以及空间资源的问题,同时,抵抗量子算法可能在多项式时间内破解传统公钥密码体制的风险,并且保持低密文膨胀率和较高加密速率的优点。
附图说明
为了使本发明的目的、技术方案,本发明提供如下附图进行说明:
图1为一种基于格与基本访问树的CP-ABE方案流程图;
图2为本发明实施例1中基本访问树的结构图,其中:虚线款内为该基本访问树的基本结构;
图3为本发明实施例1的框架图,其中:1为P9主管用户端装置、2为可信第三方装置、3为用户端装置、虚线为网络连接。
具体实施方式
实施例1:阿里巴巴的员工数量为117,600人,其在世界各地都有办公大楼,并且每个大楼内分为不同的部门和工作团队,每个团队内的个人都有一般性的办公设备;大楼内也具有一般性的环境安全监控设施,例如烟雾探测器、电压探测器、水压探测器等等物联网设备。在万物互联的当下,以上所有的设备均可被视为一个终端,在这样一个庞大的集团内,为了保证各个终端的信息不泄露,利用一个可信中心(可信第三方)同时对某些特定群体(具有相同属性标签的设备的集合)的终端设备进行加密管理,特定群体通过自身私钥与密文的控制访问结构进行匹配,进而对密文解密。
在本实例中,假设阿里巴巴公司的P9等级的部门主管需要向整个团队的精英程序员(P6、P7、P8等级的程序员)发布新一阶段部门的技术工作路线文档,则可以将策略表示为
Figure BSA0000224204380000061
精英,P9主管将该策略并和待加密的文件一同输入系统。系统初始化并生成基本加密参数,针对每个属性生成其属性标签,计算用户标签,随后计算用户Bob(以用户属性“P6精英”为例)的私钥并发送给相应用户。系统将策略表达式
Figure BSA0000224204380000062
转化为析取表达式
Figure BSA0000224204380000063
or(P7 and精英)or(P8 and精英),再根据
Figure BSA0000224204380000064
生成基本访问树
Figure BSA0000224204380000065
(如图2所示),该访问树的基本结构
Figure BSA0000224204380000066
如图3所示。由下及上计算出基本访问树基本结构的根节点的节点值s1,s2,s3,即为其对应基本结构的秘密值,再利用这些秘密值计算出公开参数
Figure BSA0000224204380000067
并公布所有公开参数。系统利用计算出的公开参数对待加密文档加密并在部门内网广播。属性为“P6精英”的用户(Bob)接收密文,通过通基本结构验证后确定
Figure BSA0000224204380000068
结构可以解密,则该用户将自己的身份属性带入
Figure BSA0000224204380000069
还原秘密,得到解密时的真正私钥,随后调用解密算法还原明文。
下面将结合附图,对本发明的实例进行详细的描述。
如图3所示,1为用户端装置,为P9主管的计算机;2为可信第三方装置,为服务器;公司其他员工联网计算机为用户端装置3,Bob使用的电脑为用户端装置3之一。
如图1所示,本发明步骤如下:
步骤一:可信第三方装置2对系统进行初始化。
(1)可信第三方装置2初始化设定CP-ABE的总属性集合
Figure BSA00002242043800000610
用户Bob和对应的用户属性集合
Figure BSA00002242043800000611
其中,
Figure BSA00002242043800000612
(2)可信第三方装置2对基于LWE和SIS问题以及CP-ABE公钥加密框架的固定参数初始化并公开;选定安全参数λ=80;选定多项式次数n=256;选定格维数m=1536;选定参数k=12;选定参数l=128;选定模数为q=4194304001;选定标准差σ=4.5;选定高斯截断倍数t=9;选定压缩参数dp=8;选定分块复用参数lp=32;
(3)可信第三方装置2结合固定参数对随机参数进行初始化;
首先,可信第三方装置1在均匀分布上进行随机采样得到A=(A0,A1,...,A11)T和b=(b0,b1,...,b11)T,其中,
Figure BSA00002242043800000613
然后,可信第三方装置2在均匀分布上进行
Figure BSA00002242043800000614
次随机采样,得到每个属性Rα对应的向量标签
Figure BSA00002242043800000615
其中,α=1,...,4,
Figure BSA00002242043800000616
将所有gα的集合记为
Figure BSA00002242043800000617
步骤二:可信第三方装置1调用私钥生成方法,生成用户Bob的私钥并将其发送给Bob。
(1)可信第三方装置2计算用户Bob的标签块
Figure BSA00002242043800000618
并对每个标签块求逆,得到矩阵
Figure BSA00002242043800000619
其中,Aifi,j=bi,i=0,...,11;
(2)可信第三方装置遍2历用户Bob用户属性
Figure BSA00002242043800000620
根据每一个属性
Figure BSA00002242043800000621
对应的向量标签gi,计算私钥块
Figure BSA0000224204380000071
得到用户Bob的私钥
Figure BSA0000224204380000072
可优选的,根据步骤S201中计算用户的标签块fi,j的方法,计算用户Bob的标签块fi,Bob的过程具体为:首先,将Ai拆分成两部分
Figure BSA0000224204380000073
然后,将带求解的fi,Bob也拆分成两个部分
Figure BSA0000224204380000074
并对fi,Bob,1在均匀分布上随机采样
Figure BSA0000224204380000075
最后,运用公式计算出
Figure BSA0000224204380000076
并将两部分拼接成fi,Bob
步骤三:P9主管将策略表达式
Figure BSA0000224204380000077
通过用户端装置1输入可信第三方装置2,可信第三方装置2读取
Figure BSA0000224204380000078
并调用转化算法将其转化为带阈值逻辑的析取表达式
Figure BSA0000224204380000079
Figure BSA00002242043800000710
or(P7 and精英)or(P8 and精英),通过析取表达式构建基本控制访问树,由于
Figure BSA00002242043800000711
含有三个基本表达式,因此其基本控制访问树具有三个基本结构,基本访问树的构造如图2所示,所有的基本结构逻辑属性为“and”,子节点的插值为1,由下及上计算出基本结构的值s1,s2,s3,再利用这些值计算出公开参数
Figure BSA00002242043800000712
最后将所有公开参数
Figure BSA00002242043800000713
公开。
步骤四:可信第三方装置2根据公开参数,依次将明文进行加密,将计算出的密文公开。
(1)明文最初为二进制流,将明文在
Figure BSA00002242043800000714
空间中进行的编码,即将1个8位二进制信息转化为为一个范围是0~255的整数,依次将这些整数作为向量(m1,...,m32)的系数。
(2)根据离散高斯分布进行噪声采样
Figure BSA00002242043800000715
(3)计算密文块C1=rb;
(4)对每一个
Figure BSA00002242043800000716
计算密文块C′i,j=rTtj+mi·「q/28」+e′i,j
(5)分别公布密文C1和{C′i,j}1≤i≤32,1≤j≤3
其中,
Figure BSA00002242043800000717
步骤五:用户操作用户端装置3,根据基本访问树的基本结构,利用自身私钥构造解密密文的私钥,最后对密文进行解密。
(1)用户Bob依次对基本控制访问树
Figure BSA00002242043800000718
的每一个基本结构
Figure BSA00002242043800000719
调用验证算法,其中,基本结构
Figure BSA00002242043800000720
验证通过;
(2)用户Bob对验证通过的基本结构
Figure BSA00002242043800000721
调用秘密重构算法生成新秘密f′Bobs1
(3)用户Bob利用新秘密s′=f′Bobs1对基本结构
Figure BSA00002242043800000722
对应的密文片段C1和{C′i,1}1≤i≤32进行解密;具体的,计算
Figure BSA00002242043800000723
进一步,计算m′i=resi,1/「q/28」mod+28得到解密明文(m′i)1≤i≤32;其中,
Figure BSA0000224204380000081
Figure BSA0000224204380000082
同理,Bob也可以通过本发明方法,将自己视为可信第三方,把自己的文件分享到部门的技术工作路线文档中,供符合条件的员工查看。
实施例2:当下密码学有公钥密码学和对称密码学两种加密法,其中对称密码的加密密钥与解密密钥相同,并且加解密的效率较高,一般适用于通话、视频等即时通讯的加解密;公钥密码系统的加密密钥与解密密钥不同,因其加解密效率较低而被广泛用于密钥封装等加密量较小的应用场景。本发明作为公钥密码体系的方案之一,同样适用于密钥封装,即使用本CP-ABE公钥加密的发明加密对称加密系统的密钥,再分发给相关用户,具有访问权限的用户解密得到对成密钥后建立安全通信信道,以下为实施例2细节。
新冠肺炎流感期间,各个公司均要求职员在家办公。在此背景下,假设X公司的Y部门将组织内部的特定人员开会讨论,他们选择采用本发明的会议视频APP作为通讯媒介,并规定等级为三的技术人员、部门主管以及策划人员具有与会讨论的权限,由Y部门秘书Alice发送邀请通知(该通知中隐含会议的秘钥,只有特定身份的职员才能解密获取)。
Y部门秘书Alice为可信第三方,可信第三方装置为Alice的计算机,其他员工联网计算机为用户端装置,Bob使用的电脑为用户端装置之一。
步骤一:可信第三方装置对系统进行初始化,设置的具体参数值可参考实施例1。
步骤二:可信第三方装置调用私钥生成方法,依次生成所有用户的私钥并发送。
步骤三:Alice通过秘书身份登入此会议视频APP的企业管理员账号,并将加密策略输入系统,策略
Figure BSA0000224204380000083
公司and Y部门and((三级and技术人员)or部门主管or策划人员)。系统将策略
Figure BSA0000224204380000084
转化为析取表达式
Figure BSA0000224204380000085
or(X公司and Y部门and部门主管)or(X公司and Y部门and策划人员),再用
Figure BSA0000224204380000086
生成基本访问树
Figure BSA0000224204380000087
包含
Figure BSA0000224204380000088
三个基本结构,对其依次调用算法构建对应的秘密s1,s2,s3,再利用该秘密值计算公开参数
Figure BSA0000224204380000089
将公开参数
Figure BSA00002242043800000810
公布。
步骤四:系统产生一个128位的AES对称加密密钥作为待加密的明文,用KEY_AES_128表示,分别再用计算所得的各个基本结构的公开参数t1,t2,t3对KEY_AES_128进行加密,并生成邀请函以E-mail的形式连同计算所得的密文C1和{C′i,j}1≤i≤32,1≤j≤3一并发送给部门内所有职员。
步骤五:属性为“X公司Y部门部门主管”的用户(Bob)接收密文,通过基本结构验证后确定
Figure BSA00002242043800000811
结构可以解密,则Bob对
Figure BSA00002242043800000812
调用秘密还原算法还原新秘密,得到解密时的真正私钥,随后调用解密算法还原明文。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其做出各种各样的改变,而不偏离本发明权利要求书所限定的范围。

Claims (11)

1.一种基于格与基本访问树的CP-ABE方法,由可信第三方装置、两个及以上的用户端装置构成的系统进行实现,所述的可信第三方装置、用户端装置通过网络相连,且均为计算机;包含以下步骤:
S1:可信第三方装置对系统进行初始化;
S2:可信第三方装置调用私钥生成方法,生成用户私钥并将其发送给相应用户;
S3:可信第三方装置将输入的控制访问策略表达式转化为析取表达式,通过析取表达式构建基本控制访问树,由下及上计算出基本访问树第二层节点的值,再利用这些值计算出公开参数,最后将公开参数公开;
S4:可信第三方装置根据公开参数,依次将明文进行加密,将计算出的密文公开;
S5:用户操作用户端装置,根据基本访问树的基本结构进行验证,对验证通过的基本结构利用自身私钥构造相应解密密文的私钥,最后对密文进行解密。
2.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,所述的步骤S1具体为:
S101:可信第三方装置初始化设定CP-ABE的总属性集合
Figure FSA0000224204370000011
用户U和对应的用户属性集合
Figure FSA0000224204370000012
S102:可信第三方装置对基于LWE和SIS问题以及CP-ABE公钥加密框架的固定参数初始化并公开;
S103:可信第三方装置结合固定参数对随机参数进行初始化;
其中,步骤S102所述的固定参数为安全参数λ,多项式次数n,m,k,l,模数q,方差σ,t,压缩参数dp,分块复用参数lp,均匀分布参数U(X),具体地:所述的λ根据预判敌手攻击次数2λ计算求得;所述的n为人为选取的2的幂次的整数;所述的q满足q≡1 mod 2·n;所述的l=n/2,m=6·n,k=m/l;所述的σ为满足
Figure FSA0000224204370000013
的任意浮点数;所述的参数t≥6为根据出错概率人为选取的任意浮点数;所述的压缩参数dp为满足不等式
Figure FSA0000224204370000014
的任意整数;所述的lp为大于1的整数,综合考虑效率和密文膨胀率来人为选定;所述的U(X)为关于随机变量X的有界均匀分布,其界为[0,q);
所述的步骤S103具体为:
(1)可信第三方装置在均匀分布上进行随机采样得到A=(A0,A1,…,Ak-1)T和b=(b0,b1,…,bk-1)T,其中,
Figure FSA0000224204370000015
(2)可信第三方装置在均匀分布上进行
Figure FSA0000224204370000016
次随机采样,得到每个属性Rα对应的向量标签
Figure FSA0000224204370000017
将所有向量标签gα的集合记为
Figure FSA0000224204370000018
其中,
Figure FSA0000224204370000019
3.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S2所述的调用私钥生成方法生成第j个用户的私钥,具体为:
S201:计算第j个用户Uj的标签块
Figure FSA00002242043700000110
并对每个标签块求逆,得到矩阵
Figure FSA00002242043700000111
其中,Aifi,j=bi,i=0,…,k-1;
S202:遍历用户Uj的用户属性
Figure FSA0000224204370000021
根据每一个属性
Figure FSA0000224204370000022
对应的向量标签gi,计算私钥块
Figure FSA0000224204370000023
得到用户Uj的私钥
Figure FSA0000224204370000024
4.根据权利要求3所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S201中的根据Aifi,j=bi计算第j个用户的标签块fi,j的方法具体为:首先,将Ai拆分成两部分
Figure FSA0000224204370000025
然后,将带求解的fi,j也拆分成两个部分
Figure FSA0000224204370000026
并对fi,j,1在均匀分布上随机采样
Figure FSA0000224204370000027
最后,运用公式计算出
Figure FSA0000224204370000028
并将两部分拼接成fi,j
5.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S3所述的将控制访问策略表达式
Figure FSA0000224204370000029
转化为析取表达式
Figure FSA00002242043700000210
的算法具体为:输入控制访问策略表达式
Figure FSA00002242043700000211
输出析取表达式
Figure FSA00002242043700000212
(1)
Figure FSA00002242043700000213
中的优先级用括号来规定,层次越深的括号内部的逻辑表达式的执行优先级越高;(2)如果
Figure FSA00002242043700000214
中有“or”,尽量将“or”提出括号,使其优先级降为最低,如果所有“or”已经处于最低优先级,则无需变动
Figure FSA00002242043700000215
6.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S3所述的通过析取表达式
Figure FSA00002242043700000216
构建基本控制访问树
Figure FSA00002242043700000217
的算法具体为:输入析取表达式
Figure FSA00002242043700000218
输出基本控制访问树
Figure FSA00002242043700000219
(1)将逻辑属性“or”作为基本控制访问树
Figure FSA00002242043700000220
的根节点
Figure FSA00002242043700000221
(2)依次读取
Figure FSA00002242043700000222
中的ln个基本表达式,将其转化为生成树的基本结构
Figure FSA00002242043700000223
并将其连接至树
Figure FSA00002242043700000224
的根节点
Figure FSA00002242043700000225
7.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S3所述的由下及上计算出基本访问树
Figure FSA00002242043700000226
第二层节点的值的算法具体为:输入基本结构
Figure FSA00002242043700000227
输出秘密值si;(1)遍历基本结构
Figure FSA00002242043700000228
中所有叶子节点对应的属性Rα,并对每一个
Figure FSA00002242043700000229
找到其相对应的标签向量
Figure FSA00002242043700000230
并将其赋值给基本结构
Figure FSA00002242043700000231
中相对应属性的叶子节点;(2)当
Figure FSA00002242043700000232
中所有叶子节点均已赋值后,由下而上对各个节点进行插值求和得到节点值直至计算至
Figure FSA00002242043700000233
的最上层,将根节点值为此基本结构的秘密值si;其中,逻辑属性为“and”的父节点对应的子节点的插值为1;逻辑属性为“of”的父节点对应的子节点的插值为随机排序的编号值。
8.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S3所述的公开参数为
Figure FSA00002242043700000234
所述的
Figure FSA00002242043700000235
所述的ti=Asi+ei,其中
Figure FSA00002242043700000236
为离散高斯向量。
9.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S4所述的加密过程为:
S401:将明文在
Figure FSA0000224204370000031
空间中进行的编码,生成系数向量m=(m1,…,mlp);
S402:根据离散高斯分布进行噪声采样
Figure FSA0000224204370000032
S403:计算密文块C1=rb;
S404:对每一个
Figure FSA0000224204370000033
和mi∈m,计算密文块C′i,j=rTtj+mi·「q/2dp」+e′i,j
S405:分别公布密文C1和{C′i,j}1≤i≤lp,1≤j≤ln
其中,
Figure FSA0000224204370000034
10.根据权利要求1所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,步骤S5所述的解密过程具体为:
S501:用户Uj依次对基本控制访问树
Figure FSA0000224204370000035
的每一个基本结构
Figure FSA0000224204370000036
调用验证算法,如果存在第j*个基本结构
Figure FSA0000224204370000037
验证通过,则结束验证并进行下一步骤;如果所有的基本结构都验证失败,则无法解密;
S502:用户Uj对验证通过的基本结构
Figure FSA0000224204370000038
调用秘密重构算法生成其新秘密f′js*;其中,s*为基本结构
Figure FSA0000224204370000039
对应的秘密值;
S503:用户Uj利用新秘密s′=f′js*对基本结构
Figure FSA00002242043700000310
对应的密文片段C1
Figure FSA00002242043700000311
进行解密;具体的,针对每一个
Figure FSA00002242043700000312
计算
Figure FSA00002242043700000313
进一步,计算得到明文
Figure FSA00002242043700000314
其中,
Figure FSA00002242043700000315
Figure FSA00002242043700000316
11.根据权利要求10所述的一种基于格与基本访问树的CP-ABE方法,其特征在于,所述的验证算法具体为:输入基本结构
Figure FSA00002242043700000317
输出验证结果;(1)遍历
Figure FSA00002242043700000318
中的属性,如果该属性同时是
Figure FSA00002242043700000319
的叶子节点属性,则将该叶子节点标记为1,否则标记为0;(2)从
Figure FSA00002242043700000320
的倒数第二层开始至最顶层结束,依次读取各非叶子节点的节点阈值hβ,同时对该节点的子节点中的标记值进行求和,得到计数值cβ;如果cβ≥hβ,则验证成功并将该节点标记为1,否则验证失败并将该节点标记为0;然后继续验证下一个节点,直至根节点验证完毕;最后,调用中序遍历算法对基本结构
Figure FSA00002242043700000321
各个节点进行遍历,如果存在某一层的所有节点均验证失败,则验证失败,否则验证成功。
CN202011229123.4A 2020-11-06 2020-11-06 一种基于格与基本访问树的cp-abe方法 Active CN112291053B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011229123.4A CN112291053B (zh) 2020-11-06 2020-11-06 一种基于格与基本访问树的cp-abe方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011229123.4A CN112291053B (zh) 2020-11-06 2020-11-06 一种基于格与基本访问树的cp-abe方法

Publications (2)

Publication Number Publication Date
CN112291053A true CN112291053A (zh) 2021-01-29
CN112291053B CN112291053B (zh) 2022-10-25

Family

ID=74350816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011229123.4A Active CN112291053B (zh) 2020-11-06 2020-11-06 一种基于格与基本访问树的cp-abe方法

Country Status (1)

Country Link
CN (1) CN112291053B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114219483A (zh) * 2021-12-14 2022-03-22 云南财经大学 基于lwe-cpabe的区块链数据共享方法、设备和存储介质
CN115348110A (zh) * 2022-10-18 2022-11-15 华能信息技术有限公司 一种视频会议系统的服务端数据安全管理方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105024821A (zh) * 2015-07-13 2015-11-04 西安理工大学 格上可撤销的基于身份的加密方法
WO2016197769A1 (zh) * 2015-06-12 2016-12-15 深圳大学 一种基于表格属性的云存储密文访问控制系统
CN106506155A (zh) * 2016-12-09 2017-03-15 四川师范大学 公有云环境下的密文共享方法
CN107682157A (zh) * 2017-10-11 2018-02-09 河南理工大学 一种新的格上基于lwe的多机构属性基加密方法
CN108512662A (zh) * 2018-04-12 2018-09-07 上海海事大学 一种格上支持策略隐藏的多机构加密方法
CN108540280A (zh) * 2018-02-09 2018-09-14 上海交通大学 一种资源高效的安全数据分享方法及系统
CN110138561A (zh) * 2019-03-22 2019-08-16 西安电子科技大学 基于cp-abe自动校正的高效密文检索方法、云计算服务系统
EP3618346A1 (en) * 2018-08-31 2020-03-04 Koninklijke Philips N.V. A method and apparatus for policy hiding on ciphertext-policy attribute-based encryption
CN111130757A (zh) * 2019-12-31 2020-05-08 华中科技大学 一种基于区块链的多云cp-abe访问控制方法
CN111698081A (zh) * 2020-06-08 2020-09-22 中国科学院重庆绿色智能技术研究院 一种基于格的压缩分块ibe加密装置及方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197769A1 (zh) * 2015-06-12 2016-12-15 深圳大学 一种基于表格属性的云存储密文访问控制系统
CN105024821A (zh) * 2015-07-13 2015-11-04 西安理工大学 格上可撤销的基于身份的加密方法
CN106506155A (zh) * 2016-12-09 2017-03-15 四川师范大学 公有云环境下的密文共享方法
CN107682157A (zh) * 2017-10-11 2018-02-09 河南理工大学 一种新的格上基于lwe的多机构属性基加密方法
CN108540280A (zh) * 2018-02-09 2018-09-14 上海交通大学 一种资源高效的安全数据分享方法及系统
CN108512662A (zh) * 2018-04-12 2018-09-07 上海海事大学 一种格上支持策略隐藏的多机构加密方法
EP3618346A1 (en) * 2018-08-31 2020-03-04 Koninklijke Philips N.V. A method and apparatus for policy hiding on ciphertext-policy attribute-based encryption
CN110138561A (zh) * 2019-03-22 2019-08-16 西安电子科技大学 基于cp-abe自动校正的高效密文检索方法、云计算服务系统
CN111130757A (zh) * 2019-12-31 2020-05-08 华中科技大学 一种基于区块链的多云cp-abe访问控制方法
CN111698081A (zh) * 2020-06-08 2020-09-22 中国科学院重庆绿色智能技术研究院 一种基于格的压缩分块ibe加密装置及方法

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
LIHUA LIU ECT.: "A Keyword-Searchable ABE Scheme From Lattice in Cloud Storage Environment", 《IEEE ACCESS》 *
YUAN LIU ECT.: "Secure and Efficient Multi-Authority Attribute-Based Encryption Scheme From Lattices", 《DIGITAL OBJECT IDENTIFIER 10.1109/ACCESS.2018.2888850》 *
吴文渊、郑嘉彤、冯勇: "基于LWE问题的发送方可否认公钥加密方案", 《工程科学与技术》 *
安立峰等: "支持策略隐藏且固定密文长度的属性基加密方案", 《通信技术》 *
柯程松、吴文渊、冯勇: "基于MLWE的低膨胀率加密算法", 《计算机科学》 *
程思嘉等: "基于CP-ABE算法的云存储数据访问控制方案设计", 《信息网络安全》 *
赵建、高海英、胡斌: "基于理想格的高效密文策略属性基加密方案", 《电子与信息学报》 *
闫玺玺等: "新的格上多机构属性基加密方案", 《电子与信息学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114219483A (zh) * 2021-12-14 2022-03-22 云南财经大学 基于lwe-cpabe的区块链数据共享方法、设备和存储介质
CN114219483B (zh) * 2021-12-14 2023-03-14 云南财经大学 基于lwe-cpabe的区块链数据共享方法、设备和存储介质
CN115348110A (zh) * 2022-10-18 2022-11-15 华能信息技术有限公司 一种视频会议系统的服务端数据安全管理方法
CN115348110B (zh) * 2022-10-18 2023-06-30 华能信息技术有限公司 一种视频会议系统的服务端数据安全管理方法

Also Published As

Publication number Publication date
CN112291053B (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
WO2016197680A1 (zh) 面向云存储服务平台的访问控制系统及其访问控制方法
CN110414981B (zh) 一种支持ZKPs的同态加密方法和区块链交易金额加密方法
CN101309137B (zh) 一种基于秘密共享的单向函数树组播密钥管理方法
CN112291053B (zh) 一种基于格与基本访问树的cp-abe方法
KR20200125980A (ko) 디지털 자산의 제어를 전송하기 위한 컴퓨터 구현된 방법 및 시스템
CN111698081B (zh) 一种基于格的压缩分块ibe加密装置及方法
D’Souza et al. Publicly verifiable secret sharing for cloud-based key management
CN116667996A (zh) 一种基于混合同态加密的可验证联邦学习方法
CN112385176B (zh) 匿名工作分配和多数表决的系统、方法和介质
Tian et al. DIVRS: Data integrity verification based on ring signature in cloud storage
An et al. QChain: Quantum-resistant and decentralized PKI using blockchain
Shiraishi et al. Attribute revocable attribute-based encryption with forward secrecy for fine-grained access control of shared data
Singamaneni et al. An efficient quantum hash-based CP-ABE framework on cloud storage data
US8249258B2 (en) Communication method and communication system using decentralized key management scheme
Sakamoto An efficient structure for LKH key tree on secure multicast communications
CN114157424B (zh) 无密钥托管且支持用户撤销的属性基加密系统及方法
JP2004341152A (ja) 秘密分散方法、秘密分散システム、及び分散演算装置
Meng Directly revocable ciphertext-policy attribute-based encryption from lattices
Theodouli et al. Implementing private k-means clustering using a LWE-based cryptosystem
TW202312055A (zh) 區塊鏈錢包的非互動式批核系統及其方法
Braghin et al. Secure and policy-private resource sharing in an online social network
Choi et al. Implementation of tree-based dynamic group key exchange with newhope
CN111970296A (zh) 一种高效的文件分等级属性基加密方法和系统
Kumar et al. Effective Key Agreement Protocol for Large and Dynamic Groups Using Elliptic Curve Cryptography
Joe Prathap et al. Revised variable length interval batch rekeying with balanced key tree management for secure multicast communications

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