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



你好,非常感谢你的文章,有很多深入细节的内容帮助真正去理解区块链技术,有个不清晰的点,还麻烦你看下是否能回答,文中
”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生成过程的,但是我不懂你指的“这个理解不正确”具体是哪个点上?