CN112989418A - 一种基于身份密码的文件完整性验证方法 - Google Patents

一种基于身份密码的文件完整性验证方法 Download PDF

Info

Publication number
CN112989418A
CN112989418A CN202110324482.6A CN202110324482A CN112989418A CN 112989418 A CN112989418 A CN 112989418A CN 202110324482 A CN202110324482 A CN 202110324482A CN 112989418 A CN112989418 A CN 112989418A
Authority
CN
China
Prior art keywords
file
verification
verifier
parameters
owner
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.)
Pending
Application number
CN202110324482.6A
Other languages
English (en)
Inventor
张权
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HANGZHOU ANSIYUAN TECHNOLOGY Co.,Ltd.
Original Assignee
Guoke Xin'an Science And Technology Research Institute Hangzhou Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guoke Xin'an Science And Technology Research Institute Hangzhou Co ltd filed Critical Guoke Xin'an Science And Technology Research Institute Hangzhou Co ltd
Priority to CN202110324482.6A priority Critical patent/CN112989418A/zh
Publication of CN112989418A publication Critical patent/CN112989418A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于身份密码的文件完整性验证方法。本发明包括如下内容:首先对参数进行设置,然后文件拥有者创建每个文件的验证私钥η和验证公钥r;文件拥有者对文件进行分割,计算每个文件块mi的标签验证标签σi并保存;文件验证者对文件的任意文件块进行随机抽查,对每个待检查的文件块mi生成临时随机挑战;文件验证者每次检查生成随机参数
Figure DDA0002994050130000011
以及参数c1=gρ

Description

一种基于身份密码的文件完整性验证方法
技术领域
本发明属于通信和密码学技术领域,涉及一种基于身份密码的文件完整性验证方法。
背景技术
由于文件在存储和传输过程中可能被破坏,且为了保证这些数据文件信息未被黑客恶意修改或者未被信息管理人员无意修改或删除,对该数据文件信息进行数据完整性验证是十分必要的。
现有技术在进行数据完整性验证时,通过验证者对验证文件进行分块,并生成元数据,将元数据保存在本地。验证时,验证者将选取好的数据块索引发送给服务器,服务器根据验证者发送的数据进行相应的计算并返回,将返回值与本地的值相对比,若相等,则说明数据完整。现有技术每次验证时都需要取回数据,不仅浪费了大量的存储开销,还可能泄露数据隐私。
发明内容
本发明的目的是针对现有技术的不足,提供一种基于身份密码的文件完整性验证方法。
本发明解决其技术问题所采用的技术方案如下:
步骤1、参数设置:
密钥生成中心KGC收到安全参数sp后,首先选取两个素数q阶的乘法循环群G1和G2,其中G1的生成元为g;存在双线性映射e:G1×G1→G2。其次密钥生成中心KGC随机选取α作为全局主私钥,其中
Figure BDA0002994050120000011
并设全局公钥Ppub=gα。最后密钥生成中心KGC选取3个哈希函数H1、H2:{0,1}*′→G1、H3:G2→{0,1}l;由此得到整个***的参数为(G1,G2,e,g,Ppub,H1,H2,H3,l),其中
Figure BDA0002994050120000012
中的*表示有限域,哈希函数H2中的*′表示任意长度,哈希函数H3中的l表示长度。
步骤2、私钥提取:
根据全局主私钥α和文件拥有者的身份标识ID={0,1}*′计算文件拥有者的用户私钥s=H1(ID)α
步骤3、标签生成:
给定一个名称为f的文件,文件拥有者首先将文件f分割为n个文件块,文件f可表示为m1,m2,…mn,其中mi∈Zq,i=1,2,…n,Zq表示q阶整数域。然后随机选取验证私钥η,
Figure BDA0002994050120000021
并计算验证公钥r,r=gη。其次计算每个文件块mi的标签验证标签σi
Figure BDA0002994050120000022
最后文件拥有者将文件f以及验证信息(r,{σi}i=1,2,…n,IDS(r||f))发送给文件持有者存储,其中IDS(r||f)是文件拥有者对消息r||f的身份签名。其中r||f和f||i中的||均表示拼接。
步骤4、验证挑战:
为验证文件f的完整性,文件验证者从集合[1,n]中选取包含c个随机元素的子集I,从子集I中随机选取元素vi,其中i∈I,
Figure BDA0002994050120000023
记集合Q={(i,vi)},为创建一个挑战,文件验证者随机选取参数
Figure BDA0002994050120000024
计算参数
Figure BDA0002994050120000025
并且同时计算参数c1和c2:c1=gρ,
Figure BDA0002994050120000026
生成知识证明:
Figure BDA0002994050120000027
文件验证者将挑战chal发送给文件持有者,chal=(c1,c2,Q,pf)。
步骤5、生成证明:
文件持有者收到文件验证者发送的挑战chal后,首先计算参数
Figure BDA0002994050120000028
然后验证知识证明pf。若无效则退出。否则文件持有者计算中间参数μ、σ,其中中间参数σ是子集对应的验证标签集合,然后计算响应参数m′。
其中
Figure BDA0002994050120000029
然后将信息(m′,r,IDS(r||f))发送给文件验证者。
步骤6、完成验证:
文件验证者收到文件持有者发送过来的信息(m′,r,IDS(r||f)),读取其中响应参数m′后,首先检查IDS(r||f)是否是文件拥有者对消息r||f的有效身份签名,若不是则验证失败,否则文件验证者进一步检查响应参数m′,若响应参数求解的等式(1)成立,表示验证通过,否则验证失败。
Figure BDA0002994050120000031
所述验证过程正确性的判断如下:
Figure BDA0002994050120000032
本发明有益效果如下:
本发明所提出的方法能够在分布式环境中,支持非相互信任的实体之间文件发布、文件保存、文件验证等三类主要事务的分布式执行,即文件拥有者可以将文件保存事务发布给文件持有者,同时将文件验证事务发布给文件验证者;
本发明提出的验证方法不需要文件拥有者事先建立公私钥对,可以针对特定文件建立专门的基于身份密码的公私钥对,能够保证即使某个文件的安全保护机制被攻击者攻陷,不会影响到属于该文件拥有者的其它文件。
具体实施方式
下面结合具体实施方式对本发明作进一步说明。
术语说明:
·密钥生成中心:全局的可信安全机构,负责维护***安全参数、全局主私钥,并且为每个用户(主要是文件拥有者)生成用户私钥;
·文件:二进制流形式的数据对象,可以具有特定格式的标准数据对象,如JPG图像、Office文档等;也可以是标准数据对象经过编码、压缩或加密操作的产物。文件是文件拥有者准备存储的原始数据;
·文件块:为了方便管理将文件分割成固定长度的文件块,对于最后一个长度无法对齐的文件块,需要进行填充,确保每个文件块的长度相同;
·文件拥有者:是文件的所有权人,可以是文件的创建者,也可以是对文件具有完全的实际控制权实体。文件拥有者通常是文件的添加者,有权力删除、修改文件;
·文件持有者:是提供存储空间保存文件块的实体;
·文件验证者:得到文件拥有者的授权,对文件持有者保存的文件块的有效性、正确性进行验证的实体。
一种基于身份密码的文件完整性验证方法,包括如下内容:首先对参数进行设置,然后文件拥有者创建每个文件的验证私钥η和验证公钥r;文件拥有者对文件进行分割,计算每个文件块mi的标签验证标签σi并保存;文件验证者对文件的任意文件块进行随机抽查,对每个待检查的文件块mi生成临时随机挑战;文件验证者每次检查生成随机参数
Figure BDA0002994050120000041
以及参数c1=gρ,
Figure BDA0002994050120000042
文件持有者计算中间参数μ、σ和响应参数m′;文件验证者验证响应参数m′,若响应参数求解的等式成立,表示验证通过。
本发明具体实现步骤如下:
步骤1、参数设置:
密钥生成中心KGC收到安全参数sp后,首先选取两个素数q阶的乘法循环群G1和G2,其中G1的生成元为g;存在双线性映射e:G1×G1→G2。其次密钥生成中心KGC随机选取α作为全局主私钥,其中
Figure BDA0002994050120000043
并设全局公钥Ppub=gα。最后密钥生成中心KGC选取3个哈希函数H1、H2:{0,1}*′→G1、H3:G2→{0,1}l;由此得到整个***的参数为(G1,G2,e,g,Ppub,H1,H2,H3,l),其中
Figure BDA0002994050120000044
中的*表示有限域,哈希函数H2中的*′表示任意长度,哈希函数H3中的l表示长度。
步骤2、私钥提取:
根据全局主私钥α和文件拥有者的身份标识ID={0,1}*′计算文件拥有者的用户私钥s=H1(ID)α
步骤3、标签生成:
给定一个名称为f的文件,文件拥有者首先将文件f分割为n个文件块,文件f可表示为m1,m2,…mn,其中mi∈Zq,i=1,2,…n,Zq表示q阶整数域。然后随机选取验证私钥η,
Figure BDA0002994050120000045
并计算验证公钥r,r=gη。其次计算每个文件块mi的标签验证标签σi
Figure BDA0002994050120000046
最后文件拥有者将文件f以及验证信息(r,{σi}i=1,2,…n,IDS(r||f))发送给文件持有者存储,其中IDS(r||f)是文件拥有者对消息r||f的身份签名。其中r||f和f||i中的||均表示拼接。
步骤4、验证挑战:
为验证文件f的完整性,文件验证者从集合[1,n]中选取包含c个随机元素的子集I,从子集I中随机选取元素vi,其中i∈I,
Figure BDA0002994050120000051
记集合Q={(i,vi)},为创建一个挑战,文件验证者随机选取参数
Figure BDA0002994050120000052
计算参数
Figure BDA0002994050120000053
并且同时计算参数c1和c2:c1=gρ,
Figure BDA0002994050120000054
生成知识证明:
Figure BDA0002994050120000055
文件验证者将挑战chal发送给文件持有者,chal=(c1,c2,Q,pf)。
步骤5、生成证明:
文件持有者收到文件验证者发送的挑战chal后,首先计算参数
Figure BDA0002994050120000056
然后验证知识证明pf。若无效则退出。否则文件持有者计算中间参数μ、σ,其中中间参数σ是子集对应的验证标签集合,然后计算响应参数m′。
其中
Figure BDA0002994050120000057
然后将信息(m′,r,IDS(r||f))发送给文件验证者。
步骤6、完成验证:
文件验证者收到文件持有者发送过来的信息(m′,r,IDS(r||f)),读取其中响应参数m′后,首先检查IDS(r||f)是否是文件拥有者对消息r||f的有效身份签名,若不是则验证失败,否则文件验证者进一步检查响应参数m′,若响应参数求解的等式(1)成立,表示验证通过,否则验证失败。
Figure BDA0002994050120000058
所述验证过程正确性的判断如下:
Figure BDA0002994050120000061
本发明方法可用于依赖分布式存储或分布式数据库,且对数据对象的一致性、完整性要求较高的应用领域,例如:医疗信息***中的病历数据存储、金融信息***中的用户信用数据存储、云存储中的个人关键数据网盘、企业知识资产数字保险箱等。
如果以计算机软件的形式来实现所述功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的非易失性存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (2)

1.一种基于身份密码的文件完整性验证方法,其特征在于包括如下内容:首先对参数进行设置,然后文件拥有者创建每个文件的验证私钥η和验证公钥r;文件拥有者对文件进行分割,计算每个文件块mi的标签验证标签σi并保存;文件验证者对文件的任意文件块进行随机抽查,对每个待检查的文件块mi生成临时随机挑战;文件验证者每次检查生成随机参数
Figure FDA0002994050110000011
以及参数
Figure FDA0002994050110000012
文件持有者计算中间参数μ、σ和响应参数m′;文件验证者验证响应参数m′,若响应参数求解的等式成立,表示验证通过。
2.根据权利要求1所述的一种基于身份密码的文件完整性验证方法,其特征在于具体包括如下步骤:
步骤1、参数设置:
密钥生成中心KGC收到安全参数sp后,首先选取两个素数q阶的乘法循环群G1和G2,其中G1的生成元为g;存在双线性映射e:G1×G1→G2;其次密钥生成中心KGC随机选取α作为全局主私钥,其中
Figure FDA0002994050110000013
并设全局公钥Ppub=gα;最后密钥生成中心KGC选取3个哈希函数H1、H2:{0,1}*′→G1、H3:G2→{0,1}l;由此得到整个***的参数为(G1,G2,e,g,Ppub,H1,H2,H3,l),其中
Figure FDA0002994050110000014
中的*表示有限域,哈希函数H2中的*′表示任意长度,哈希函数H3中的l表示长度;
步骤2、私钥提取:
根据全局主私钥α和文件拥有者的身份标识ID={0,1}*′计算文件拥有者的用户私钥s=H1(ID)α
步骤3、标签生成:
给定一个名称为f的文件,文件拥有者首先将文件f分割为n个文件块,文件f可表示为m1,m2,…mn,其中mi∈Zq,i=1,2,…n,Zq表示q阶整数域;然后随机选取验证私钥η,
Figure FDA0002994050110000015
并计算验证公钥r,r=gη;其次计算每个文件块mi的标签验证标签σi
Figure FDA0002994050110000016
最后文件拥有者将文件f以及验证信息(r,{σi}i=1,2,…n,IDS(r||f))发送给文件持有者存储,其中IDS(r||f)是文件拥有者对消息r||f的身份签名;其中r||f和f||i中的||均表示拼接;
步骤4、验证挑战:
为验证文件f的完整性,文件验证者从集合[1,n]中选取包含c个随机元素的子集I,从子集I中随机选取元素vi,其中i∈I,
Figure FDA0002994050110000021
记集合Q={(i,vi)},为创建一个挑战,文件验证者随机选取参数
Figure FDA0002994050110000022
计算参数
Figure FDA0002994050110000023
并且同时计算参数c1和c2:c1=gρ,
Figure FDA0002994050110000024
生成知识证明:
Figure FDA0002994050110000025
文件验证者将挑战chal发送给文件持有者,chal=(c1,c2,Q,pf);
步骤5、生成证明:
文件持有者收到文件验证者发送的挑战chal后,首先计算参数Z~=e(H1(ID),Ppub),然后验证知识证明pf;若无效则退出;否则文件持有者计算中间参数μ、σ,其中中间参数σ是子集对应的验证标签集合,然后计算响应参数m′;
其中
Figure FDA0002994050110000026
然后将信息(m′,r,IDS(r||f))发送给文件验证者;
步骤6、完成验证:
文件验证者收到文件持有者发送过来的信息(m′,r,IDS(r||f)),读取其中响应参数m′后,首先检查IDS(r||f)是否是文件拥有者对消息r||f的有效身份签名,若不是则验证失败,否则文件验证者进一步检查响应参数m′,若响应参数求解的等式(1)成立,表示验证通过,否则验证失败;
Figure FDA0002994050110000027
所述验证过程正确性的判断如下:
Figure FDA0002994050110000028
CN202110324482.6A 2021-03-26 2021-03-26 一种基于身份密码的文件完整性验证方法 Pending CN112989418A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110324482.6A CN112989418A (zh) 2021-03-26 2021-03-26 一种基于身份密码的文件完整性验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110324482.6A CN112989418A (zh) 2021-03-26 2021-03-26 一种基于身份密码的文件完整性验证方法

Publications (1)

Publication Number Publication Date
CN112989418A true CN112989418A (zh) 2021-06-18

Family

ID=76333817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110324482.6A Pending CN112989418A (zh) 2021-03-26 2021-03-26 一种基于身份密码的文件完整性验证方法

Country Status (1)

Country Link
CN (1) CN112989418A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811450A (zh) * 2015-04-22 2015-07-29 电子科技大学 云计算中一种基于身份的数据存储方法及完整性验证方法
CN110912706A (zh) * 2019-11-15 2020-03-24 东北大学 一种基于身份的动态数据完整性审计方法
CN111709058A (zh) * 2020-06-09 2020-09-25 陕西师范大学 一种基于身份和环签名的数据完整性校验方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811450A (zh) * 2015-04-22 2015-07-29 电子科技大学 云计算中一种基于身份的数据存储方法及完整性验证方法
CN110912706A (zh) * 2019-11-15 2020-03-24 东北大学 一种基于身份的动态数据完整性审计方法
CN111709058A (zh) * 2020-06-09 2020-09-25 陕西师范大学 一种基于身份和环签名的数据完整性校验方法

Similar Documents

Publication Publication Date Title
CN109074434B (zh) 使用分布式散列表和点对点分布式分类账验证数字资产所有权的方法和***
Barsoum et al. Provable multicopy dynamic data possession in cloud computing systems
Jin et al. Dynamic and public auditing with fair arbitration for cloud data
CN109194466A (zh) 一种基于区块链的云端数据完整性检测方法及***
CN112119610A (zh) 用于控制对资源的访问的令牌的存储、生成和验证的改进***和方法
CN110096903B (zh) 基于区块链的资产验证方法及区块链网络***
CN104978239A (zh) 一种实现多备份数据动态更新的方法、装置及***
CN112565264B (zh) 一种基于区块链的云存储数据完整性检测方法
CN115225409B (zh) 基于多备份联合验证的云数据安全去重方法
CN112532650A (zh) 一种基于区块链的多备份安全删除方法、***
CN115208628B (zh) 基于区块链的数据完整性验证方法
CN112347516A (zh) 基于区块链的资产证明方法及装置
CN114691669A (zh) 一种电子存证方法、装置、电子设备及存储介质
CN117235342A (zh) 基于同态哈希函数和虚拟索引的动态云审计方法
Xu et al. A generic integrity verification algorithm of version files for cloud deduplication data storage
CN111680325A (zh) 一种数据加押方法及装置
CN113342802A (zh) 区块链数据存储的方法和装置
KR102517001B1 (ko) 블록체인 네트워크 상에서 전자서명 처리 시스템 및 방법
CN113139209B (zh) 一种基于原子性签名的可验证凭据实现方法和***
CN112989418A (zh) 一种基于身份密码的文件完整性验证方法
CN111585756B (zh) 一种适用于多副本-多云情形下的无证书云审计方法
KR20220134341A (ko) 분산 id를 활용한 소유권 증명 및 이전 내역 증명 방법
CN109802828B (zh) 支持公开验证的云数据完整性审计方法
Hiremath et al. Homomorphic authentication scheme for proof of retrievability with public verifiability
Ayasy et al. Protecting author royalty of digital assets using blockchain and elliptic curve cryptography

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210825

Address after: 310000 6-809, No. 501, No. 2 street, Baiyang street, Qiantang New District, Hangzhou, Zhejiang Province

Applicant after: HANGZHOU ANSIYUAN TECHNOLOGY Co.,Ltd.

Address before: 310018 6-808, 501, 2 Baiyang street, Qiantang New District, Hangzhou City, Zhejiang Province

Applicant before: Guoke Xin'an science and Technology Research Institute (Hangzhou) Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210618