System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及区块链,具体而言,涉及一种隐私数据存储方法、装置、联盟链节点和存储介质。
技术介绍
1、目前,在对隐私数据上链存储时,一般会通过密钥对隐私数据进行加密,将加密后的隐私数据上链存储。
2、而现有技术中,将加密后的隐私数据上链存储的方式一般有两种,其一为通过交易备注的方式上链,但该方式对隐私数据的大小有一定限制,例如若字段限制为32字节,则仅能上链32字节内的隐私数据,其二为通过智能合约状态变量的方式上链,即通过对智能合约的状态数据进行写操作从而将隐私数据上链,但这种情况下隐私数据可以被修改,因此可能存在隐私数据被篡改从而导致数据失真的问题。
技术实现思路
1、有鉴于此,本申请的目的在于提供一种隐私数据存储方法、装置、联盟链节点和存储介质,以解决现有技术中存在的隐私数据上链时对数据大小有一定限制以及数据失真问题。
2、为了实现上述目的,本申请实施例采用的技术方案如下:
3、第一方面,本专利技术提供一种隐私数据存储方法,应用于联盟链中的任一联盟链节点,所述联盟链中还包括ca服务器,且所述ca服务器与所述联盟链节点通信连接,所述方法包括:
4、接收用户提交的数据,在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,根据所述隐私数据从所述ca服务器中获取交易凭证;
5、将所述隐私数据的哈希值和所述交易凭证上链,以便联盟链中的共识节点根据所述交易凭证将所述隐私数据的哈希值打包出块;
6、在所述隐私数据的哈希值
7、在可选的实施方式中,所述在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,根据所述隐私数据从所述ca服务器中获取交易凭证,包括:
8、在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,计算所述隐私数据的哈希值;
9、将所述哈希值和所述联盟链节点的节点信息发送至所述ca服务器,以便所述ca服务器在根据所述节点信息确定所述联盟链节点为隐私节点的情况下,生成所述哈希值对应的交易凭证,并将所述交易凭证发送至所述联盟链节点。
10、在可选的实施方式中,在接收用户提交的数据之后,所述方法还包括:
11、若所述数据中包括隐私标识,则确定所述数据为隐私数据;
12、若所述联盟链节点的节点ca信息表征所述联盟链节点具有隐私处理权限,则确定所述联盟链节点为隐私节点。
13、在可选的实施方式中,在将所述隐私数据的哈希值和所述交易凭证上链之后,所述方法还包括:
14、将所述隐私数据的哈希值和所述隐私数据存储至预设的第二数据库中,并确定所述隐私数据的哈希值是否在预设时长内出块成功;其中,所述第二数据库用于对所述隐私数据的哈希值和所述隐私数据进行临时存储;
15、所述在所述隐私数据的哈希值出块成功的情况下,将所述隐私数据和所述隐私数据的哈希值存储至所述联盟链节点中的第一数据库,包括:
16、若所述隐私数据的哈希值在预设时长内出块成功,则将所述隐私数据和所述隐私数据的哈希值存储至所述第一数据库,并从所述第二数据库中删除所述隐私数据和所述隐私数据的哈希值。
17、在可选的实施方式中,在将所述隐私数据和所述隐私数据的哈希值存储至所述联盟链节点中的第一数据库之后,所述方法还包括:
18、向所述ca服务器发送查询请求,以便所述ca服务器根据所述查询请求获取其他隐私节点的访问信息,并将所述其他隐私节点的访问信息发送至所述联盟链节点;其中,所述访问信息包括所述其他隐私节点的加密信息以及地址信息;
19、根据所述其他隐私节点的加密信息对所述隐私数据进行加密,并根据所述地址信息将加密后的隐私数据发送至所述其他隐私节点,以便所述其他隐私节点对加密后的隐私数据进行解密,并将所述隐私数据存储至所述隐私节点中的第一数据库。
20、在可选的实施方式中,所述方法还包括:
21、接收用户发送的读取请求;
22、若所述读取请求为隐私读取请求且所述联盟链节点为隐私节点,则确定所述用户是否具有隐私读取权限;
23、若所述用户具有隐私读取权限,则根据所述读取请求中的隐私哈希从链上区块数据中获取所述隐私哈希对应的目标区块数据,以及从所述联盟链节点中的第一数据库中获取所述隐私哈希对应的目标隐私数据,并将所述目标区块数据和所述目标隐私数据发送给用户;其中,所述目标隐私数据的哈希值和所述隐私哈希匹配。
24、在可选的实施方式中,所述读取请求中还包括用户ca信息,所述确定所述用户是否具有隐私读取权限,包括:
25、从所述ca服务器中获取所述用户ca信息对应的ca验证信息;
26、根据所述ca验证信息对应的权限内容,确定所述用户是否具有隐私读取权限。
27、第二方面,本专利技术提供一种隐私数据存储装置,应用于联盟链中的任一联盟链节点,所述联盟链中还包括ca服务器,且所述ca服务器与所述联盟链节点通信连接,所述装置包括:
28、获取模块,用于接收用户提交的数据,在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,根据所述隐私数据从所述ca服务器中获取交易凭证;
29、上链模块,用于将所述隐私数据的哈希值和所述交易凭证上链,以便联盟链中的共识节点根据所述交易凭证将所述隐私数据的哈希值打包出块;
30、存储模块,用于在所述隐私数据的哈希值出块成功的情况下,将所述隐私数据和所述隐私数据的哈希值存储至所述联盟链节点中的第一数据库。
31、第三方面,本专利技术提供一种联盟链节点,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现前述实施方式任一所述的方法。
32、第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述实施方式任一所述的方法。
33、本申请实施例提供的隐私数据存储方法、装置、联盟链节点和存储介质,联盟链节点可接收用户提交的数据,在该数据为隐私数据且联盟链节点为隐私节点的情况下,根据该隐私数据从ca服务器中获取交易凭证,之后将该隐私数据的哈希值和该交易凭证上链,由共识节点根据该交易凭证对隐私数据的哈希值打包出块,则联盟链节点可以在隐私数据的哈希值出块成功的情况下,将隐私数据和隐私数据的哈希值存储至联盟节点中的第一数据库。通过该方法,隐私节点可将隐私数据的哈希值上链存储,并将隐私数据和哈希值存储在该隐私节点中的第一数据库中,从而实现针对隐私数据的上链存储,由于上链的为隐私数据的哈希值,因此隐私数据上链可不受数据大小的限制,同时可保证隐私数据不会被篡改,从而避免出现数据失真问题。
34、为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。<本文档来自技高网...
【技术保护点】
1.一种隐私数据存储方法,其特征在于,应用于联盟链中的任一联盟链节点,所述联盟链中还包括CA服务器,且所述CA服务器与所述联盟链节点通信连接,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,根据所述隐私数据从所述CA服务器中获取交易凭证,包括:
3.根据权利要求1所述的方法,其特征在于,在接收用户提交的数据之后,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,在将所述隐私数据的哈希值和所述交易凭证上链之后,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,在将所述隐私数据和所述隐私数据的哈希值存储至所述联盟链节点中的第一数据库之后,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述读取请求中还包括用户CA信息,所述确定所述用户是否具有隐私读取权限,包括:
8.一种隐私数据存储装置,其特征在于,应用于联盟链中的任一联盟链节点,所述联盟链
9.一种联盟链节点,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现权利要求1-7任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法。
...【技术特征摘要】
1.一种隐私数据存储方法,其特征在于,应用于联盟链中的任一联盟链节点,所述联盟链中还包括ca服务器,且所述ca服务器与所述联盟链节点通信连接,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述在所述数据为隐私数据且所述联盟链节点为隐私节点的情况下,根据所述隐私数据从所述ca服务器中获取交易凭证,包括:
3.根据权利要求1所述的方法,其特征在于,在接收用户提交的数据之后,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,在将所述隐私数据的哈希值和所述交易凭证上链之后,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,在将所述隐私数据和所述隐私数据的哈希值存储至所述联盟链节点中的第一数据库之后,所述方法还包括:<...
【专利技术属性】
技术研发人员:叶亚芳,梁增健,范春雨,赖忆雲,陈佳伟,
申请(专利权)人:广东卓启云链科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。