1、基于区块链架构的信息存证和溯源
溯源在软件系统中本质就是相关数据的记录和关联查询。
(图1)
如图1,中间蓝色流程是一个项目按时间轴的信息记录和追溯,左边灰色部分是针对蓝色每一个时间点的信息记录的变更日志记录和追溯,右边橙色部分是区块链网络节点对蓝色每一个时间点的信息Hash和一致性验证追溯。
传统软件架构在溯源上的核心问题不是不能完成数据记录和追溯,而是在中心网络上查询到的溯源结果是否是可信的。
比如说我溯源项目A,得到3条结果记录:
记录1001:项目A, 在2016年10月由张三创建,规模为100万元
记录5002:项目A, 在2018年11月被李四修改,规模为150万元
记录9208:项目A, 在2019年 3月被王二修改, 规模为80万元
对于传统中心服务器系统,上面的追溯结果存在2个取信问题:
1:数据是否为后面追加,比如说记录1001,结果显示的是2016年10份创建,但是系统无法证明这条记录就是2016年录入的
2:数据是否被更改过,从2016年到2019年,跨度时间很长,当时填写数据的场景和原始数据是否就是现在查询追溯显示的信息,这一点系统也无法证明和取信,即使使用操作日志来记录,在数据库后台或系统后台更改记录也是非常容易并无法监管
对于基于区块链架构的存证和追溯结构的取信是分以下几个方面来解决
1、 链状数据结构提高在单一结点上篡改数据的难度
区块链架构的核心数据结构一般如下图
(图2)
从上面的数据结构不难发现,基本上全部的数据最终都通过Hash值和区块串连在一起,业务数据的Hash在交易记录存储并作为区块的Hash值的数据来源(区块的Hash值来源主要包括:前区块的Hash,交易信息,交易输入信息,交易输出信息,签名信息,业务数据的Hash值),如果需要篡改一条数据,那么至少需要篡改全部的对应Hash值才能匹配,越是区块高度靠前的数据篡改的难度越大。因为只要有一个Hash值和原数据没对应上,这条数据就会被认为是不可信的。
2、 多节点验证提高在整个链上篡改数据的难度
区块链的多节点平等有效的特点确保如果只是某一个节点被攻击篡改并不会影响到数据在整个链上的真实有效性,每一个节点都维护自己的有效数据列表,如果A节点被攻击并数据被篡改会导致2个结果出现:第一个结果是A节点提交的数据基本上再也不能被验证通过,对于联盟链和私链来说很容易监测到此现象,进而修复A节点,对于公链来说A节点其实已经是废弃节点了;第二个结果是其他节点提交的数据A节点永远是验证不通过,同样对于联盟链和私链来说很容易监测到此现象,进而修复A节点;
2 基于区块链架构的资金溯源(以公益募资项目为例)
数字货币在软件系统里本质上就是一条数据记录,对于数据记录来讲理论上可以附加无穷多的附加数据来记录这一货币从发行到销毁中经历的任何环节和经手人。对于公益募资项目来讲,如果我们能通过系统把法币转换为对应的数字货币,那么整个资金的溯源基本上就不存在任何的漏洞和盲点。
公益募资项目流程如下图
(图3)
基于区块链的筹款溯源流程如下图
(图4)
说明:
1、 捐助币和人民币1:1兑换,无升值,无炒作,只是用来溯源资金流转。
2、 整个系统中严格执行谁捐助,谁发币。团体无发币权限,志愿者联合会无发币权限但有审核权限,捐助者每捐助1块钱就可以发行1个捐助币,捐助币可以指定项目指定受助人使用。
从捐助者出发来追溯资金使用情况,可以追溯到自己的每一块钱现在到了哪个环节,在哪个人的钱包里,使用状态是怎么样,为什么会到那个人的钱包,最终受助者是不是已经兑换了这一块钱。
从受助者出发,可以追溯我使用的每一块钱,是谁捐助发行的,谁审核通过的,从哪个项目中过来的,中间有无经过其他流转项目。
整个发币、使用、销毁的流程完全基于区块链架构和UTXO记账模式,彻底保证数据的有效性和安全性。
这里唯一要严格控制的是发币审核、捐助币兑换法币、捐助币销毁流程,经手人、操作原因,相关附件,图片应该建立完整的规则。
2 区块链的并发问题
TPS(即QPS,每秒钟能处理的访问请求数量),区块链的TPS要分2个方面来看:第一个是交易上链的TPS,第二个是打包出块的TPS。
交易上链的TPS:基本上就各个节点对应提交数据的TPS,这个TPS和传统的中心服务器系统没区别,传统中心服务器能到多少,基本上区块链也能到多少,当然由于区块链系统的三重验证(签名验证,UTXO验证,业务逻辑验证)会导致TPS下降,但这个因素并不会太影响单节点的TPS,所以单节点的TPS并不是区块链架构的瓶颈。
打包出块的TPS:这个就是当前限制区块链TPS的主要因素,传统中心服务器系统,你提交数据,数据验证通过后立刻标识有效,而在区块链系统,你提交到A节点,A节点还要等待其他节点的投票反馈才能确定是否有效,这里最主要的因素就是节点的数量和网络环境。
如果应用场景为公链,节点多,网络环境复杂将非常限制区块链的出块速度(目前比特币的TPS能力大约是7笔/秒,这里的7笔/秒还不是指每秒能出7个块,是指一个区块包含大概4000条交易,10分钟出一个块,计算出来的平均值;以太坊的TPS能力是7-15笔/秒)。
如果应用场景为联盟链或私链并能确保网络畅通,实测 50个节点内,采用PBFT共识出块,每个块不超过5M, 基本上可以秒出块。
交易上链TPS,并发数,主要看带宽,基本上和传统中心服务器系统没太大区别。
出块和未出块的数据最大的区别在于出块的数据已经把完整的链状数据结构构建完成,篡改难度相对于未出块的数据大很多,而未出块的数据只需要篡改大多数节点当前的数据就可以,并不需要篡改到整个区块链条上的相关数据。
溯源在软件系统中本质就是相关数据的记录和关联查询。
(图1)
如图1,中间蓝色流程是一个项目按时间轴的信息记录和追溯,左边灰色部分是针对蓝色每一个时间点的信息记录的变更日志记录和追溯,右边橙色部分是区块链网络节点对蓝色每一个时间点的信息Hash和一致性验证追溯。
传统软件架构在溯源上的核心问题不是不能完成数据记录和追溯,而是在中心网络上查询到的溯源结果是否是可信的。
比如说我溯源项目A,得到3条结果记录:
记录1001:项目A, 在2016年10月由张三创建,规模为100万元
记录5002:项目A, 在2018年11月被李四修改,规模为150万元
记录9208:项目A, 在2019年 3月被王二修改, 规模为80万元
对于传统中心服务器系统,上面的追溯结果存在2个取信问题:
1:数据是否为后面追加,比如说记录1001,结果显示的是2016年10份创建,但是系统无法证明这条记录就是2016年录入的
2:数据是否被更改过,从2016年到2019年,跨度时间很长,当时填写数据的场景和原始数据是否就是现在查询追溯显示的信息,这一点系统也无法证明和取信,即使使用操作日志来记录,在数据库后台或系统后台更改记录也是非常容易并无法监管
对于基于区块链架构的存证和追溯结构的取信是分以下几个方面来解决
1、 链状数据结构提高在单一结点上篡改数据的难度
区块链架构的核心数据结构一般如下图
(图2)
从上面的数据结构不难发现,基本上全部的数据最终都通过Hash值和区块串连在一起,业务数据的Hash在交易记录存储并作为区块的Hash值的数据来源(区块的Hash值来源主要包括:前区块的Hash,交易信息,交易输入信息,交易输出信息,签名信息,业务数据的Hash值),如果需要篡改一条数据,那么至少需要篡改全部的对应Hash值才能匹配,越是区块高度靠前的数据篡改的难度越大。因为只要有一个Hash值和原数据没对应上,这条数据就会被认为是不可信的。
2、 多节点验证提高在整个链上篡改数据的难度
区块链的多节点平等有效的特点确保如果只是某一个节点被攻击篡改并不会影响到数据在整个链上的真实有效性,每一个节点都维护自己的有效数据列表,如果A节点被攻击并数据被篡改会导致2个结果出现:第一个结果是A节点提交的数据基本上再也不能被验证通过,对于联盟链和私链来说很容易监测到此现象,进而修复A节点,对于公链来说A节点其实已经是废弃节点了;第二个结果是其他节点提交的数据A节点永远是验证不通过,同样对于联盟链和私链来说很容易监测到此现象,进而修复A节点;
2 基于区块链架构的资金溯源(以公益募资项目为例)
数字货币在软件系统里本质上就是一条数据记录,对于数据记录来讲理论上可以附加无穷多的附加数据来记录这一货币从发行到销毁中经历的任何环节和经手人。对于公益募资项目来讲,如果我们能通过系统把法币转换为对应的数字货币,那么整个资金的溯源基本上就不存在任何的漏洞和盲点。
公益募资项目流程如下图
(图3)
基于区块链的筹款溯源流程如下图
(图4)
说明:
1、 捐助币和人民币1:1兑换,无升值,无炒作,只是用来溯源资金流转。
2、 整个系统中严格执行谁捐助,谁发币。团体无发币权限,志愿者联合会无发币权限但有审核权限,捐助者每捐助1块钱就可以发行1个捐助币,捐助币可以指定项目指定受助人使用。
从捐助者出发来追溯资金使用情况,可以追溯到自己的每一块钱现在到了哪个环节,在哪个人的钱包里,使用状态是怎么样,为什么会到那个人的钱包,最终受助者是不是已经兑换了这一块钱。
从受助者出发,可以追溯我使用的每一块钱,是谁捐助发行的,谁审核通过的,从哪个项目中过来的,中间有无经过其他流转项目。
整个发币、使用、销毁的流程完全基于区块链架构和UTXO记账模式,彻底保证数据的有效性和安全性。
这里唯一要严格控制的是发币审核、捐助币兑换法币、捐助币销毁流程,经手人、操作原因,相关附件,图片应该建立完整的规则。
2 区块链的并发问题
TPS(即QPS,每秒钟能处理的访问请求数量),区块链的TPS要分2个方面来看:第一个是交易上链的TPS,第二个是打包出块的TPS。
交易上链的TPS:基本上就各个节点对应提交数据的TPS,这个TPS和传统的中心服务器系统没区别,传统中心服务器能到多少,基本上区块链也能到多少,当然由于区块链系统的三重验证(签名验证,UTXO验证,业务逻辑验证)会导致TPS下降,但这个因素并不会太影响单节点的TPS,所以单节点的TPS并不是区块链架构的瓶颈。
打包出块的TPS:这个就是当前限制区块链TPS的主要因素,传统中心服务器系统,你提交数据,数据验证通过后立刻标识有效,而在区块链系统,你提交到A节点,A节点还要等待其他节点的投票反馈才能确定是否有效,这里最主要的因素就是节点的数量和网络环境。
如果应用场景为公链,节点多,网络环境复杂将非常限制区块链的出块速度(目前比特币的TPS能力大约是7笔/秒,这里的7笔/秒还不是指每秒能出7个块,是指一个区块包含大概4000条交易,10分钟出一个块,计算出来的平均值;以太坊的TPS能力是7-15笔/秒)。
如果应用场景为联盟链或私链并能确保网络畅通,实测 50个节点内,采用PBFT共识出块,每个块不超过5M, 基本上可以秒出块。
交易上链TPS,并发数,主要看带宽,基本上和传统中心服务器系统没太大区别。
出块和未出块的数据最大的区别在于出块的数据已经把完整的链状数据结构构建完成,篡改难度相对于未出块的数据大很多,而未出块的数据只需要篡改大多数节点当前的数据就可以,并不需要篡改到整个区块链条上的相关数据。
速龙汽车租赁可日租、月租、年租,提供市内免费接送车及接送火车接送飞机的服务。本公司有全新奥迪、宝马X6、宝马7系、宝马525Li、奔驰、丰田4500、丰田霸道、新款别克GL8、本田CRV、大众迈腾、大众帕萨特等,欲来青海的朋友先到空间欣赏《美丽的青海》。西宁城西速龙 公司将坚持“客户**,服务上乘,信誉至上”的经营理念,为您随时随地租车需求提供方便快捷的服
务,为您的事业成功奉献一份真诚!
网址:www.xnslzc.com
地址:青海省西宁市城西区东湖宾馆一楼1001室
开户行:中国建设银行股份有限公司西宁城西支行
西宁速龙汽车租赁服务有限公司
电话:400-0971085 电话0971-5131988
账号:6300 137户名: 3 6370 5021 4425收起全文d
务,为您的事业成功奉献一份真诚!
网址:www.xnslzc.com
地址:青海省西宁市城西区东湖宾馆一楼1001室
开户行:中国建设银行股份有限公司西宁城西支行
西宁速龙汽车租赁服务有限公司
电话:400-0971085 电话0971-5131988
账号:6300 137户名: 3 6370 5021 4425收起全文d
#谢大ISC[超话]##谢大热播# QS发布2020世界大学排名,谢菲尔德大学开启霸榜模式:
这份榜单评估了世界不同国家和地区共1001所大学院校,在综合其中94,672位学者和44,884名教学人员的意见、研究分析1,300万篇论文以及9,300万论文引用的学术影响后最终得出结论:谢菲尔德大学被QS最新世界排名列为全英第10,世界排名第78。
这份榜单评估了世界不同国家和地区共1001所大学院校,在综合其中94,672位学者和44,884名教学人员的意见、研究分析1,300万篇论文以及9,300万论文引用的学术影响后最终得出结论:谢菲尔德大学被QS最新世界排名列为全英第10,世界排名第78。
✋热门推荐