1.本发明涉及数据传输完整性技术领域,尤其涉及一种数据传输过程完整性的检测方法。
背景技术:
2.近年来,随着信息网络技术的迅速推广发展,云计算作为一种信息前沿的技术,它在很大程度上改变了目前信息网络技术的行业,云存储作为云计算的一种重要服务模式,它允许数据持有者将他们的数据外包至云端,其优点是可以节约当地的储存空间,并具有极高的资源利用率,然后,云储存也有缺点,虽然满足了数据持有者外包储存需求,也引进了新的安全问题,现如今,云服务商无论采用多高程度的可信赖措施,外包至云端的数据仍会有数据丢失事件的发送,故无法对外包至云端数据的完整性给予保障。
3.数据持有者将担心存储在云端的数据是否被未授权的第三方访问查看,或者云服务商是否会为节约存储容量故意删除一些数据,这些数据一般是未被访问的或者不经常被访问的,但云服务商仍会对外称外包在云端的数据还是完整的,因此,进行数据的完整性检测是极其有必要的。
技术实现要素:
4.本发明的目的是为了解决现有技术中存在的缺点,而提出的一种数据传输过程完整性的检测方法。
5.为了实现上述目的,本发明采用了如下技术方案:
6.一种数据传输过程完整性的检测方法,包括以下步骤:
7.步骤1、数据初始化和上传阶段:首先,数据持有者将那些外包的数据文件生成相互对应的数据信息和标签信息,然后,在安全的信道中把相对应的信息分别发给云服务商和第三方审计者;
8.步骤2、挑战阶段:首先,第三方审计者会随机生成挑战子集,然后会将挑战子集生成的挑战值发送给云服务商;
9.步骤3、证明阶段:云服务商会以挑战值为依据,生成相对应的验证值,并将验证值发送给数据持有者和第三方审计者;
10.步骤4、tap验证阶段:首先,第三方审计者需验证云服务商发来的验证值,其次,如果验证成功通过以后,需要将验证值生成验证信息,如果验证不能通过,则验证结束;
11.步骤5、批量验证阶段:首先持有者需对接手到多个验证信息进行批量验证,进行该阶段的目的:检验外包至云端的数据是否完整以及第三方审计者是否认真对待数据持有者交给的验证工作。
12.优选地,包括以下方案设计:
13.s1、初始化阶段:数据持有者将随机选sk
t
∈zq作为数据文件的标签私钥,取
作为其公钥,随机选取χ1,χ2,χ3...χ
χ
∈zq,计算且计算对于则数据块标签信息可表示为t={tj}
j∈[1,n]0
,当数据进行完初始化之后通过安全信道发送给第三方审计者;
[0014]
s2、挑战阶段:第三方审计者随机从(m1,m2,m3...mn)中选l个元素构成挑战子集q,且为挑战子集q中的mc生成一个随机数vc∈zq,第三方审计者将生成的挑战值chall={c,vc}
c∈q
发送给云服务商,针对挑战子集q数据持有者生产一个随机数rk∈zq,然后计算出并把rk分别发送给云服务商和第三方审计者;
[0015]
s3、证明阶段:云服务商以收到的挑战值chall为依据,生成挑战子集q的标签验证值tpk和数据验证值dpk,即其中,mpk为挑战子集q中的数据分块消息,即云服务供应商会将生成的挑战子集q中的验证值pk=(tpk,dpk)发送给tpa和数据持有者;
[0016]
s4、tap验证阶段:第三方审计者收到验证值pk后,相对于挑战子集q生成其并对下列等式进行验证:若上述等式成立,表明挑战子集q中的数据完整地储存在云端,第三方审计者则会发送hk给数据持有者,若上述等式不成立,则认为外包在云端的数据m遭到破坏,此时应结束其验证;
[0017]
s5、批量验证阶段:数据持有者会对第三方审计者发送来的验证消息进行一次批量审计验证,即对下列等式进行验证是否成立:
[0018]
优选地,所述步骤4中为了产生更多的验证信息,需要在s2-s4阶段进行重复多次操作。
[0019]
优选地,所述s1中idi表示为数据块mi的身份信息。
[0020]
优选地,所述s2中k为验证的次数。
[0021]
本发明的有益效果为:
[0022]
1、本发明的数据传输过程完整性的检测方法,在引入第三方审计者验证的基础上,提高了数据持有者对第三方审计者的控制,且能够加大数据持有者自主验证能力;
[0023]
2、本发明的数据传输过程完整性的检测方法,在面对如果对第三方审计者完全不信任的情况下,实现了对外包云端数据的检测工作,在云端存储环境中,较为全面的保护了云端数据的安全。
附图说明
[0024]
图1为本发明提出的一种数据传输过程完整性的检测方法的整体流程示意图。
具体实施方式
[0025]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
[0026]
实施例1,参照图1,一种数据传输过程完整性的检测方法,包括以下步骤:
[0027]
步骤1、数据初始化和上传阶段:首先,数据持有者将那些外包的数据文件生成相互对应的数据信息和标签信息,然后,在安全的信道中把相对应的信息分别发给云服务商和第三方审计者;
[0028]
步骤2、挑战阶段:首先,第三方审计者会随机生成挑战子集,然后会将挑战子集生成的挑战值发送给云服务商;
[0029]
步骤3、证明阶段:云服务商会以挑战值为依据,生成相对应的验证值,并将验证值发送给数据持有者和第三方审计者;
[0030]
步骤4、tap验证阶段:首先,第三方审计者需验证云服务商发来的验证值,其次,如果验证成功通过以后,需要将验证值生成验证信息,如果验证不能通过,则验证结束,为了产生更多的验证信息,需要在s2-s4阶段进行重复多次操作;
[0031]
步骤5、批量验证阶段:首先持有者需对接手到多个验证信息进行批量验证,进行该阶段的目的:检验外包至云端的数据是否完整以及第三方审计者是否认真对待数据持有者交给的验证工作。
[0032]
优选地,包括以下方案设计:
[0033]
s1、初始化阶段:数据持有者将随机选sk
t
∈zq作为数据文件的标签私钥,取作为其公钥,随机选取χ1,χ2,χ3...χ
χ
∈zq,计算且计算对于则数据块标签信息可表示为t={tj}
j∈[1,n]0
,当数据进行完初始化之后通过安全信道发送给第三方审计者,idi表示为数据块mi的身份信息;
[0034]
s2、挑战阶段:第三方审计者随机从(m1,m2,m3...mn)中选l个元素构成挑战子集q,且为挑战子集q中的mc生成一个随机数vc∈zq,第三方审计者将生成的挑战值chall={c,vc}
c∈q
发送给云服务商,针对挑战子集q数据持有者生产一个随机数rk∈zq,然后计算出并把rk分别发送给云服务商和第三方审计者,k为验证的次数;
[0035]
s3、证明阶段:云服务商以收到的挑战值chall为依据,生成挑战子集q的标签验证值tpk和数据验证值dpk,即其中,mpk为挑战子集q中的数据分块消息,即云服务供应商会将生成的挑战子集q中的验证值pk=(tpk,dpk)发送给tpa和数据持有者;
[0036]
s4、tap验证阶段:第三方审计者收到验证值pk后,相对于挑战子集q生成其并对下列等式进行验证:若上述等式成立,表明挑战子集q中的数据完整地储存在云端,第三方审计者则会发送hk给数据持有者,若上述等式不成立,则认为外包在云端的数据m遭到破坏,此时应结束其验证;
[0037]
s5、批量验证阶段:数据持有者会对第三方审计者发送来的验证消息进行一次批量审计验证,即对下列等式进行验证是否成立:
[0038]
结论:若公式成立,则表明外包至云端的数据完整,且第三方审计者认真地对待数
据完整性的验证工作。若上述公式不成立,则表明外包至云端的数据遭到破坏,且可以表明第三方审计因消息懒散没有进行云端数据的完整性检验。
[0039]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
技术特征:
1.一种数据传输过程完整性的检测方法,包括以下步骤:步骤1、数据初始化和上传阶段:首先,数据持有者将那些外包的数据文件生成相互对应的数据信息和标签信息,然后,在安全的信道中把相对应的信息分别发给云服务商和第三方审计者;步骤2、挑战阶段:首先,第三方审计者会随机生成挑战子集,然后会将挑战子集生成的挑战值发送给云服务商;步骤3、证明阶段:云服务商会以挑战值为依据,生成相对应的验证值,并将验证值发送给数据持有者和第三方审计者;步骤4、tap验证阶段:首先,第三方审计者需验证云服务商发来的验证值,其次,如果验证成功通过以后,需要将验证值生成验证信息,如果验证不能通过,则验证结束;步骤5、批量验证阶段:首先持有者需对接手到多个验证信息进行批量验证,进行该阶段的目的:检验外包至云端的数据是否完整以及第三方审计者是否认真对待数据持有者交给的验证工作。2.根据权利要求1所述的一种数据传输过程完整性的检测方法,其特征在于,包括以下方案设计:s1、初始化阶段:数据持有者将随机选sk
t
∈z
q
作为数据文件的标签私钥,取作为其公钥,随机选取χ1,χ2,χ3...χ
χ
∈z
q
,计算且计算对于则数据块标签信息可表示为t={t
j
}
j∈[1,n]0
,当数据进行完初始化之后通过安全信道发送给第三方审计者;s2、挑战阶段:第三方审计者随机从(m1,m2,m3...m
n
)中选l个元素构成挑战子集q,且为挑战子集q中的m
c
生成一个随机数v
c
∈z
q
,第三方审计者将生成的挑战值chall={c,v
c
}
c∈q
发送给云服务商,针对挑战子集q数据持有者生产一个随机数r
k
∈z
q
,然后计算出并把r
k
分别发送给云服务商和第三方审计者;s3、证明阶段:云服务商以收到的挑战值chall为依据,生成挑战子集q的标签验证值tp
k
和数据验证值dp
k
,即其中,mp
k
为挑战子集q中的数据分块消息,即云服务供应商会将生成的挑战子集q中的验证值p
k
=(tp
k
,dp
k
)发送给tpa和数据持有者;s4、tap验证阶段:第三方审计者收到验证值p
k
后,相对于挑战子集q生成其并对下列等式进行验证:若上述等式成立,表明挑战子集q中的数据完整地储存在云端,第三方审计者则会发送h
k
给数据持有者,若上述等式不成立,则认为外包在云端的数据m遭到破坏,此时应结束其验证;s5、批量验证阶段:数据持有者会对第三方审计者发送来的验证消息进行一次批量审计验证,即对下列等式进行验证是否成立:3.根据权利要求1所述的一种数据传输过程完整性的检测方法,其特征在于,所述步骤
4中为了产生更多的验证信息,需要在s2-s4阶段进行重复多次操作。4.根据权利要求2所述的一种数据传输过程完整性的检测方法,其特征在于,所述s1中id
i
表示为数据块m
i
的身份信息。5.根据权利要求2所述的一种数据传输过程完整性的检测方法,其特征在于,所述s2中k为验证的次数。
技术总结
本发明属于数据传输完整性技术领域,尤其是一种数据传输过程完整性的检测方法,针对背景技术提出的数据持有者将担心存储在云端的数据是否被未授权的第三方访问查看,或者云服务商是否会为节约存储容量故意删除一些数据的问题,现提出以下方案,包括以下步骤:步骤1、数据初始化和上传阶段;步骤2、挑战阶段;步骤3、证明阶段;步骤4、TAP验证阶段;步骤5、批量验证阶段。本发明在引入第三方审计者验证的基础上,提高了数据持有者对第三方审计者的控制,且能够加大数据持有者自主验证能力,在面对如果对第三方审计者完全不信任的情况下,实现了对外包云端数据的检测工作,在云端存储环境中,较为全面的保护了云端数据的安全。较为全面的保护了云端数据的安全。
技术研发人员:黄伟
受保护的技术使用者:苏州麦瑶信息科技有限公司
技术研发日:2022.03.04
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-25939.html