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

一种基于BLS签名和区块链的数据审计方法与流程

2021-12-07 21:58:00 来源:中国专利 TAG:
一种基于bls签名和区块链的数据审计方法
技术领域
1.本发明属于信息安全技术及区块链领域,尤其涉及一种基于bls 签名和区块链的数据审计方法。


背景技术:

2.云计算是服务提供领域中增长最快、最有前途的领域。在云中提供安全已成为一项具有挑战性的任务。本文的目的是为称为云审计的数据提供一种更好、更有效的完整性验证技术。
3.部署云存储服务对用户的数据管理有显著的好处。然而,这引起了许多安全问题,其中之一就是数据完整性。虽然公开验证技术可以达到目的,但它们很容易拖延审计人员的时间,他们可能无法及时执行验证。在经常使用的公开验证技术中,审计员被要求诚实和可靠的,如果审计员受到影响,这些方案的安全性将会受到影响。例如,一个恶意的审计人员可能与云服务器合谋,以得出有偏见的验证报告。这种报告带来了严重的数据完整性问题。
4.因此,发明一种有效的、抵抗恶意的审计人员并且保护隐私的数据审计方法是十分重要的。


技术实现要素:

5.本发明针对现有技术的不足,提出了一种基于bls签名和区块链的数据审计方法。
6.本发明方法中涉及css云端储存服务器、客户端和第三方审核员,其中:
7.css云端储存服务器用于向客户端提供数据存储服务。css云端储存服务器负责维护其服务和客户端关键数据,且css云端储存服务器是一个不可靠的实体;
8.客户端为拥有数据的个人或业务组织,客户端依赖css云端储存服务器对其数据进行维护和安全;
9.第三方审核员有足够的资源和能力对css云端储存服务器进行审计,以检查数据的完整性。
10.该方法包括以下步骤:
11.建立阶段:
12.设g和g
t
表示两个p阶的乘法群,e:g
×
g

g
t
是一个双线性映射,并假设h:{0,1}
*

g作为用于哈希操作的哈希函数,将字符串 {0,1}
*
一致地投影到乘法群g;
13.客户端首先执行密钥生成算法keygen(.),随机生成一个签名密钥对{p
p
,s
k
},p
p
为客户端的公钥,s
k
为客户端的私钥;
14.其次随机生成s个值客户端为每个块f
i
产生公钥u
i
∈g,其中每个块中有s个扇区,而审计文件f
n
被外包为 n个不同的块f
i

15.对于客户端执行签名生成算法siggen生成签名
其中id
i
=f
n
||i是块f
i
的唯一身份标识,则审计文件f
n
上的签名集表示为
16.接下来,客户端发送审计任务{f
n
,u1,u2,...,u
s
}给第三方审核员。
17.验证阶段:
18.第三方审核员与css云端储存服务器交互验证审计文件f
n
的完整性,具体是:
19.为了产生消息chal,第三方审核员随机选择一个集合q= {t1,t2,...,t
l
},其中{t1,t2,...,t
l
}是随机从[1,n]选取的;
[0020]
对于第三方审核员随机选择设chal代表(i,c
i
)
i∈q
[0021]
第三方审核员把消息chal发送给css云端储存服务器,其中c
i
是第三方审核员随机选择进行验证的块数;
[0022]
css云端储存服务器接收到第三方审核员发送的消息chal后,执行验证算法genproof(.)计算查询块的证明,计算查询块的线性组合χ
i
以及聚合签名值
[0023]
css云端储存服务器计算验证信息然后将验证信息发送给第三方审核员进行验证,第三方审核员收到p
f
后,通过下式判断审计文件f
n
的完整性:
[0024][0025]
第三方审核员将验证结果通知客户端,同时将每个验证结果作为交易记录到区块链中。利用区块链的时间敏感性,在相应的事务被记录到区块链之后,验证被打上了时间戳,这使得客户端可以检查审计人员是否在规定的时间执行了验证。
[0026]
本发明与现有技术相比,其有益效果为:本发明提出的云数据审计系统集成了基于bls签名的云审计和基于区块链的审计记录系统,因此其核心思想是将每个验证结果作为交易记录到区块链中。利用区块链的时间敏感性,在相应的事务被记录到区块链之后,验证被打上了时间戳,这使得用户可以检查审计人员是否在规定的时间区间执行了验证。同时可以避免不可信的数据审核员导致的隐私泄露。
附图说明
图1为本发明架构图。
具体实施方式
[0027]
如图1所示,本发明方法中涉及三类对象,包括css云端储存服务器、客户端(c)和第三方审核员(tpa)。
[0028]
css云端储存服务器:向客户端提供数据存储服务。css云端储存服务器负责维护其服务和客户端关键数据,css云端储存服务器是一个不可靠的实体。
[0029]
客户端(c):可以是拥有数据的个人或任何业务组织。客户端依赖 css云端储存服务器对其数据进行维护和安全。
[0030]
第三方审核员(tpa):它有足够的资源和能力对云存储进行审计,以检查数据的完
整性。
[0031]
本发明方法的具体步骤是:
[0032]
1.建立阶段,设g和g
t
表示两个p阶的乘法群。设e:g
×
g

g
t
是定义在其上的一个双线性映射。假设h:{0,1}
*

g作为用于哈希操作的哈希函数,将字符串{0,1}
*
一致地投影到乘法群g。
[0033]
客户端首先执行密钥生成算法keygen(.),随机生成一个签名密钥对{p
p
,s
k
},其中p
p
=g
α
作为客户端的公钥,作为客户端的私钥,g是乘法群g的生成元,是0到p

1内的整数。而审计文件f
n
被外包为n个不同的块f
i
,每个块中有s个扇区。
[0034]
然后随机生成s个值客户端为每个块f
i
产生公钥u
i
∈g,对于客户端执行签名生成算法 siggen生成签名其中id
i
=f
n
||i是f
i
的唯一身份标识。审计文件f
n
上的签名集表示为本发明提出的公共数据完整性审计协议有效地降低了审计协议在系统设置阶段客户端元数据的计算成本。
[0035]
接下来,客户端发送审计任务{f
n
,u1,u2,...,u
s
}给第三方审核员; 2.验证阶段:
[0036]
在验证阶段,第三方审核员与云端储存服务器交互验证审计文件 f
n
的完整性,可以有避免不可信的数据审核员导致的隐私泄露。
[0037]
为了产生消息chal,第三方审核员随机选择一个集合q= {t1,t2,...,t
l
},其中{t1,t2,...,t
l
}是随机从[1,n]选取的。
[0038]
对于第三方审核员随机选择设chal代表(i,c
i
)
i∈q
[0039]
第三方审核员把消息chal发送给云端储存服务器,c
i
是第三方审核员随机选择进行验证的块数。
[0040]
云端储存服务器接收到第三方审核员发送的消息chal后,执行验证算法genproof(.)计算查询块的证明。计算查询块的线性组合χ
i
以及聚合签名值
[0041]
其中线性组合χ
i
以及聚合签名值
[0042]
根据以下的式子计算:
[0043][0044][0045]
其中1≤j≤l。
[0046]
云端储存服务器计算验证信息然后将验证信息发送给第三方审核员进行验证。第三方审核员收到p
f
后,验证公式是否成立
[0047]
[0048]
第三方审核员将结果通知客户端,同时将每个验证结果作为交易记录到区块链中。利用区块链的时间敏感性,在相应的事务被记录到区块链之后,验证被打上了时间戳,这使得用户可以检查审计人员是否在规定的时间执行了验证。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献