最近一直在研究区块链,算是从以前听说过,【原创内容,转载请注明出处】【版权所有,侵权必究】到现在大概了解一些。先说下自己学习过程中未经授权,禁止复制转载。原创内容,盗版必究。的感受,那就是“干!能不能把话说明白些。【本文受版权保护】著作权归作者所有,禁止商业用途转载。”大部分学习材料都存在结构混乱,或者对一【本文受版权保护】【版权所有】唐霜 www.tangshuang.net个点单薄,无法深入浅出。至于那些还在拿着本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。露天麦喊什么是区块链,错过后悔一辈子的,本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。都是骗子。
【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】未经授权,禁止复制转载。未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。我相信现在很多投资机构都在瞄区块链,今年【本文首发于唐霜的博客】原创内容,盗版必究。,即使AI也没有区块链这么火爆。那么对于【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。一个区块链项目,到底靠不靠谱,是在画饼,【原创内容,转载请注明出处】【作者:唐霜】还是真的可能搞成,所有人都应该擦亮眼睛。
本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。三个最底层的技术【版权所有】唐霜 www.tangshuang.net
本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net谈区块链最好先抛开各种币的价格,价格这种【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。事你懂的,贵和便宜根本不是人能控制的。但著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】是基于区块链技术去做项目,却是实实在在可【关注微信公众号:wwwtangshuangnet】原创内容,盗版必究。以可持续发展。所以,了解区块链技术比炒币【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.net来的实在。
转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.net【转载请注明来源】未经授权,禁止复制转载。“区块链”三个字并不能阐明这项技术的全部【原创不易,请尊重版权】【原创不易,请尊重版权】,如果要非要用可以完整表达的命名,我觉得【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。应该叫“Peer-to-Peer Enc【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。rypted Non-Tampered 原创内容,盗版必究。【作者:唐霜】Database”,即“点对点的加密化不【关注微信公众号:wwwtangshuangnet】【转载请注明来源】可篡改数据库”。
【作者:唐霜】本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。它不一个数据库(比如MySQL,Mong【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】oDB),也不是一类数据库(比如SQL,【原创不易,请尊重版权】【原创不易,请尊重版权】NoSQL),它是一种数据库架构,它在数本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net据库本身的技术上还上升了一层,考虑到数据【版权所有】唐霜 www.tangshuang.net【转载请注明来源】的可靠性如何保证,以及数据库服务如何不下原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。线。因此,你不能把它跟普通的某个有名字数未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】据库拿来类比,甚至,你可以在某一个具体的【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。区块链实现时,使用其他的数据库来帮助存储【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】和检索数据。
【关注微信公众号:wwwtangshuangnet】未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。数据关系加密化【版权所有】唐霜 www.tangshuang.net
转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】【作者:唐霜】【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】在我们普通的数据库中,无论是关系型还是非本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】关系型,我们的不同记录之间可能存在关系,【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。也可能不存在关系,但在区块链中,一条数据【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】一定和另外一条数据存在联系,即使在现实的本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。业务逻辑上没有联系,但是它总是存在于链上【原创不易,请尊重版权】未经授权,禁止复制转载。,无法脱离链而存在,总有一条路径从一个数【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】据出发到达另外一个数据,不信往下读。
【关注微信公众号:wwwtangshuangnet】【转载请注明来源】转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】“区块”表达了区块链里面数据关系的最终呈未经授权,禁止复制转载。未经授权,禁止复制转载。现形式,一条记录,无论它是什么信息,最终原创内容,盗版必究。【作者:唐霜】它(或它的检索信息)都要被放置在一个区块【作者:唐霜】原创内容,盗版必究。中。而区块与区块之间,是一个“链表”的数【本文受版权保护】【版权所有,侵权必究】据关系,会编程的人都知道什么是链表,就是【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。后一个数据中存在指向前一个数据的索引键。【作者:唐霜】原创内容,盗版必究。因此,区块链上的任何两个数据永远可以通过转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。这些索引键最终连在一起,数据无法逃离这个【访问 www.tangshuang.net 获取更多精彩内容】【作者:唐霜】逻辑。
【原创不易,请尊重版权】未经授权,禁止复制转载。【原创不易,请尊重版权】【作者:唐霜】但是“区块链”这三个字无法阐述这样的数据【原创内容,转载请注明出处】本文版权归作者所有,未经授权不得转载。结构和普通数据库结构之间的不同,因为上面【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。描述的的这种链表数据结构,用普通的数据库【版权所有,侵权必究】【作者:唐霜】也可以构建出来,只要你想要的话。
本文作者:唐霜,转载请注明出处。【作者:唐霜】【未经授权禁止转载】真正的价值在于,区块链用密码学的原理,现【版权所有,侵权必究】转载请注明出处:www.tangshuang.net有的加密技术,把这些索引关系进行了层层加【原创内容,转载请注明出处】【原创不易,请尊重版权】密,以至于在保存的数据中,这些索引键并没转载请注明出处:www.tangshuang.net【版权所有,侵权必究】有那么明显,而是需要通过各种计算才能得到【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net。比如区块在保存一堆交易信息时,采用了m【作者:唐霜】著作权归作者所有,禁止商业用途转载。erkle树的方式进行保存,父节点是两个【版权所有,侵权必究】转载请注明出处:www.tangshuang.net子节点的double hash得到的结果【本文首发于唐霜的博客】【原创不易,请尊重版权】,而merkle算法确保了交易信息不能被著作权归作者所有,禁止商业用途转载。【转载请注明来源】篡改。
【原创内容,转载请注明出处】【版权所有,侵权必究】【本文受版权保护】【本文首发于唐霜的博客】我们这里还不需要知道具体的加密都有什么用【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】,我们需要了解的是,区块链里面到处是加密【访问 www.tangshuang.net 获取更多精彩内容】【本文首发于唐霜的博客】,这是一个显著的特点。
【本文首发于唐霜的博客】【本文受版权保护】【作者:唐霜】数据不可篡改【作者:唐霜】
著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。原创内容,盗版必究。区块链上的数据是不可篡改的,大家都这样说著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。。但其实,数据是可以改的,只是说改了以后转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。就你自己认,而且被修改数据所在区块之后的原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。所有区块都会失效。区块链网络有一个同步逻未经授权,禁止复制转载。【原创内容,转载请注明出处】辑,整个区块链网络总是保持所有节点使用最【版权所有,侵权必究】原创内容,盗版必究。长的链,那么你修改完之后,一联网同步,修【作者:唐霜】【原创内容,转载请注明出处】改的东西又会被覆盖。这是不可篡改的一个方【作者:唐霜】原创内容,盗版必究。面。
【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】更有意思的是,区块链通过加密校验,保证了未经授权,禁止复制转载。【本文受版权保护】数据存取需要经过严格的验证,而这些验证几转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】乎又是不可伪造的,所以也很难篡改。加密并【版权所有,侵权必究】【版权所有】唐霜 www.tangshuang.net不代表不可篡改,但不可篡改是通过加密以及【作者:唐霜】【访问 www.tangshuang.net 获取更多精彩内容】经济学原理搭配实现的。这还有点玄学的味道著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】,一个纯技术实现的东西,还要靠理论来维持原创内容,盗版必究。本文作者:唐霜,转载请注明出处。。但事实就是这样。这就是传说中的挖矿。
【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。【作者:唐霜】挖矿过程其实是矿工争取创建一个区块的过程【关注微信公众号:wwwtangshuangnet】【转载请注明来源】,一旦挖到矿,也就代表这个矿工有资格创建【转载请注明来源】【版权所有】唐霜 www.tangshuang.net新区块。怎么算挖到矿呢?通过一系列复杂的【原创内容,转载请注明出处】【本文首发于唐霜的博客】加密算法,从0开始到∞,找到一个满足难度本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。的hash值,得到这个值,就是挖到矿。这转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】个算法过程被称为“共识机制”,也就是通过【作者:唐霜】本文作者:唐霜,转载请注明出处。什么形式来决定谁拥有记账权,共识机制有很著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。多种,区块链采用哪种共识机制最佳,完全是【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】由区块链的实际目的结合经济学道理来选择。
著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。挖完矿没完,拿比特币来说,接下来矿工要把【转载请注明来源】【版权所有】唐霜 www.tangshuang.net被广播到网络中的交易打包到这个区块里,一本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net笔交易是不是合法的呢?发起这笔交易的人是原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net不是伪造了一笔交易?要确保一笔交易的合法【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。性,必须从已经存在的前面的区块里面去找到本文作者:唐霜,转载请注明出处。原创内容,盗版必究。这笔交易的来源的真实性,而如何验证交易真【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net实性呢?在前面的区块里,保存着交易来源的【版权所有,侵权必究】转载请注明出处:www.tangshuang.netmerkle root hash,只要找【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。出这个交易所在的区块,再做一次merkl著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.nete校验,就可以判定交易是否是合法的。得到未经授权,禁止复制转载。【作者:唐霜】merkle root hash是通过区原创内容,盗版必究。原创内容,盗版必究。块内的所有交易不断加密得到的,因此,只要原创内容,盗版必究。【未经授权禁止转载】交易是假的,就得不到这个merkle r【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】oot hash。加密在这里又帮助实现了原创内容,盗版必究。未经授权,禁止复制转载。数据的可靠性。
原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。【转载请注明来源】未经授权,禁止复制转载。除了这些,区块链里面的加密比比皆是,这些本文作者:唐霜,转载请注明出处。【作者:唐霜】加密规则和算法,使得整个区块链遵循一种规【原创不易,请尊重版权】【本文首发于唐霜的博客】律,让篡改数据的成本特别高,以至于参与的【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】人对篡改数据都没有兴趣,甚至忌惮。这又是【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】玄学的地方。
【原创内容,转载请注明出处】本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】【原创不易,请尊重版权】点对点网络让数据永不下线原创内容,盗版必究。
原创内容,盗版必究。【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】【版权所有,侵权必究】转载请注明出处:www.tangshuang.net如果区块链没有p2p网络,仅仅是按照前面【本文首发于唐霜的博客】【版权所有,侵权必究】的描述,有加密体系,有链式特征,然后运行【版权所有,侵权必究】【关注微信公众号:wwwtangshuangnet】在某一台(组)服务器上,按照我们现在中心【关注微信公众号:wwwtangshuangnet】【本文受版权保护】化的模式运行,看上去也挺好玩的。但是发明【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】者想玩的更大些,加密体系让数据不可篡改,转载请注明出处:www.tangshuang.net原创内容,盗版必究。但是我直接抛颗原子弹把你机房炸掉,不是不未经授权,禁止复制转载。【原创内容,转载请注明出处】可篡改,是直接玩儿完了。
【本文受版权保护】原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.net 获取更多精彩内容】为了防止被原子弹炸掉机房,发明者设计了点【本文首发于唐霜的博客】【本文首发于唐霜的博客】对点的网络(客户端和客户端直接通信,不经原创内容,盗版必究。未经授权,禁止复制转载。过某一台特定的服务器)到区块链里面。简单著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。说就是在这个点对点网络里面,所有人的电脑【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。里保管着一模一样的一个数据结构(其实就是转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。一个完整的“区块”“链”),他们相互通过转载请注明出处:www.tangshuang.net【转载请注明来源】网络连接,进行同步,当矿工创建了新的区块【原创内容,转载请注明出处】本文作者:唐霜,转载请注明出处。,其他人就会把这个区块同步到自己保管的数【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】据结构中。因此,无论这个网络上哪一个节点转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。被炸,其他节点都还活着,新加入的小伙伴就【原创内容,转载请注明出处】【本文受版权保护】可以从这些节点里同步数据到自己的电脑。想【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】要让区块链数据消失,那把地球炸了吧。
【版权所有,侵权必究】原创内容,盗版必究。【原创内容,转载请注明出处】【未经授权禁止转载】而这种加入点对点网络的设计,就叫“去中心本文作者:唐霜,转载请注明出处。【未经授权禁止转载】化”,只要网络上还有一个节点活着,区块链【作者:唐霜】【关注微信公众号:wwwtangshuangnet】的数据就不会消失。
转载请注明出处:www.tangshuang.net原创内容,盗版必究。
更让政客们害怕的是,这些保存的数据,节著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。点上的用户可以随便看,无所谓,完全公开。本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】节点用户既然把数据同步过来了,你就可以随【本文受版权保护】本文版权归作者所有,未经授权不得转载。便用,就是你的数据了,想怎么用就怎么用。未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】试想一下,哪天淘宝说我要把自己的数据区块未经授权,禁止复制转载。【作者:唐霜】链化……目不忍视……
核心技术概念本文版权归作者所有,未经授权不得转载。
本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】前面仅仅阐述的是区块链之所以是区块链的基【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net础。本节要讲的是,现在已经有区块链在你面本文作者:唐霜,转载请注明出处。【作者:唐霜】前了,我们需要去剖析区块链里面所使用的具【转载请注明来源】【作者:唐霜】体技术点或架构。
【未经授权禁止转载】【原创内容,转载请注明出处】未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net原创内容,盗版必究。区块原创内容,盗版必究。
【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。未经授权,禁止复制转载。前面已经提到区块了。那么到底什么是区块呢【未经授权禁止转载】【版权所有】唐霜 www.tangshuang.net?区块是区块链的主要数据存储结构,一个区转载请注明出处:www.tangshuang.net【本文受版权保护】块包含区块头和区块体两个部分。而区块头则【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。是区块的重头戏。
【转载请注明来源】转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】【本文受版权保护】
区块链中的一个区块结构示意图(注:漏掉了【版权所有】唐霜 www.tangshuang.net【作者:唐霜】version信息)
【作者:唐霜】【原创不易,请尊重版权】【关注微信公众号:wwwtangshuangnet】【转载请注明来源】对于一个区块而言,它就是一个特殊的数据结著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。构。它的区块头包含了一些固定信息:版本(本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net客户端版本,每次升级客户端软件,这个信息【作者:唐霜】本文版权归作者所有,未经授权不得转载。就会不一样),块高度(其实就是表示这是链本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。中的第几个区块),块哈希(这个区块的ha【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。sh值,是挖矿得到的),上一个块的块哈希【转载请注明来源】本文作者:唐霜,转载请注明出处。(这个字段是重点中的重点,是形成链表结构【本文首发于唐霜的博客】【未经授权禁止转载】的关键),时间戳(区块创建时间),难度和著作权归作者所有,禁止商业用途转载。【转载请注明来源】Nonce(这两个字段和挖矿有关,后文讲【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】挖矿的时候详细讲),merkle roo未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。t(区块体的merkle根hash值,后【原创不易,请尊重版权】【版权所有,侵权必究】文会简单介绍merkle树,详细会在其他转载请注明出处:www.tangshuang.net【作者:唐霜】文章讲)。除了这些字段,如果做一个自己的本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】区块链,还可以添加一些其他信息到区块头中著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】。
未经授权,禁止复制转载。【转载请注明来源】转载请注明出处:www.tangshuang.net【版权所有,侵权必究】【版权所有,侵权必究】区块体是保存具体内容的位置,在比特币的区转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。块链中,区块体保存的是一段时间的交易信息【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。。在其他区块链中,这里可不一定保存的是交本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】易信息,可能是其他信息,总之区块体是保存未经授权,禁止复制转载。【转载请注明来源】该区块链用来做什么业务的具体业务信息。
【作者:唐霜】转载请注明出处:www.tangshuang.net转载请注明出处:www.tangshuang.net在部分区块链实现中,一个区块还可以有区块【作者:唐霜】转载请注明出处:www.tangshuang.net尾,用来保存一些区块创建结束之后的信息,【作者:唐霜】原创内容,盗版必究。这些信息可能是区块头和区块体已经创建完以原创内容,盗版必究。【本文首发于唐霜的博客】后,附加上去的,比如区块的长度、容量等信原创内容,盗版必究。原创内容,盗版必究。息。
未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。【转载请注明来源】【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。这就是一个区块。而一个区块头中的prev原创内容,盗版必究。转载请注明出处:www.tangshuang.netiousHash字段,保存的是上一个区块【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】的hash值,因此,通过这个区块就知道了未经授权,禁止复制转载。【未经授权禁止转载】上一个区块是哪个,上一个区块又能知道上上【原创不易,请尊重版权】未经授权,禁止复制转载。个区块,直到可以追溯回整个链条的第一个区本文版权归作者所有,未经授权不得转载。【转载请注明来源】块。这就是区块链。
【作者:唐霜】【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】
区块是如何构成链的的示意图本文作者:唐霜,转载请注明出处。
【作者:唐霜】【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。【本文受版权保护】就像上图一样,后面一个区块总是指向前一个【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】区块。一旦一个区块生成,并且后面有区块指本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】向它,那它就不能被修改,因为一旦修改,所【原创不易,请尊重版权】【版权所有,侵权必究】有的hash都需要重新计算。但是我们知道【未经授权禁止转载】【版权所有,侵权必究】,hash算法的特点是,想要得到这个ha【作者:唐霜】转载请注明出处:www.tangshuang.netsh必须用原始内容进行一遍hash算法,【作者:唐霜】【版权所有】唐霜 www.tangshuang.net所以,如果给的内容和原始内容不同,是得不【未经授权禁止转载】原创内容,盗版必究。到这个hash的,所以,中间某个区块链被本文作者:唐霜,转载请注明出处。原创内容,盗版必究。修改而得到的hash,不可能被后面的区块本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net指向,区块链就会断掉。断掉的区块链加入到著作权归作者所有,禁止商业用途转载。【作者:唐霜】网络中,要么不被认可,别的节点不会把你当著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】作合法节点,要么你要再同步一遍,从网络中【转载请注明来源】【版权所有】唐霜 www.tangshuang.net重新复制最长的链到你的本机覆盖原来的链。
【未经授权禁止转载】原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net但是你可能会有两个疑问:1.这个bloc【未经授权禁止转载】【版权所有,侵权必究】kHash又不是内容的hash,怎么确保本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】区块体内的信息不被修改呢?要是我不改bl【本文受版权保护】【原创内容,转载请注明出处】ockHash,只改内容,那不是可以瞒天原创内容,盗版必究。本文作者:唐霜,转载请注明出处。过海?2.如果有两个区块同时指向了一个区【转载请注明来源】转载请注明出处:www.tangshuang.net块,而这两个区块的区块体不一样,这该怎么本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】办?
著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】【访问 www.tangshuang.net 获取更多精彩内容】【原创内容,转载请注明出处】【本文首发于唐霜的博客】第一个问题,我们需要通过后面的挖矿和me未经授权,禁止复制转载。【作者:唐霜】rkle tree两部分结合,知道这个原【转载请注明来源】原创内容,盗版必究。理。第二个问题,实际上,这种情况非常常见未经授权,禁止复制转载。【本文首发于唐霜的博客】,挖矿成功的概率其实是100%,关键在于【原创不易,请尊重版权】【转载请注明来源】哪一位矿工先挖到矿,一般当矿工挖到矿之后转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。,会向全网广播,其他没有挖到矿的矿工就会著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net停止。但是由于网络延时等情况,可能在短时未经授权,禁止复制转载。【原创不易,请尊重版权】间内多个矿工一起挖到矿,他们都创建了新的【版权所有,侵权必究】转载请注明出处:www.tangshuang.net区块,并且广播到了网络中。这种情况叫“分【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。叉”。
未经授权,禁止复制转载。原创内容,盗版必究。【本文受版权保护】本文版权归作者所有,未经授权不得转载。当分叉发生的时候,有两种办法。但都是顺其【关注微信公众号:wwwtangshuangnet】转载请注明出处:www.tangshuang.net自然,不人工干预。后面挖新块的矿工,会自原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。己决定把哪一个分支最后的块作为自己的前一未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】个块。如果在比较短的块数内,一条链明显长本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。于另外一条链,那么长的链会被保留,短的会【关注微信公众号:wwwtangshuangnet】【作者:唐霜】被抛弃,挖短链的矿工算是白干了一场。所有原创内容,盗版必究。转载请注明出处:www.tangshuang.net的网络节点在同步的时候,都会选择当前最长本文作者:唐霜,转载请注明出处。【本文受版权保护】的链进行同步,后面挖矿的矿工创建新块的时【本文首发于唐霜的博客】【作者:唐霜】候也是选择最长的链。
【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。原创内容,盗版必究。但是还有一种情况,就是短链的矿工不依不饶本文作者:唐霜,转载请注明出处。【关注微信公众号:wwwtangshuangnet】,或者短时间内两条链无法分出胜负,甚至最【本文受版权保护】本文版权归作者所有,未经授权不得转载。后每条链都有了很多块跟在后面。一帮人的转【原创内容,转载请注明出处】未经授权,禁止复制转载。账总不能有两个账单吧,如果两个账单最后发未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。现还不一样就麻烦了。所以遇到这种情况,矿未经授权,禁止复制转载。【转载请注明来源】工们会决定分家。也就是一个区块链变成了两未经授权,禁止复制转载。【作者:唐霜】个链,其中一条链把前面的所有链复制出来,本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net成为独立的链,从此这两条链再无瓜葛,虽然未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】前面的区块都是一摸一样的,但是后面井水不【版权所有,侵权必究】原创内容,盗版必究。犯河水。这种情况叫“硬分叉”,BitCo【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。in Cash就是这样诞生的。新产生的链【版权所有,侵权必究】【转载请注明来源】继承了前面的区块,但是后面的区块完全是挖转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。这条链的矿工决定的。硬分叉的好处是,对于【转载请注明来源】原创内容,盗版必究。原来的用户而言,突然之间,自己的一份资产本文版权归作者所有,未经授权不得转载。【本文受版权保护】变成了两份😂
【未经授权禁止转载】原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net【转载请注明来源】至于区块体,真的是根据区块链应用的业务需【版权所有,侵权必究】【本文受版权保护】求来设计。比如比特币,就被设计为交易模型【访问 www.tangshuang.net 获取更多精彩内容】【版权所有,侵权必究】,所有区块体里面的交易记录放在一起,就是【原创内容,转载请注明出处】【转载请注明来源】一个长长的账单,每一分钱的来龙去脉写的一【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net清二楚,如果当初红十字会用区块链来捐款,转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】那就不会有那么大的风波。但是其他区块链应未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。用不一定是交易模型,比如用于记录医疗信息未经授权,禁止复制转载。原创内容,盗版必究。的区块链,用于记录用户位置的区块链……所本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】以,对于区块链技术本身而言,点到这里即止【转载请注明来源】【原创内容,转载请注明出处】,再往下说就是比特币特有的技术了。
【版权所有,侵权必究】原创内容,盗版必究。本文作者:唐霜,转载请注明出处。挖矿和共识机制【未经授权禁止转载】
未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。前面已经多次说了挖矿。简单说挖矿过程就是本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。一堆矿工在抢创建一个新区块的权利的过程。【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】在加密货币的世界里,抢到这个权利,就会在【原创不易,请尊重版权】【原创不易,请尊重版权】这个区块的最前面加上一笔转账给自己的交易原创内容,盗版必究。本文作者:唐霜,转载请注明出处。,而这个交易的钱是凭空而来的,所以又叫“【本文受版权保护】【版权所有,侵权必究】挖矿奖励”,而且数额还不少,所以矿工才挤转载请注明出处:www.tangshuang.net【本文受版权保护】破脑袋抢这一个记账权。但是在其他非币区块【本文受版权保护】【原创内容,转载请注明出处】链应用里,假如没有这个奖励,怎么激励矿工转载请注明出处:www.tangshuang.net【未经授权禁止转载】挖矿呢?这也是区块链领域里一个玄而又玄的【未经授权禁止转载】【访问 www.tangshuang.net 获取更多精彩内容】话题,至今没有答案。
【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。那么挖矿挖矿,到底是怎么一个技术上的算法【本文首发于唐霜的博客】未经授权,禁止复制转载。过程呢?
【关注微信公众号:wwwtangshuangnet】【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net在矿机程序里,规定了如何得到一个hash【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。,而这个规定,就被称为共识机制,所有矿工著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】按照这个共识机制去进行某个算法,看谁先得原创内容,盗版必究。未经授权,禁止复制转载。到一个符合条件的结果,而这个结果又可以被【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.net轻而易举的验证是符合条件的(验证是否符合【原创内容,转载请注明出处】【原创内容,转载请注明出处】共识机制)。不同的区块链,共识机制不同,【原创内容,转载请注明出处】【关注微信公众号:wwwtangshuangnet】目前比较知名的是PoW和PoS,以及在这【转载请注明来源】本文作者:唐霜,转载请注明出处。两者基础上衍生出来的其他共识机制。
原创内容,盗版必究。【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。【转载请注明来源】本文版权归作者所有,未经授权不得转载。为了能够把挖矿过程讲清楚,我们只拿比特币【本文首发于唐霜的博客】转载请注明出处:www.tangshuang.net遵循的PoW来进行演示。
未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net【本文受版权保护】【本文受版权保护】【转载请注明来源】【原创不易,请尊重版权】【原创内容,转载请注明出处】【本文受版权保护】本文作者:唐霜,转载请注明出处。SHA256(SHA256(versio【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。n + prevHash + merkl著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.neteRoot + time + curre【版权所有,侵权必究】【本文受版权保护】ntDifficulty + nonce著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】 )) < TARGET
【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】转载请注明出处:www.tangshuang.net
矿机执行上面公式,只要满足上面这个公式(【原创内容,转载请注明出处】未经授权,禁止复制转载。执行结果为真),就算挖到矿。现在对这个公【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net式进行解释。
原创内容,盗版必究。【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.net原创内容,盗版必究。- 矿机会做一个double sha256的【原创不易,请尊重版权】【作者:唐霜】运算,运算的参数其实全部是块头里面的信息【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】,但是因为这个时候区块还没有生成,所以这【本文受版权保护】未经授权,禁止复制转载。些信息是暂时保存的,如果抢到记账权,就把原创内容,盗版必究。【关注微信公众号:wwwtangshuangnet】这些信息记录进去,因此,当你觉得一个区块【本文受版权保护】【关注微信公众号:wwwtangshuangnet】的hash是否是作弊算出来的时候,用区块著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。头里面的信息自己去算一遍,看看是不是能得本文作者:唐霜,转载请注明出处。【转载请注明来源】到相同的hash就可以了,从一点上讲,挖【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。矿也是不能作弊的,必须老老实实不停算 【未经授权禁止转载】未经授权,禁止复制转载。【未经授权禁止转载】【关注微信公众号:wwwtangshuangnet】转载请注明出处:www.tangshuang.net
- version是当前运行矿机的客户端软件【未经授权禁止转载】转载请注明出处:www.tangshuang.net版本,每次版本升级,可能对一些参数会有影本文作者:唐霜,转载请注明出处。原创内容,盗版必究。响,比如区块大小从1M扩容到2M,但是对未经授权,禁止复制转载。原创内容,盗版必究。于挖矿算法而言是不变的 【原创内容,转载请注明出处】本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。
- prevHash是前一个区块的hash值 【本文首发于唐霜的博客】【本文受版权保护】原创内容,盗版必究。【原创不易,请尊重版权】原创内容,盗版必究。
- merkleRoot是当前矿机内存里暂存【转载请注明来源】【关注微信公众号:wwwtangshuangnet】的交易的merkle算法得到的根hash原创内容,盗版必究。【作者:唐霜】,merkle会在下文讲 【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。原创内容,盗版必究。
- time是当前时间戳【原创不易,请尊重版权】 著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。【作者:唐霜】
- currentDifficulty是当前本文作者:唐霜,转载请注明出处。原创内容,盗版必究。难度,这个当前难度是由一个公式算出来的,【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。这个公式是
currentDifficulty = diff_1_target/TARGET这个公式里面的diff_1_targe未经授权,禁止复制转载。转载请注明出处:www.tangshuang.nett可以认为是一个常量,在比特币客户端里面转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net是不变的,值为0x1d00ffff。当然转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。,其实它也有可能变,但怎么变都差不多这个未经授权,禁止复制转载。【未经授权禁止转载】值,我们还是把它当作常量。而TARGET未经授权,禁止复制转载。未经授权,禁止复制转载。我们在下面会讲到。 原创内容,盗版必究。【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net
- nonce是一个正整数,nonce的值就【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net算矿机要找的值。当矿机开始执行doubl本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】e sha256算法时,nonce为0,著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。如果执行完一次,无法满足上面那个公式,那著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。么nonce就自加1,再执行一遍算法,如未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net果不满足公式,继续加1再执行,就是这样一【作者:唐霜】本文版权归作者所有,未经授权不得转载。直加上去,直到找到一个nonce满足上面【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net的公式,就算挖到矿。所以,这个nonce本文作者:唐霜,转载请注明出处。【关注微信公众号:wwwtangshuangnet】每一次挖矿都可能不一样,它是完全随机出现【转载请注明来源】原创内容,盗版必究。的,到底是多少完全看运气。但不管怎样,你原创内容,盗版必究。【版权所有,侵权必究】看每个区块里面但nonce值,就知道矿机本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。做了多少次运算,也就知道挖到矿有多难了。 【未经授权禁止转载】【原创不易,请尊重版权】【本文受版权保护】本文作者:唐霜,转载请注明出处。
- TARGET是用以对比的目标值,它是一个【访问 www.tangshuang.net 获取更多精彩内容】【原创内容,转载请注明出处】特定值,比特币的发明者希望10分钟产生一【版权所有】唐霜 www.tangshuang.net【转载请注明来源】个区块,所以最初设计的TARGET就是为【本文受版权保护】【版权所有】唐霜 www.tangshuang.net了让currentDifficulty能著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。够到一个合适的值,保证10分钟一个块。但【未经授权禁止转载】本文作者:唐霜,转载请注明出处。是实际情况并不可能保证10分钟一定出一个【未经授权禁止转载】【本文受版权保护】块,如果算力下降,时间就会加长,这时就应未经授权,禁止复制转载。【未经授权禁止转载】该调整一下难度,使出块时间尽可能恢复在1原创内容,盗版必究。未经授权,禁止复制转载。0分钟左右。所以2016个区块(2周)T原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.netARGET就会调整一次,而如果真实的情况【作者:唐霜】【本文首发于唐霜的博客】是产生2016个区块的时间超过2周,那么本文作者:唐霜,转载请注明出处。原创内容,盗版必究。TARGET就会适当增加,从而使curr【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。entDifficulty减小,下面20【本文受版权保护】【本文受版权保护】16个区块的难度就会降低一些。相反,则提著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。高难度。这个调整算法本文就不展开了。所以【版权所有,侵权必究】【版权所有】唐霜 www.tangshuang.netTARGET是一个2016次不变,但总体本文版权归作者所有,未经授权不得转载。【本文受版权保护】而言一直在变的值,它的目标就是让产生一个【本文首发于唐霜的博客】转载请注明出处:www.tangshuang.net区块的时间大概在10分钟左右。 【作者:唐霜】【作者:唐霜】【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。【原创不易,请尊重版权】
这就算比特币的挖矿,矿工们每天看着自己的未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】机器,反复不断的执行这个公式,寻找那个n著作权归作者所有,禁止商业用途转载。【本文受版权保护】once,日复一日,年复一年。
【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。【未经授权禁止转载】【未经授权禁止转载】当矿机找到nonce之后,就夺得了记账权未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】,就可以把内存中的交易信息调出来,打包到转载请注明出处:www.tangshuang.net【作者:唐霜】区块体中。而merkle root是通过原创内容,盗版必究。【未经授权禁止转载】交易记录计算得到的,所以不可能矿工在打包【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。时又去做手脚,一旦他伪造了某一条交易,打【本文受版权保护】【本文受版权保护】包进区块体的交易就不能得到他挖矿时使用的未经授权,禁止复制转载。【作者:唐霜】那个merkle root,也就无法得到原创内容,盗版必究。未经授权,禁止复制转载。挖矿时找到的那个hash。
【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。当然了,实际上比特币挖矿可能还要麻烦一些【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】,比如说还有nonce溢出、矿池……
本文版权归作者所有,未经授权不得转载。【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】Merkle Tree未经授权,禁止复制转载。
【作者:唐霜】本文作者:唐霜,转载请注明出处。【作者:唐霜】前面说了好多次Merkle,它到底是什么本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。?Merkle Tree是一种数据结构,未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。比特币里面就是一棵二叉树,也就是每个父节【访问 www.tangshuang.net 获取更多精彩内容】【关注微信公众号:wwwtangshuangnet】点有两个子节点那种。我之前写过一篇文章《区块链如何运用merkle tree验证本文作者:唐霜,转载请注明出处。原创内容,盗版必究。交易真实性》里面详细讲了一些Merkle Tree原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。的原理以及问题。这里主要还是做一个科普,未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net不深入讲。
本文作者:唐霜,转载请注明出处。【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。【访问 www.tangshuang.net 获取更多精彩内容】区块头里面的Merkle Root是怎么【本文受版权保护】转载请注明出处:www.tangshuang.net来的呢?它是通过对区块体内的记录做Mer著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。kle算法得到的。以比特币为例,一个区块【版权所有,侵权必究】【原创不易,请尊重版权】里面包含n个交易,我们把这些交易两两分组【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net,每两个一组,得到n/2组,如果有单数,【原创内容,转载请注明出处】未经授权,禁止复制转载。那么最后一个交易复制一份凑数。先对每个交【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】易做hash提取,这样就得到来n个has著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。h,然后对每组的hash做double 【原创不易,请尊重版权】转载请注明出处:www.tangshuang.nethash运算:
【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。【转载请注明来源】【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】【版权所有,侵权必究】转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。parentHash = sha256(【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】sha256( hash1 + hash【未经授权禁止转载】【版权所有,侵权必究】2 ))
【未经授权禁止转载】原创内容,盗版必究。【访问 www.tangshuang.net 获取更多精彩内容】
也就是把这个组里的两个hash连起来,再未经授权,禁止复制转载。【未经授权禁止转载】计算得到一个新hash,这个新hash就【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。算这两个hash的父节点。得到所有组的父【版权所有,侵权必究】【本文受版权保护】节点之后,按照同样的逻辑,得到父父节点,【关注微信公众号:wwwtangshuangnet】原创内容,盗版必究。如此一直下去,最后得到一个根节点,这个根【原创不易,请尊重版权】【本文首发于唐霜的博客】节点就是merkle root。
【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。merkle算法大致是这样,但它不仅限于【原创内容,转载请注明出处】未经授权,禁止复制转载。区块链领域,在其他任何验证领域都可能用到【原创内容,转载请注明出处】【原创内容,转载请注明出处】,而且也不一定是这里讲的必须两个得到一个【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。的算法,也可以是任意个得到一个的算法,总【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】之merkle是一种对多个记录进行运算得转载请注明出处:www.tangshuang.net转载请注明出处:www.tangshuang.net到一个根hash的算法。
【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】而可以想象,对参与算法的任何一个交易做小本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。小的改动,都会导致得到的merkle r【转载请注明来源】转载请注明出处:www.tangshuang.netoot不一样,所以区块里面只需要保存me【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。rkle root就可以了。这就算密码学【关注微信公众号:wwwtangshuangnet】原创内容,盗版必究。的力量。
【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net【原创内容,转载请注明出处】确认原创内容,盗版必究。
【本文受版权保护】【关注微信公众号:wwwtangshuangnet】【原创不易,请尊重版权】【作者:唐霜】本文版权归作者所有,未经授权不得转载。在区块链网络中,我们经常会听到一个词“确【原创不易,请尊重版权】未经授权,禁止复制转载。认”。确认一笔交易,究竟是什么意思呢?简【本文受版权保护】转载请注明出处:www.tangshuang.net单的说,“确认一笔交易”就是指在整个网络著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。中,该交易所在的区块被加入到最长的链中。本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。而我们经常听到的“6个确认”是指,在最长【未经授权禁止转载】【原创不易,请尊重版权】的链中,这笔交易所在的区块及其之后产生的【版权所有】唐霜 www.tangshuang.net【本文受版权保护】区块的总数大于等于6.
本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。【转载请注明来源】原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。那么:转载请注明出处:www.tangshuang.net
【版权所有,侵权必究】未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。本文作者:唐霜,转载请注明出处。- 谁有资格进行交易的确认?转载请注明出处:www.tangshuang.net 【作者:唐霜】【转载请注明来源】【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。
- 确认交易的技术流程是什么?原创内容,盗版必究。 【作者:唐霜】【本文受版权保护】本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】
实际上,挖矿夺得记帐权,并且成功向网络广转载请注明出处:www.tangshuang.net【转载请注明来源】播挖到的区块,并且被其他节点接受,就算是本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】对这个块内所有交易的一次确认。
原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net- 一个交易发起,并且向整个网络广播【转载请注明来源】 【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net
- 网络中的矿工接收到这个交易请求,并且把它【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net放到自己准备挖矿的交易序列中 【本文受版权保护】未经授权,禁止复制转载。【未经授权禁止转载】原创内容,盗版必究。
- 矿工开始挖矿,利用merkle算法得到m【原创不易,请尊重版权】原创内容,盗版必究。erkle root hash,该roo【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。t hash实际包含了这个交易 转载请注明出处:www.tangshuang.net【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。
- 挖矿成功,并且在期间没有接收到网络上其他【转载请注明来源】著作权归作者所有,禁止商业用途转载。矿工挖矿成功的消息,于是将该区块加入到自本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。己区块链尾 【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。【本文首发于唐霜的博客】【原创内容,转载请注明出处】
- 向整个网络广播新挖到的块【原创不易,请尊重版权】 【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】【转载请注明来源】【版权所有,侵权必究】【版权所有,侵权必究】
- 网络上的另外一个节点接收到这个矿工广播的【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】新区块 【作者:唐霜】著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。
- 该节点对该新块进行验证
本文版权归作者所有,未经授权不得转载。
- 验证该块中的每一个交易的合法性,怎么才算【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】合法呢?除了对交易两边账号的合法性进行校【原创不易,请尊重版权】【版权所有,侵权必究】验,主要还是对交易的输入输出的合法性进行本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。校验,交易的输入其实就是另外一个交易的输【未经授权禁止转载】【本文首发于唐霜的博客】出,通过这篇文章【转载请注明来源】的方法去校验输入交易的合法性,输出则必须【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】在合理数值范围内。 本文作者:唐霜,转载请注明出处。【作者:唐霜】【本文受版权保护】
- 对该块的个个hash进行重新计算,校验每本文版权归作者所有,未经授权不得转载。【转载请注明来源】一个值是否吻合 本文版权归作者所有,未经授权不得转载。【作者:唐霜】本文作者:唐霜,转载请注明出处。
【未经授权禁止转载】【转载请注明来源】【作者:唐霜】原创内容,盗版必究。
- 校验通过之后,将该块加入到自己的链尾,发【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。出确认消息 【转载请注明来源】【作者:唐霜】未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。
- 另外一个完成了6-8的节点接收到该确认消【访问 www.tangshuang.net 获取更多精彩内容】原创内容,盗版必究。息之后,和自己的链尾块进行对比,如果没有【转载请注明来源】未经授权,禁止复制转载。问题,就结束整个确认过程 【原创内容,转载请注明出处】【版权所有,侵权必究】【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。
完成上述步骤之后,一个区块就在网络中被固【转载请注明来源】转载请注明出处:www.tangshuang.net定了下来,后续新加入的节点,都必须接受这【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。个区块及其所在的链。
本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。【本文首发于唐霜的博客】【本文首发于唐霜的博客】由于本文没有涉及到区块链的网络技术,所以本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】这里不便深入本文中提到的各个广播、消息的本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net具体细节。
未经授权,禁止复制转载。【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。区块链适合什么不适合什么?【作者:唐霜】
本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。区块链数据的特征主要有两点:1.公开透明【关注微信公众号:wwwtangshuangnet】转载请注明出处:www.tangshuang.net,任何节点对数据有完全的权利去查看;2.本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。难以伪造或篡改。因此,区块链非常适合两类【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。场景:1.证据;2.监督。如果区块链上的转载请注明出处:www.tangshuang.net原创内容,盗版必究。信息得到法律认可,那么但凡拿出区块链上的【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】证据,侵权方将百口莫辩。而试想,如果将税【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】收完全迁移到区块链,每个公民的每一笔税收【未经授权禁止转载】本文作者:唐霜,转载请注明出处。,最后都用到哪里,一清二楚,这可能是令某【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。些人害怕的点。
【未经授权禁止转载】【作者:唐霜】著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net但区块链有两大缺点:1.要挖矿,还有分叉著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.net 获取更多精彩内容】风险,也就是说一个数据放到区块链上,要等【作者:唐霜】【版权所有,侵权必究】很久才能成为不可篡改的可信数据。2.分区【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】块,数据被割裂存放,这给查询带来巨大的麻【原创不易,请尊重版权】【原创不易,请尊重版权】烦,非常影响效率。所以,区块链不适合那种【原创内容,转载请注明出处】未经授权,禁止复制转载。即时性要求高的场景,无论是信息交换的即时转载请注明出处:www.tangshuang.net【转载请注明来源】性(例如聊天)还是查询的即时性(如搜索引【未经授权禁止转载】【本文受版权保护】擎)。
本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。【访问 www.tangshuang.net 获取更多精彩内容】区块链不是万能的,某些服务明明中心化模式本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】效率更高,成本更低,却偏要为了风口搞区块未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。链化,那只能看韭菜长没长齐。还有一点令人未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。担心的是,由于区块链上信息的公开透明,而【作者:唐霜】【作者:唐霜】且不可删除,是否会对个人隐私造成极大的损原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。害,试想一下,当年给冠希哥修电脑的小哥通【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。过区块链网络炫耀自己发现的照片……那对当【原创不易,请尊重版权】【转载请注明来源】事人的伤害……连人死了都不会消散……
【作者:唐霜】本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】原创内容,盗版必究。未经授权,禁止复制转载。区块链应用转载请注明出处:www.tangshuang.net
【本文受版权保护】转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。随着风口的来临,区块链应用此起彼伏。但目本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】前比较成熟的,无非三种模式:1.比特币;【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】2.以太坊智能合约;3.比特股。其他的,【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】不多说,读者自己看着办。
【原创不易,请尊重版权】【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。【本文受版权保护】一个区块链应用,它的架构是怎样的呢?在区【转载请注明来源】著作权归作者所有,禁止商业用途转载。块链本身之上,还需要有哪些其他的技术来支转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。撑呢?
【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】
区块链应用体系架构图(邵奇峰等《区块链技【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】术:架构及进展》)
【原创不易,请尊重版权】原创内容,盗版必究。【转载请注明来源】区块链应用,如比特币、以太坊,与区块链本著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】身有比较大的耦合度,也就是说区块链作为数原创内容,盗版必究。【版权所有,侵权必究】据库无法较为独立的成为应用中的一个模块,本文作者:唐霜,转载请注明出处。【原创不易,请尊重版权】和我们现在流行的B/S架构稍有不同,区块【关注微信公众号:wwwtangshuangnet】【访问 www.tangshuang.net 获取更多精彩内容】链应用中会把区块链拆解之后,于应用其他层【版权所有】唐霜 www.tangshuang.net【作者:唐霜】进行融合,最终实现应用的整体功能。
【未经授权禁止转载】【本文受版权保护】【原创内容,转载请注明出处】我们以比特币为例来讲一个区块链应用,比单【作者:唐霜】【原创不易,请尊重版权】纯一个区块链本身多了哪些部分。比特币是一【版权所有,侵权必究】【关注微信公众号:wwwtangshuangnet】个基于区块链的账单系统,它除了区块链,还本文作者:唐霜,转载请注明出处。【本文受版权保护】要包含:1.交易模型;2.身份认证体系(本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。类似PKI);3.智能合约。
本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。原创内容,盗版必究。交易模型本文版权归作者所有,未经授权不得转载。
【版权所有,侵权必究】【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。【未经授权禁止转载】交易模型就是区块体内保存的交易记录。之所【本文受版权保护】转载请注明出处:www.tangshuang.net以比特币里面的每一笔钱的来龙去脉都一清二【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。楚,就是依赖于交易模型。我们现实中银行里【未经授权禁止转载】本文作者:唐霜,转载请注明出处。面的一个账号,只会告诉你一个账号现在有多【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。少钱,曾经花了多少钱,收入多少钱,还欠多【未经授权禁止转载】【未经授权禁止转载】少钱。但是不会告诉你“某一笔你花掉的钱,转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net来自你某一笔收入”。但比特币里面必须告诉转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。你这样的逻辑,一条交易包含“输入”和“输【未经授权禁止转载】原创内容,盗版必究。出”两个部分,比如你要转10BTC,那么【关注微信公众号:wwwtangshuangnet】未经授权,禁止复制转载。你的账号必须有一个或多个“输入”加起来总本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。和等于或超过10BTC,而输出就是指你要【本文受版权保护】【版权所有】唐霜 www.tangshuang.net把这10BTC转给谁。但是有一种情况,当著作权归作者所有,禁止商业用途转载。【本文受版权保护】所有“输入”加起来为10.5BTC时怎么【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net办,就像你有100块毛爷爷,去买70块的【版权所有,侵权必究】原创内容,盗版必究。东西一样,需要“找零”。所以“输出”有的本文作者:唐霜,转载请注明出处。【未经授权禁止转载】时候会有一个是转给自己的,就是“找零”。
未经授权,禁止复制转载。【本文受版权保护】未经授权,禁止复制转载。
比特币交易输入与输出示意图【本文受版权保护】
【版权所有,侵权必究】未经授权,禁止复制转载。【版权所有,侵权必究】而实际上,输出在另外一个交易中,又是这个【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】新交易的输入。
【本文首发于唐霜的博客】未经授权,禁止复制转载。【作者:唐霜】【访问 www.tangshuang.net 获取更多精彩内容】在区块体里面,这些交易记录,以及它们的输【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。入输出都被如实记录。除此之外,还要进行m【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】erkle计算,将merkle root【原创内容,转载请注明出处】【本文首发于唐霜的博客】存到区块头中。
【作者:唐霜】【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】身份认证体系【原创内容,转载请注明出处】
转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。【本文受版权保护】既然是交易,那么必然涉及到交易双方的身份【访问 www.tangshuang.net 获取更多精彩内容】【作者:唐霜】。比特币交易的两端是两个账号,至于到底是本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】谁它不管,但它通过加密算法,保证这一笔交未经授权,禁止复制转载。原创内容,盗版必究。易是哪一个账号发起的,发起交易的人要对交【本文首发于唐霜的博客】【原创不易,请尊重版权】易信息进行签名。
转载请注明出处:www.tangshuang.net【未经授权禁止转载】【作者:唐霜】著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】你可能听过非对称加密、公钥和私钥。比特币转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】账号最关键的就是这个私钥,一旦私钥丢失,未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net你就无法证明自己是这个账号的主人,也就无【作者:唐霜】本文版权归作者所有,未经授权不得转载。法从账号中进行转账要做的签名动作,你就不本文作者:唐霜,转载请注明出处。【作者:唐霜】能再花这个账号里面的币,也就丢失了币。
【本文受版权保护】转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】未经授权,禁止复制转载。【转载请注明来源】那么签名是怎样的一个过程?怎么证明这个交转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】易是我发出的?怎么证明这钱是转给我的?
【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】未经授权,禁止复制转载。密钥、地址与钱包【原创内容,转载请注明出处】
【原创不易,请尊重版权】转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net【本文受版权保护】【原创不易,请尊重版权】 地址【访问 www.tangshuang.net 获取更多精彩内容】 比特币的收款地址,大部分情况下是指对公本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net钥的封装(个别时候除了公钥还有脚本)。
转载请注明出处:www.tangshuang.net【原创不易,请尊重版权】 钱包著作权归作者所有,禁止商业用途转载。 一种比特币客户端软件,是私钥的容器,通【本文受版权保护】【本文受版权保护】常通过有序文件或者简单的数据库实现。比特未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net币钱包包含私钥和公钥数据,尽管公钥数据理【本文首发于唐霜的博客】【原创内容,转载请注明出处】论是是不需要存储的。
一般来说,用户的公钥和比特币地址可以划等【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】号,但实际上不是。比特币地址是一串比公钥【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】短很多的字符串,主要是为了方便输入。而公【原创不易,请尊重版权】【关注微信公众号:wwwtangshuangnet】钥则用于各种非对称加密。
【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】【转载请注明来源】未经授权,禁止复制转载。
比特币公钥到比特币地址转载请注明出处:www.tangshuang.net
著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.net 获取更多精彩内容】【本文首发于唐霜的博客】原创内容,盗版必究。公钥和地址都是公开在比特币网络中的,只有【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】私钥是用户自己保存,不能给任何人。当一个本文版权归作者所有,未经授权不得转载。【作者:唐霜】交易发起时,交易发起方用“自己的私钥”和【本文首发于唐霜的博客】【未经授权禁止转载】“接收方公钥”对交易进行签名,那么网络中【作者:唐霜】原创内容,盗版必究。的其他人就可以用发起人的公钥去验证这个交本文版权归作者所有,未经授权不得转载。【本文受版权保护】易是不是他发起的,对于接收方而言,要提供【原创不易,请尊重版权】【转载请注明来源】自己的私钥进行解密运算,来证明这个交易确著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】实是发送给自己的。而比特币客户端(钱包)【本文受版权保护】本文版权归作者所有,未经授权不得转载。就是干这个加密解密和签名的事。
【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。【原创不易,请尊重版权】智能合约【转载请注明来源】
本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。【本文首发于唐霜的博客】比特币本身已经有智能合约的雏形,只是它所【版权所有,侵权必究】【未经授权禁止转载】采用的编程语言脚本能力比较弱,能实现的合转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net约逻辑不复杂。以太坊则是在这个基础上扩展本文作者:唐霜,转载请注明出处。著作权归作者所有,禁止商业用途转载。链智能合约部分,使智能合约的编程能力大大原创内容,盗版必究。【关注微信公众号:wwwtangshuangnet】增强。
著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】【关注微信公众号:wwwtangshuangnet】【转载请注明来源】在上文提到的输入和输出,输出其实就被作为原创内容,盗版必究。【未经授权禁止转载】另外一个新交易的输入。比特币的输出不单单【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。是告诉系统要转给哪个地址多少钱,输出实际【转载请注明来源】转载请注明出处:www.tangshuang.net上是一段比特币脚本。这段脚本也经过复杂的【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.net非对称加密,要运行这段,想要得到一个输出本文版权归作者所有,未经授权不得转载。本文版权归作者所有,未经授权不得转载。里面的钱,把这笔钱作为自己交易的输入,必著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】须用自己的私钥先解密脚本,然后运行脚本,本文作者:唐霜,转载请注明出处。【未经授权禁止转载】脚本运行完,这笔钱就可以作为自己交易的输本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。入了。结合前面的知识,只有拥有对应的私钥【版权所有】唐霜 www.tangshuang.net【本文首发于唐霜的博客】才能解密,所以,只有输出记录对应的比特币【本文受版权保护】【版权所有,侵权必究】地址对应的那个用户才能解密脚本,得到这些【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。钱。
【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】在这个过程里面,“脚本”是一个关键,除了未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。上面这种最简单的转账逻辑,还可以通过一些本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。条件判断来实现稍微复杂一些的编程,比如只本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。有当满足某些条件的时候,解密后的脚本才能【转载请注明来源】【作者:唐霜】运行。于是,基于这种设计,比特币的脚本系【关注微信公众号:wwwtangshuangnet】本文版权归作者所有,未经授权不得转载。统可以用来实现多重签名、保证合同等功能,本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】也就是智能合约的雏形。
【转载请注明来源】【本文首发于唐霜的博客】【版权所有,侵权必究】原创内容,盗版必究。【未经授权禁止转载】结语【版权所有,侵权必究】
著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net未经授权,禁止复制转载。著作权归作者所有,禁止商业用途转载。对于区块链的研究,我也是刚刚开始,必定有【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.net不少地方没有理解透,有些地方也有误解。但【版权所有,侵权必究】【本文受版权保护】对于想要了解这个领域的朋友,希望你们先了著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。解区块链背后的技术原理(不必对技术细节掌未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。握透彻),读一些比较成熟的可信的材料(我【作者:唐霜】著作权归作者所有,禁止商业用途转载。一不小心发现前人已经在《计算机学报》上发转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。表类似综述的文章了,读者可以阅读区块链技术:架构及进展【作者:唐霜】),而不是道听途说就信以为真。一旦你掌握【原创内容,转载请注明出处】【版权所有,侵权必究】了这些技术原理,就会发现,其实它的限制挺著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.net多,有美好的地方,也有没必要的地方,那些【未经授权禁止转载】【版权所有,侵权必究】莫名奇妙的项目就坑不到你了。
【原创内容,转载请注明出处】【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net(写一篇文章要4个小时,而转载只需要两秒未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net钟,如果你觉得这篇文章对你有用,请用真金本文版权归作者所有,未经授权不得转载。【作者:唐霜】白银来支持我)
未经授权,禁止复制转载。【转载请注明来源】【作者:唐霜】【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。2018-03-08 27439



你好,非常感谢你的文章,有很多深入细节的内容帮助真正去理解区块链技术,有个不清晰的点,还麻烦你看下是否能回答,文中
”9. 另外一个完成了6-8的节点接收到该确认消息之后,和自己的链尾块进行对比,如果没有问题,就结束整个确认过程”
这第九步文字读下来,还是比较困扰,不知道是什么意思?可能我自己理解卡到了,翻来覆去读不通这句
1. 6-8是前面步骤6~8,还是6~8个节点?
2. 另外一个完成了的断句,是”另外,一个完成了…” 还是“另外一个,完成了…”
3. ”和自己的链尾“,这里的自己是指谁?
建议你把这个栏目下的几篇文章都读几遍,也可以看看下面的一些评论。只有你切换到区块链开发者的角度,才能绕过这些文字描述。
是应该是先确定交易们的合法性与否,挑够数量了合法交易,组装成一个区块,然后再挖矿。而不是挖之后确定合法与否,万一不合法那岂不是前功尽弃。
是的,区块是基于交易而产生的,区块需要包含merkle root,需要先有交易再有区块,具体可以看 https://www.tangshuang.net/4117.html 这篇文章
【挑够数量了合法交易】,这里面,多少笔合法交易,对于一个区块来说是足够的呢?
要参考每个区块的大小,比特币就曾经扩容过一次,你交易太少,就是浪费区块,且可能找不到好的手续费,太多又装不下。
区块链系统中 是不是每个节点 都保存完整的区块链? 还是有的保存完整的 有的不是 谢谢啦
不是的,具体你可以看我区块链板块下另一篇关于交易验证的文章,里面会详细讲到轻钱包
你好 我想请问一下block summarization 是什么? 不太明白
这个我也不太懂,抱歉
您好 请问一下,是不是对所有的共识机制来说,都会有区块链验证和交易验证。
我不太明白交易验证和共识机制的关系,他俩发生的顺序是什么啊?
先认真阅读一下什么是共识机制,我想我文章里面已经讲的很清楚了。
交易验证阅读 https://www.tangshuang.net/4117.html 对交易的校验可以在多个时候进行,但是在该交易打包进区块之前,一定要经过校验。因为在区块链网络中,还有一个“确认”的阶段。
您好,看到您的文章质量非常高,想邀请您成为虫洞社区签约作者。虫洞社区是中美区块链技术学习社区。虫洞社区鼓励内容生产者产生高质量内容,并给予合理的回报,也希望能帮助内容消费者获得高质量的区块链内容,并让数字货币投资者获得有价值的投资洞见。同时,虫洞社区已经积累了大量的区块链深度从业者,便于作者建立个人品牌。不知道是否方便加您微信细聊?我的微信是412493137
欢迎讨论
您加我微信还是我加您微信呢?
一脸懵圈的看区块链…
没事,多看看就懂了,可以吹了,哈哈~
“矿机会做一个double sha256的运算,运算的参数其实全部是块头里面的信息,但是因为这个时候区块还没有生成”
这个理解不正确,挖矿就是打包,交易数据已经全部存在了。区块头中的merkle树根hash也是被计算过了的。
过程应该是这样的:
比特币节点求解工作量证明问题的步骤大致归纳如下:
1)生成coinbase交易,并与其他所有准备打包进区块的交易组成交易列表,通过Merkle树算法生成Merkle根哈希;
2)把Merkle根哈希及其他相关字段组装成区块头,将区块头的80字节数据作为工作量证明的输入;
3)不停地变更区块头中的随机数,即nonce的数值,并对每次变更后的区块头做双重SHA256运算
(即SHA256(SHA256(Block_Header))),将结果值与当前网络的目标值做对比,
如果小于目标值,则解题成功,工作量证明完成
你说讲的过程大致也是符合区块的hash生成过程的,但是我不懂你指的“这个理解不正确”具体是哪个点上?