欢迎您访问广东某某机械环保科有限公司网站,公司主营某某机械、某某设备、某某模具等产品!
全国咨询热线: 400-123-4567

哈希游戏

哈希游戏| 哈希游戏平台| 哈希游戏APP

HAXIYOUXI-HAXIYOUXIPINGTAI-HAXIYOUXIAPP

哈希游戏- 哈希游戏平台- 官方网站一种基于值的区块数据生成与验证方法pdf

作者:小编2025-02-03 10:41:37

  哈希游戏- 哈希游戏平台- 哈希游戏官方网站

哈希游戏- 哈希游戏平台- 哈希游戏官方网站一种基于哈希值的区块数据生成与验证方法pdf

  本申请公开一种基于哈希值的区块数据生成与验证方法,数据获取端获取数据存储端存储在区块链区块中对应的资产验证包,资产验证包包括验证哈希值和存储原始数字资产数据的数据存储端的地址标识;数据获取端发送获取数据请求至地址标识对应的数据存储端;数据存储端验证获取数据请求,若通过验证,则发送获取数据请求对应的原始数字资产数据至数据获取端;数据获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字资产数据进行验证,得到验证结果。通过将原始数据计算得到的验证哈希值与标识原始数据的地址信息打包成区块上链,使

  (19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 CN 113079027 A (43)申请公布日 2021.07.06 (21)申请号 3.X (22)申请日 2021.06.04 (71)申请人 江苏数字产权交易有限公司 地址 211800 江苏省南京市中国(江苏)自 由贸易试验区南京片区滨江大道396 号1号楼 (72)发明人 白杰 (74)专利代理机构 北京弘权知识产权代理有限 公司 11363 代理人 逯长明许伟群 (51)Int.Cl. H04L 9/32 (2006.01) 权利要求书2页 说明书6页 附图4页 (54)发明名称 一种基于哈希值的区块数据生成与验证方 法 (57)摘要 本申请公开一种基于哈希值的区块数据生 成与验证方法,数据获取端获取数据存储端存储 在区块链区块中对应的资产验证包,资产验证包 包括验证哈希值和存储原始数字资产数据的数 据存储端的地址标识;数据获取端发送获取数据 请求至地址标识对应的数据存储端;数据存储端 验证获取数据请求,若通过验证,则发送获取数 据请求对应的原始数字资产数据至数据获取端; 数据获取端根据资产验证包中的验证哈希值对 来自数据存储端的原始数字资产数据进行验证, 得到验证结果。通过将原始数据计算得到的验证 A 哈希值与标识原始数据的地址信息打包成区块 7 上链,使得区块中不包含原始数据,并且区块中 2 0 9 的数据均为定长值,便于查找和追溯,还有效提 7 0 3 高了原始数据的保密性。 1 1 N C CN 113079027 A 权利要求书 1/2页 1.一种基于哈希值的区块数据生成方法,其特征在于,所述方法包括: 数据存储端采用哈希算法计算原始数字资产数据,得到预设长度的验证哈希值; 根据原始数字资产数据的存储地址生成地址标识; 将所述验证哈希值和所述地址标识打包,得到资产验证包,并将资产验证包生成区块 上链存储;所述资产验证包用于数据获取端根据资产验证包中的验证哈希值对来自数据存 储端的原始数字资产数据进行验证,得到验证结果。 2.一种基于哈希值的区块数据生成方法,其特征在于,所述方法包括: 数据存储端根据原始数字资产数据的存储地址生成地址标识; 采用哈希算法计算原始数字资产数据及地址标识,得到预设长度的验证哈希值; 将所述验证哈希值打包,得到资产验证包,并将资产验证包生成区块上链存储;所述资 产验证包用于数据获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字 资产数据进行验证,得到验证结果。 3.一种基于哈希值的区块数据验证方法,其特征在于,所述方法包括: 数据获取端获取数据存储端存储在区块链区块中对应的资产验证包,所述资产验证包 包括验证哈希值和存储原始数字资产数据的数据存储端的地址标识; 数据获取端发送获取数据请求至所述地址标识对应的数据存储端; 数据存储端验证所述获取数据请求,若通过验证,则发送获取数据请求对应的原始数 字资产数据至数据获取端; 数据获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字资产数据 进行验证,得到验证结果。 4.根据权利要求3所述的一种基于哈希值的区块数据验证方法,其特征在于,所述数据 存储端存储资产验证包的方法包括: 数据存储端采用哈希算法计算原始数字资产数据,得到预设长度的验证哈希值; 根据原始数字资产数据的存储地址生成地址标识; 将所述验证哈希值和所述地址标识打包,得到资产验证包,并将资产验证包生成区块 上链存储。 5.根据权利要求3所述的一种基于哈希值的区块数据验证方法,其特征在于,所述数据 存储端存储资产验证包的方法包括: 数据存储端将原始数字资产数据以及原始数字资产数据的存储地址发送至数字资产 交易平台; 数字资产交易平台根据内置哈希算法计算原始数字资产数据,得到一个或多个预设长 度的验证哈希值;根据原始数字资产数据的存储地址生成地址标识; 数字资产交易平台将所述验证哈希值和所述地址标识打包,得到资产验证包,并将资 产验证包生成区块上链存储。 6.根据权利要求3所述的一种基于哈希值的区块数据验证方法,其特征在于,所述获取 数据请求中包括数据获取端的身份信息;所述数据存储端验证所述获取数据请求的步骤包 括: 提取数据获取端的身份信息,并与所述数据存储端本地存储的第一信息比对,若满足 第一预设规则,则通过验证。 2 2 CN 113079027 A 权利要求书 2/2页 7.根据权利要求4所述的一种基于哈希值的区块数据验证方法,其特征在于,所述数据 获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字资产数据进行验证 的步骤包括: 数据获取端从数据存储端获取计算验证哈希值所用的哈希算法; 采用所述哈希算法计算原始数字资产数据,得到第一哈希值; 比较第一哈希值与验证哈希值是否相同,若相同,则得到原始数字资产数据为线所述的一种基于哈希值的区块数据验证方法,其特征在于,所述数据 获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字资产数据进行验证 的步骤包括: 数据获取端向数字资产交易平台发起验证请求;所述验证请求中包含数据存储端的许 可信息; 数字资产交易平台根据验证请求发送计算原始数字资产数据的哈希算法至数据获取 端; 数据获取端采用所述哈希算法计算原始数字资产数据,得到第一哈希值; 比较第一哈希值与验证哈希值是否相同,若相同,则得到原始数字资产数据为线所述的一种基于哈希值的区块数据验证方法,其特征在于,所述根据 原始数字资产数据的存储地址生成地址标识的步骤包括: 对所述存储地址采用公私钥对加密,得到加密的地址标识; 在数据获取端发送获取数据请求至所述地址标识对应的数据存储端之前,所述方法还 包括: 数据获取端向数字资产交易平台发送解密请求;所述解密请求中包含数据获取端的身 份信息; 数字资产交易平台验证所述身份信息,若验证成功,则将加密的地址标识对应的私钥 发送至数据获取端; 数据获取端根据收到的私钥对加密的地址标识解密,得到地址标识明文。 10.根据权利要求3所述的一种基于哈希值的区块数据验证方法,其特征在于,所述存 储原始数字资产数据的数据存储端的地址标识包括地址变更信息表; 当存储原始数字资产数据的地址发生变更时,数据存储端根据新的地址更新所述地址 变更信息表,并将新的资产验证包代替已上链资产验证包。 3 3 CN 113079027 A 说明书 1/6页 一种基于哈希值的区块数据生成与验证方法 技术领域 [0001] 本发明涉及区块链技术领域,特别涉及一种基于哈希值的区块数据生成与验证方 法。 背景技术 [0002] 其他用户想要获得某个用户上链的数据包时,现有的处理方式是:由数据拥有方 对上链数据明文执行哈希计算得到哈希值,以及,执行相应的加密处理后,将密文上链存 储,数据获取方从链上获取到加密处理后的密文,再根据数据拥有方提供的解密私钥等对 密文解密得到明文。 [0003] 然而,在实际应用场景中,有些用户并不想将自己的原始数据或者是经过加密的 密文数据被全区块链的所有节点共享,因为即使是经过加密的密文或哈希值,仍然具有被 某一个节点获取后破译为明文的风险。 发明内容 [0004] 本申请提供了一种基于哈希值的区块数据生成与验证方法,以解决因区块是由原 始数据直接或间接构成导致原始数据被所有节点公开的问题。 [0005] 通常,本说明书中描述的主题的创新方面的实现可以在一种方法中被体现,该方 法包括以下操作:预分享某一项数据的数据存储端,事先将原始数字资产数据采用单向不 可逆的哈希算法得到预设长度的验证哈希值,并将该预设长度的验证哈希值以及其所标识 的原始数字资产数据的数据存储端的地址标识打包成资产验证包,再将该资产验证包生成 区块数据上链存储。用户可在区块链的任意节点登录区块链的数据获取端完成对资产验证 包的下载操作,当获得到某一个资产验证包时,提取其中的地址标识,通过地址标识找到原 始数字资产数据对应的数据存储端,并向数据存储端发送获取数据请求。数据存储端对请 求验证成功后,将原始数字资产数据发送给数据获取端位置的用户。 [0006] 用户想要对接收到的原始数字资产数据的真实性进行验证,需要用到其从区块链 中获取到的资产验证包中的验证哈希值,具体验证方法为,采用与生成验证哈希值相同的 哈希算法对得到的原始数字资产数据计算,得到第一哈希值,并比较第一哈希值与验证哈 希值是否相同,如果相同即判断原始数字资产数据为真实可信的,若否则不可信;其中,获 取哈希算法可以直接通过向数据存储端发送请求,也可由数字资产交易平台处理。如果是 数字资产交易平台的情况,所述方法还包括数据存储端将原始数字资产数据以及原始数字 资产数据的存储地址发送至数字资产交易平台;再由数字资产交易平台根据内置哈希算法 执行计算原始数字资产数据、生成地址标识,以及将所述验证哈希值和所述地址标识打包, 得到资产验证包,并将资产验证包生成区块上链存储的步骤。 [0007] 本申请与现有技术的不同之处在于,打包生成的区块中包含的信息均不是原始数 据,一是用于验证原始数据真实性的验证哈希值,另一是显示原始数据地址的指示信息,并 且,生成的区块是定长的,更加方便获取以及回溯至数据存储端,显著提高了原始数据的保 4 4 CN 113079027 A 说明书 2/6页 密性,还使得整个验证过程更加便捷。 附图说明 [0008] 为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简 单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。 [0009] 图1为本申请一种基于哈希值的区块数据验证方法的流程图; 图2为数据存储端执行数据上链操作时的方法流程图; 图3为数字资产交易平台执行数据上链操作时的方法流程图; 图4为数据存储端执行上链过程时数据获取端进行验证的方法流程图; 图5为数字资产交易平台执行上链过程时数据获取端进行验证的方法流程图。 具体实施方式 [0010] 传统区块链技术中,无论是以太坊、比特coin等,定义区块数据时所采用的方式通 常有两种,一种是根据区块数据大小定义,例如满足一定大小即打一个区块,最终形成一串 区块构成的链,即区块链;另一种是根据时间定义区块,例如满足t1时长即打一个区块,最 终形成区块链。目前这两种方式均是将原始数据打包上链存储,即区块中均存储着原始数 据(或加密后的原始数据),该原始数据可以是图片、文档、视频等类型,也有可能是加密过 的数据。然而,仅通过这种模式并不能满足所有用户的需求,当某人想根据区块链不可篡改 的特点永久地保存一些数据,但同时其又不想其原始数据被太多的知晓或获得的情况下, 现有技术很难满足。例如,有一位老者拟将自己的遗嘱信息通过区块链保存,待其去世后可 由指定的继承人获取该遗嘱信息,其必然希望遗嘱信息的原始数据并不要被直接打包成区 块上链,为了解决这个问题,本申请提供了一种基于哈希值的区块数据验证方法。 [0011] 参见图1,为本申请一种基于哈希值的区块数据验证方法的流程图; 由图1可知,本申请提供的方法包括: S100:数据获取端获取数据存储端存储在区块链区块中对应的资产验证包,所述 资产验证包包括验证哈希值和存储原始数字资产数据的数据存储端的地址标识; 在本实施例中,数据获取端和数据存储端均是位于区块链任意节点的终端,终端 位置的操作者可以是个人,也可以是机构,例如涉及的数据是房产权利,则可能数据存储端 位置是房产局系统;本申请提供的方法是应用于位于数据获取端的用户想要获取数据存储 端的某个原始数据的应用场景。 [0012] 数据获取端获取的资产验证包是从区块链中获取的,并且该资产验证包是由数据 存储端提前生成并上链存储的,其中,资产验证包的作用一是提供原始数字资产数据真实 性验证的作用,另一个作用是指示该验证哈希值对应的原始数字资产数据的存储位置(或 地址标签),以便于数据获取端可以按照到指定的地址寻求获取原始数字资产数据。 [0013] 在本实施例中,原始数字资产数据是指代表该数据属性的数据包,例如,对于一份 遗嘱文件来说,其不仅只包括遗嘱内容,还可以包括遗嘱文件转成的电子文件(PDF文件、文 档文件、扫描件等)、立遗嘱人宣读遗嘱的录音文件、影像文件等,将这些所有文件整个打包 成一个数据包作为代表该份遗嘱的原始数字资产数据。 5 5 CN 113079027 A 说明书 3/6页 [0014] 进一步的,数据存储端将资产验证包上链存储时,可以在自身节点执行数据打包 后直接将数据上链,也可以通过数字资产交易平台执行上述操作,下面对于两种可行性实 施例分别进行阐述: 对于数据存储端执行数据上链操作时,可由图2所示的流程进行说明,具体方法包 括: S10:数据存储端采用哈希算法计算原始数字资产数据,得到一个或多个预设长度 的验证哈希值; 在本实施例中,采用哈希算法计算原始数字资产数据得到验证哈希值的过程是一 个单向不可逆的计算过程,例如MD5或MD4算法等,得到的验证哈希值仅用于最终对原始数 字资产数据的真实性验证,并不代表原始数字资产数据,也就是说,上链的内容仅为用于验 证的哈希值,而并非原始数据。 [0015] 其中,采用的哈希算法可由数据存储端自行指定,需要说明的是,所采用的哈希算 法与后续验证步骤中数据获取端所用的应为同一算法,这样可以保证对于同一份原始数字 资产数据计算可以得到完全相同的哈希值。 [0016] 在本实施例中,验证哈希值是一段固定长度的哈希值,该长度可以自行设定,但应 当保证不管什么样的原始数据、任何大小的原始数据,均能够计算得到完全相同长度的验 证哈希值。另外,这里预设长度的验证哈希值并不仅限于某一个数据的计算,应是对任何数 据或任何次上链操作过程中的数据,均可得到相同长度的哈希值。例如,定长哈希值为64字 节,则对原始数据A执行上链操作时可得到验证哈希值a1(64字节),对原始数据B执行上链 操作时可得到验证哈希值b1(64)字节。如果原始数据包含多个子数据包,则可以对每一个 子数据包分别计算,但计算得到的多个验证哈希值仍然是定长的,例如对C数据包中的C1、 C2、C3分别计算,则可以得到验证哈希值c1(64字节),验证哈希值c2(64字节),验证哈希值 c3(64字节)。 [0017] S20:根据原始数字资产数据的存储地址生成地址标识;地址标识可以是实体放置 的地址信息,也可以代表某机构的链接等,通过地址标识可以找到数据存储端。 [0018] S30:将所述验证哈希值和所述地址标识打包,得到资产验证包,并将资产验证包 生成区块上链存储。 [0019] 本申请与现有技术的不同之处在于,打包生成的区块中包含的信息均不是原始数 据,一是用于验证原始数据真实性的验证哈希值,另一是显示原始数据地址的指示信息,并 且,生成的区块是定长的,更加方便获取以及回溯至数据存储端,显著提高了原始数据的保 密性,还使得整个验证过程更加便捷。 [0020] 上述步骤S10‑S30是对于数据存储端执行数据上链操作时,同样的,该步骤还可以 是由数字资产交易平台来执行,具体可由图3所示的流程进行说明,方法包括: S40:数据存储端将原始数字资产数据以及原始数字资产数据的存储地址发送至 数字资产交易平台;采用数字资产交易平台执行相关步骤,可以减少交易双方的操作复杂 度,并且采用平台综合管控,更有利于数据的后期维护,同时,平台内可配置有更多种哈希 算法用于计算,更能确保原始数据的保密性,验证方式更加灵活。 [0021] S50:数字资产交易平台根据内置哈希算法计算原始数字资产数据,得到一个或多 个预设长度的验证哈希值; 6 6 CN 113079027 A 说明书 4/6页 S60:根据原始数字资产数据的存储地址生成地址标识; S70:数字资产交易平台将所述验证哈希值和所述地址标识打包,得到资产验证 包。 [0022] S80:将资产验证包生成区块上链存储。 [0023] 本实施例中数字资产交易平台在各个步骤中的具体处理过程可参见上述数据存 储端执行时的说明,再次不予赘述。 [0024] 进一步的,数据存储端上链资产验证包的方法还有另一种可行性实施例,即: 数据存储端先根据原始数字资产数据的存储地址生成地址标识;再采用哈希算法 对原始数字资产数据以及地址标识的整体进行哈希计算,得到一个或多个预设长度的验证 哈希值;此时,与前面实施例的不同之处在于,上链资产验证包中的地址标识是密文的形式 存储,安全性更高;当数据获取端得到资产验证包时,可以通过一定的解密方式获取到地址 标识的明文,这样,地址标识的明文仅是在终端出现,而不在区块链中被所有人可见,提高 了用户的隐私性。 [0025] 将所述验证哈希值打包,得到资产验证包,无论是上述两种方式的哪种,均可保证 生成的资产验证包具有数据整定、规范,易管理、易查询等特点。 [0026] S200:数据获取端发送获取数据请求至所述地址标识对应的数据存储端; 当数据获取端获得资产验证包以后,通过提取其中的地址标识可以得知原始数据 的存储位置,即确定了数据存储端是谁,这时可以直接向数据存储端发送获取数据请求。获 取数据请求中应包括数据获取端的身份信息、想要获取到的数据信息、以及获取数据需要 提供的其它信息等。 [0027] S300:数据存储端验证所述获取数据请求; 当数据存储端收到获取数据请求后,需要对数据获取端的身份进行验证,例如,验 证发出请求的人是否合法,或者,验证其是否具备资格等;除此之外,最重要的,是要看其提 出的请求中是否有能证明其具备得到原始数字资产数据的条件,对此,在数据存储端可以 设置多种验证方式,例如设置账号密码,或者需要提供一些证明文件,或者设置一些问题 等。同样以遗嘱为例,如果立遗嘱人的子女发出请求,则需要验证的内容可以是让子女提供 身份证明信息,或者提供亲子鉴定证明,或者提出一些有关立遗嘱人的问题,只有全部回答 上来才验证通过等,因此,在一些实施例中,上述步骤S300还可以演变为: 提取数据获取端的身份信息,并与所述数据存储端本地存储的第一信息比对,若 满足第一预设规则,则通过验证。这里的第一预设规则可以根据实际需求制定,在此不予限 制。 [0028] S400:若通过验证,则发送获取数据请求对应的原始数字资产数据至数据获取端; 此时,由于数据获取端并不知道数据存储端发送给其的原始数字资产数据是否为真实的数 据,则需要对数据的真实性继续执行验证步骤: S500:数据获取端根据资产验证包中的验证哈希值对来自数据存储端的原始数字 资产数据进行验证,得到验证结果。 [0029] 由于在上述说明中,数据存储端可以通过两种方式上链(通过平台或不通过平 台),因此在本步骤验证过程中,根据不同的上链方式,验证过程也具体分为两种进行说明: 如图4所示出的,为数据存储端执行上链过程时,数据获取端进行验证的过程,则 7 7 CN 113079027 A 说明书 5/6页 步骤S500包括: S510:数据获取端从数据存储端获取计算验证哈希值所用的哈希算法; S520:采用所述哈希算法计算原始数字资产数据,得到第一哈希值; S530:比较第一哈希值与验证哈希值是否相同,若相同,则得到原始数字资产数据 为线所示出的,为数字资产交易平台执行上链过程时,数据获取端进行验证的过 程,则步骤S500包括: S540:数据获取端向数字资产交易平台发起验证请求;所述验证请求中包含数据 存储端的许可信息;所述许可信息用于证明数据获取端获得了原始数字资产数据并且其具 备验证原始数字资产数据线:数字资产交易平台根据验证请求发送计算原始数字资产数据的哈希算法至 数据获取端; S560:数据获取端采用所述哈希算法计算原始数字资产数据,得到第一哈希值; S570:比较第一哈希值与验证哈希值是否相同,若相同,则得到原始数字资产数据 为线,相当于增加了一个平台验证数据获取端资质的步骤,能 够有效避免一些恶意的终端冒充数据获取端对数据存储端不断发起请求,而平台可以采用 一些智能合约或机制自动识别提出不良请求,进而减少了不必要的资源损耗。 [0033] 进一步的,为了进一步提高上述效果,在一些可行性实施例中,上述步骤S60还包 括:对所述存储地址采用公私钥对加密,得到加密的地址标识; 相应的,在数据获取端发送获取数据请求至所述地址标识对应的数据存储端之 前,所述方法还包括: 数据获取端向数字资产交易平台发送解密请求;所述解密请求中包含数据获取端 的身份信息; 数字资产交易平台验证所述身份信息,若验证成功,则将加密的地址标识对应的 私钥发送至数据获取端; 数据获取端根据收到的私钥对加密的地址标识解密,得到地址标识明文。 [0034] 这样,可以通过平台对数据获取端是否拥有资质进行进一步的要求,只有满足要 求的数据获取端才可以获得解密地址的私钥,可以避免一些非法终端因获得了地址信息去 骚扰数据存储端。 [0035] 进一步的,由于当数据存储端将包含地址标识的资产验证包上链以后,存放原始 数据的地址可能发生变化,这就使得获得资产验证包的终端无法找到更改后的地址,因此, 在一种可行性实施例中,所述存储原始数字资产数据的数据存储端的地址标识包括地址变 更信息表;所述方法还包括: 当存储原始数字资产数据的地址发生变更时,数据存储端根据新的地址更新所述 地址变更信息表,并将新的资产验证包代替已上链资产验证包。也就是说,当数据拥有者想 要更改原始数字资产数据的存放地址时,其需要重新上链一个新的资产验证包来代替原本 存储在链上的资产验证包,并且在其中要记载地址的变化,使得数据获取端能够追溯到正 确的地址。 8 8 CN 113079027 A 说明书 6/6页 [0036] 由上述技术方案可知,本申请提供的一种基于哈希值的区块数据验证方法,通过 将原始数据计算得到的验证哈希值与标识原始数据的地址信息打包成区块上链,使得区块 中不包含原始数据,并且区块中的数据均为定长值,便于查找和追溯,还有效提高了原始数 据的保密性。 [0037] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其 它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或 者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识 或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由本申请 的权利要求指出。 9 9 CN 113079027 A 说明书附图 1/4页 图1 10 10 CN 113079027 A 说明书附图 2/4页 图2 11 11 CN 113079027 A 说明书附图 3/4页 图3 图4 12 12 CN 113079027 A 说明书附图 4/4页 图5 13 13