一种加、解密方法、装置及系统制造方法及图纸

技术编号:38262202 阅读:8 留言:0更新日期:2023-07-27 10:21
本发明专利技术公开了一种加、解密方法、装置及系统,属于密码学技术领域;考虑到系统中的每个用户都被分配了指定的访问控制策略和属性,加密过程中用户的访问控制策略决定了他能给哪些类型的接收方发送消息,用户的属性决定了他能够接收到哪些发送方发的消息,本发明专利技术基于线性秘密分享矩阵(LSSS矩阵)来表达访问控制策略,以实现任意访问策略的灵活表达,具有较强的表达能力;在此基础上,本发明专利技术为发送方生成嵌入有发送方访问控制策略的加密密钥,从而在通信的过程中通过给不同的用户分配相应的访问控制策略和属性,来实现系统中的信息流动的细粒度控制,能够更好地控制加密系统信息流的流向,更加方便地对用户的行为进行高效的管理。理。理。

【技术实现步骤摘要】
一种加、解密方法、装置及系统


[0001]本专利技术属于密码学
,更具体地,涉及一种加、解密方法、装置及系统。

技术介绍

[0002]现代密码学是计算机和通信安全的基石。其基础是数学理论,计算复杂度理论和概率论等数学概念。通过密码学的方式可以很好的限制用户之间信息流的流动方式以及读取权限,使得用户之间以密钥的方式进行信息的传输以及访问,即只有拥有密钥的用户具备读写消息的权限。使用密码技术不仅可以保证信息的机密性,而且可以保证信息的完整性和可用性等多个性质,以防止通讯过程中的信息被篡改、伪造和假冒。
[0003]但是随着计算机技术和密码技术的发展,当今信息的安全不仅需要限制用户读取消息的权限,也要限制加密系统中用户读写消息的权限,即给不同的用户设置不同的读写权限,也就是对加密系统进行访问控制。当前的访问控制系统的实现一般要基于一个可信中央处理器,该中央处理器制定并拥有整个系统的访问控制策略,它决定哪些用户之间可以通信,哪些用户拥有读写权限。当然,如果面临攻击,在中央处理器被攻破的情况下,攻击者可以根据自己的意愿随意的篡改系统策略并获取任意的信息,整个系统都将陷入不安全的通讯环境。
[0004]因此访问控制加密便诞生了,该加密方法和一般的访问控制一样可以同时对用户的读写权限进行限制,同时又使用密码学的技术为系统提供更高的安全性。与一般访问控制系统相比,访问控制加密依赖于一个中间实体处理器(净化器,sanitizer)对消息进行转发,且净化器仅进行非常简单的操作如对发送方传输过来的密文进行净化、将净化后的密文进行转发等,其对于发送方以及接收方的任何信息都是无法得知的。更重要的是,在遭受攻击时,即使净化器遭到攻击,攻击者也无法篡改访问控制策略或者从加密信息中获得任何有用的信息。
[0005]虽然目前已经有很多学者发表了关于访问控制加密的工作,但是他们提出的访问控制加密基本都是基于身份来构建访问控制策略。基于身份的加密方式虽然能够很好地完成访问控制策略的制作,但是在表达能力上存在很大局限性,并不能直观、方便、灵活地表达出各场景下所需的访问控制策略,进而无法控制加解密过程中信息流的流向,无法对用户的行为进行高效的管理;除此之外,该方法还需要很大的存储空间来进行访问控制策略的存储。

技术实现思路

[0006]针对现有技术的以上缺陷或改进需求,本专利技术提供了一种加、解密方法、装置及系统,用于解决现有技术由于在表达能力上存在很大局限性所导致的无法控制加解密过程中信息流的流向,无法对用户的行为进行高效的管理的技术问题。
[0007]为了实现上述目的,第一方面,本专利技术提供了一种加密方法,包括:
[0008]拥有发送权限的发送方S接收访问控制管理员下发的加密密钥ek,并采用加密密
钥ek对消息m进行加密,生成密文C;
[0009]其中,访问控制管理员生成加密密钥ek的方法包括:
[0010]将发送方S的访问控制策略表示为LSSS矩阵;基于系统公开参数pp、主密钥msk以及发送方S的访问控制策略,采用基于LSSS的属性加密方法生成加密密钥参数;对加密密钥参数进行签名,得到对应的签名σ;将加密密钥参数与其签名σ进行合并,生成对应的加密密钥ek;
[0011]其中,LSSS矩阵第i行的向量M
i
为访问控制策略中第i个属性的编码结果;系统公开参数pp为:
[0012]pp=(h1,...,h
U
,h1,...,h
U
,g1,g2,e(g1,g2)
α
,g
1a
,g
2a
,vk);
[0013]主密钥msk为:
[0014]msk=(g

,sk)。
[0015]其中,第k个属性的编码参数包括:k=1,2,

,U;U为所有用户属性的总数量;g1和g2来自于Type III群{p,G1,G2,G
T
,g1,g2,e},p为基于系统安全参数生成的素数,g1为G1群的生成元,g2为G2群的生成元,e:G1×
G2→
G
T
为双线性映射;G1,G2,G
T
为三个p阶乘法群;α,a∈Z
p
为随机数;Z
p
表示[0,p)范围下的整数集;vk为签名验证密钥;sk为签名密钥。
[0016]进一步优选地,加密密钥ek的生成方法包括:
[0017]S11、将发送方S的访问控制策略表示为l行n列的LSSS矩阵;其中,l为发送方S的访问控制策略中的总属性个数;n为属性的编码长度;
[0018]S12、采用基于LSSS的属性加密方法生成加密密钥参数:
[0019]选择随机向量计算λ
i
=v
·
M
i
;i=1,2,

,l;表示n维的[0,p)范围下的整数向量集;
[0020]随机选择r1,...,r
l
∈Z
p
,随机选择R
l+1
,...,R
L
,R

l+1
,...,R

L
∈G1,并计算:
[0021]A=e(g1,g2)
αs
,A0=g
1s

[0022][0023]A
j
=R
j
,B
j
=R
j

[0024]其中,j=l+1,l+2,

,L;ρ(i)为第i个属性在所有用户属性中的序号;
[0025]得到加密密钥参数(A0,{A
q
,B
q
}
q=1,2,

,L
);
[0026]S14、通过签名密钥sk对加密密钥参数(A0,{A
q
,B
q
}
q=1,2,

,L
)进行签名,得到签名σ;
[0027]S15、将加密密钥参数与其签名σ进行合并,生成对应的加密密钥ek=(A,A0,{A
q
,B
q
}
q=1,2,

,L
,σ)。
[0028]进一步优选地,采用加密密钥ek对消息m进行加密的方法包括:
[0029]选择随机数基于随机数r计算第一密文参数:A

=A
r
,,q=1,2,

,L,并使用随机数r重随机化签名σ得到签名σ

;其中,表示(0,p)范围下的整数集;
[0030]选择随机数并基于随机数u1计算第二密文参数:计算第二密文参数:i=1,2,

,l;q=1,2,

,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种加密方法,其特征在于,包括:拥有发送权限的发送方S接收访问控制管理员下发的加密密钥ek,并采用所述加密密钥ek对消息m进行加密,生成密文C;所述访问控制管理员生成加密密钥ek的方法包括:将发送方S的访问控制策略表示为LSSS矩阵;基于系统公开参数pp、主密钥msk以及发送方S的访问控制策略,采用基于LSSS的属性加密方法生成加密密钥参数;对加密密钥参数进行签名,得到对应的签名σ;将加密密钥参数与其签名σ进行合并,生成对应的加密密钥ek;其中,所述LSSS矩阵第i行的向量M
i
为访问控制策略中第i个属性的编码结果;所述系统公开参数pp为:pp=(h1,...,h
U
,h
′1,...,h

U
,g1,g2,e(g1,g2)
α
,g
1a
,g
2a
,vk);所述主密钥msk为:msk=(g

,sk);第k个属性的编码参数包括:k=1,2,

,U;U为所有用户属性的总数量;g1和g2来自于TypeIII群{p,G1,G2,G
T
,g1,g2,e},p为基于系统安全参数生成的素数,g1为G1群的生成元,g2为G2群的生成元,e:G1×
G2→
G
T
为双线性映射;G1,G2,G
T
为三个p阶乘法群;α,a∈Z
p
为随机数;Z
p
表示[0,p)范围下的整数集;vk为签名验证密钥;sk为签名密钥。2.根据权利要求1所述的加密方法,其特征在于,所述加密密钥ek的生成方法包括:S11、将发送方S的访问控制策略表示为l行n列的LSSS矩阵;其中,l为发送方S的访问控制策略中的总属性个数;n为属性的编码长度;S12、采用基于LSSS的属性加密方法生成加密密钥参数:选择随机向量计算λ
i
=v
·
M
i
;i=1,2,

,l;表示n维的[0,p)范围下的整数向量集;随机选择r1,...,r
l
∈Z
p
,随机选择R
l+1
,...,R
L
,R

l+1
,...,R

L
∈G1,并计算:A=e(g1,g2)
αs
,A0=g
1s
,A
j
=R
j
,B
j
=R
j
;其中,j=l+1,l+2,

,L;ρ(i)为第i个属性在所有用户属性中的序号;得到加密密钥参数(A0,{A
q
,B
q
}
q=1,2,

,L
);S14、通过签名密钥sk对所述加密密钥参数(A0,{A
q
,B
q
}
q=1,2,

,L
)进行签名,得到签名σ;S15、将所述加密密钥参数(A0,{A
q
,B
q
}
q=1,2,

,L
)与其签名σ进行合并,生成对应的加密密钥ek=(A,A0,{A
q
,B
q
}
q=1,2,

,L
,σ)。3.根据权利要求2所述的加密方法,其特征在于,采用所述加密密钥ek对消息m进行加密的方法包括:选择随机数基于随机数r计算第一密文参数:A

=A
r
,,并使用随机数r重随机化签名σ得到签名σ

;其
中,表示(0,p)范围下的整数集;选择随机数并基于随机数u1计算第二密文参数:计算第二密文参数:计算第二密文参数:选择随机数并基于随机数u2计算第三密文参数:计算第三密文参数:生成密文C,具体为:C=(C
m
,C0,c
m
,c0,{C
q
,D
q
,c
q
,d
q
}
q=1,2,

,L
,σ

,A

,A0′
,{A

q
,B

q
}
q=1,2,

,L
)。4.根据权利要求3所述的加密方法,其特征在于,所述系统公开参数pp还包括零知识证明的公共参考串crs,具体为:pp=(h1,...,h
U
,h1,...,h
U
,g1,g2,e(g1,g2)
α
,g
1a
,g
2a
,vk,crs);此时,采用所述加密密钥ek对消息m进行加密的方法还包括:通过x1=({C
q
,D
q
,A

q
,B

q
}
q=1,2,

,L
,C
m
,C0,A

,A0′
)和w1=(u1)生成零知识证明π1,通过x2=({c
q
,d
q
,A

q
,B

q
}
q=1,2,

,L
,c
m
,c0,A

,A0′
)和w2=(u2)生成零知识证明π2;所生成的密文C为:C=(C
m
,C0,c
m
,c0,{C
q
,D
q
,c
q
,d
q
}
q=1,2,

,L
,π1,π2,σ

,A

,A0′
,{A

q
,B

q
}...

【专利技术属性】
技术研发人员:张嘉睿余孟阳王耀辉郭紫清王秀华
申请(专利权)人:华中科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1