当前位置: 首页 > 专利查询>杨税令专利>正文

一种用于区块链的移动端打块方法及系统技术方案

技术编号:24996483 阅读:49 留言:0更新日期:2020-07-24 17:59
本发明专利技术公开了一种用于区块链的移动端打块方法及系统,包括节点扫描器、数据共识器、区块同步器、交易同步器、账户同步器、区块锻造器、区块广播器,启动节点,通过探测并获取当前区块链的扫描协议和扫描结果;由移动端设备分段读取并校验本地区块确定合法且落后高度区块;根据拜占庭一致原则计算特征结果以及账户信息并保存;移动端设备开始锻造区块,根据最新的区块高度和区块链协议生成新区块的区块头,循环处理交易直至区块时间结束,为区块标注概要信息并打上数字签名,本发明专利技术的优点是可以让轻便型移动设备直接参与区块链,极大提高了移动端打块的可信力;实现了移动端打造新区块的作用,解决了移动端无法直接参与区块链的问题。

【技术实现步骤摘要】
一种用于区块链的移动端打块方法及系统
本专利技术涉及区块链
,特别是一种用于区块链的移动端打块方法及系统。
技术介绍
区块链是未来社会的基础设施,这个设施必将为各行各业的用户服务,而这些用户绝大多数将适用移动轻便型设备参与,比如智能手机、智能手表、智能眼镜、智能手环等,而这些设备由于轻便,所以往往就算能力和存储能力非常有限,这就导致区块链无法运行在这一类的设备上,这将导致这些设备无法真正的参与到区块链中,这在很大程度上阻碍了区块链向终端用户普及的发展。而轻便型移动端设备要真正参与到区块链中,其标识性的核心关键就是移动端是否能自己打造区块,而由于轻便型移动端设备无法存储全部的区块链数据,目前无法在移动端打造区块。而目前世面上绝大多数区块链采用间接参与的方案,也就是运行在重型服务器或小型PC上,然后通过一个中转服务节点为移动设备提供数据中转服务,但由于其引入了区块链外的第三方中转服务,所以其很大程度上破坏区块链的无第三方可信原则,导致区块链丧失了绝对可信的能力。那么如何既能让轻便型移动端设备直接参与区块链又不依赖第三方中转服务,成为一个急需解本文档来自技高网...

【技术保护点】
1.一种用于区块链的移动端打块方法,其特征在于,所述方法包括:/nS1、启动节点,检查是否有配置初始节点、历史扫描信息、可用节点,然后获取当前区块链的扫描协议,取出扫描协议中定义的扫描端口和扫描结果,通过探测端口获取可信节点并保存;/nS2、移动端设备分段读取并校验本地区块确定合法区块,检查本地区块落后网络情况并获取存在落后高度的区块,下载所述落后高度的区块并校验,校验通过则保存区块,校验不通过则丢弃区块,重复S2环节的步骤直至获取最新高度区块;/nS3、检查移动端设备的CPU和内存并估算移动端设备可处理的交易数量,校验未处理交易的合法性并提取交易重复性特征从而获取可信节点,通过向可信节点发送...

【技术特征摘要】
1.一种用于区块链的移动端打块方法,其特征在于,所述方法包括:
S1、启动节点,检查是否有配置初始节点、历史扫描信息、可用节点,然后获取当前区块链的扫描协议,取出扫描协议中定义的扫描端口和扫描结果,通过探测端口获取可信节点并保存;
S2、移动端设备分段读取并校验本地区块确定合法区块,检查本地区块落后网络情况并获取存在落后高度的区块,下载所述落后高度的区块并校验,校验通过则保存区块,校验不通过则丢弃区块,重复S2环节的步骤直至获取最新高度区块;
S3、检查移动端设备的CPU和内存并估算移动端设备可处理的交易数量,校验未处理交易的合法性并提取交易重复性特征从而获取可信节点,通过向可信节点发送重复性特征计算能达成拜占庭一致的特征结果,由此确定合法交易;
S4、获取未处理交易列表和所述未处理交易涉及的账户列表,获取可信节点并向所述可信节点请求账户信息,计算拜占庭一致的账户信息并保存,循环获取所有账户信息后计算能符合拜占庭一致的总特征完成账户同步;
S5、移动端设备开始锻造区块,根据最新的区块高度和区块链协议生成新区块的区块头,循环处理交易直至区块时间结束,为区块标注概要信息并打上数字签名,广播打造完成的区块至节点,检查完成情况是否已能达成拜占庭一致,完成移动端设备的区块锻造。


2.根据权利要求1所述的一种用于区块链的移动端打块方法,其特征在于,所述S1包括如下具体步骤:
S11、检查是否有配置初始节点,如果没有则跳过,如果有则访问该初始节点;
S12、检查是否有历史扫描信息,如果没有则跳过,如果有则获取历史扫描节点信息;
S13、检查是否已有可用节点,如果没有就使用自己的IP作为初始地址,根据自己的IP地址段生成待扫描的IP范围,根据自己的IP地址上一段生成待扫描网段列表,进而根据所述网段进一步生成每一个网段的IP范围,如此重复4次生成所有网段的待扫描IP列表,如果有就使用所述可用节点作为初始地址;
S14、获取当前区块链的扫描协议,取出扫描协议中定义的扫描端口和扫描结果,依次向所述待扫描IP列表的端口发送探测数据,如果没有响应,则这个IP地址无效,如果有响应进而确定响应是否符合区块链协议,如果符合则为有效节点,如果不符合则为无效节点;
S15、依次扫描直到可用节点数超过最小拜占庭数量,取出拥有最大共同高度的节点,向该节点发起查询节点高度的区块信息,比对节点返回的区块信息,如果达成拜占庭一致的节点则为可信节点并进行保存。


3.根据权利要求1所述的一种用于区块链的移动端打块方法,其特征在于,所述S2包括如下具体步骤:
S21、读取本地区块并检查本地区块是否合法,分段提取本地区快特征,从可信节点列表中获取节点,向所述节点发起特征请求,计算出所述节点能达成共识的特征,比对本地特征与节点共识特征,如果不一致,回归本地该段不合法区块,如果一致,本段区块校验通过;
S22、重复循环分段提取区块特征进行校验,直到本地校验结束;
S23检查本地区块落后网络的情况,如果落后则计算落后的高度,按高度拆分为若干段连续区块,判断可用节点数是否少于分段数,如果不少于分段数时根据分段选择和分段数量一致的区块节点数,少于分段数时按最大整数倍算出需要的节点数;
S24、依次或同时从节点请求该段的区块,将下载后的区块依次进行校验,如果校验通过则存入本地,如果校验不通过则丢弃该区块;
S25、从其他节点重新下载区块,再次检查本地网络落后情况,如果落后则重复S23-S24的步骤,如果已经是最新,则结束循环,开启本地区块监听,如果收到新区块开始校验区块,当校验通过后存入本地,校验不通过则丢弃,继续监听并等待接收新区块。


4.根据权利要求1所述的一种用于区块链的移动端打块方法,其特征在于,所述S3包括如下具体步骤:
S31、检查移动端设备本地CPU和内存,估算所述移动端设备可处理的交易数量,向可信节点下载未处理交易列表;
S32、本地校验未处理交易的合法性,通过提取交易重复性特征,由此获取可信节点,向所述可信节点请求对应交易的重复性特征,获取所述可信节点的返回结果,由此计算能达成拜占庭一致的特征结果,保留本地符合拜占庭一致特征的未处理交易,将不符合拜占庭一致特征的未处理交易丢弃;
S33开启本地交易监听,等待网络产生新的未处理交易,收到新交易时,重复S32的合法性校验过程,未收到新交易时就继续等待。


5.根据权利要求1所述的一种用于区块链的移动端打块方法,其特征在于,所述S4包括如下具体步骤:
S41、所述移动端设备获取未处理交易列表,提取未处理交易涉及的账户列表,由此获取可信节点;
S42、依次向所述可信节点请求账户信息并获得账户信息,根据拜占庭一致原则计算出能达成拜占庭一致的账户信息并保存该账户信息到本地;
S43、依次循环计算拜占庭一致的账户信息直到所有账户获取完毕;
S44、从所有账户信息中提取总特征,向所述可信节点请求账户总特征,根据拜占庭一致的原则获取能达成一致的总特征;
S45、比对总特征是否与本地一致,如果一致则完成账户同步,如果不一致则清楚本地账户信息,重新开始账户同步。


6.根据权利要求1所述的一种用于区块链的移动端打块方法,其特征在于,所述S5包括如下具体步骤:
S51、所述移动端设备开始锻造区块之前,等待本地区块完成同步,等待未处理交易完成同步,等待账户完成同步,等待轮到打块时间;
S52、检查最新的区块高度,提取该高度的区块信息,根据区块链协议在该区块后追加新区块,进而生成该新区块的区块头;
S53、循环依次提取每一笔未处理交易,检查该交易类型,根据该交易类型检查交易数据自身合法性和交易数据逻辑合法性,所述交易数据逻辑合法性包括但不限于账户余额充足、支付密码合法,根据该交易类型处理该笔交易,进而获取该笔交易的处理结果,将该笔交易的处理结果更新到该账户中并为该笔交易标注处理该交易的区块头信息;
S54、完成每一个交易的处理直至节点自身的区块时间结束,将所有已处理的交易放入区块头中,为区块标注概要信息,所述概要信息包括但不限于处理的交易数、收取的手续费,进而为整个区块打上所述节点的数字签名;
S55、获取可信节点列表并循环一次提取所述可信节点,将打造完成的区块广播至所述可信节点,记录广播完成情况,检查完成情况是否已能达成拜占庭一致,如果不能,则继续提取下一个可信节点进行广播,如果能,则结束循环,完成移动端区块锻造。


7.一种用于区块链的移动端打块系统,其特征在于,所述系统包括:
节点扫描器:用于解决节点扫描的问题,帮助移动设备获取到当前网络中的节点分布情况,通过获取...

【专利技术属性】
技术研发人员:杨税令
申请(专利权)人:杨税令
类型:发明
国别省市:福建;35

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

1