一种基于区块链的数据存证方法和数据存证平台技术

技术编号:26226324 阅读:22 留言:0更新日期:2020-11-04 11:04
本发明专利技术公开了一种基于区块链的数据存证方法和平台,包括:客户端基于第一目标数据利用第一密钥生成第一消息认证码,将客户端标识、第一密钥和第一消息认证码发送至服务器端;服务器端利用第二密钥对第一密钥加密以生成密文,并生成时间戳和存证标识,将客户端标识、服务器端标识、密文、存证标识、第一消息认证码和时间戳写入区块链;验证端将时间戳与基准时间进行比较,以验证该时间戳是否正确;若时间戳验证正确,则从客户端获取第二目标数据,并基于所述第二目标数据利用所述第一密钥生成第二消息认证码,比较所述第二消息认证码和第一消息认证码是否相等,以获得最终验证结果。

【技术实现步骤摘要】
一种基于区块链的数据存证方法和数据存证平台
本专利技术涉及数据处理
,尤其涉及一种基于区块链的数据存证方法和数据存证平台。
技术介绍
目前,区块链数据存证方法是区块链
的主要应用方案之一,已经被应用到互联网金融、知识产权平台等众多领域中。区块链数据存证方法主要是以技术作为虚拟第三方身份,将待存证目标数据,经过一系列处理后,记录到区块链中,从而来保证目标数据的完整性。现有技术中的基于区块链的数据存证方法,主要包括以下两类:第一类是把目标数据文件、存证时间等信息存储上链;第二类是把目标数据文件通过哈希函数生成数据的哈希摘要;然后把哈希摘要、存证时间等信息存储上链。然而,上述两种数据存证方法均存在一定的技术问题,第一类方法的主要技术问题在于,这种数据存证方法只能处理少量数据,由于区块链自身的技术特性,如果要把大量的数据上链,例如将高清视频等传输上链,就需要大量的时间成本和链上存储成本。第二类方法的主要技术问题在于没有考虑到哈希函数本身的性质,忽视了产生哈希摘要冲突的可能性。
技术实现思路
本专利技术的目的就是提出一种基于区块链的数据存证方法和数据存证平台,以解决上述现有技术中存在的至少一个技术问题。为了达到上述目的,本专利技术采用的技术方案为:第一方面,本专利技术实施例提供一种基于区块链的数据存证方法,该数据存证方法包括以下步骤:客户端基于第一目标数据利用第一密钥生成第一消息认证码,并将客户端标识、第一密钥和第一消息认证码发送至服务器端;服务器端利用第二密钥对第一密钥加密以生成密文,并生成时间戳和存证标识,将所述存证标识发送给客户端,还将客户端标识、服务器端标识、密文、存证标识、第一消息认证码和时间戳写入区块链;验证端从客户端或服务器端获取所述存证标识,从服务器端获取所述第一密钥,并根据所述存证标识从区块链上获取所述客户端标识、服务器端标识、密文、第一消息认证码和时间戳,将所述时间戳与基准时间进行比较,以验证该时间戳是否正确;若时间戳验证正确,则从客户端获取第二目标数据,并基于所述第二目标数据利用所述第一密钥生成第二消息认证码,比较所述第二消息认证码和第一消息认证码是否相等,以获得最终验证结果。进一步的,该数据存证方法还包括以下步骤:若时间戳验证错误,则直接输出验证失败结果。进一步的,所述数据存证方法还包括以下步骤:服务器端还设定失效时间,并将该失效时间写入区块链;验证端根据所述存证标识获取所述失效时间;验证端将所述时间戳与基准时间进行比较之前还包括步骤:验证端验证数据存证平台的当前时间是否在所述失效时间之前,以输出验证结果。进一步的,所述客户端标识、服务器端标识、密文、第一消息认证码、时间戳或失效时间通过SSL、TLS或HTTPS加密信道进行加密传输。进一步的,所述密文是利用AES加密算法生成的。进一步的,所述第一和第二消息认证码是利用哈希运算或分组密码算法获得的。第二方面,本专利技术实施例提供一种基于区块链的数据存证平台,该数据存证平台包括客户端、服务器端、区块链和验证端;其中,客户端基于第一目标数据利用第一密钥生成第一消息认证码,并将客户端标识、第一密钥和第一消息认证码发送至服务器端;服务器端利用第二密钥对第一密钥加密以生成密文,并生成时间戳和存证标识,将客户端标识、服务器端标识、密文、存证标识、第一消息认证码和时间戳写入区块链;验证端从服务器端获取所述第一密钥和存证标识,并根据所述存证标识从区块链上获取所述客户端标识、服务器端标识、密文、第一消息认证码和时间戳,将所述时间戳与基准时间进行比较,以验证该时间戳是否正确;若时间戳验证正确,则从客户端获取第二目标数据,并基于所述第二目标数据利用所述第一密钥生成第二消息认证码,比较所述第二消息认证码和第一消息认证码是否相等,以获得最终验证结果。进一步的,所述验证端还执行以下操作:若时间戳验证错误,则直接输出验证失败结果。进一步的,服务器端还执行以下操作:设定失效时间,并将该失效时间写入区块链;验证端根据所述存证标识获取所述失效时间;验证端将所述时间戳与基准时间进行比较之前还包括步骤:验证端验证数据存证平台的当前时间是否在所述失效时间之前,以输出验证结果。进一步的,所述第一和第二消息认证码是利用哈希运算或分组密码算法获得的。本专利技术的有益效果是:第一,本专利技术的服务端只将存证标识、客户端标识、服务器端标识、密文、第一消息认证码、时间戳、失效时间传输至区块链,即使数据存证平台中有大量数据需要存证,也不需要大量的时间来进行上链和链上存储成本;第二,本专利技术在区块链上存储了第一、第二消息认证码及失效时间,除合法的验证端外,第三方由于不知晓第一密钥,因此无法对待认证的第一目标数据进行修改,从而第三方就无法以暴力破解的方式寻找另一组待认证的第二目标数据,因此,本专利技术可以使得这组待认证的第二目标数据和第一目标数据可以生成同样的哈希摘要;第三,由于本专利技术设定了失效时间,因此可以防止由于第一密钥的泄露使得第三方有充足的时间去生成第二目标数据,从而防止这组待认证的第二目标数据和第一目标数据生成相同内容的哈希摘要。附图说明下面结合附图和具体实施方式对本专利技术作进一步详细的说明。图1为本专利技术的一个实施例的一种基于区块链的数据存证方法的流程示意图;图2为本专利技术的一个实施例的一种基于区块链的数据存证平台的结构示意图。具体实施方式以下描述用于公开本专利技术以使本领域技术人员能够实现本专利技术。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变形。在以下描述中界定的本专利技术的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本专利技术的精神和范围的其他技术方案。可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。在这里使用的术语仅用于描述各种实施例的目的且不意在限制。如在此使用的,单数形式意在也包括复数形式,除非上下文清楚地指示例外。另外将理解术语“包括”和/或“具有”当在该说明书中使用时指定所述的特征、数目、步骤、操作、组件、元件或其组合的存在,而不排除一个或多个其它特征、数目、步骤、操作、组件、元件或其组的存在或者附加。本实施例首先对数据存证平台所涉及的各组成进行简要说明,数据存证平台包括客户端、服务器端、区块链和验证端;其中,客户端用于供用户进行触发操作,例如进行目标数据存储和获取,生成相应的事务请求,并将事务请求发送至服务器端和区块链进行处理,客户端可以通过部署DAPP的形式参与到区块链,或者通过接入其他中心化的区块链节点,间接参与到区块链,进行事务请求的发送,该客户端例如可以是计算机、移动终端(例如,蜂窝本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据存证方法,该数据存证方法包括以下步骤:/n客户端基于第一目标数据利用第一密钥生成第一消息认证码,并将客户端标识、第一密钥和第一消息认证码发送至服务器端;/n服务器端利用第二密钥对第一密钥加密以生成密文,并生成时间戳和存证标识,将所述存证标识发送给客户端,还将客户端标识、服务器端标识、密文、存证标识、第一消息认证码和时间戳写入区块链;/n验证端从服务器端或客户端获取所述存证标识,从服务器端获取所述第一密钥,并根据所述存证标识从区块链上获取所述客户端标识、服务器端标识、密文、第一消息认证码和时间戳,将所述时间戳与基准时间进行比较,以验证该时间戳是否正确;若时间戳验证正确,则从客户端获取第二目标数据,并基于所述第二目标数据利用所述第一密钥生成第二消息认证码,比较所述第二消息认证码和第一消息认证码是否相等,以获得最终验证结果。/n

【技术特征摘要】
1.一种基于区块链的数据存证方法,该数据存证方法包括以下步骤:
客户端基于第一目标数据利用第一密钥生成第一消息认证码,并将客户端标识、第一密钥和第一消息认证码发送至服务器端;
服务器端利用第二密钥对第一密钥加密以生成密文,并生成时间戳和存证标识,将所述存证标识发送给客户端,还将客户端标识、服务器端标识、密文、存证标识、第一消息认证码和时间戳写入区块链;
验证端从服务器端或客户端获取所述存证标识,从服务器端获取所述第一密钥,并根据所述存证标识从区块链上获取所述客户端标识、服务器端标识、密文、第一消息认证码和时间戳,将所述时间戳与基准时间进行比较,以验证该时间戳是否正确;若时间戳验证正确,则从客户端获取第二目标数据,并基于所述第二目标数据利用所述第一密钥生成第二消息认证码,比较所述第二消息认证码和第一消息认证码是否相等,以获得最终验证结果。


2.根据权利要求1所述的数据存证方法,其特征在于,该数据存证方法还包括以下步骤:若时间戳验证错误,则直接输出验证失败结果。


3.根据权利要求1或2所述的数据存证方法,其特征在于,所述数据存证方法还包括以下步骤:
服务器端还设定失效时间,并将该失效时间写入区块链;
验证端根据所述存证标识获取所述失效时间;
验证端将所述时间戳与基准时间进行比较之前还包括步骤:
验证端验证数据存证平台的当前时间是否在所述失效时间之前,以输出验证结果。


4.根据权利要求3所述的数据存证方法,其特征在于,所述客户端标识、服务器端标识、密文、第一消息认证码、时间戳或失效时间通过SSL、TLS或HTTPS加密信道进行加密传输。


5.根据权利要求1所述的数据存证方法,其特征在于,...

【专利技术属性】
技术研发人员:陈斌陆健金剑锋蔡俊华钟鸣钱伟
申请(专利权)人:中华人民共和国苏州海关
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1