一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

云边协同环境下基于区块链的细粒度访问控制方法

2022-12-19 20:18:50 来源:中国专利 TAG:


1.本发明涉及数据加密领域,具体涉及云边协同环境下基于区块链的细粒度访问控制方法。


背景技术:

2.云计算是当今社会互联网领域最为重要的几项技术的发展与实现。包括分布式计算、并行计算、虚拟化等。云计算具有强大的计算能力、可扩展性好、价格低廉等特点。随着云计算技术的日趋成熟和快速发展,资源受限的用户将数据存储在云端,只需较小的代价就能享受高效快捷的文件存储和查询服务,在享受高质量数据服务的同时大大降低了本地管理开销,但是安全和隐私的问题已经成为一项重要的挑战,如何保证高质量的数据服务同时保证数据的安全性成为云计算中亟待解决的关键问题。
3.边缘计算是指数据或任务能够在靠近数据源头的网络边缘侧进行计算和执行计算的一种新型服务模型。由于云计算与万物互联固有特征之间的矛盾,单纯依靠云计算这种集中式的计算处理方式,将不足以物联网感知为背景的应用程序运行和海量数据处理,而且云计算模型已经无法有效解决云中心负载、传输带宽、数据隐私保护等问题。因此,边缘计算应运而生,与现有的云计算集中式处理模型相结合,能有效解决云中心和网络边缘的大数据处理问题。边缘计算的一个优势在于其突破了终端硬件的限制,使移动终端等便携式设备大量参与到服务计算中来,实现了移动数据存取、智能负载均衡和低管理成本。
4.可搜索加密是一种支持用户在密文上根据关键词进行搜索的密码学原语。其出现的主要目的是为了解决用户在加密云数据上进行数据查询的难题,可搜索加密机制中,首先数据拥有者根据其加密算法对明文数据进行加密存储至云服务器,当数据用户想要获取到云服务器上的数据时,就发送检索所需要的凭证至云服务,云服务器根据发送的凭证在云服务器其中进行检索匹配,若匹配成功,则将查询结果以密文的形式返回给数据用户,数据用户收到返回的结果后在本地解密。
5.区块链是一种按照时间顺序将数据区块以链条的方式组合而成的特定数据结构,并以密码学方式保证的不可篡改不可伪造的去中心化公共总账。通过p2p网络、密码学、共识算法和激励机制等不同领域和学科的技术相结合在一起。通过密码学算法进行本地账本的生成,保证了账户的匿名性,通过分布式一致性算法实现了不同节点之间的共识,防止恶意用户对历史数据的篡改,通过哈希算法生成区块间的引用依赖,实现了历史可追溯等优点。
6.门限秘密共享是一个简单实用的密钥共享体制。该方案提出的是一个(t,n)门限秘密共享方案,将秘密值s分隔成n个部分,当知道其中任意t个或者t个以上时,便可以恢复出秘密值s。
7.在云边协同环境下,现有的大多数可搜索加密方案,把开销大的加密和解密操作交给用户,但是现实生活中用户的计算能力有限,因此造成了搜索效率低下。同时现在大部分的方案往往采用单授权机构进行私钥的生成,易造成私钥的泄露,且效率低,所以与单授
权的模型相比,最重要的挑战是多个实体授权合作生成私钥,保证私钥的可追溯性和安全性。


技术实现要素:

8.为了解决上述技术问题,本发明提供一种算法简洁、安全高效的云边协同环境下基于区块链的细粒度访问控制方法。
9.本发明解决上述技术问题的技术方案是:一种云边协同环境下基于区块链的细粒度访问控制方法,包括步骤如下:
10.步骤一,初始化阶段;
11.步骤二,加密阶段:数据拥有者制定访问控制策略,把访问控制策略和相应的数据上传至相对应的边缘服务器。然后边缘服务器将数据加密上传至云服务器,同时把关键字密文和访问控制策略发送到其他的边缘节点。
12.步骤三,事务生成阶段:边缘服务器发出委托事务请求,共识网络中各个节点响应成为委托计算节点。然后边缘节点生成一个事务并将事务广播给区块链网络中的其他节点。
13.步骤四,陷门生成阶段:用户根据想要搜索的关键词生成搜索陷门。
14.步骤五,搜索阶段:边缘服务器收到用户的发来的陷门之后,先检查是否满足访问控制矩阵,如果验证该属性集不满足访问控制矩阵,则过程中止,否则继续执行。若满足访问控制矩阵,则检查是否含有相应的数据,若含有则丛云服务器中获取到相对应的数据,否则返回0。
15.步骤六,解密阶段:当提交的陷门满足访问控制策略,则区块链中各个节点多方协同计算出秘密值。并得出最终的私钥解密,然后把数据返回给相对应的数据用户。
16.上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤一中,系统初始化阶段的具体步骤为:
17.ac选择属性集atts作为输入。ac选择一个双线性对e:g0×
g0→
g1,其中g0、g1是阶为q的群,g0、g1是其生成元。选择安全哈希函数h:随机选择a、α、k、k、其中k是对称密钥,生成系统公钥部分私钥sk1=(k1,k2),其中),其中发sk1给du。生成部分私钥sk2=(k
x
,k3),其中其中x∈atts,发送sk2给eu。生成全局参数gp=(a,h,g0,g1,g0,g1)。
18.上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤二中,加密阶段的具体步骤为:
19.do制定访问控制策略(m,ρ),上传(m,ρ)和数据f上传至相对应的边缘服务器,其中ρ表示行指定属性,m是一个m
×
n的矩阵。eu随机选择随机选择w-1个元素ai生成w-1次的多项式f(x)=s a1x

a
w-1
x
w-1
。接下来计算subi=f(xi)。将s分割成n份,门限值为w。然后随机选择一个向量和计算计算然后计算同时随机选择β、计算关键词密文计算关键词密文其中把关键词密文和访问控制
策略发送到其他的边缘节点。加密数据生成密文ct=f
·
pk上传至云服务器。
20.上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤三中,事务生成阶段的具体步骤为:
21.eu发出委托计算请求,共识网络各个节点响应成为委托计算节点,然后将产生的γi使用各个节点在区块链中的公钥加密后生成一个事务ts={cnaddr,e(γj),τj},其中cnaddr表示为委托计算节点在网络中的地址列表,τj为定义的一个变量eu将该事务广播给区块链网络中其他节点,委托节点从事务中获取γi后进行保管。
22.上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤四中,陷门生成阶段的具体步骤为:
23.du首先根据想要搜索的关键词w

随机选择生成其中其中随机选择rc∈g0进一步随机化生成t2=sk1·
rc,提交tw=(t1,t2)。
24.上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤五中,搜索阶段的具体步骤为:
25.eu收到du发来搜索陷门tw后,先检查是否满足访问控制矩阵m,如果验证该属性集atts不满足访问矩阵m,则过程中止,否则程序继续。根据满足的访问控制矩阵m,然后获取到对称密钥k,继续对接收到的陷门tw计算t1×
c1=c2是否成立,若成立,则从云服务器获取到相应的数据ct,否则返回0。
26.正确性如下:
[0027][0028][0029][0030][0031]
若w=w

,则等式成立。
[0032]
上述云边协同环境下基于区块链的细粒度访问控制方法,所述步骤六中,解密阶段的具体步骤为:
[0033]
当提交的陷门满足访问控制矩阵m后,区块链中拥有γj节点申请计算当门限值w个节点申请后多方协同计算出s。
[0034]
[0035][0036]
其中然后把s返回给对应的eu。得出最终的私钥后,解密,并把数据f返回给相应的数据用户。
[0037]
解密过程如下:
[0038][0039][0040][0041][0042][0043][0044]
最后把用户想要的数据f返回给相应的数据用户。
[0045]
本发明的有益效果在于:
[0046]
1、本发明提出了一个云边协同环境下基于区块链的细粒度访问控制方案。该方案包括数据所有者、边缘服务器、区块链、权威中心、云服务器和数据用户。根据系统模型进一步给出了相关算法的详细定义。在我们的模型中,权威中心生成所有的初试参数,并把相对应的密钥分发给相对应的实体后,数据拥有者可以和相对应的可信的边缘服务器合作,然后边缘服务器加密数据和相关关键字,然后并把密文上传至云服务器,密文关键词分发至其他边缘服务器,以便数据用户查询。如果一个合法的数据用户想要根据相应的关键词搜索到相关数据,可以根据想要搜索的关键词和部分密钥生成陷门,并将陷门发送至相对应的边缘服务器上,然后该边缘服务器通过该陷门完成搜索,并得到最终的密钥。最后匹配到相对应的数据且满足访问控制,则从云服务器中返回相对应的密文,最后解密返回给数据用户。
[0047]
2、本发明在云边协同环境下,利用门限秘密分享技术实现了区块链共识网络的安全多方计算,实现了私钥的多授权机构生成,有效的保护了私钥安全隐私。
[0048]
3、本发明在云边协同环境下,利用边缘服务器进行加密、解密和搜索操作,有效降低了用户的计算开销。
附图说明
[0049]
为了更清楚地说明本发明,下面将附上系统模型图。
[0050]
图1为本发明的流程图。
[0051]
图2为本发明的系统模型图。
具体实施方式
[0052]
下面结合附图和实施例对本发明作进一步的说明。
[0053]
如图2所示,图2为系统模型,云服务器被定义为一个“诚实且好奇”的半可信实体,边缘服务器被定义为可信实体。
[0054]
如图1所示,一种云边协同环境下基于区块链的细粒度访问控制方法,主要包括五个阶段:初始化阶段,加密阶段,事务生成阶段,陷门生成阶段,搜索阶段;解密阶段。详细步骤如下:
[0055]
步骤一:初始化阶段:
[0056]
系统初始化阶段的具体步骤为:
[0057]
ac选择属性集atts作为输入。ac选择一个双线性对e:g0×
g0→
g1,其中g0、g1是阶为q的群,g0、g1是其生成元。选择安全哈希函数h:随机选择a、α、k、k、其中k是对称密钥,生成系统公钥部分私钥sk1=(k1,k2),其中),其中发sk1给du。生成部分私钥sk2=(k
x
,k3),其中其中x∈atts,发送sk2给eu。生成全局参数gp=(a,h,g0,g1,g0,g1)。
[0058]
步骤二:加密阶段:
[0059]
加密阶段的具体步骤为:
[0060]
do制定访问控制策略(m,ρ),上传(m,ρ)和数据f上传至相对应的边缘服务器,其中ρ表示行指定属性,m是一个m
×
n的矩阵。eu随机选择随机选择w-1个元素ai生成w-1次的多项式f(x)=s a1x

a
w-1
x
w-1
。接下来计算subi=f(xi)。将s分割成n份,门限值为w。然后随机选择一个向量和计算计算然后计算同时随机选择β、计算关键词密文计算关键词密文其中把关键词密文和访问控制策略发送到其他的边缘节点。加密数据生成密文ct=f
·
pk上传至云服务器。
[0061]
步骤三:事务生成阶段:
[0062]
事务生成阶段的具体步骤为:
[0063]
eu发出委托计算请求,共识网络各个节点响应成为委托计算节点,然后将产生的γi使用各个节点在区块链中的公钥加密后生成一个事务ts={cnaddr,e(γj),τj},其中cnaddr表示为委托计算节点在网络中的地址列表,τj为定义的一个变量eu将该事务广播给区块链网络中其他节点,委托节点从事务中获取γi后进行保管。
[0064]
步骤四:陷门生成阶段:
[0065]
陷们生成阶段的具体步骤为:
[0066]
du首先根据想要搜索的关键词w

随机选择生成其中其中随机选择rc∈g0进一步随机化生成t2=sk1·
rc,提交tw=(t1,t2)。
[0067]
步骤五:搜索阶段:
[0068]
搜索阶段的具体步骤:
[0069]
eu收到du发来搜索陷门tw后,先检查是否满足访问控制矩阵m,如果验证该属性集atts不满足访问矩阵m,则过程中止,否则程序继续。根据满足的访问控制矩阵m,然后获取到对称密钥k,继续对接收到的陷门tw计算t1×
c1=c2是否成立,若成立,则从云服务器获取到相应的数据ct,否则返回0。
[0070]
正确性如下:
[0071][0072][0073][0074][0075]
若w=w

,则等式成立。
[0076]
步骤六:解密阶段:
[0077]
解密阶段的具体步骤:
[0078]
当提交的陷门满足访问控制矩阵m后,区块链中拥有γj节点申请计算当门限值w个节点申请后多方协同计算出s。
[0079][0080][0081]
其中然后把s返回给对应的eu。得出最终的私钥后,解密,并把数据f返回给相应的数据用户。
[0082]
解密过程如下:
[0083][0084][0085][0086][0087]
[0088][0089]
最后把用户想要的数据f返回给相应的数据用户。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献