预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共19页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113364576A(43)申请公布日2021.09.07(21)申请号202110593211.0(22)申请日2021.05.28(71)申请人湘潭大学地址411105湖南省湘潭市雨湖区羊牯塘卢家滩27号(72)发明人欧阳建权胡长林唐欢容(74)专利代理机构北京卓恒知识产权代理事务所(特殊普通合伙)11394代理人徐楼(51)Int.Cl.H04L9/06(2006.01)H04L9/08(2006.01)H04L9/32(2006.01)H04L29/06(2006.01)H04L29/08(2006.01)权利要求书3页说明书12页附图3页(54)发明名称一种基于区块链的数据加密存证与共享方法(57)摘要本发明公开了一种基于区块链的数据加密存证与共享方法,属于区块链技术应用领域,包括以下步骤:为用户分发公私钥对;系统生成随机数并分割存储,用户加密数据上传存储系统;共享数据时,数据请求方经拥有方同意并验证创建交易;数据请求方下载加密数据至本地,获得数据拥有方秘密份额后与链上节点达成共识合成随机数并处理为密钥;数据请求方利用密钥解密数据。本发明将数据加密存储,同时对加密密钥分割存储,从而保障数据存储安全,并利用区块链不可篡改的特性,记录数据以及数据共享时的信息,留痕存证,加强数据共享安全可控能力。CN113364576ACN113364576A权利要求书1/3页1.一种基于区块链的数据加密存证与共享方法,其特征在于:包括以下步骤:1)接受人们录入身份信息在区块链系统中注册为用户,并使用SM2算法为每个用户生成公私密钥对;2)加密数据时区块链系统生成一个随机数处理为加密密钥;用户对需要共享的数据选用AES算法或者SM4算法在本地客户端使用加密密钥进行加密,形成的加密数据上传至数据存储系统,所述的数据存储系统反馈所述的加密数据对应的存储地址与哈希值给该用户;3)对所述的随机数使用Asmuth‑Bloom门限方案分割至不同的节点存储,用于在区块链系统触发解密合约后进行还原并经处理后生成加密的密钥;4)采用SM2算法利用用户自身公钥加密用户身份信息得到加密身份信息,采用SM3算法计算所述加密身份信息的哈希值,将所述加密数据的哈希值、名称、数据存储系统反馈的存储地址、用户上传数据时输入的大致描述与地址、加密身份信息及加密身份信息的哈希值组成的字符串使用存证智能合约签名写入区块链存证;5)数据请求方发送签名请求至拥有加密数据的用户请求共享数据,若数据拥有方同意,则创建交易共享数据,否则无法创建交易;6)数据拥有方签名交易后上传区块链,共识节点采用SM2签名验签算法验证交易正确后共识记链完成交易,否则交易无效;7)数据请求方从数据存储系统下载加密数据至本地,获得数据拥有方保有的秘密份额与初始向量后使用自身私钥解密,采用SM2算法解密,然后通过解密合约将随机数合成,当区块链系统执行解密共识协议达成解密共识后,系统触发解密合约来恢复生成对称密钥的随机数,并在本地客户端处理为解密密钥,然后利用解密密钥与初始向量解密加密数据。2.根据权利要求1所述的一种基于区块链的数据加密存证与共享方法,其特征在于:所述的选用AES算法或者SM4算法所有需要的初始向量的生成方式为:发送方生成一个随机数,使用SM3算法计算此随机数的哈希值,取此哈希值的前64bit与最后64bit共128bit为初始向量,用户可将初始向量保存在本地。3.根据权利要求1所述的一种基于区块链的数据加密存证与共享方法,其特征在于:在步骤2)中加密的数据可以是文本、文档、PDF、图片等中的一种或多种。4.根据权利要求1所述的一种基于区块链的数据加密存证与共享方法,其特征在于:所述的用户身份信息包括身份证号和姓名。5.根据权利要求1所述的一种基于区块链的数据加密存证与共享方法,其特征在于:步骤5)所述的“数据拥有方同意”还包括对经数据拥有方用户进行身份验证的步骤:收集数据拥有方用户输入的身份证号及姓名,采用SM2算法利用用户自身公钥加密身份信息并计算其哈希值,对比此哈希值与存证信息中加密身份信息的哈希值是否一致,若一致则创建交易共享数据,通过数据共享智能合约录入使用请求数据方的公钥加密的秘密份额与初始向量,否则交易无效。6.根据权利要求1所述的一种基于区块链的数据加密存证与共享方法,其特征在于:步骤3)所述的Asmuth‑Bloom门限方案具体方式为:设有n个用户及区块链中的节点的集合P={P1,P2,...Pn}门限值为t,区块链系统生成的随机数为S并选取大素数p(p>S),n个正整数序列m=(m1,m2,...mn)满足如下条件:(1)m1,m2,m3...mn严格递增;2CN113364576A权利要求书2