System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及区块链技术,具体涉及一种区块链系统以及相应数据存储系统,本专利技术利用节点的真随机数发生装置产生真随机数,通过节点之间对真随机数的共识算法选择节点生成区块链新区块。
技术介绍
1、区块链技术近十几年发展迅速,并且具有广泛的应用。狭义区块链是按照时间顺序,将数据区块以顺序相连的方式组合成的链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义区块链技术是利用块链式数据结构验证与存储数据,利用分布式节点共识算法生成和更新数据,利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约,编程和操作数据的全新的分布式基础架构与计算范式。
2、由于没有任何一个节点可以单独记录账本数据,从而避免了单一记账人被控制或者被贿赂而记假账的可能性。也由记账节点足够多,理论上讲除非所有的节点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。因此,区块链技术对数据的安全性具有重要意义。
3、区块链在金融、物流、公共服务、数字版权等领域具有巨大应用前景。以金融为例,其在国际汇兑、信用证、股权登记和证券交易所等金融领域有着潜在的巨大应用价值。将区块链技术应用在金融行业中,能够省去第三方中介环节,实现点对点的直接对接,从而在大大降低成本的同时,快速完成交易支付。
4、现有区块链技术一般采用“工作量证明”作为新区块生成的基础。“工作量证明”(pow)是最先使用也是最广泛使用的区块链生成方法,其基本过程为每个网络节点对上一个区块的数据添加一个一次性的伪随机数(nonce),
5、由于“工作量证明”给定的目标通常是一个出现概率极小的结果,因此需要消耗大量计算资源才能得到。例如btc的“工作量证明”需要计算出一个小于前80位都是0的256位数的哈希值(截止到2022年),这就需要节点不断输入伪随机的nonce试错,平均要试错2的80次方次,才能得到符合目标的哈希值。因此“工作量证明”也被称为“挖矿”。
6、虽然“工作量证明”能限制区块链的生成速度,防止新区块过快的“女巫攻击”,但是如此多的计算次数也导致大量的电力被浪费在计算试错上。
7、因此区块链需要一个真正公平,同时节约能耗的全新生成机制,用于进行数据的存储和保护。
技术实现思路
1、目的
2、为了保持区块链生成的公平性同时节约大量能耗,本专利技术公开了一种区块链系统以及相应数据存储系统。
3、具体而言,本专利技术提供了一种区块链系统,所述区块链系统包括多个网络节点m,每个网络节点m包括计时装置、真随机数发生装置、数据存储装置、数据通信装置以及运算装置,各个网络节点之间通过各自的数据通信装置彼此通信连接,形成所述区块链系统,
4、所述计时装置用于基于预设的相邻区块之间的间隔时间t进行区块生成倒计时;
5、每个所述真随机数发生装置响应于倒计时开始指令,各自生成一组预定大小的真随机数用作随机性证明,或者从各自生成的真随机数中选取一组第二预定大小的随机数用作随机性证明:
6、每个所述运算装置用于基于相应网络节点的真随机数生成校验值连同该网络节点的数字签名同步到其他网络节点;
7、所述数据存储装置用于存储自身生成的数据和校验信息以及来自其他网络节点的数据和校验信息;
8、每个网络节点的运算装置还用于基于同步获得的全部网络节点的校验值按照第一预定运算规则计算整体校验值,该第一预定运算规则的运算结果与各个校验值的运算次序无关,并且将自身校验值与整体校验值按照第二预定运算关系进行运算,确定运算结果,其中,所有网络节点的运算结果中,满足预定规则的网络节点用作记账节点,所述记账节点在所述倒计时结束基于自身接收和存储的数据打包生成新区块。
9、在一种优选实现方式中,每个网络节点的运算装置还用于将同步获得的全部网络节点的校验值相加,得到校验值之和sh(n)=∑mh(m,n),并且每个网络节点对所获得的校验值之和sh(n)再次进行校验值计算,得到整体校验值hz(n),其中,m为网络节点编号,n为生成该校验值的区块编号。
10、在一种优选实现方式中,所述的区块链系统还包括加密装置,所述加密装置用于基于真随机数生成相应网络节点的对称密钥,并且基于自身的对称密钥对自身发送数据进行加密,基于来自其他网络节点的对称密钥对其他网络节点的数据进行解密。
11、在一种优选实现方式中,所述记账节点用于将新区块的数据发送到其它网络节点,由其它网络节点确认,超过预定数目的节点验证通过后形成新区块共识。
12、在一种优选实现方式中,所述计时装置用于将新区块生成的时间坐标t(n+1)做为本轮新区块完成的时间点,并且从该时间点开始进行下一轮区块生成的倒计时。
13、在一种优选实现方式中,所述真随机数发生装置或者所述运算装置用于生成的真随机数中选取一个或多个字节的随机数r作为挑选编号,挑选出随机数r(m,n),用做随机性证明。
14、在一种优选实现方式中,每个网络节点m的数据通信装置用于将该网络节点m的校验值和数字签名以网络广播的形式发送到其它网络节点,其它网络节点的加密装置通过相应节点的公钥k(m)解密其校验值和数字签名,将校验值h(m,n)放入数据列表。
15、在一种优选实现方式中,每个网络节点的所述运算装置用于计算自身校验值与整体校验值hz(n)之差,将所有网络节点中与整体校验值差值中排在预定位置的网络节点作为记账节点,优选地,所述排在预定位置包括:差值排在第一位或者最后一位。
16、在一种优选实现方式中,所述的区块链系统的每个网络节点的通信装置用于将其校验值h(m,n)先广播到其它网络节点,该网络节点的运算装置用于将当前区块中该网络节点的校验值h(m,n)与上一个区块的整体校验值hz(n-1)、以及该网络节点的数字签名相加,进行校验运算,获得新的校验值h’(m,n);所述通信装置还用于将所述新的校验值h’(m,n)广播到各网络节点,每个网络节点将各自收到的每个其它网络节点的h’(m,n)与上一个区块的整体校验值hz(n-1)分别相减,确定各个网络节点中|h(n-1)-h’(m,n)|的值排在预定位置的网络节点,获得新区块的生成权,作为记账节点。
17、在一种优选实现方式中,所述的区块链系统的每个网络节点向其他网络节点同步其自身的数据,并每隔第二预定时间向其它节点确认数据同步状态,如果数据同步完成,则进行记账节点选择,如果数据同步未完成,则继续等待,优选地,所述校验采用哈希校验,所述校验值为哈希值,所述预定运算规则包括相减、相加或者相乘。
18、一种包括所述区块链系统的数据存储系统,每个网络节点包括数据采集单元,所述数据采集单元生成或采集待记录数据,对所述待记录数据进行暂存,并且将所本文档来自技高网...
【技术保护点】
1.一种区块链系统,其特征在于,所述区块链系统包括多个网络节点m,每个网络节点m包括计时装置、真随机数发生装置、数据存储装置、数据通信装置以及运算装置,各个网络节点之间通过各自的数据通信装置彼此通信连接,形成所述区块链系统,
2.根据权利要求1所述的区块链系统,其特征在于,每个网络节点的运算装置还用于将同步获得的全部网络节点的校验值相加,得到校验值之和SH(n)=∑mH(m,n),并且每个网络节点对所获得的校验值之和SH(n)再次进行校验值计算,得到整体校验值Hz(n),其中,m为网络节点编号,n为生成该校验值的区块编号。
3.根据权利要求1或2所述的区块链系统,其特征在于,还包括加密装置,所述加密装置用于基于真随机数生成相应网络节点的对称密钥,并且基于自身的对称密钥对自身发送数据进行加密,基于来自其他网络节点的对称密钥对其他网络节点的数据进行解密。
4.根据权利要求1或2所述的区块链生成方法,其特征在于,所述计时装置用于将新区块生成的时间坐标t(n+1)做为本轮新区块完成的时间点,并且从该时间点开始进行下一轮区块生成的倒计时。
5
6.根据权利要求1或2所述的的区块链系统,其特征在于,每个网络节点m的数据通信装置用于将该网络节点m的校验值和数字签名以网络广播的形式发送到其它网络节点,其它网络节点的加密装置通过相应节点的公钥K(m)解密其校验值和数字签名,将校验值H(m,n)放入数据列表。
7.根据权利要求1或2所述的的区块链系统,其特征在于,每个网络节点的所述运算装置用于计算自身校验值与整体校验值HZ(n)之差,将所有网络节点中与整体校验值差值中排在预定位置的网络节点作为记账节点,优选地,所述排在预定位置包括:差值排在第一位或者最后一位。
8.根据权利要求1或2所述的的区块链系统,其特征在于,每个网络节点的通信装置用于将其校验值H(m,n)先广播到其它网络节点,该网络节点的运算装置用于将当前区块中该网络节点的校验值H(m,n)与上一个区块的整体校验值HZ(n-1)、以及该网络节点的数字签名相加,进行校验运算,获得新的校验值H’(m,n);所述通信装置还用于将所述新的校验值H’(m,n)广播到各网络节点,每个网络节点将各自收到的每个其它网络节点的H’(m,n)与上一个区块的整体校验值Hz(n-1)分别相减,确定各个网络节点中|H(n-1)-H’(m,n)|的值排在预定位置的网络节点,获得新区块的生成权,作为记账节点,所述记账节点用于将新区块的数据发送到其它网络节点,由其它网络节点确认,超过预定数目的节点验证通过后形成新区块共识。
9.根据权利要求1所述的的区块链系统,其特征在于,每个网络节点向其他网络节点同步其自身的数据,并每隔第二预定时间向其它节点确认数据同步状态,如果数据同步完成,则进行记账节点选择,如果数据同步未完成,则继续等待,优选地,所述校验采用哈希校验,所述校验值为哈希值,所述预定运算规则包括相减、相加或者相乘。
10.一种包括权利要求1-9之一所述区块链系统的数据存储系统,其特征在于,每个网络节点包括数据采集单元,所述数据采集单元生成或采集待记录数据,对所述待记录数据进行暂存,并且将所述待记录数据广播至其他网络节点,每个网络节点基于其自身的待记录数据以及通过广播接收到的数据生成数据列表,所述区块链系统基于所述数据列表中的数据进行区块生成。
...【技术特征摘要】
1.一种区块链系统,其特征在于,所述区块链系统包括多个网络节点m,每个网络节点m包括计时装置、真随机数发生装置、数据存储装置、数据通信装置以及运算装置,各个网络节点之间通过各自的数据通信装置彼此通信连接,形成所述区块链系统,
2.根据权利要求1所述的区块链系统,其特征在于,每个网络节点的运算装置还用于将同步获得的全部网络节点的校验值相加,得到校验值之和sh(n)=∑mh(m,n),并且每个网络节点对所获得的校验值之和sh(n)再次进行校验值计算,得到整体校验值hz(n),其中,m为网络节点编号,n为生成该校验值的区块编号。
3.根据权利要求1或2所述的区块链系统,其特征在于,还包括加密装置,所述加密装置用于基于真随机数生成相应网络节点的对称密钥,并且基于自身的对称密钥对自身发送数据进行加密,基于来自其他网络节点的对称密钥对其他网络节点的数据进行解密。
4.根据权利要求1或2所述的区块链生成方法,其特征在于,所述计时装置用于将新区块生成的时间坐标t(n+1)做为本轮新区块完成的时间点,并且从该时间点开始进行下一轮区块生成的倒计时。
5.根据权利要求1或2所述的区块链系统,其特征在于,所述真随机数发生装置或者所述运算装置用于生成的真随机数中选取一个或多个字节的随机数r作为挑选编号,挑选出随机数r(m,n),用做随机性证明。
6.根据权利要求1或2所述的的区块链系统,其特征在于,每个网络节点m的数据通信装置用于将该网络节点m的校验值和数字签名以网络广播的形式发送到其它网络节点,其它网络节点的加密装置通过相应节点的公钥k(m)解密其校验值和数字签名,将校验值h(m,n)放入数据列表。
7.根据权利要求1或2所述的的区块链系统,其特征在于,每个网络节点的所述运算装...
【专利技术属性】
技术研发人员:张文卓,
申请(专利权)人:杭州舜时科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。