比特币怎么提现人民币小白,很想知道比特币怎么提现人民币提现和提币的区别,希

&p&&i&&b&友情提醒&/b&:比特币采用区块链技术,但是区块链并不等同于比特币;全篇基于比特币底层区块链技术讲述,所以,部分模型可能不适用于以太坊等。另外,由于文章采用了一定的抽象、类举的叙事方式,中间或多或少有些地方会跟区块链底层严谨的技术实现有出入,如果让你觉得困惑,可以在评论下方留言或者私信我一起探讨。最后,也是受限于自己知识结构的不完整,这篇文章会随着我对区块链更深入认识后,随时进行修订,最后更新时间可参考该回答下方的时间戳。&/i&&/p&&p&&br&&/p&&p&&i&另外,作为一篇科普性文章,大家可以随意转载,注明这篇文章的出处和作者即可,无需再单独私信询问。&/i&&/p&&p&&br&&/p&&p&&i&---&/i&&/p&&p&&br&&/p&&p&首先不要把区块链想的过于高深,他是一个分布在全球各地、能够协同运转的数据库存储系统,区别于传统数据库运作——读写权限掌握在一个公司或者一个集权手上(中心化的特征),区块链认为,任何有能力架设服务器的人都可以参与其中。来自全球各地的掘金者在当地部署了自己的服务器,并连接到区块链网络中,成为这个分布式数据库存储系统中的一个节点;一旦加入,该节点享有同其他所有节点完全一样的权利与义务(去中心化、分布式的特征)。与此同时,对于在区块链上开展服务的人,可以往这个系统中的任意的节点进行读写操作,最后全世界所有节点会根据某种机制的完成一次又依次的同步,从而实现在区块链网络中所有节点的数据完全一致。 &/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-a3ba4597bafd533d7e9f77_b.jpg& data-size=&normal& data-rawwidth=&1920& data-rawheight=&900& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic1.zhimg.com/50/v2-a3ba4597bafd533d7e9f77_r.jpg&&&figcaption&上图中,高亮的点就是区块链系统中分布在全球各地的一个个节点;而这些节点可以简单理解为一台服务器服务器集群&/figcaption&&/figure&&h2&# 问题的由来&/h2&&p&我们反复提到区块链是一个去中心化的系统,确实,「去中心化」在区块链世界里面是一个很重要的概念,很多模型(比如账本的维护、货币的发行、时间戳的设计、网络的维护、节点间的竞争等等等等)的设计都依赖于这个中心思想,那到底什么是去中心化呢?在解释真正去中心化之前,我们还是先简单了解下什么是中心化吧。&/p&&p&&br&&/p&&p&&b&中心化?&/b&&/p&&p&&br&&/p&&p&回忆一下你在网上购买一本书的流程:&/p&&ol&&li&第一步,你下单并把钱打给&b&支付宝&/b&;&/li&&li&第二步,&b&支付宝&/b&收款后通知卖家可以发货了;&/li&&li&第三步,卖家收到&b&支付宝&/b&通知之后给你发货;&/li&&li&第四步,你收到书之后,觉得满意,在&b&支付宝&/b&上选择确认收货;&/li&&li&第五步,&b&支付宝&/b&收到通知,把款项打给卖家。流程结束。&/li&&/ol&&p&&br&&/p&&p&你会发现,虽然你是在跟卖家做交易,但是,所有的关键流程都是在跟支付宝打交道。这样的好处在于:万一哪个环节出问题,卖家和买家都可以通过支付宝寻求帮助,让支付宝做出仲裁。这就是一个最简单的基于中心化思维构建的交易模型,它的价值显著,就是建立权威,通过权威背书来获得多方的信任,同时依赖权威方背后的资本和技术实力确保数据的可靠安全。&/p&&p&&br&&/p&&p&你一定会摆出一个巨大的问号脸 ⊙.⊙?——“通过权威背书来获得多方的信任,同时依赖权威方背后的资本和技术实力确保数据的可靠安全”,真的可以嘛?!&/p&&p&&br&&/p&&p&假如说,支付宝程序发生重大BUG,导致一段时间内的转账记录全部丢失,或者更彻底一点,支付宝的服务器被ISIS恐怖组织的一个导弹全部炸毁了。而我刚刚转出去的100元找谁说理去,这个时候,你就成了刀殂上的鱼肉;支付宝有良心,会勉为其难承认你刚刚转账的事实,但他不承认你也没辙,因为确实连他自己也不知道这笔转账是否真实存在。&/p&&p&&br&&/p&&p&上述就是中心化最大的弊端——过分依赖中心和权威,也就意味着逐渐丧失自己的话语权。&/p&&p&&br&&/p&&p&&b&去中心化?&/b&&/p&&p&&br&&/p&&p&那么去中心化的形态是什么样子呢?还是拿刚才那个例子继续,我们构建一个极简的去中心化的交易系统,看看我们是如何在网络上从不认识的卖家手里买到一本书的。&/p&&ol&&li&第一步,你下单并把钱打给卖家;&/li&&li&第二步,你将这条转账信息记录在自己账本上;&/li&&li&第三步,你将这条转账信息广播出去;&/li&&li&第四步,卖家和支付宝在收到你的转账信息之后,在他们自己的账本上分别记录;&/li&&li&第五步,卖家发货,同时将发货的事实记录在自己的账本上;&/li&&li&第六步,卖家把这条事实记录广播出去;&/li&&li&第七步,你和支付宝收到这条事实记录,在自己的账本上分别记录;&/li&&li&第八步,你收到书籍。至此,交易流程走完。&/li&&/ol&&p&&br&&/p&&p&刚才“人为刀俎我为鱼肉”的情况在这个体系下就比较难发生,因为所有人的账本上都有着完全一样的交易记录,支付宝的账本服务器坏了,对不起卖家的账本还存在,我的账本还存在;这些都是这笔交易真实发生的铁证。&/p&&p&&br&&/p&&p&当然,在这套极简的交易系统中,你已经发现了诸多漏洞和不理解,比如说三方当中有一个是坏人,他故意记录了对他更有利的转账信息怎么办;又比如说消息在传递过程中被黑客篡改了怎么办等等等等。这在以往的计算机概论或者计算机网络书本上中可能都有提及到——“类两军”和“拜占庭将军”问题。这里就不打算赘述,因为暂时跟主线不相关,感兴趣的同学可以去Google或者百度一下,你只需要知道,在我们下面即将展开讲到的区块链系统中,通过巧妙的设计,足以解决上述存在的BUG。&/p&&p&&br&&/p&&p&既然话已说到这份上,相信了解一点技术、特别是有运维背景的同学大概能够从极简交易系统中窥视到了更多区块链的一些影子——&/p&&ol&&li&分布式存储,通过多地备份,制造数据冗余&/li&&li&让所有人都有能力都去维护共同一份数据库&/li&&li&让所有人都有能力彼此监督维护数据库的行为&/li&&/ol&&p&&br&&/p&&p&在我看来,你猜测的基本上没错。其实这些就是区块链技术最核心的东西,外人看起来高大上、深不可测,但探究其根本发现就是这么简单和淳朴。当然,这里面肯定会有很多很多很多细枝末节的技术需要重构。&/p&&p&&br&&/p&&p&如果你差不多认同上面的观点,那我们应该基本上可以达成共识,分布式部署肯定是构建去中心化网络理所当然的解决方向——通过P2P协议将全世界所有节点计算机彼此相互连接,形成一张密密麻麻的网络;以巧妙的机制,通过节点之间的交易数据同步来保证全球计算机节点的数据共享和一致。&/p&&p&&br&&/p&&p&哈哈,说的轻巧,“交易数据这么重要的东西,在一个完全不信任的P2P网络节点中以一种错综复杂的方式传递,数据的一致性和安全性谁来保证,如果说互相监督,他们到底怎么做到?”&/p&&p&&br&&/p&&p&好了,不卖关子了,下面让我们围绕这个最最最最直接的问题开始进入到真正区块链的世界,抽丝剥茧看看它到底是如何一步一步形成的,又是如何一步一步稳定运转。&/p&&p&&br&&/p&&h2&# 从全球节点到交易数据&/h2&&figure&&img src=&https://pic1.zhimg.com/50/v2-8dfe43a00bf9_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&4664& data-rawheight=&2172& class=&origin_image zh-lightbox-thumb& width=&4664& data-original=&https://pic1.zhimg.com/50/v2-8dfe43a00bf9_r.jpg&&&/figure&&p&这张图的制作的意义为的是帮助你在宏观上先快速理解区块链中所涉及到的相关名词以及他们的层级关系。同时,文章的知识结构和设计思路也大抵上也会按照:&/p&&ol&&li&首先,将区块作为最小单位体,讲述极简区块链系统是如何运转的;&/li&&li&接着,进入到比区块更小单位体——交易记录,理解区块链是如何处理数据的;&/li&&li&最后,将所有知识点柔和在一起,重回到区块和区块链,完整讲述整个工作流程。&/li&&/ol&&p&&br&&/p&&p&希望你在这个引导和结构下有一个比较好的阅读体验。Let's go~&/p&&p&&br&&/p&&h2&# 区块,混沌世界的起源&/h2&&p&&br&&/p&&p&既然已经达成共识,所以,我们事先构建好了一个去中心化的P2P网络;同时,为了让读者朋友们听起来更轻松,我先粗暴的规定在这个极简的区块链系统里,每十分钟有且仅产生一笔交易。&/p&&p&&br&&/p&&p&故事继续,在节点的视野里,大概每十分钟会凭空产生一个建立在自己平行宇宙世界的神奇区块(你可以将区块想象为一个盒子),这个区块里放着一些数字货币以及一张小纸条,小纸条上记录了这十分钟内产生的那唯一一笔交易信息,比如说——“小A转账给了小B100元”;当然,这段信息肯定是被加密处理过的,为的就是保证只有小A和小B(通过他们手上的钥匙)才有能力解读里面真正的内容。&/p&&p&&br&&/p&&p&这个神奇的区块被创造出来之后,很快被埋在了地底下,至于埋在哪里?没有一个人不知道,需要所有计算机节点一起参与进来掘地三尺后才有可能找到(找到一个有效的工作量证明)。显然,这是一件工作量巨大、成果随机的事件。但是呢,对于计算机节点来说,一旦从地底下挖出这个区块,他将获得区块内价值不菲的数字货币,以及“小A转账给了小B100元”过程中小A所支付的小费。同时,对于这个节点来说,也只有他才有权利真正记录小纸条里的内容,这是一份荣耀,而其他节点相当于只能使用它的复制品,一个已经没有数字货币加持的副本。当然这个神奇的区块还有一些其他很特别的地方,后面我们会再细细聊。&/p&&p&&br&&/p&&p&为了更好的描述,我们将计算机节点从地底下挖出区块的过程叫做「挖矿」,刚才说了,这是一件工作量巨大、运气成分较多、但收益丰厚的事儿。&/p&&p&&br&&/p&&p&过了一会儿,来自中国上海浦东新区张衡路上的一个节点突然跳出来很兴奋的说:“ 我挖到区块了!里面的小纸条都是有效的!奖励归我!” 。虽然此刻张衡路节点已经拿到了数字货币,但对于其他计算机节点来说,因为这里面还涉及到其他一些利益瓜葛,他们不会选择默认相信张衡路节点所说的话;基于陌生节点彼此不信任的原则,他们拿过张衡路节点所谓挖到的区块(副本),开始校验区块内的小纸条信息是否真实有效等等。在区块链世界里,节点们正是通过校验小纸条信息的准确性,或间接或直接判断成功挖出区块的节点是否撒谎。(如何定义小纸条信息真实有效,后面会讲解,这里暂不做赘述)。&/p&&p&&br&&/p&&p&在校验过程中,各个节点们会直接通过下面两个行为表达自己对张衡路节点的认同(准确无误)和态度:&/p&&ul&&li&停止已经进行了一半甚至99.99%的挖矿进程;&/li&&li&将张衡路节点成功挖出的区块(副本)追加到自己区块链的末尾。&/li&&/ul&&p&&br&&/p&&p&你可以稍微有点困惑:停止可能已经执行了99.99%的挖矿行为,那之前99.99%的工作不是就白做了嘛?!然后,区块链的末尾又是个什么鬼东西?&/p&&p&&br&&/p&&p&对于第一个困惑。我想说,你说的一点没错,但是没办法,现实就是这么残酷,即便工作做了99.99%,那也得放弃,这99.99%的工作劳苦几乎可以视为无用功,绝对的伤财劳众。第二个困惑,区块链和区块链的末尾是什么鬼?这里因为事先并没有讲清楚,但是你可以简单想象一下:区块是周期性不断的产生和不断的被挖出来,一个计算机节点可能事先已经执行了N次“从别人手上拿过区块 -& 校验小纸条有效性”的流程,肯定在自己的节点上早已经存放了N个区块,这些区块会按照时间顺序整齐的一字排列成为一个链状。没错,这个链条,就是你一直以来认为的那个区块链。如果你还是不能够理解,没关系,文章后面还会有很多次机会深入研究。&/p&&p&&br&&/p&&h2&# 走进区块内,探索消息的本质&/h2&&p&&br&&/p&&p&上面我们构建了一个最简单的区块链世界的模型,相信大多数同学都已经轻松掌握了。但是别骄傲也别着急,这还只是一些皮毛中的皮毛,坐好,下面我们准备开车了。&/p&&p&&br&&/p&&p&前面我们说到“大概每十分钟会凭空产生一个神奇的区块,这个区块里放了一张小纸条,上面记录了这十分钟内产生的这唯一一笔交易信息”。显然,十分钟内产生的交易肯定远不止一条,可能是上万条,这上万条数据在区块链世界是如何组织和处理的呢?另外,为什么在纸条上记录的只是某一次的交易信息,而不是某一个人的余额?余额好像更符合我们现实世界的理解才对。&/p&&p&&br&&/p&&p&既然存在这样那样的疑问。现在我们就把视线暂时从“区块”、“区块链”这些看起来似乎较大实体的物质中移开,进入到区块内更微观的世界里一探究竟,看看小纸条到底是怎么一回事,它的产生以及它终其一生的使命:&/p&&ol&&li&发起交易的时候,发起人会收到一张小纸条,他需要将交易记录比如说“盗盗转账给张三40元”写在纸上。说来也神奇,当写完的那一刹那,在小纸条的背面会自动将这段交易记录格式化成至少包含了“输入值”和“输出值”这两个重要字段;“输入值”用于记录数字货币的有效来源,“输出值”记录着数字货币发往的对象。&/li&&li&刚刚创建的小纸条立马被标记成为“&b&未确认&/b&”的小纸条。从地下成功挖出区块并最终连接到区块链里的小纸条一开始会被标记为“&b&有效&/b&”。若这条有效的小纸条作为其他交易的输入值被使用,那么,这个有效的小纸条很快会被标记为“&b&无效&/b&”。因为各种原因,区块从链上断开、丢弃,曾经这个区块内被标记为“有效”的小纸条会被重新标记为“未确认”。&/li&&li&区块链里面没有账户余额的概念,你真正拥有的数字资产实际上是一段交易信息;通过简单的加减法运算获知你数字钱包里的余额。&/li&&/ol&&p&&br&&/p&&p&上面的1、2、3仅仅作为结论一开始强行灌输给你的知识点,其中有几个描述可能会有点绕,让你觉得云里雾里,没有关系,因为我们立刻、马上就开始会细说里面的细枝末节。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-9b6d8ac951f48d7cd31b7d4f3e266c69_b.jpg& data-size=&normal& data-rawwidth=&1662& data-rawheight=&806& class=&origin_image zh-lightbox-thumb& width=&1662& data-original=&https://pic4.zhimg.com/50/v2-9b6d8ac951f48d7cd31b7d4f3e266c69_r.jpg&&&figcaption&上图,是区块内,盗盗在一张小纸条上记录下的交易信息,后被格式化的呈现&/figcaption&&/figure&&p&&br&&/p&&p&上图就是从无数打包进区块内的小纸条中,抽取出来的一张,以及它最终被格式化后的缩影。单看右侧的图可能很容易产生误会,虽然看起来有多行,但实际上就是“盗盗转账给张三40个比特币”这一条交易数据另外的一种呈现形态。因为区块链世界里面这么规定,每一条交易记录,必须有能力追溯到交易发起者 发起这笔交易、其中所涉及金额的上一笔全部交易信息;即这笔钱从何而来的问题。这其实很容易理解,在去中心化的网络中,通过建立交易链、和通过交易链上的可溯源性间接保证数据安全和有效。&/p&&p&&br&&/p&&p&我们继续看,在区块链世界里,我们是如何仅通过“盗盗转账给张三40个比特币” 这条交易信息完成转账流程的。其实跟现实中你在路边买一个包子的流程大抵上相同。&/p&&p&&br&&/p&&p&&b&第一步:判断是否有足够的余额完成交易&/b&&/p&&p&这里我们再一次重申,在比特币的区块链世界里是没有余额的概念(以太坊的底层区块链有余额概念),余额是通过简单数字的加减最终获得,你拥有所谓的数字货币实际上是因为你拥一条交易记录,即 “盗盗转账给张三40个比特币”!这里,我们还是拿这条记录说事:&/p&&p&&br&&/p&&p&追溯“输出值”是“盗盗”相关的&b&全部有效交易记录&/b&作为,对有效交易中的数字进行简单求和,判断是否大于等于40,如果确实大于等于,则将这些有效的交易记录合并形成一条新的交易记录(如下图)。如果小于40,其实可以不需要再继续往下探讨。&/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-d6ffef73e_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1654& data-rawheight=&1028& class=&origin_image zh-lightbox-thumb& width=&1654& data-original=&https://pic1.zhimg.com/50/v2-d6ffef73e_r.jpg&&&/figure&&p&&br&&/p&&p&就上图的例子,我们追溯到曾经转账给盗盗的&b&有效交易记录&/b&有“小A转账给盗盗10 btc”、“小B转账给盗盗20 btc”、“小C转账给盗盗 25 btc”,我们需要将这三条交易记录合并成一条更复杂描述的交易记录,即 “( 小A转账给盗盗10 btc + 小B转账给盗盗20 btc + 小C转账给盗盗 25 btc ) 转账给张三40 btc ”&/p&&p&&br&&/p&&p&&b&第二步:判断是否需要找零&/b&&/p&&p&对追溯到的有效交易数字求和,如果发现大于需要支付的金额,需要将多出的数字重新支付给自己,相当于找零。对应生成了一条全新的交易记录(如下图)。&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-7be1de0c68192_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1614& data-rawheight=&796& class=&origin_image zh-lightbox-thumb& width=&1614& data-original=&https://pic3.zhimg.com/50/v2-7be1de0c68192_r.jpg&&&/figure&&p&&br&&/p&&p&就上图例子来说,我们最后合并成的交易记录 “( 小A转账给盗盗10 btc + 小B转账给盗盗20 btc + 小C转账给盗盗 25 btc + 盗盗转账给盗盗15 btc ) 转账给张三40 btc ” 事实上等同于“盗盗转账给张三40 btc”。其中“盗盗转账给盗盗15 btc”就可以理解找零。&/p&&p&&br&&/p&&p&&b&第三步:发出去,让全球节点认同和备份小纸条&/b&&/p&&p&这条内部重新处理过的复杂交易记录被塞进区块,埋到地下,等待节点挖出来,一旦区块被挖矿成功,并且该区块最终被连在了区块链的主链上。张三将最终拥有了这条交易记录,而先前的“小A转账给盗盗10 btc” 、“小B转账给盗盗20 btc” 、“小C转账给盗盗25 btc”都将被视为已经使用过的交易记录——从此被贴上“无效”的标签,意味着这些交易记录将永远不会再被追溯到。&/p&&p&&br&&/p&&p&我们最后一次重申,只是希望让你加深印象:拥有数字货币=拥有交易记录!&/p&&p&&br&&/p&&p&&b&通过设计巧妙的精巧密码学保证数据安全&/b&&/p&&p&&br&&/p&&p&记录着交易信息的小纸条借助区块这个载体,在分布式的网络中以不同的轨迹错综复杂的传递,我们前面说了,你真正拥有的数字资产实际上是一段交易信息,而不是你常规意义上理解的货币。所以这个过程就需要重点解决两个问题:&/p&&ul&&li&接受到的这条交易记录在传输过程没有被其他人所篡改&/li&&li&接受到的这条交易记录确实是由发起交易的人所创造&/li&&/ul&&p&&br&&/p&&p&在这里,我们需要事先引入两个知识点,可能稍微有点难消化,但都是计算机领域较为成熟的和基础的概念。&/p&&p&&br&&/p&&p&第一个知识点:SHA256()函数。你只需要知道,任意长度的字符串、甚至文件体本身经过SHA256函数工厂的加工,都会输出一个固定长度的字符串;同时,输入的字符串或者文件稍微做一丢丢的改动,SHA256() 函数给出的输出结果都将发生翻天覆地的改变。注意,SHA256()函数是公开的,任何人都能使用。&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-10adf960a686_b.jpg& data-size=&normal& data-rawwidth=&1146& data-rawheight=&492& class=&origin_image zh-lightbox-thumb& width=&1146& data-original=&https://pic2.zhimg.com/50/v2-10adf960a686_r.jpg&&&figcaption&上图,仅仅一个小数点的变化,输出的结果已经翻天覆地&/figcaption&&/figure&&p&&br&&/p&&p&第二个知识点:非对称加密。你也只需要了解,任何人手里都有两把钥匙,其中一把只有自己知道,叫做“私钥”,以及一把可以公布于众,叫做“公钥”;通过私钥加密的信息,必须通过公钥才能解密,连自己的私钥也无解。公钥可以通过私钥生成多把。&/p&&p&&br&&/p&&p&有了这些知识点的加持,上面两个问题开始变得有解。下面我们来看下内部是如何扭转和工作的吧,这里拿“小A 转账给了小B 100元钱” 举例: &/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-e99919c04bbd8d9f0ff6a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1234& data-rawheight=&906& class=&origin_image zh-lightbox-thumb& width=&1234& data-original=&https://pic4.zhimg.com/50/v2-e99919c04bbd8d9f0ff6a_r.jpg&&&/figure&&ol&&li&&b&第一步&/b&:小A会先用SHA256函数对自己的小纸条进行处理,得到一个固定长度的字符串,这个字符串就等价于这张小纸条。&/li&&li&&b&第二步&/b&:小A使用只有自己知道的那一把私钥,对上面固定长度的字符串进行再加密,生成一份名叫数字签名的字符串,这份数字签名能够充分证明是基于这张小纸条的。你可以这么理解,在现实中,你需要对某一份合同的签署,万一有人拿你曾经在其他地方留下的签名复制粘贴过来怎么办?!最好的办法,就是在你每一次签名的时候,故意在字迹当中留下一些同这份合同存在某种信息关联的小细节,通过对小细节的观察可以知道这个签名有没有被移花接木。步骤一和步骤二的结合就是为了生成这样一份有且仅针对这条小纸条有效的签名。&/li&&li&&b&第三步:&/b&小A将「明文的小纸条」、刚刚加密成功的「数字签名」,以及自己那把可以公布于众的「公钥」打包一起发给小B。&/li&&li&&b&第四步:&/b&当小B收这三样东西,首先会将明文的小纸条进行SHA256()处理,得到一个字符串,我们将其命名为“字符串2”。然后,小B使用小A公布的公钥,对发过来的数字签名进行解密,得到另外一个“字符串1”。通过比对“字符串1”和“字符串2”的一致性,便可充分证明:小B接受到的小纸条就是小A发出来的小纸条,这张小纸条在中途没有被其他人所篡改;且这张小纸条确实是由小A所编辑。&/li&&/ol&&p&&br&&/p&&p&可以看得出来,加解密的过程几乎是一环套一环,中途任何环节被篡改,结果都是大相径庭。借助这一连串的机制,其实已经能够很好的在公开、匿名、彼此不信任的分布式网络环境中解决数字交易过程中可能遇到的很多问题。这个环节可能确实有点难理解,现在,我需要你停下来,静下心,花上几分钟闭目慢慢回味其中设计精湛的地方。&/p&&p&&br&&/p&&p&掌握了这部分知识以后,我们在这里回答一下前面没有解释清楚的问题,「节点对区块的检验」检验的到底是什么?实际上就是:&/p&&ul&&li&检验区块内的交易记录签名是否准确(是否被篡改)&/li&&li&检验区块内的交易记录输入值是否“有效”(是否使用过)&/li&&li&检验区块内的交易记录输入值的数字之和是否大于等于输出值的数字&/li&&li&…&/li&&/ul&&p&&br&&/p&&h2&# 重回“区块”和“区块链”的世界&/h2&&p&&br&&/p&&p&好了,对小纸条和交易记录的研究我们点到为止,其实信息量已经是巨大的了,让我们合上盖子,重回较大的实体、继续聊聊“区块”和“区块链”的话题。还记得,咱们在一开始讲到关于区块的特征吗?区块创造后被埋在地下,需要经过节点们马不停蹄的挖采、而且是凭运气的挖采才有可能获得——不仅仅如此,事实上他还有其他很多神奇的地方,比如说:&/p&&ol&&li&凭空产生的区块在刚刚创建的时候会形成一股强大的黑洞效应,它会尝试将这段时间全世界各个节点上产生的所有小纸条(交易记录)统统吸进来;在合上区块盖子之前,同时会在区块内放上一些数字货币以及其他一些东西。&/li&&li&区块拥有一个唯一的ID,但它只会在这个区块被节点成功从地下挖出来之后创建。这个ID至少会跟「区块内所有小纸条的集合」、「即将与之相连的上一个区块ID」以及「挖矿节点的运气值」等因素相关。既然前面我们已经简单了解了“SHA256()函数”这个东西,这里不妨透露给大家:“区块ID = SHA256(‘区块内所有小纸条的集合’+’即将与之相连的上一个区块ID’+‘挖矿节点的运气值’+’…’)” ;基于先前掌握的知识,然后你应该知道区块内任意一张小纸条的信息稍微做改动、或者节点挖矿运气好一点坏一点等等,当前区块的ID都会 “ biu~ ”的发生改变。&/li&&/ol&&p&&br&&/p&&p&基于上述1、2点,如果阅读足够仔细的同学可能会有些头大。在文章开头为了更好的描述,我在设计简化区块链系统的时候故意模棱两可了几个概念,这也许已经误导到了部分同学。这里不得不停下来和你一起修正下之前在你大脑中已经构建的区块链世界观。我们前面讲道,“在节点的视野里,大概每十分钟会凭空产生一个建立在自己平行宇宙世界的神奇区块”。如何正确去理解这句话呢?——拥有上帝之眼的你,可以这么拆解问题、看待问题:&/p&&ol&&li&同一个周期内,全网并不是产生唯一的一个区块等待挖掘;每个节点事实上都在周期性的创造区块和挖出区块;只是在某一个节点的视野里,它不能感知到另外一个节点上区块的产生。为何这里要特别强调“在某一个节点的视野里”,就是因为我们刚刚讲到,从区块的视角来说,区块的凭空产生,是基于即将与之相连的上一个区块ID;而从节点的视角来看,区块的凭空产生是基于当前节点区块链末尾的那个区块ID产生的。&/li&&li&全网会尽力控制在一个周期内只有一个节点能够成功挖出区块,但是不能够完全避免多个节点同时挖出区块的可能性;如何尽力控制?比如说,当大伙挖矿的热情高涨、工作效率提高,区块会被埋在更深更广的地方等。简而言之,通过提高工作难度,来维持这个平衡。另外,值得注意的:产生区块、挖出区块、校验区块,他们的时间周期近乎相同。&/li&&/ol&&p&&br&&/p&&blockquote&对于想从技术角度更加深入理解“区块”、“挖矿”本质的同学们,你们可以移步至我的专栏《&a href=&https://zhuanlan.zhihu.com/p/& class=&internal&&探索比特币“挖矿”和“区块”的数学本质&/a&》,其中涉及到一些比较复杂的数学和技术细节,相信阅读完那部分内容之后,你对区块链会有更加透彻的认知。当然,对于绝大多数的吃瓜群众,看完那边内容可能会让你更加困惑,如果你不是十分的喜欢追根究底的话,我建议你还是直接选择跳过那块吧。至少在我看来,即便少了那部分内容,也不影响我们去理解区块链的魅力。&/blockquote&&p&&br&&/p&&p&&b&分叉&/b&&/p&&p&&br&&/p&&p&现在,我们终于对“区块”这个概念有了更全面的认识,文章开头讲的故事就可以继续展开来絮叨絮叨:&/p&&p&&br&&/p&&p&假如几乎同一时间,「中国上海浦东新区张衡路」上的节点和「美国纽约曼哈顿第五大道」上的节点异口同声喊出来:“我挖到区块了!里面的小纸条都是有效的!奖励归我!”。其他节点也几乎同时参与了对这两个区块的校验,结果发现这俩都没毛病,各节点也开始犯困,因为在他们的视野里他们并不清楚最后哪一个区块应该会被主链接纳。算了!都连在自己区块链尾巴上吧,这时尴尬了,区块链硬生生的被分叉了!&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-adfe4cc811b04b86bd20_b.jpg& data-size=&normal& data-rawwidth=&1392& data-rawheight=&534& class=&origin_image zh-lightbox-thumb& width=&1392& data-original=&https://pic3.zhimg.com/50/v2-adfe4cc811b04b86bd20_r.jpg&&&figcaption&产生分叉&/figcaption&&/figure&&p&&br&&/p&&p&你肯定在想,那还得了,这种情况继续下去,每个节点的区块以及他们整理维护的小纸条都将变得不一样,这已经严重违背了区块链世界里第一大最基本原则——所有节点共同维护同一份数据。所以,为了解决这个问题,区块链世界引入了一条新的规则——拥有最多区块的支链将是真正被认可有价值的,较短的支链将会被直接Kill掉。&/p&&p&&br&&/p&&p&我们大伙都知道挖矿的过程存在巨大的工作量(如果没有任何难度,把区块扔在人群中,必然同一时间发现区块的节点数量将大大增加,也就会产生无数的支链,通过这个例子,你大概也就能够明白,比特币的区块链世界为什么需要设置工作难度了吧),并且在计算机的硅基世界里,不可能出现所谓 “同时” 的概念,哪怕纳秒的差别,那也总是会有先后顺序。所以理论上,“分叉”的这种僵局很快会在下一个区块被挖掘出来(以及校验区块)的时候被打破,实在不行下下个,或者下下下个……总之机制可以让整个分叉的区块链世界迅速稳定下来。&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-ea23dae6e0f6cd2d072d1_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1402& data-rawheight=&980& class=&origin_image zh-lightbox-thumb& width=&1402& data-original=&https://pic3.zhimg.com/50/v2-ea23dae6e0f6cd2d072d1_r.jpg&&&/figure&&p&&br&&/p&&p&“分叉”这种僵局在确认下一个区块(以及校验小纸条)的时候被打破,从而整个区块链世界迅速稳定下来&/p&&p&&br&&/p&&p&就上图而言,所有基于张衡路节点挖矿获得的区块以及后续区块的那条分支被视为有价值,最终会全部保留了下来;其他节点会统一效仿那个拥有更长分支链的节点所做的决策。另外,值得一提的是,同一时间,较短分支上的区块会立即丢弃,而里面的小纸条也会随之释放出来,被重新标记上“未确认”。&/p&&p&&br&&/p&&p&&b&“双花”与“51%攻击”&/b&&/p&&p&&br&&/p&&p&你可能已经开始困惑或者有点兴奋,末尾几个区块的排序在修复过程中,因为时间差肯定会产生一些模棱两可的地方,这往往会给数据安全埋下一颗雷。一个最简单的假设——我记录的一张小纸条很不巧地被归在了一条较短的支链上,这条支链在竞争过程中理所当然输掉了比赛,区块被丢弃、小纸条被无情的贴上“未确认”的标签。在等待下次区块重新确认的过程中,这个时间差内,我,好像、似乎可以做点什么坏事 ?(?﹃??) ,就比如说“双花”(双花,花两次,双重支付的意思)&/p&&p&&br&&/p&&p&你脑海中也许很快浮过的这样的构想,可不可能通过下面这种方法触发双花问题的产生,从而让我不劳而获:&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-82f01cc16cbd1ffb75723db_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1592& data-rawheight=&994& class=&origin_image zh-lightbox-thumb& width=&1592& data-original=&https://pic4.zhimg.com/50/v2-82f01cc16cbd1ffb75723db_r.jpg&&&/figure&&p&&br&&/p&&ol&&li&假设有一个名叫X-Man的坏家伙,他控制了一个计算机节点,这个节点拥有比地球上任何一个节点算力都强大的计算机集群。&/li&&li&首先,X-Man事先创造了一条独立的(不去广而告之)、含有比较多区块的链条。其中一个区块里放着“X-Man转账给X-Man 1000元”的纸条。&/li&&li&接着,X-Man跟张三购买了一部手机,他在小纸条上记录下“X-Man转账给张三1000元”。张三已经比一般的卖家谨慎了,他在这条信息被三次确认后(即三个区块被真实挖出、校验和连接)才将手机给了X-Man。按照我们之前的理解,这条交易记录已经板上钉钉永远无法被串改。&/li&&li&X-Man拿到手机之后,按下机房的开关,试图将先前已经创造的区块链条连接在自己这个节点区块链的末尾。&/li&&li&大功告成,X-Man拥有了一条更长的区块链条,那些较短、存放着“X-Man转账给张三1000元”的区块链,以及在区块链世界里那则真实转账行为被一同成功销毁。(???)&/li&&/ol&&p&&br&&/p&&p&事实真的如此吗?在这里我可以很负责任的说,too young too simple,区块链世界规则的制定远比我们想象的要健全很多,还记得我们之前讲的“区块的ID至少会跟区块内所有小纸条的集合、即将与之相连的上一个区块ID、当前产生区块的时间戳以及挖矿节点的运气值等因素相关”。 在这里,正是因为打算连接到主链的过程中,主链会立马意识到,那条事先准备的链子(的第一个区块)的时间戳存在异常,不属于当前区块链世界里线性增长的时间戳,于是马上意识到这个事先准备的链子(的第一个区块)是无效的,需要重新计算。 &/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-5ac7eb9be1b20e59974a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1646& data-rawheight=&980& class=&origin_image zh-lightbox-thumb& width=&1646& data-original=&https://pic2.zhimg.com/50/v2-5ac7eb9be1b20e59974a_r.jpg&&&/figure&&p&&br&&/p&&p&在区块链的世界,重新计算的行为等同于把自己(节点)置身于同一个起跑线,跟世界上其他所有的节点一同竞争挖矿。你会说,我拥有更强大的计算能力,但是对不起,跟你竞争的对象并不是第五大道、南京西路、香榭丽舍大道上的某一个节点,而是全球所有算力的集合,在这个集合中,你拥有的算力永远都只是一个很小的子集。所以,根据区块链算力民主、少数服从多数的基本原则,这个构想将永远不会成立。&/p&&p&&br&&/p&&p&&b&除非....&/b&&/p&&p&&br&&/p&&p&你控制着全球51%的算力,这也就是区块链世界里另外一个著名的概念,叫做“51%攻击”,但这也仅仅是一个理论值,在真实世界里这样的攻击我个人觉得是很难发动起来的,这里面就牵涉到很多经济、哲学甚至政治的因素。举个最简单的例子:X-Man为了回滚刚刚发生的一笔交易记录,成功发起了51%攻击,这意味着很快整个区块链系统将会崩盘,因为这次攻击已经严重伤害到人们对这套系统的信任,接着比特币开始暴跌至几乎一文不值;但是这个拥有51%算力的X-Man原本完完全全可以通过挖矿的方式获取更多收益,购买无数的iPhone手机。那他不是脑袋不是坏了还能是啥?对51%攻击话题感兴趣的同学可以阅读这篇文章《&a href=&//link.zhihu.com/?target=http%3A//8btc.com/article-1949-1.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&什么是比特币51%攻击?&/a&》。&/p&&p&&br&&/p&&p&至此,我觉得区块链最基础、最核心的知识已经全部讲完了(除了挖矿内部实现原理,作为一个遗憾留在这里,有时间会完善掉),相信你已经对它有了一个宏观的认识。另外,由于这篇文章采用了适当抽象、类举的叙事方式,中间或多或少有些地方会跟区块链底层严谨的技术实现有出入,欢迎大家来纠错。另外,也是受限于自己知识结构的缺失,这篇文章会随着我对区块链更深入认识后,随时进行修订,最后更新时间可参考该回答下方的时间戳。&/p&&p&&br&&/p&&p&--&/p&&h2&问答部分&/h2&&p&&br&&/p&&p&&b&去中心化的系统中,到底是谁在发行货币?是无限量发行吗?&/b&&/p&&p&比特币的货币是通过挖矿(工作量证明)来发行的,总数量是通过程序写死了2100万个,而第一笔区块奖励也是硬编码写死的。矿工挖出一个区块所获得的奖励,每隔21万个区块将减少一半,按照平均10分钟挖出一个区块的执行效率,也就就说差不多每四年会锐减一次。2009年1月起每个区块奖励50个比特币,2012年11月减半为每个区块25个比特币,2016年7月减半为12.5个比特币。基于这个规则,到2140年,所有比特币(20,999,999,980)将全部发行完毕,之后不会再有新的比特币产生。&/p&&p&&br&&/p&&p&&b&矿工节点的收益除了挖出区块以外还有哪些?&/b&&/p&&p&矿工节点的收益主要由两部分组成:1)挖出新区块的奖励;2)挖出新区块内所含交易的交易费。但就目前来说,一个区块内的交易费大概只占到矿工总收入的0.5%甚至更少,大部分收益主要还是来自于挖矿所得的比特币奖励。然而,随着挖矿奖励的递减,以及每个区块中包含的交易数量增加,交易费在矿工收益中所占的比重将会逐渐增加。在2140年之后,所有的矿工收益将完全由交易费构成。&/p&&p&&br&&/p&&p&&br&&/p&&p&&br&&/p&&h2&&b&参考&/b&&/h2&&ul&&li&中心化与去中心化 &a href=&//link.zhihu.com/?target=https%3A//www.douban.com/note//& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&douban.com/note/6244212&/span&&span class=&invisible&&70/&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&图说区块链 &a href=&//link.zhihu.com/?target=https%3A//book.douban.com/subject//& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&book.douban.com/subject&/span&&span class=&invisible&&//&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&区块链是什么,如何简单易懂地介绍区块链? &a href=&https://www.zhihu.com/question/& class=&internal&&&span class=&invisible&&https://www.&/span&&span class=&visible&&zhihu.com/question/3729&/span&&span class=&invisible&&0469&/span&&span class=&ellipsis&&&/span&&/a& &/li&&li&什么是比特币51%攻击? &a href=&//link.zhihu.com/?target=http%3A//8btc.com/article-1949-1.html& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&8btc.com/article-1949-1&/span&&span class=&invisible&&.html&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&区块链与新经济:数字货币2.0时代 &a href=&//link.zhihu.com/?target=https%3A//book.douban.com/subject//& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&book.douban.com/subject&/span&&span class=&invisible&&//&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&詳解比特幣原理和運行機制 &a href=&//link.zhihu.com/?target=https%3A//www.youtube.com/watch%3Fv%3DP4seQcP77H4& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&youtube.com/watch?&/span&&span class=&invisible&&v=P4seQcP77H4&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&区块链是什么:从技术架构到哲学核心 &a href=&//link.zhihu.com/?target=https%3A//v.qq.com/x/page/x0518nuh2z7_0.html& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&v.qq.com/x/page/x0518nu&/span&&span class=&invisible&&h2z7_0.html&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&区块链核心算法解析 &a href=&//link.zhihu.com/?target=https%3A//book.douban.com/subject//& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&book.douban.com/subject&/span&&span class=&invisible&&//&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&深入理解比特幣的安全性及程式交易安全性與相關的密碼學原理 &a href=&//link.zhihu.com/?target=https%3A//www.youtube.com/watch%3Fv%3D3w1Tg3B_oKQ& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&youtube.com/watch?&/span&&span class=&invisible&&v=3w1Tg3B_oKQ&/span&&span class=&ellipsis&&&/span&&/a& &/li&&li&深度了解区块链——拜占庭将军问题深入探讨 &a href=&//link.zhihu.com/?target=https%3A//wallstreetcn.com/articles/338061& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&wallstreetcn.com/articl&/span&&span class=&invisible&&es/338061&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&精通比特币-挖矿与共识 &a href=&//link.zhihu.com/?target=http%3A//zhibimo.com/read/wang-miao/mastering-bitcoin/Chapter08.html& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&zhibimo.com/read/wang-m&/span&&span class=&invisible&&iao/mastering-bitcoin/Chapter08.html&/span&&span class=&ellipsis&&&/span&&/a&&/li&&/ul&
友情提醒:比特币采用区块链技术,但是区块链并不等同于比特币;全篇基于比特币底层区块链技术讲述,所以,部分模型可能不适用于以太坊等。另外,由于文章采用了一定的抽象、类举的叙事方式,中间或多或少有些地方会跟区块链底层严谨的技术实现有出入,如果…
&figure&&img src=&https://pic2.zhimg.com/v2-b4f70fe9f5115ecad134df_b.jpg& data-rawwidth=&700& data-rawheight=&394& class=&origin_image zh-lightbox-thumb& width=&700& data-original=&https://pic2.zhimg.com/v2-b4f70fe9f5115ecad134df_r.jpg&&&/figure&&blockquote&作者:阮一峰&br&来源:&a href=&https://link.zhihu.com/?target=http%3A//www.ruanyifeng.com/blog/2018/01/bitcoin-tutorial.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&比特币入门教程 - 阮一峰的网络日志&/a&&/blockquote&&p&比特币(bitcoin)诞生于2008年的一篇&u&&a href=&https://link.zhihu.com/?target=https%3A//bitcoin.org/en/bitcoin-paper& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&论文&/a&&/u&。&/p&&p&一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有任何人负责,你把它当作钱付给对方,怎么会有人愿意接受?&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-b4f70fe9f5115ecad134df_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&700& data-rawheight=&394& class=&origin_image zh-lightbox-thumb& width=&700& data-original=&https://pic2.zhimg.com/v2-b4f70fe9f5115ecad134df_r.jpg&&&/figure&&p&&br&&/p&&p&但是,狂想居然变成了现实。随后的几年,在全世界无数爱好者的支持下,比特币网络运行起来了,越来越多的人和资本参与,星星之火,终成燎原。刚刚过去的2017年,比特币迎来了爆发式的增长,从年初的1000美元,最高涨到了2万美元,全世界都为之震动,上到政府,下到普通百姓都在关注。事实就是比特币已经并将继续改变世界。&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-2fefa162bcac74585edd6af8e8d7386b_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&640& data-rawheight=&532& class=&origin_image zh-lightbox-thumb& width=&640& data-original=&https://pic3.zhimg.com/v2-2fefa162bcac74585edd6af8e8d7386b_r.jpg&&&/figure&&p&&br&&/p&&p&新闻媒体往往只关注它的火爆表现,忽视或者无法回答一些基本的问题。&/p&&ul&&li&比特币的原理是什么?&/li&&li&为什么这个无人管理的体系可以成功运作?&/li&&li&比特币交易的流程是怎么回事?&/li&&li&它与区块链又是什么关系?&/li&&/ul&&p&&br&&/p&&p&下面,我尝试回答这些问题,希望帮助大家理解比特币。抛开技术细节,还是很容易解释的。&/p&&p&有一点说明,本文只讨论技术问题,不涉及如何投资比特币,更不会预测价格走势。事实上,我也不知道,如果我知道怎么发财,可能就不会在这里写博客了。&/p&&p&&br&&/p&&h2&一、非对称加密&/h2&&p&&br&&/p&&p&首先,理解比特币,必须理解&u&&a href=&https://link.zhihu.com/?target=http%3A//www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&非对称加密&/a&&/u&。&/p&&p&你可能听说过这个词,所谓非对称加密,其实很简单,就是加密和解密需要两把钥匙:一把公钥和一把私钥。&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-27a55fd5a63daf37c6a49cc3_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&266& data-rawheight=&181& class=&content_image& width=&266&&&/figure&&p&&br&&/p&&p&公钥是公开的,任何人都可以获取。私钥是保密的,只有拥有者才能使用。他人使用你的公钥加密信息,然后发送给你,你用私钥解密,取出信息。反过来,你也可以用私钥加密信息,别人用你的公钥解开,从而证明这个信息确实是你发出的,且未被篡改,这叫做数字签名(更详细的介绍请看&u&&a href=&https://link.zhihu.com/?target=http%3A//www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&《什么是数字签名》&/a&&/u&)。&/p&&p&现在请设想,&b&如果公钥加密的不是普通的信息,而是加密了一笔钱,发送给你,这会怎样?&/b&&/p&&p&首先,你能解开加密包,取出里面的钱,因为私钥在你手里。其次,别人偷不走这笔钱,因为他们没有你的私钥。因此,支付可以成功。&/p&&p&这就是比特币(以及其他数字货币)的原理:非对称加密保证了支付的可靠性。&/p&&p&由于支付的钱必须通过私钥取出,所以你是谁并不重要,重要的是谁拥有私钥。只有拥有了私钥,才能取出支付给你的钱。(事实上,真实的交易流程稍有不同,私钥保证的不是取出支付给你的钱,而是保证只有你能把这些属于你的钱支付出去,详见后文。)&/p&&p&&br&&/p&&h2&二、比特币钱包&/h2&&p&&br&&/p&&p&对于比特币来说,钱不是支付给个人的,而是支付给某一把私钥。这就是交易匿名性的根本原因,因为没有人知道,那些私钥背后的主人是谁。&/p&&p&所以,&b&比特币交易的第一件事,就是你必须拥有自己的公钥和私钥。&/b&&/p&&p&你去网上那些比特币交易所开户,它们会让你首先生成一个比特币钱包(wallet)。&b&这个钱包不是用来存放比特币,而是存放你的公钥和私钥。&/b&软件会帮你生成这两把钥匙,然后放在钱包里面。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-cfa2f264f393c0_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&400& data-rawheight=&400& class=&content_image& width=&400&&&/figure&&p&&br&&/p&&p&根据协议,公钥的长度是512位。这个长度不太方便传播,因此协议又规定,要为公钥生成一个160位的指纹。所谓指纹,就是一个比较短的、易于传播的哈希值。160位是二进制,写成十六进制,大约是26到35个字符,比如 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2。这个字符串就叫做钱包的地址,它是唯一的,即每个钱包的地址肯定都是不一样的。&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-63dacbfc3038ce20fbfaf8_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&617& data-rawheight=&554& class=&origin_image zh-lightbox-thumb& width=&617& data-original=&https://pic2.zhimg.com/v2-63dacbfc3038ce20fbfaf8_r.jpg&&&/figure&&p&&br&&/p&&p&你向别人收钱时,只要告诉对方你的钱包地址即可,对方向这个地址付款。由于你是这个地址的拥有者,所以你会收到这笔钱。&/p&&p&由于你是否拥有某个钱包地址,是由私钥证明的(具体的证明方法稍后介绍),所以一定要保护好私钥。这是极其重要的,如果你的私钥被偷了,你的比特币也就等于没了,因为他人可以冒用你的身份了,把钱包里面的钱都转走。&/p&&p&同样的,你向他人支付比特币,千万不能写错他人的钱包地址,否则你的比特币就支付到了另一个不同的人了。&/p&&p&&br&&/p&&h2&三、交易过程&/h2&&p&&br&&/p&&p&下面,我把整个流程串起来,看看比特币如何完成一笔交易。&/p&&p&&b&一笔交易就是一个地址的比特币,转移到另一个地址。&/b&由于比特币的交易记录全部都是公开的,哪个地址拥有多少比特币,都是可以查到的。因此,支付方是否拥有足够的比特币,完成这笔交易,这是可以轻易验证的。&/p&&p&问题出在怎么防止其他人,冒用你的名义申报交易。举例来说,有人申报了一笔交易:地址 A 向地址 B 支付10个比特币。我怎么知道这个申报是真的,申报人就是地址 A 的主人?&/p&&p&比特币协议规定,申报交易的时候,除了交易金额,转出比特币的一方还必须提供以下数据。&/p&&ul&&li&上一笔交易的 Hash(你从哪里得到这些比特币)&/li&&li&本次交易双方的地址&/li&&li&支付方的公钥&/li&&li&支付方的私钥生成的数字签名&/li&&/ul&&p&&br&&/p&&p&验证这笔交易是否属实,需要三步。&/p&&blockquote&第一步,找到上一笔交易,确认支付方的比特币来源。&br&第二步,算出支付方公钥的指纹,确认与支付方的地址一致,从而保证公钥属实。&br&第三步,使用公钥去解开数字签名,保证私钥属实。&/blockquote&&p&经过上面三步,就可以认定这笔交易是真实的。&/p&&p&&br&&/p&&h2&四、交易确认与区块链&/h2&&p&&br&&/p&&p&确认交易的真实性以后,交易还不算完成。&b&交易数据必须写入数据库,才算成立,对方才能真正收到钱。&/b&&/p&&p&比特币使用的是一种特殊的数据库,叫做区块链(blockchain),详细的介绍请看&u&&a href=&https://link.zhihu.com/?target=http%3A//www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&《区块链入门教程》&/a&&/u&。本文只讨论交易如何写入区块链。&/p&&p&首先,所有的交易数据都会传送到矿工那里。矿工负责把这些交易写入区块链。&/p&&p&根据比特币协议,一个区块的大小最大是 1MB,而一笔交易大概是500字节左右,因此一个区块最多可以包含2000多笔交易。矿工负责把这2000多笔交易打包在一起,组成一个区块,然后计算这个区块的 Hash。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-b326e4a36bf693a51042_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&624& data-rawheight=&290& class=&origin_image zh-lightbox-thumb& width=&624& data-original=&https://pic4.zhimg.com/v2-b326e4a36bf693a51042_r.jpg&&&/figure&&p&&br&&/p&&p&计算 Hash 的过程叫做采矿,这需要大量的计算。矿工之间也在竞争,谁先算出 Hash,谁就能第一个添加新区块进入区块链,从而享受这个区块的全部收益,而其他矿工将一无所获。&/p&&p&一笔交易一旦写入了区块链,就无法反悔了。这里需要建立一个观念:&b&比特币不存放在钱包或其他别的地方,而是只存在于区块链上面。&/b&区块链记载了你参与的每一笔交易,你得到过多少比特币,你又支付了多少比特币,因此可以算出来你拥有多少资产。&/p&&p&&br&&/p&&h2&五、矿工的收益&/h2&&p&&br&&/p&&p&交易的确认离不开矿工。为什么有人愿意做矿工呢?&/p&&p&比特币协议规定,挖到新区块的矿工将获得奖励,一开始(2008年)是50个比特币,然后每4年减半,目前(2018年)是12.5个比特币。这也是比特币的供给增加机制,流通中新增的比特币都是这样诞生的。&/p&&p&你可能看出来了,每4年奖励减半,那么到了2140年,矿工将得不到任何奖励,比特币的数量也将停止增加。这时,矿工的收益就完全依靠交易手续费了。&/p&&p&所谓交易手续费,就是矿工可以从每笔交易抽成,具体的金额由支付方自愿决定。你完全可以一毛不拔,一分钱也不给矿工,但是那样的话,你的交易就会没人处理,迟迟无法写入区块链,得到确认。矿工们总是优先处理手续费最高的交易。&/p&&p&目前由于交易数量猛增,手续费已经水涨船高,一个区块2000多笔交易的手续费总额可以达到3~10个比特币。如果你的手续费给低了,很可能过了一个星期,交易还没确认。&/p&&p&一个区块的奖励金12.5个比特币,再加上手续费,收益是相当可观的。按照目前的价格,可以达到100万~200万人民币。想想看,运气好的话,几分钟就能挖到一个区块,拿到这样一大笔钱,怪不得人们对挖矿趋之若鹜。&/p&&p&&br&&/p&&h2&六、区块的扩容&/h2&&p&&br&&/p&&p&&u&&a href=&https://link.zhihu.com/?target=http%3A//www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&《区块链入门教程》&/a&&/u&说过,比特币协议规定,平均10分钟诞生一个区块。区块的大小只有 1MB,最多只能包含2000多笔交易。也就是说,比特币网络每10分钟,最多只能处理2000多笔交易,换算一下,就是处理速度为3~5笔/秒。&/p&&p&全世界的比特币交易这么多,可是区块链每秒最多只能处理5笔,这已经成为制约比特币发展的一个瓶颈。&/p&&p&很早就有人呼吁,改革比特币协议,提升处理速度。这件事在2017年8月有了一点眉目,当时区块链发生了一次分叉,诞生了一个新协议,称为 &u&&a href=&https://link.zhihu.com/?target=https%3A//en.wikipedia.org/wiki/Bitcoin_Cash& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Bitcoin Cash&/a&&/u&(简称 BCH)。这种新货币其他方面都与比特币一致,就是每个区块的大小从 1MB 增加到了 8MB,因此处理速度提升了8倍,手续费也低得多。该协议是对原有区块链的分叉,因此当时持有比特币的人,等于一人获赠了一份同样数量的 BCH。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-0efa9b9fff2ecdf6_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&700& data-rawheight=&515& class=&origin_image zh-lightbox-thumb& width=&700& data-original=&https://pic4.zhimg.com/v2-0efa9b9fff2ecdf6_r.jpg&&&/figure&&p&&br&&/p&&p&BCH 等于创造了一种新货币,还有人提议,原始比特币的区块大小提升到 2MB,这称为 &u&&a href=&https://link.zhihu.com/?target=https%3A//en.wikipedia.org/wiki/SegWit2x& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&SegWit2x&/a&&/u& 。这个建议原定于2017年11月实施,但是最后一刻由于缺乏共识,就被取消了,目前还在讨论中。&/p&&p&&br&&/p&&h2&七、点对点网络&/h2&&p&&br&&/p&&p&比特币是一个全世界的开放网络,只要你有服务器,就能加入这个网络,成为一个节点。每个节点都包含了整个区块链(目前大概 100多 GB),并且节点之间时刻不停地在同步信息。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-0ec848941cadbbe57b1eaec_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&680& data-rawheight=&400& class=&origin_image zh-lightbox-thumb& width=&680& data-original=&https://pic4.zhimg.com/v2-0ec848941cadbbe57b1eaec_r.jpg&&&/figure&&p&&br&&/p&&p&当你发生了一笔支付,你所在的节点就会把这笔交易告诉另一个节点,直至传遍整个网络。矿工从网上收集各种新发生的交易,将它们打包写入区块链。一旦写入成功, 矿工所在节点的区块链,就成为最新版本,其他节点都会来复制新增的区块,保证全网的区块链都是一致的。&/p&&p&最后,你所在的节点也拿到了最新的区块链,从而得知你早先的那笔交易,已经写在里面了,至此交易确认成功。&/p&&p&&br&&/p&&h2&八、还有一个问题&/h2&&p&&br&&/p&&p&写到这里,我就介绍完了比特币的基本知识,希望你已经明白了比特币是怎么回事。但是还有一个根本的问题,我没有回答:比特币的本质到底是什么?&/p&&p&说到底,比特币只是区块链的一条记录,是凭空生成的,为什么可以当钱用?举例来说,矿工获得12.5个比特币的奖励,其实就是区块链有一个记录:&xxx地址获得12.5个比特币&。正是这行记录,导致该矿工获得了大笔金钱。如果区块链突然增加了一条记录,记载你的地址获得了1000个比特币,你就真的会有1000个比特币。这到底是为什么?&/p&&p&这篇文章已经够长了,这个问题就留到下次再谈,欢迎关注本系列的最后一篇文章《数字货币的本质》。&/p&&p&&br&&/p&&h2&九、参考链接&/h2&&p&&br&&/p&&ul&&li&&u&&a href=&https://link.zhihu.com/?target=https%3A//arstechnica.com/tech-policy/2017/12/how-bitcoin-works/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&How Bitcoin works&/a&&/u& , by Timothy B. Lee&/li&&li&&u&&a href=&https://link.zhihu.com/?target=http%3A//www.righto.com/2014/02/bitcoins-hard-way-using-raw-bitcoin.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Bitcoins the hard way: Using the raw Bitcoin protocol&/a&&/u&, by Ken Shirriff&/li&&/ul&&p&&br&&/p&&p&&b&推荐阅读:&/b&&/p&&p&&a href=&https://zhuanlan.zhihu.com/p/& class=&internal&&区块链入门教程&/a& &/p&&p&&a href=&https://zhuanlan.zhihu.com/p/& class=&internal&&斯诺登给普通人开发了个「反监控」的 App&/a& &/p&
作者:阮一峰 来源:比特币(bitcoin)诞生于2008年的一篇。一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有…
1、比特币最好是放在Bitcoin-qt的钱包里,并设置自己的密码加密,多一层保护。密码要尽量复杂,并用纸张做好多个备份放于不同的安全的地方。如果你觉得这还不够,使用Armory 离线钱包。&a href=&//link.zhihu.com/?target=https%3A//bitcoinarmory.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Armory - Simple. Secure. Solid.&/a&&br&2、使用Bitcoin-qt的钱包时要经常注意给钱包文件备份,备份于U盘、移动硬盘或者其他不上网的电脑中。尤其是当交易进行到100次时,尤其要注意备份钱包,原因详见&a href=&//link.zhihu.com/?target=https%3A//zh-cn.bitcoin.it/wiki/%25E4%25BF%259D%25E6%258A%25A4%25E4%25BD%25A0%25E7%259A%%%25E5%258C%2585& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&保护你的钱包&/a& 。&br&3、在兑换网站购买比特币,应尽快提现到自己的qt钱包内,因为兑换平台本身不是去中心化的,比较容易被黑客攻陷。MT.gox这个全球最大的兑换平台发生过多次账户被盗。投机者,长时间将比特币放平台上,想以此降低交易成本,无疑是因小失大。&br&不全之处,欢迎补充。
1、比特币最好是放在Bitcoin-qt的钱包里,并设置自己的密码加密,多一层保护。密码要尽量复杂,并用纸张做好多个备份放于不同的安全的地方。如果你觉得这还不够,使用Armory 离线钱包。 2、使用Bitcoin-qt的钱包时要经常注…
&p&提现,就是把你的比特币换成现金,绑定银行卡后,转到你的卡上,然后就可以拿着货真价实的人民币去潇洒了。&/p&&p&提币,就是把你在平台的虚拟货币(比特币)提到你的钱包里(手机/在线/桌面版钱包都可以。)&/p&&p&比如你担心平台的安全性,还是入袋为安,当然要把比特币提到自己的钱包才安全。&/p&&p&比特币钱包选择很多。&/p&&p&可以去 &a href=&//link.zhihu.com/?target=http%3A//bitcoin.org& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&bitcoin.org&/span&&span class=&invisible&&&/span&&/a& 去了解基础知识。&/p&&p&有中文的,不怕。&/p&&p&&br&&/p&&p&其实操作一遍就会了。&/p&&p&(目前国内最新监管的原因,已经部分不适用了)&/p&&p&可以去这里看看:&/p&&p&&a href=&//link.zhihu.com/?target=https%3A//localbitcoins.com/%3Fch%3Dd6fk& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Localbitcoins.com&/a&&/p&
提现,就是把你的比特币换成现金,绑定银行卡后,转到你的卡上,然后就可以拿着货真价实的人民币去潇洒了。提币,就是把你在平台的虚拟货币(比特币)提到你的钱包里(手机/在线/桌面版钱包都可以。)比如你担心平台的安全性,还是入袋为安,当然要把比特币…
&p&1。去国外平台买。但这个有点麻烦,资金很难出去。&/p&&p&2。去场外交易平台买。比如币看,localbitcoin,币信,比特派,BitcoinWorld。场外交易平台就是一个提供卖币和买币挂广告单和提供担保交易功能的软件,一般是一个网页或APP。&/p&&p&3。使用去中心化的交易所,比如bitshare,和openbazaar,bitsquare。但这些玩意都很难用。&/p&&p&4。找个人买。比如到论坛上去发帖,去微信群里叫买。最好是找熟人的人介绍,这样安全。你可以加我微信:,我可以帮你买。&/p&&p&另外请注意,交易比特币要特别注意安全,要做好实名认证,做好年担保,以名被人坑了。&/p&
1。去国外平台买。但这个有点麻烦,资金很难出去。2。去场外交易平台买。比如币看,localbitcoin,币信,比特派,BitcoinWorld。场外交易平台就是一个提供卖币和买币挂广告单和提供担保交易功能的软件,一般是一个网页或APP。3。使用去中心化的交易所,比如b…
已有帐号?
无法登录?
社交帐号登录
2140 人关注
734 条内容
427 人关注
204 条内容
3007 人关注
121 条内容
948 人关注
3426 条内容

我要回帖

更多关于 比特币怎么提现 的文章

 

随机推荐