区块链的实现方法技术

技术编号:24251410 阅读:55 留言:0更新日期:2020-05-22 23:30
本发明专利技术涉及区块链领域,公开了一种区块链的实现方法,包括客户端数据上链流程,客户端数据上链流程包括如下步骤:客户端把需要储存的文件上传到IPFS系统,获取文件的HASH值FH;客户端计算文件的HASH值FH,并对文件的HASH值FH、当前时间TIME和用户HASH值UH进行签名得到文件签名US;客户端将文件的HASH值FH、文件签名US、当前时间TIME、用户HASH值UH和区块链ID信息发送到中心,请求建立区块节点;当客户端监听添加区块链成功时,客户端将新增的区块节点下载下来;结束。本发明专利技术数据更加安全,中心统一上链,不会出现分叉的情况,且可以控制区块链增长速度,有利于提高并发上链的速度。

Implementation of blockchain

【技术实现步骤摘要】
区块链的实现方法
本专利技术涉及区块链领域,特别涉及一种区块链的实现方法。
技术介绍
区块链具备以下特点:分布式储存,系统健壮性高;记录无法篡改,安全性高;记录公开,可追溯根源。基于这些特点,区块链最先被应用于虚拟货币的交易的记账,也导致了矿机市场蓬勃发展。然而区块链不等于虚拟货币,它可以应用于很多方面。目前追求极致的“去中心化”的区块链技术存在以下的一些问题会限制对其的应用。区块链的规则导致其储存的数据必须是明文储存的;因为只有明文储存,其它人才可以证明区块链的储存的数据的内容;如果是加密储存,那么就无法证明其内容是什么;区块链公布在公网上会导致某些敏感的数据泄露;多人同时发布信息时会存在竞争,导致一些信息公布失败;区块链数据更新实时性差。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种数据更加安全,中心统一上链,不会出现分叉的情况,且可以控制区块链增长速度,有利于提高并发上链的速度的区块链的实现方法。本专利技术解决其技术问题所采用的技术方案是:构造一种区块链的实现方法,包括客户端数据上链流程,所述客户端数据上链流程包括如下步骤:A1)客户端把需要储存的文件上传到IPFS系统,获取所述文件的HASH值FH;A2)所述客户端计算所述文件的HASH值FH,并对所述文件的HASH值FH、当前时间TIME和用户HASH值UH进行签名得到文件签名US;A3)所述客户端将所述文件的HASH值FH、所述文件签名US、所述当前时间TIME、所述用户HASH值UH和区块链ID信息发送到中心,请求建立区块节点;A4)所述客户端监听添加区块链是否成功,如是,执行步骤A5);否则,执行步骤A6);A5)所述客户端将新增的区块节点下载下来,执行步骤A7);A6)所述客户端进行异常处理,返回步骤A3);A7)结束。在本专利技术所述的区块链的实现方法中,还包括中心将数据上链流程,所述中心将数据上链流程包括如下步骤:B1)所述中心接收到添加区块节点的请求;B2)所述中心从所述IPFS系统同步需要上区块链的文件到本地;B3)所述中心查找用户信息,使用用户信息校验所述文件签名US;B4)判断所述文件签名US是否合法,如是,执行步骤B6);否则,执行步骤B5);B5)返回出错信息给用户,告知用户进行异常处理,执行步骤B10);B6)所述中心将所述文件签名US和上一块区块HASH值PH进行合并,使用自己的私钥计算签名得到私钥签名BS,执行步骤B7);B7)所述中心将区块节点文件写到所述IPFS系统,得到区块节点的HASH值;B8)所述中心把添加成功的所述区块节点的HASH值返回给用户;B9)所述中心广播区块链的变更消息,订阅者根据收到的消息从所述IPFS系统中更新区块链;B10)结束。在本专利技术所述的区块链的实现方法中,还包括秘钥变更流程,所述秘钥变更流程包括如下步骤:C1)定时产生一对新的秘钥对;C2)把新旧公钥写到所述IPFS系统中,得到相应的HASH值;C3)使用旧的私钥对所述IPFS系统中的文件进行签名;C4)发送上链请求到所述中心,所述中心将签名后的文件上链到公钥链;C5)记录下新的私钥,后续的签名采用所述新的私钥来进行。在本专利技术所述的区块链的实现方法中,还包括添加用户流程,所述添加用户流程包括如下步骤:D1)添加用户前首先要获取被添加用户的信息,所述被添加用户的信息包括被添加人的公钥;D2)将所述被添加用户的信息保存到所述IPFS系统,获得新文件的HASH值;所述被添加用户的信息包括用户的HASH;D3)使用被添加用户的私钥对所述新文件进行签名;D4)请求把数据上链到用户链;D5)数据上所述用户链成功后,通知所述被添加用户,所述被添加用户上链自己的数据。在本专利技术所述的区块链的实现方法中,还包括删除用户流程,所述删除用户流程包括如下步骤:E1)删除用户前获取被删除用户的信息;E2)将所述被删除用户的信息保存到所述IPFS系统,获得新文件的HASH值;所述被删除用户的信息包括用户的HASH;E3)使用自己的私钥对所述新文件进行签名;E4)请求把数据上链到失效链;E5)所述中心判断是否有权删除,如是,执行步骤E6);否则,执行步骤E7);E6)所述数据上所述失效链成功后,通知所述被删除用户,所述被删除用户无法再请求数据上链;E7)结束。在本专利技术所述的区块链的实现方法中,用户自己或者用户的创建人或者创建人的上级创建人能删除用户。实施本专利技术的区块链的实现方法,具有以下有益效果:由于设有客户端把需要储存的文件上传到IPFS系统,获取文件的HASH值FH;客户端计算文件的HASH值FH,并对所述文件的HASH值FH、当前时间TIME和用户HASH值UH进行签名得到文件签名US;客户端将文件的HASH值FH、文件签名US、当前时间TIME、用户HASH值UH和区块链ID信息发送到中心,请求建立区块节点;当添加区块链成功时,客户端将新增的区块节点下载下来;分布式储存,数据更加安全;中心统一上链,不会出现分叉的情况,且可以控制区块链增长速度;需要上链的数据单独储存到IPFS的一个文件中,区块节点文件仅仅保存这个IPFS文件的HASH值和签名,有利于提高并发上链的速度,本专利技术数据更加安全,中心统一上链,不会出现分叉的情况,且可以控制区块链增长速度,有利于提高并发上链的速度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术区块链的实现方法中一个实施例中客户端数据上链流程的流程图;图2为所述实施例中中心将数据上链流程的流程图;图3为所述实施例中秘钥变更流程的流程图;图4为所述实施例中添加用户流程的流程图;图5为所述实施例中删除用户流程的流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在本专利技术区块链的实现方法实施例中,该区块链的实现方法包括客户端数据上链流程,该客户端数据上链流程的流程图如图1所示。图1中,该客户端数据上链流程包括如下步骤:步骤S11客户端把需要储存的文件上传到IPFS系统,获取文件的HASH值FH:本步骤中,客户端首先把需要储存的文件上传到IPFS系统,获取该文件的H本文档来自技高网...

【技术保护点】
1.一种区块链的实现方法,其特征在于,包括客户端数据上链流程,所述客户端数据上链流程包括如下步骤:/nA1)客户端把需要储存的文件上传到IPFS系统,获取所述文件的HASH值FH;/nA2)所述客户端计算所述文件的HASH值FH,并对所述文件的HASH值FH、当前时间TIME和用户HASH值UH进行签名得到文件签名US;/nA3)所述客户端将所述文件的HASH值FH、所述文件签名US、所述当前时间TIME、所述用户HASH值UH和区块链ID信息发送到中心,请求建立区块节点;/nA4)所述客户端监听添加区块链是否成功,如是,执行步骤A5);否则,执行步骤A6);/nA5)所述客户端将新增的区块节点下载下来,执行步骤A7);/nA6)所述客户端进行异常处理,返回步骤A3);/nA7)结束。/n

【技术特征摘要】
1.一种区块链的实现方法,其特征在于,包括客户端数据上链流程,所述客户端数据上链流程包括如下步骤:
A1)客户端把需要储存的文件上传到IPFS系统,获取所述文件的HASH值FH;
A2)所述客户端计算所述文件的HASH值FH,并对所述文件的HASH值FH、当前时间TIME和用户HASH值UH进行签名得到文件签名US;
A3)所述客户端将所述文件的HASH值FH、所述文件签名US、所述当前时间TIME、所述用户HASH值UH和区块链ID信息发送到中心,请求建立区块节点;
A4)所述客户端监听添加区块链是否成功,如是,执行步骤A5);否则,执行步骤A6);
A5)所述客户端将新增的区块节点下载下来,执行步骤A7);
A6)所述客户端进行异常处理,返回步骤A3);
A7)结束。


2.根据权利要求1所述的区块链的实现方法,其特征在于,还包括中心将数据上链流程,所述中心将数据上链流程包括如下步骤:
B1)所述中心接收到添加区块节点的请求;
B2)所述中心从所述IPFS系统同步需要上区块链的文件到本地;
B3)所述中心查找用户信息,使用用户信息校验所述文件签名US;
B4)判断所述文件签名US是否合法,如是,执行步骤B6);否则,执行步骤B5);
B5)返回出错信息给用户,告知用户进行异常处理,执行步骤B10);
B6)所述中心将所述文件签名US和上一块区块HASH值PH进行合并,使用自己的私钥计算签名得到私钥签名BS,执行步骤B7);
B7)所述中心将区块节点文件写到所述IPFS系统,得到区块节点的HASH值;
B8)所述中心把添加成功的所述区块节点的HASH值返回给用户;
B9)所述中心广播区块链的变更消息,订阅者根据收到的消息从所述IPFS系统中更新区块链;
B10)结束。


3.根据权...

【专利技术属性】
技术研发人员:黄柏邱少师姚佑贤
申请(专利权)人:广州创想云科技有限公司
类型:发明
国别省市:广东;44

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

1