CN111460524A - 数据完整性的检测方法、设备及计算机可读存储介质 - Google Patents
数据完整性的检测方法、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111460524A CN111460524A CN202010234713.XA CN202010234713A CN111460524A CN 111460524 A CN111460524 A CN 111460524A CN 202010234713 A CN202010234713 A CN 202010234713A CN 111460524 A CN111460524 A CN 111460524A
- Authority
- CN
- China
- Prior art keywords
- data
- audit
- detected
- terminal
- cloud server
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据完整性的检测方法、设备及计算机可读存储介质,该方法包括步骤:审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签;根据所述数据标签生成审计挑战,将所述审计挑战发送给云服务器,以供所述云服务器根据所述审计挑战生成待检测数据对应数据块的数据块证明,其中,所述云服务器中存储有所述数据终端生成的待检测数据;接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性。本发明实现了在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据的完整性,以检测云服务器中存储的数据是否被篡改。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据完整性的检测方法、设备及计算机可读存储介质。
背景技术
云医疗是一种将传统医疗技术和互联网新技术相结合的产物,其目的在于实现医疗资源共享,提高医疗效率,满足人们的医疗需求。云医疗环境中,为实现医疗资源共享,相关医疗数据(如电子病历、电子医嘱等)需外包给云服务器,即把这些医疗数据存储在云服务器上,医院或患者可以在云服务器上对数据进行访问、修改和删除等操作。但此时云服务提供商也成为了数据拥有者,提供商可能会因为利益驱使而对医疗数据进行窃取、修改等,甚至为了降低成本而删除很少被访问的医疗数据,这样就使得患者的医疗数据不安全,容易造成严重的医疗事故。
由此可知,为了避免云服务器中存储的数据被篡改,急需提供一种如何在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据完整性的方法,以检测云服务器中存储的数据是否被篡改。
发明内容
本发明的主要目的在于提供一种数据完整性的检测方法、设备及计算机可读存储介质,旨在解决现有的如何在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据的完整性的技术问题。
为实现上述目的,本发明提供一种数据完整性的检测方法,所述数据完整性的检测方法应用于审计终端,所述数据完整性的检测方法包括步骤:
审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签;
根据所述数据标签生成审计挑战,将所述审计挑战发送给云服务器,以供所述云服务器根据所述审计挑战生成待检测数据对应数据块的数据块证明,其中,所述云服务器中存储有所述数据终端生成的待检测数据;
接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性。
可选地,所述根据所述数据标签生成审计挑战的步骤包括:
获取预存的公钥,根据所述公钥检测所述数据标签是否正确;
若检测到所述数据标签正确,则生成审计挑战。
可选地,所述接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性的步骤包括:
接收所述云服务器发送的数据块证明,并获取审计公钥和所述数据标签对应标识符;
根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性。
可选地,所述接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性的步骤包括:
基于双线性映射性质,根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性,其中,所述数据块证明包括存储证明和标签证明。
可选地,所述审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签的步骤之前,还包括:
接收数据终端发送的待检测数据对应盲化后的数据块,对所述盲化后的数据块进行盲签名操作,得到盲签名结果;
将所述盲签名结果发送给所述数据终端。
此外,为实现上述目的,本发明还提供一种数据完整性的检测方法,所述数据完整性的检测方法应用于数据终端,所述数据完整性的检测方法包括以下步骤:
数据终端接收审计终端发送的待检测数据对应的盲签名结果,并检测所述盲签名结果的正确性;
若检测到所述盲签名结果正确,则在侦测到数据完整性的验证请求后生成审计请求;
将所述审计请求发送给审计终端,以供审计终端根据所述审计请求生成审计挑战,所述审计终端在接收到云服务器根据所述审计挑战返回的数据块证明后,根据所述数据块证明检测所述云服务器中待检测数据的完整性,其中,所述云服务器中存储有所述数据终端生成的待检测数据。
可选地,在检测到所述盲签名结果正确的步骤之后,还包括:
基于BLS签名技术,根据所述盲签名结果确定待检测数据对应数据块的原始签名值,并获取预存的待检测数据,以及获取所述待检测数据对应的数据标签;
将所述待检测数据、所述原始签名值和所述数据标签发送给所述云服务器,以供所述云服务器存储所述待检测数据,且所述审计终端在接收审计挑战后,根据所述原始签名值和所述数据标签生成待检测数据对应数据块的数据块证明。
可选地,所述数据终端接收审计终端发送的待检测数据对应的盲签名结果,并检测所述盲签名结果的正确性的步骤之前,还包括:
将预存的待检测数据拆分成数据块,并盲化拆分所得的数据块,得到盲化后的数据块;
将盲化后的数据块发送给审计终端,以供所述审计终端在接收到盲化后的数据块后,对盲化后的数据块执行盲签名操作,得到盲签名结果。
此外,为实现上述目的,本发明还提供一种数据完整性的检测设备,所述数据完整性的检测设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的数据完整性的检测程序,所述数据完整性的检测程序被所述处理器执行时实现如联邦学习服务器对应的数据完整性的检测方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据完整性的检测程序,所述数据完整性的检测程序被处理器执行时实现如上所述的数据完整性的检测方法的步骤。
本发明通过审计终端根据数据终端发送的审计请求获取待检测数据对应的数据标签,根据数据标签生成审计挑战,将审计挑战发送给云服务器,以供存储待检测数据的云服务器根据审计挑战生成待检测数据对应数据块的数据块证明,审计终端接收云服务器发送的数据块证明,根据数据块证明检测数据云服务器中待检测数据的完整性。实现了在不需要获取云服务器存储的原始数据的情况下,审计终端根据云服务器发送的待检测数据对应数据块证明来检测云服务器存储数据的完整性,即在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据的完整性,以检测云服务器中存储的数据是否被篡改。
附图说明
图1是本发明数据完整性的检测方法第一实施例的流程示意图;
图2是本发明数据完整性的检测方法第三实施例的流程示意图;
图3是本发明实施例中数据完整性的检测方法对应系统的结构图;
图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种数据完整性的检测方法,参照图1,图1为本发明数据完整性的检测方法第一实施例的流程示意图。
本发明实施例提供了数据完整性的检测方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
数据完整性的检测方法应用于审计终端中,数据完整性的检测方法包括:
步骤S10,审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签。
审计终端接收数据终端发送的数据完整性的审计请求,其中,本实施例中审计终端、云服务器和数据终端两两之间的数据传输通道为安全通道,如TLS(Transport LayerSecurity,安全传输层协议)通道。当审计终端接收到审计请求后,审计终端获取待检测数据对应的数据标签。需要说明的是,审计请求对应的待检测数据至少为一个数据文件对应的数据,每一数据文件对应着一个数据标签,在本实施例中,不限制数据标签的表现形式。审计请求中携带着数据标签,当审计终端接收到审计请求后,审计终端获取审计请求中携带的数据标签,从而获取到待检测数据对应的数据标签。可以理解的是,审计终端至少可获取到一个数据标签。待检测数据具体为何种数据可根据具体需要而设置,如待检测数据可设置为医院的医疗数据,或者设置为商家中商品的销售数据等。数据终端可为个人用户终端,也可为企业终端。
进一步地,数据终端也可预先将云服务器中存储的数据对应的数据标签发送给审计终端,即审计终端中预先存储有数据标签,此时,数据终端发送给审计终端的审计请求中携带有待检测数据对应数据文件的标识符,每一数据文件对应一个标识符,数据文件对应的数据标签是通过其标识符得到的,即数据文件的标识符和数据标签是存在对应的关系的。因此,当审计终端接收到审计请求后,审计终端获取审计请求中携带的标识符,通过该标识符在其数据库中获取对应的数据标签,从而获取到待检测数据对应的数据标签。
步骤S20,根据所述数据标签生成审计挑战,将所述审计挑战发送给云服务器,以供所述云服务器根据所述审计挑战生成待检测数据对应数据块的数据块证明,其中,所述云服务器中存储有所述数据终端生成的待检测数据。
当审计终端获取到数据标签后,审计终端根据数据标签生成审计挑战,并将所生成的审计挑战发送给云服务器。当云服务器接收到审计挑战后,云服务器根据审计挑战生成待检测数据对应数据块的数据块证明。在审计终端发送审计挑战给云服务器之前,云服务器中已经存储有数据终端生成的待检测数据。在本实施例中,每一数据文件至少对应一个数据块,每一数据文件都存在对应的数据块证明,每次进行数据完整性检测时,都会存在对应的数据块证明。
具体地,为了让云服务器中知道哪些数据是需要进行完整性检测的,审计终端在发送审计挑战给云服务器时,审计终端可将数据标签和审计挑战一起发送给云服务器,以供云服务器根据数据标签确定待检测数据。当云服务器确定待检测数据后,云服务器获取待检测数据对应的数据块,根据审计挑战和所获取的数据块生成存储证明,以及根据审计挑战和待检测数据对应的原始签名值生成标签证明。在云服务器中,预先存储有待检测数据对应数据文件、原始签名值和数据标签之间的对应关系,一个数据块对应一个原始签名值。需要说明的是,本实施例中待检测数据是以数据块为单位进行检测,待检测数据至少包括一个数据块。
在本实施例中,若将待检测数据对应数据块的存储证明记为proofd,将待检测数据对应数据标签的标签证明记为prooft,则服务器生成存储证明和标签证明的过程可采用如公式(一)和公式(二)表示:
其中,di表示数据块,SigDatai表示原始签名值,a为待检测数据对应数据块的数量。云服务器生成的存储证明和标签证明就是数据块证明,即数据块证明包括存储证明和数据块证明。
进一步地,所述根据所述数据标签生成审计挑战的步骤包括:
步骤a,获取预存的公钥,根据所述公钥检测所述数据标签是否正确。
步骤b,若检测到所述数据标签正确,则生成审计挑战。
具体地,审计终端在获取到数据标签后,审计终端获取预先存储的解密公钥,根据解密公钥检测所获取的数据标签是否正确。需要说明的是,数据标签是数据终端通过与解密公钥对应的私钥加密得到的,因此,当审计终端通过解密公钥可以成功解密数据标签时,审计终端检测到数据标签正确;当审计终端通过解密公钥不能成功解密数据标签时,审计终端检测到数据标签错误。若审计终端检测到数据标签正确,审计终端则生成审计挑战。其中,一个数据标签对应一个审计挑战。
在生成审计挑战过程中,审计终端会随机选择一个有a个元素的集合X={xi}(1≤i≤a)。审计终端为每个xi随机选择一个数值vi,生成审计挑战c={vi,i}。
进一步地,若审计终端检测到数据标签错误,审计终端则结束数据完整性的检测流程。此时,审计终端可生成数据标签错误的提示信息,并该将提示信息发送给数据终端,以供数据终端根据该提示信息确定审计终端所获取的数据标签错误。
本实施例在检测到数据标签正确时,才生成审计挑战,以根据审计挑战进行数据完整性检测,避免由于数据标签错误时,也进行数据完整性检测,避免采用错误的数据标签检测出数据完整的错误结果,从而提高了云服务器中存储数据完整性检测的准确率。
步骤S30,接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性。
审计终端接收云服务器发送的数据块证明,并根据数据块证明检测云服务器中存储的待检测数据的完整性。若审计终端检测到待检测数据完整,审计终端则生成待检测数据完整的第一通知消息,并将第一通知消息发送给数据终端,以供数据终端根据第一通知消息确定存储在云服务器中的待检测数据完整;若审计终端检测到待检测数据不完整,审计终端则生成待检测数据不完整的第二通知消息,并将第二通知消息发送给数据终端,以供数据终端根据第二通知消息确定存储在云服务器中的待检测数据不完整。进一步地,审计终端也可在生成第一通知消息或者在生成第二通知消息后,将第一通知消息或者第二通知消息发送给云服务器。其中,第一通知消息中携带有表示待检测数据完整的完整标志,第二通知消息中携带有表示待检测数据不完整的不完整标志。在本实施例中,不限制完整标志和不完整标志的表现形式,如完整标志可表示为“1”,不完整标志可表示为“0”。
进一步地,步骤S30包括:
步骤c,接收所述云服务器发送的数据块证明,并获取审计公钥和所述数据标签对应标识符。
进一步地,审计终端接收云服务器发送的数据块证明,审计终端获取审计公钥以及或者数据标签对应的标识符,审计公钥和数据标签对应的标识符是预先存在审计终端中的。在审计终端、数据终端和云服务器中,都会存储有检测参数,该检测参数可为审计终端、数据终端或者云服务器其中一个设备生成的,然后将所生成的检测参数发送给其他两个终端,如当数据终端生成检测参数后,数据终端可将检测参数发送给审计终端和云服务器。检测参数也可为审计终端、数据终端和云服务器之外的终端设备生成的,在终端设备生成检测参数后,将检测参数发送给审计终端、数据终端和云服务器。
具体地,在生成检测参数过程中,使用的是参数生成算法,在该参数生成算法中,选择一个安全参数作为该参数生成算法的输入,使参数生成算法的输出是一个元组{G1,G2,G3,e,q,H,P}。其中,安全参数越大,数据完整性检测过程中,审计终端、数据终端和云服务器之间传输的数据越安全,且在进行数据完整性的检测过程中越安全,越难以被恶意攻击者破解。q是一个大素数,q的大小由安全参数的大小决定;G1,G2,G3是q阶的乘法循环群;e是一个双线性映射:G1×G2→G3;H是一个从字符串映射到G1群上的点的单向哈希函数;P是G2群的生成元。
审计终端可随机从q阶整数群中选择一个st作为自己的本地密钥,并根据本地密钥和生成元计算得到审计公钥,若将审计公钥记为pkt,则计算审计公钥的公式可表示为:
步骤d,根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性。
当审计终端得到数据块证明、审计公钥和标识符后,审计终端根据数据块证明、审计公钥和标识符检测云服务器中待检测数据的完整性。
进一步地,步骤d包括:
步骤e,基于双线性映射性质,根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性,其中,所述数据块证明包括存储证明和标签证明。
具体地,审计终端基于BLS(Boneh-Lynn-Shacham)签名技术和双线性映射性质,根据数据块证明、审计公钥和标识符检测所述云服务器中待检测数据的完整性,其中,数据块证明包括存储证明和标签证明。具体地,验证待检测数据完整性的过程可采用公式(四)表示:
其中,e表示双线性映射,Indexi表示数据块的索引,FileName表示数据块对应数据文件的标识符,“||”表示连接前后两个字符串。当审计终端确定公式(四)的等式成立时,表明待检测数据完整;当审计终端确定公式(四)的等式不成立时,表明待检测数据不完整。可以理解的是,当确定待检测数据完整时,表明待检测数据对应数据块的数据没有被篡改;当确定待检测数据不完整时,表明待检测数据对应数据块的数据已被篡改。
本实施例通过审计终端根据数据终端发送的审计请求获取待检测数据对应的数据标签,根据数据标签生成审计挑战,将审计挑战发送给云服务器,以供存储待检测数据的云服务器根据审计挑战生成待检测数据对应数据块的数据块证明,审计终端接收云服务器发送的数据块证明,根据数据块证明检测数据云服务器中待检测数据的完整性。实现了在不需要获取云服务器存储的原始数据的情况下,审计终端根据云服务器发送的待检测数据对应数据块证明来检测云服务器存储数据的完整性,即在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据的完整性,以检测云服务器中存储的数据是否被篡改。进一步地,本实施例将审计工作分配给审计终端,避免数据终端自己检测云服务器中存储数据的完整性,使一些资源受限的数据终端也可以快速实现云服务器中存储数据的完整性。
进一步地,提出本发明数据完整性的检测方法第二实施例。所述数据完整性的检测方法第二实施例与所述数据完整性的检测方法第一实施例的区别在于,所述数据完整性的检测方法还包括:
步骤f,接收数据终端发送的待检测数据对应盲化后的数据块,对所述盲化后的数据块进行盲签名操作,得到盲签名结果。
步骤g,将所述盲签名结果发送给所述数据终端。
审计终端通过安全通道接收数据终端发送的待检测数据对应盲化后的数据块,审计终端获取本地密钥,采用本地密钥对盲化后的数据块进行盲签名操作,得到盲签名结果。具体地,若盲签名结果记为SigBlindi,数据终端发送的盲化后的数据块记为d′i,则审计终端得到盲签名结果的过程可用公式(五)表示:
其中,为数据终端对数据块进行盲化操作,得到盲化后的数据块时所采用的数据终端的公钥,数据终端可随机在G1群中选择一个r用来对待检测数据对应数据块进行盲化操作,并随机从q阶整数群中选择一个su作为本地密钥计算得到数据终端的公钥,具体地,计算数据终端的公钥的过程可用公式(六)表示:
当审计终端得到盲签名结果后,审核终端将盲签结果发生给数据终端。
本实施例使用盲签名技术,盲签名技术允许数据终端先盲化待检测数据对应的数据块,而后让审计终端对盲化的数据块进行盲签名,得到盲签名结果,以供数据终端对盲签名结果除去盲因子,得到审计终端待检测数据对应数据块的原始签名值。通过使用盲签名技术可以在实现待检数据对应的签名任务委派给审计终端,减轻数据终端运行负担的同时,实现数据终端所生成的待检测数据的隐私保护,避免数据终端所生成的待检测数据被泄露。
进一步地,提出本发明数据完整性的检测方法第三实施例。在第三实施例中,数据完整性的检测方法应用于数据终端中,参照图2,所述数据完整性的检测方法还包括:
步骤S40,数据终端接收审计终端发送的待检测数据对应的盲签名结果,并检测所述盲签名结果的正确性。
数据终端接收审计终端发送的待检测数据对应的盲签名结果后,数据终端检测盲签名结果的正确性。具体地,数据终端获取预先存储的审计公钥和盲化后的数据块,基于双线性映射性质,根据审计公钥、盲化后的数据块检测盲签名结果的正确性,其中,一个双线性映射是由两个向量空间上的元素,生成第三个向量空间上一个元素之函数,并且该函数对每个参数都是线性的。审计公钥是审计终端预先发送给数据终端的。本实施例可采用公式(七)来表示盲签名结果正确性的检测过程:
当公式(七)成立,即公式(七)左右两边的值相等时,数据终端确定盲签名结果的正确;当公式(七)不成立,即公式(七)左右两边的值不相等时,数据终端确定盲签名结果错误。
步骤S50,若检测到所述盲签名结果正确,则在侦测到数据完整性的验证请求后生成审计请求。
步骤S60,将所述审计请求发送给审计终端,以供审计终端根据所述审计请求生成审计挑战,所述审计终端在接收到云服务器根据所述审计挑战返回的数据块证明后,根据所述数据块证明检测所述云服务器中待检测数据的完整性,其中,所述云服务器中存储有所述数据终端生成的待检测数据。
当数据终端检测到盲签名结果正确后,数据终端检测是否侦测到数据完整性的验证请求。若数据终端侦测到验证请求,数据终端则生成审计请求,并将审计请求发送给审计终端。其中,验证请求可为数据终端对应用户根据需要触发的,也可以是其他终端设备发送的。当审计终端根据审计请求生成审计挑战。当审计终端在接收到云服务器根据审计挑战返回的数据块证明后,审计终端根据数据块证明检测云服务器中待检测数据的完整性,其中,云服务器中存储有数据终端生成的待检测数据。需要说明的是,审计终端根据审计请求生成审计挑战,以及根据数据块证明检测待检测数据完整性的详细过程已在上述实施例中说明,在此不再重复赘述。进一步地,当数据终端检测到盲签名结果错误时,即盲签名结果验证失败,此时由于盲签名结果错误,数据终端就无法得到原始签名值,就会导致数据终端无法将待检测数据存储在云服务器中,只有在盲签名结果正确时,数据终端才可以将待检测数据存储在云服务器中。此时,数据终端可进一步生成盲签名结果错误的提示信息,并输出该提示信息,以根据该提示信息提示数据终端用户,盲签名结果错误。
本实施例通过在数据终端接收到审计终端发送的待检测数据对应的盲签名结果后,若检测到盲签名结果正确,且在需要进行数据完整性检测时,才生成审计请求,将审计请求发送给审计终端,以供审计终端根据审计请求生成审计挑战,审计终端在接收到云服务器根据审计挑战返回的数据块证明后,根据数据块证明检测云服务器中待检测数据的完整性,其中,云服务器中存储有数据终端生成的待检测数据。实现了在不需要获取云服务器存储的原始数据的情况下,审计终端根据云服务器发送的待检测数据对应数据块证明来检测云服务器存储数据的完整性,即在不泄露云服务器中存储的数据情况下,验证云服务器中存储数据的完整性,以检测云服务器中存储的数据是否被篡改。
进一步地,提出本发明数据完整性的检测方法第四实施例。所述数据完整性的检测方法第四实施例与所述数据完整性的检测方法第三实施例的区别在于,所述数据完整性的检测方法还包括:
步骤h,基于BLS签名技术,根据所述盲签名结果确定待检测数据对应数据块的原始签名值,并获取预存的待检测数据,以及获取所述待检测数据对应的数据标签。
当数据终端检测到盲签名结果正确后,数据终端基于BLS签名技术,根据盲签名结果确定待检测数据对应数据块的原始签名值。具体地,数据终端获取审计终端的审计公钥和其自己的私钥,通过审计公钥、私钥和盲签名结果,基于BLS签名技术确定待检测数据对应数据块的原始签名值。具体地,数据终端得到原始签名值的过程可用公式(八)表示:
由公式(八)可知,每一数据块对应一个原始签名值。数据终端获取预先存储的待检测数据,并获取待检测数据对应的数据标签,其中,1≤i≤n,n为待检测数据对应数据块的数量。
步骤i,将所述待检测数据、所述原始签名值和所述数据标签发送给所述云服务器,以供所述云服务器存储所述待检测数据,且所述审计终端在接收审计挑战后,根据所述原始签名值和所述数据标签生成待检测数据对应数据块的数据块证明。
当数据终端获取到待检测数据、待检测数据对应数据标签和待检测数据对应数据块的原始签名值后,数据终端将待检测数据、原始签名值和数据标签发送给云服务器,以便于云服务器存储待检测数据、原始签名值和数据标签。可以理解的是,数据终端将待检测数据发送给云服务器,是为了将数据终端生成的数据存储在云服务器中,以节省数据终端的存储空间。数据终端将原始签名值和数据标签发送给云服务器,是为了在云服务器接收到审计终端发送的审计挑战后,云服务器根据原始签名值和数据标签生成待检测数据对应数据块的数据块证明,以进行待检测数据完整性的检测。
进一步地,本发明实施例中使用了BLS签名技术和双线性映射性质,基于数据终端验证审计终端生成的盲签名结果的正确性,实现了审计终端代替数据终端对云服务器中存储数据的完整性的审计。
具体地,可参照图3,图3为本发明实施例中数据完整性的检测方法对应系统的结构图。由图3可知道数据终端、审计终端和云服务器两两之间的数据传输过程。
进一步地,提出本发明数据完整性的检测方法第五实施例。所述数据完整性的检测方法第五实施例与所述数据完整性的检测方法第三和/或第四实施例的区别在于,所述数据完整性的检测方法还包括:
步骤j,将预存的待检测数据拆分成数据块,并盲化拆分所得的数据块,得到盲化后的数据块。
当数据终端需要将其生成的待检测数据存储至云服务器中时,数据终端将其生成的,预先存储的待检测数据拆分成数据块。在本实施例中,对每个数据块的大小不做具体限制,如可以把待检测数据对应其中一个数据文件中的个人信息划分成一个数据块,也可将个人信息拆开,将电话信息划分成一个数据块,邮箱信息划分成另外一个数据块。
当数据终端得到待检测数据对应的数据块后,数据终端盲化拆分后的数据块,以得到盲化后的数据块。需要说明的是,通过对数据块执行盲化操作,得到盲化后的数据块,以改变待检测数据原始信息,避免审计终端获知数据终端所生成的真实的待检测数据,从而保证了数据终端所生成的待检测数据的安全性和私密性。
在本实施例中,数据终端可采用{d1,d2,…,dn}表示拆分所得的数据块,用{Index1,Index2,…,Indexn}表示各个数据块对应的索引。数据终端中预先存储有签名公钥(pk)和签名私钥(sk),并通过签名私钥计算得到待检测数据对应数据文件的数据标签。若将数据标签记为tag,则数据终端计算数据标签的公式可如公式(九)所示:
公式(九):tag=FileName||Sigsk(FileName)。
其中FileName是待检测数据对应数据文件的标识符,每一数据文件都存在对应的标识符,Sigsk(FileName)表示标识符的签名。数据终端采用数据终端的公钥盲化拆分所得的数据块,具体地,可采用公式(十)表示盲化数据块的过程:
步骤k,将盲化后的数据块发送给审计终端,以供所述审计终端在接收到盲化后的数据块后,对盲化后的数据块执行盲签名操作,得到盲签名结果。
当数据终端得到盲化后的数据块后,数据终端将盲化后的数据块发送给审计终端,当审计终端接收到盲化后的数据块后,审计终端对盲化后的数据块执行盲签名操作,得到盲签名结果。需要说明的是,审计终端执行盲签名操作的过程已在上述实施例中详细阐述,在此不再重复赘述。
本实施例数据终端通过将待检测数据对应的数据块盲化后才发送给审计终端,从而提高了数据终端所生成数据的私密性,降低了数据终端所生成数据被泄露的风险。
进一步地,由于数据终端存储在云服务器中的数据种类繁多,且数据量等特点,为了减少数据终端、审计终端和云服务器两两之间数据计算量和通信能耗,本实施例为数据块盲签名结果验证和待检测数据完整性审计提供批量操作。具体地,审计终端根据数据终端的要求对b(1≤b≤n)个数据块进行聚合盲签名,得到聚合盲签名结果,b为进行聚合盲签名的数据块个数。此时,聚合盲签名结果可表示为此时,数据终端采用双线性映射的性质验证聚合盲签名结果的正确性过程可采用公式(十一)表示:
在进行批量待检测数据完整性审计过程中,由于云服务器为k个数据终端提供存储服务,即云服务器中存储了k个数据终端生成的数据,此时,每个数据终端(1≤j≤k,j表示数据终端)的待检测数据对应n个数据块,即每个数据终端的待检测数据有n个数据块。此时,当云服务器接收到审计挑战后,若用proofj,d表示数据终端j待检测数据对应数据块的存储证明,用proofj,t表示数据终端j待检测数据对应数据块的标签证明,云服务器生成数据终端j待检测数据对应数据块的存储证明可用公式(十二)表示,生成数据终端j待检测数据对应数据块的标签证明可用公式(十三)表示:
审计终端采用BLS签名技术和双线性映射性质批量验证k个数据终端的待检测数据完整性的过程可用公式(十四)来表示:
公式(十四):
当公式(十四)成立,即公式(十四)等式左右两边的值相等时,审计终端确定k个数据终端的待检测数据完整;当公式(十四)不成立,即公式(十四)等式左右两边的值不相等时,审计终端确定k个数据终端的待检测数据不完整。
需要说明的是,本发明实施例中数据完整性的检测方法支持公开验证和审计,即验证和审计过程中只需要使用公开的公钥,而不需要私钥,使得本发明实施例中数据完整性的检测方案具有隐私保护功能;同时,本实施例支持对多个数据块的盲签名结果进行批量验证,支持对多个数据终端的生成的数据进行批量完整性审计,提高了盲签名结果验证的验证效率,以及提高了数据完整性的效率。
此外,本发明还提供一种数据完整性的检测设备,该检测设备可为审计终端或者数据终端,当检测设备为审计终端时,执行审计终端对应步骤;当检测为数据终端时,执行数据终端对应步骤。如图4所示,图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图4即可为数据完整性的检测设备的硬件运行环境的结构示意图。本发明实施例数据完整性的检测设备可以是PC,便携计算机等终端设备。
如图4所示,该数据完整性的检测设备可以包括:处理器1001,例如CPU,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图4中示出的数据完整性的检测设备结构并不构成对数据完整性的检测设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据完整性的检测程序。其中,操作系统是管理和控制数据完整性的检测设备硬件和软件资源的程序,支持数据完整性的检测程序以及其它软件或程序的运行。
在图4所示的数据完整性的检测设备中,当检测设备为审计终端时,用户接口1003主要用于连接数据终端和云服务器,与数据终端和云服务器进行数据通信;当检测设备为数据终端时,用户接口1003主要用于连接审计终端和云服务器,与审计终端和云服务器进行数据通信;网络接口1004主要用于后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的数据完整性的检测程序,并执行如上所述的数据完整性的检测方法的步骤。
本发明数据完整性的检测设备具体实施方式与上述数据完整性的检测方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据完整性的检测程序,所述数据完整性的检测程序被处理器执行时实现如上所述的数据完整性的检测方法的步骤。
本发明计算机可读存储介质具体实施方式与上述数据完整性的检测方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据完整性的检测方法,其特征在于,所述数据完整性的检测方法应用于审计终端,所述数据完整性的检测方法包括以下步骤:
审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签;
根据所述数据标签生成审计挑战,将所述审计挑战发送给云服务器,以供所述云服务器根据所述审计挑战生成待检测数据对应数据块的数据块证明,其中,所述云服务器中存储有所述数据终端生成的待检测数据;
接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性。
2.如权利要求1所述的数据完整性的检测方法,其特征在于,所述根据所述数据标签生成审计挑战的步骤包括:
获取预存的公钥,根据所述公钥检测所述数据标签是否正确;
若检测到所述数据标签正确,则生成审计挑战。
3.如权利要求1所述的数据完整性的检测方法,其特征在于,所述接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性的步骤包括:
接收所述云服务器发送的数据块证明,并获取审计公钥和所述数据标签对应标识符;
根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性。
4.如权利要求1所述的数据完整性的检测方法,其特征在于,所述接收所述云服务器发送的数据块证明,根据所述数据块证明检测所述云服务器中待检测数据的完整性的步骤包括:
基于双线性映射性质,根据所述数据块证明、所述审计公钥和所述标识符检测所述云服务器中待检测数据的完整性,其中,所述数据块证明包括存储证明和标签证明。
5.如权利要求1至4任一项所述的数据完整性的检测方法,其特征在于,所述审计终端接收数据终端发送的数据完整性的审计请求,根据所述审计请求获取待检测数据对应的数据标签的步骤之前,还包括:
接收数据终端发送的待检测数据对应盲化后的数据块,对所述盲化后的数据块进行盲签名操作,得到盲签名结果;
将所述盲签名结果发送给所述数据终端。
6.一种数据完整性的检测方法,其特征在于,所述数据完整性的检测方法应用于数据终端,所述数据完整性的检测方法包括以下步骤:
数据终端接收审计终端发送的待检测数据对应的盲签名结果,并检测所述盲签名结果的正确性;
若检测到所述盲签名结果正确,则在侦测到数据完整性的验证请求后生成审计请求;
将所述审计请求发送给审计终端,以供审计终端根据所述审计请求生成审计挑战,所述审计终端在接收到云服务器根据所述审计挑战返回的数据块证明后,根据所述数据块证明检测所述云服务器中待检测数据的完整性,其中,所述云服务器中存储有所述数据终端生成的待检测数据。
7.如权利要求6所述的数据完整性的检测方法,其特征在于,在检测到所述盲签名结果正确的步骤之后,还包括:
基于BLS签名技术,根据所述盲签名结果确定待检测数据对应数据块的原始签名值,并获取预存的待检测数据,以及获取所述待检测数据对应的数据标签;
将所述待检测数据、所述原始签名值和所述数据标签发送给所述云服务器,以供所述云服务器存储所述待检测数据,且所述审计终端在接收审计挑战后,根据所述原始签名值和所述数据标签生成待检测数据对应数据块的数据块证明。
8.如权利要求6或7所述的数据完整性的检测方法,其特征在于,所述数据终端接收审计终端发送的待检测数据对应的盲签名结果,并检测所述盲签名结果的正确性的步骤之前,还包括:
将预存的待检测数据拆分成数据块,并盲化拆分所得的数据块,得到盲化后的数据块;
将盲化后的数据块发送给审计终端,以供所述审计终端在接收到盲化后的数据块后,对盲化后的数据块执行盲签名操作,得到盲签名结果。
9.一种数据完整性的检测设备,其特征在于,所述数据完整性的检测设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的数据完整性的检测程序,所述数据完整性的检测程序被所述处理器执行时实现如权利要求1至5,或6至8中任一项所述的数据完整性的检测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据完整性的检测程序,所述数据完整性的检测程序被处理器执行时实现如权利要求1至5,或6至8中任一项所述的数据完整性的检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010234713.XA CN111460524B (zh) | 2020-03-27 | 2020-03-27 | 数据完整性的检测方法、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010234713.XA CN111460524B (zh) | 2020-03-27 | 2020-03-27 | 数据完整性的检测方法、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111460524A true CN111460524A (zh) | 2020-07-28 |
CN111460524B CN111460524B (zh) | 2023-07-18 |
Family
ID=71683745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010234713.XA Active CN111460524B (zh) | 2020-03-27 | 2020-03-27 | 数据完整性的检测方法、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111460524B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113361625A (zh) * | 2021-06-23 | 2021-09-07 | 中国科学技术大学 | 一种联邦学习场景中带有隐私保护的错误数据检测方法 |
CN113411191A (zh) * | 2021-08-20 | 2021-09-17 | 深圳前海微众银行股份有限公司 | 数据审计方法及装置 |
CN113722767A (zh) * | 2021-09-03 | 2021-11-30 | 南京南瑞信息通信科技有限公司 | 一种数据完整性验证方法、系统、存储介质及计算设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100080391A1 (en) * | 2007-10-30 | 2010-04-01 | Shah Mehul A | Auditing Data Integrity |
CN106254374A (zh) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | 一种具备去重功能的云数据公开审计方法 |
CN107800688A (zh) * | 2017-09-28 | 2018-03-13 | 南京理工大学 | 一种基于收敛加密的云端数据去重和完整性审计方法 |
CN107948143A (zh) * | 2017-11-15 | 2018-04-20 | 安徽大学 | 一种云存储中基于身份的隐私保护完整性检测方法和系统 |
CN108111313A (zh) * | 2018-01-12 | 2018-06-01 | 哈尔滨工业大学深圳研究生院 | 对云服务器上存储的用户文件进行第三方审计的方法 |
CN108664814A (zh) * | 2018-05-16 | 2018-10-16 | 东南大学 | 一种基于代理的群组数据完整性验证方法 |
-
2020
- 2020-03-27 CN CN202010234713.XA patent/CN111460524B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100080391A1 (en) * | 2007-10-30 | 2010-04-01 | Shah Mehul A | Auditing Data Integrity |
CN106254374A (zh) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | 一种具备去重功能的云数据公开审计方法 |
CN107800688A (zh) * | 2017-09-28 | 2018-03-13 | 南京理工大学 | 一种基于收敛加密的云端数据去重和完整性审计方法 |
CN107948143A (zh) * | 2017-11-15 | 2018-04-20 | 安徽大学 | 一种云存储中基于身份的隐私保护完整性检测方法和系统 |
CN108111313A (zh) * | 2018-01-12 | 2018-06-01 | 哈尔滨工业大学深圳研究生院 | 对云服务器上存储的用户文件进行第三方审计的方法 |
CN108664814A (zh) * | 2018-05-16 | 2018-10-16 | 东南大学 | 一种基于代理的群组数据完整性验证方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113361625A (zh) * | 2021-06-23 | 2021-09-07 | 中国科学技术大学 | 一种联邦学习场景中带有隐私保护的错误数据检测方法 |
CN113411191A (zh) * | 2021-08-20 | 2021-09-17 | 深圳前海微众银行股份有限公司 | 数据审计方法及装置 |
CN113411191B (zh) * | 2021-08-20 | 2021-11-23 | 深圳前海微众银行股份有限公司 | 数据审计方法及装置 |
CN113722767A (zh) * | 2021-09-03 | 2021-11-30 | 南京南瑞信息通信科技有限公司 | 一种数据完整性验证方法、系统、存储介质及计算设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111460524B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021238527A1 (zh) | 数字签名生成方法、装置、计算机设备和存储介质 | |
CN109862041B (zh) | 一种数字身份认证方法、设备、装置、系统及存储介质 | |
CN109639661B (zh) | 服务器证书更新方法、装置、设备及计算机可读存储介质 | |
CN111460524B (zh) | 数据完整性的检测方法、设备及计算机可读存储介质 | |
RU2506637C2 (ru) | Способ и устройство верификации динамического пароля | |
CN107911222B (zh) | 数字签名生成、验证方法及其设备和存储介质 | |
CN109688098B (zh) | 数据的安全通信方法、装置、设备及计算机可读存储介质 | |
CN108234442B (zh) | 获取合约的方法、系统及可读存储介质 | |
CN109347620B (zh) | 样本对齐方法、系统及计算机可读存储介质 | |
CN106055936A (zh) | 可执行程序数据包加密/解密方法及装置 | |
CN110611670A (zh) | 一种api请求的加密方法及装置 | |
WO2008112812A2 (en) | Human-recognizable cryptographic keys | |
US20160063280A1 (en) | Secure access for sensitive digital information | |
CN113225324A (zh) | 区块链匿名账户创建方法、系统、设备及存储介质 | |
CN109214146A (zh) | 应用软件的签名方法、验签方法和装置 | |
CN112801663A (zh) | 区块链存证方法、装置、系统、设备和介质 | |
CN116566626B (zh) | 环签名方法和设备 | |
CN115694932A (zh) | 一种基于区块链技术实现社区敏感数据保护的方法及设备 | |
CN113709115B (zh) | 认证方法及装置 | |
CN103873430A (zh) | 一种页面信息校验的方法、客户端及系统 | |
CN114065156A (zh) | 基于零知识证明的数据处理方法、系统、终端及存储介质 | |
CN111445250B (zh) | 一种区块链密钥测试方法及装置 | |
CN112667743A (zh) | 应用于传输终端的数据上链方法、系统、设备、存储介质 | |
WO2024060244A1 (en) | Method, device and system for managing carbon data and related apparatus | |
CN104518880B (zh) | 一种基于随机抽样检测的大数据可信性验证方法及系统 |
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 |