友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
聚奇塔 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

比特币:一个虚幻而真实的金融世界-第11部分

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



。9分;你可以宣传自己,但无法封杀别人的观点。

“比特币之父”中本聪在设计比特币模型时就将其设定成去中心化,其P2P网络模型和Facebook的架构类似。事实上,当技术条件成熟时,把去中心化的思想引入任何领域都将引爆群体智慧,都意味着这个领域将发生颠覆性的变革,正如博客之于出版、微博之于媒体、Facebook之于社交、网游之于娱乐、选票之于政治。就连极度中心化的苹果也是因其去中心化的开发平台App Store(应用商店)而大获成功。比特币则悄悄打开了金融业去中心化的第一扇窗户,这是第一个没有中央银行的货币体系,其货币的发行总量、发行速度、支付验证方式在一开始就由去中心化的数学模型设定。

P2P架构和安全通信

上网时,我们经常遇到的是C/S架构(客户机/服务器架构),例如新浪微博。这种架构的原理就是,大家一起连接到weibo。,所有信息都储存在新浪服务器上,我们通过服务器中转信息进行交流。这种架构的优点是简单快捷,但容易受到攻击。假如黑客把新浪微博黑了,或者新浪微博关了,整个体系就崩溃了。

还有一种架构叫P2P架构,例如下载工具电驴就属于这一种。这种架构的特点是:服务器并不是必要条件,每台联网电脑都是一个独立的个体,通过网络联到其他几台甚至成百上千台电脑,最后全球的电脑形成一个密密麻麻的网络。P2P网络的一大特点就是,一旦启动,就无法关闭。

在这个P2P网络上的所有电脑都直接或者间接地联通起来,某个节点上发出的信息最终可以扩散到全球所有的节点。举例而言,A在中国,B在美国,A和B的联通方式可以是直接连接,也可以是通过位于欧洲的C的电脑搭桥间接地连接。

P2P网络的联通不成问题,但是信任的问题比较突出。例如,A发出一条信息,目标对象是B,B通过P2P网络最终接收到此信息——可以是直接从A电脑传递过来的,也可能是通过多台电脑转手传递过来的——B会产生两个问题:第一,这条信息到底是不是A电脑发送的?第二,信息传递过程中如何确保不被帮忙传递信息的C、D甚至更多人偷窥到信息原始内容。

这就回到了我们讲过的非对称加密技术。在刚才的例子中,假如A要发送一条信息给B,确保这个信息只有B才能解密,那么A就用B的公钥(公钥是公开的,整个P2P网络都知道B的公钥)加密原始信息,这条信息传播到整个P2P网络,虽然所有电脑都有B的公钥,但是用公钥无法解密这条信息,最后B收到这条信息,用自己的私钥就能够轻松地解密这一信息。

那么,A怎么证明自己是这条信息的发送者呢?在网络上,任何人都可以把自己伪装成任何人,B收到信息时,可能传递信息给B的那台电脑会声称它就是A,那么B是否就轻易相信那台电脑就是A呢?不能,因为很可能是那台电脑伪装成A。

A要想证明给B的信息是由自己发出的,只需完成下面这两个步骤:第一步,用A的私钥对原始信息做第一层加密;第二步,在上一步获得的数据基础上再用B的公钥做第二层加密。第一层加密的目的是为了证明这个信息是由A加密并发出的,因为只有A的私钥才能完成这样的加密,这一步也叫作数字签名;第二层加密的目的是确保信息只有B能够解密,因为B的私钥只有B电脑才有。

B收到这个加密的信息后,以相反的顺序做两次解密操作即可:第一步,用B的私钥解密收到的信息;第二步,在第一步获得的数据基础上用A的公钥再次解密。第一步顺利完成,可以确保信息只有B自己能够解密,其他人是无法解密的;第二步顺利完成,B就获得了原始信息,同时也表明这条信息确实是由A的私钥加密生成,排除了是被别人伪造的可能。

有了这一技术保障,即使在匿名的互联网环境中,我们也不必再纠结于通信的安全性,而可以将注意力集中在比特币的体系架构上来。

比特币的本质

在网络上浏览比特币相关的网页时,总是可以看到各种印着“B”符号的硬币,仿佛那就是比特币。实际上,那只是爱好者自己铸造的玩具,和比特币没有丝毫关系。比特币并不是任何有形的硬币,也不是大家想象的一段数据,同样也没有办法把某些比特币从整个系统中分离出来。比特币的本质是一个互相验证的公开记账系统,其工作就是记录所有账户发生的交易。每个账号的每一笔资金流动都被记录在账本里。而且,每个人手上都有一份完整的账本,每个人都可以独立统计出比特币有史以来每个账号的每一笔流动,当然,也能算出任意账号当前的余额是多少。

这里最关键的一点在于:每人手上都有完整的账本,这个系统里没有任何人拥有唯一决定权。这意味着没有人可以决定向这个系统增加货币或者改变规则,因为个体的修改会被整个网络否决。除非有人可以修改50%以上的人手上的账本,这就是比特币系统里所谓的51%攻击。

比特币客户端Bitcoin…QT启动时会进行大量的数据同步,Bitcoin…QT只告诉我们说这是在进行数据同步,但我们并不知道这是什么数据以及为什么要这么做。实际上,同步的是比特币世界的所有交易记录,这部分数据保障了整个体系的去中心化和每个客户端的一切知情权。而不需要下载交易数据的轻客户端,如Electrum则是去几个提供交易数据查询功能的服务器查询特定账号的记录,由于这些数据全部是公开的且带有严密的校验,任何查询服务器都没有必要也不可能伪造数据。所以,即使轻客户端带来了部分中心化效果,实际上对全局的去中心化并没有什么影响。

比特币还有几个令人十分困惑的问题,就是我的地址里拥有的那些币究竟在哪里?备份钱包是把里面的币备份了吗?在现实中,我们知道钱是什么,因为可以直接掏出来看;我们也知道自己的钱在哪里,要么是现金,要么存在银行,要么在诸如证券交易所一类的机构。而比特币系统只是所有交易的记录,这里只关心某个账号里是否有币、有多少币,而币本身是抽象的,大家并不知道它具体是个什么东西。某个地址拥有的比特币数额存在每个人的客户端数据里,大家都知道你有币就可以了。所以当我们备份钱包时,其实只是在备份对自己比特币地址的所有权。

地址是什么

在现实生活中,如果需要一个银行账户,就需要去银行排队开户,然后拿到银行分配的一串数字账号,之后才能使用银行功能。而在比特币体系里,我们的账户似乎并不需要谁来开设,本地客户端自动生成即可;我们不需要向任何第三方公布,对方就可以直接向我们的账户转账;账户的形式也非常奇特,比如1H4AG73nXz5to9zWkH4GUZEH1Nuey8EVjJ。

刚接触比特币的用户印象最深的大概就是这一长串乱码般的地址,它给人的第一感觉是不明觉厉'3',第二反应就是特别容易输入错误。幸运的是,绝大部分时候并不需要手工输入比特币地址,通常是通过复制粘贴或者二维码扫描的方式。即便万一需要手工输入,比特币地址的校验机制也会提醒你账号不正常,以免出错。

可是,这一串地址到底是什么?会不会和别人的重复?

这里先回忆一下前面讲过的非对称加密技术。简单来说就是通过一套数学办法,产生一对密钥A和B,若使用A加密一份数据,必须使用B来解密;而使用B来加密数据,则必须用A才能解开;而且根据A可以很轻松地计算出B,反过来则不行。A就叫私钥,B叫公钥。顾名思义,A是保密的,B是公开的。

所以,比特币地址其实就是一套非对称技术的公钥,这套技术就是椭圆曲线算法,而和公钥对应的私钥实际上就在钱包文件里藏着。因为公钥和私钥需要使用特殊的算法成对生成,所以比特币地址不能像普通密码一样人为设置,而且看起来也没有什么规律。按照私钥保密、公钥公开的原理,比特币地址可以告知任何人,但钱包文件则必须妥善保管,一旦丢失,钱包就不安全了,而且由于整套体系的去中心化和匿名性,没有任何人有权力或能力找回丢失的比特币。

至于地址有多少,会不会和别人的重合?可以这么形容:如果每粒沙子里面都有一个地球,那么地址数大概等于地球上所有沙子里面的地球的沙子数的总和。如果你幸运地生成了一个有余额的其他人的地址,那你真的是太幸运了!如果愿意,这笔比特币就归你了!

支付的背后

由于比特币不存在现金交易的概念,一切交易都依靠账户间的转移,所以比特币的支付概念类似于银行转账。先看一下银行的转账过程:我们首先需要填写对方的账号和转账金额,本地一般会先检查一下余额是否充足,如果充足就把这个转账请求发送到银行数据中心,银行确认密码、U盾、对方账号等信息正确后,就把保存在银行数据库中的本地账号减去一个金额,同时给对方账号加上一个金额,然后返回成功或失败的信息。

当存在银行这一官方机构时,上面的操作过程安全可靠,但比特币体系中并不存在任何类似于银行的这种可信机构,这里每个人都是平等的,同时每个人都不一定是可信的。事实上,比特币的转账机制也很简单。

假设A有100个比特币,他要转账给B。那么A写一条信息:从A的地址转账100个比特币到B的地址,然后用自己钱包里的私钥加密并将其传播到整个比特币网络上,网络上的人都用A的地址(公钥)解密验证这条信息确实是由A发出,而通过历史交易数据计算出A的地址确实拥有100个比特币,于是整个网络公认此次转账操作,A钱包中存款减少100个比特币,B钱包中存款增加100个比特币。

非对称加密技术可以使这个转账过程顺利实现,一切看起来都非常完美,但是其中有4个隐藏的问题:

1。整个网络这么大,什么时候才算转账成功?

2。上面说的是转账体系,那么货币创造体系是怎样的?没有央行负责统一发行,A的100个比特币最初是从哪里来的?

3。A如果作弊怎么办?方法一:A如果没有100个比特币而发出转账信息,整个网络则不理会他,因为大家都拥有网络中所有的交易信息,一计算就会发现A根本没有那么多钱,因此转账无效。方法二:A确实有100个比特币,但他同时向网络发出两个转账信息,一个是转账100个比特币给B,另一个是转账100个比特币给C。由于网络上电脑非常多,网络传递也有随机性,所以有的电脑是先收到转账给B的信息,有的电脑是先收到转账给C的信息,那么最终这个网络以哪条信息为准?

4。所有账户余额都是基于历史记录算出来的,那么如何确保历史记录安全而完整?假如有人要攻击比特币体系,他没有办法伪造他人转账信息,但作为比特币体系中的一员,他如果恶意删除自己的部分历史转账记录会怎样?

比特币系统创造性地发明了“挖矿”的概念,一举解决了上述4个问题。

天才的挖矿

挖矿是比特币体系里让新人特别费解的事情,居然可以从网络上挖出比特币,从哪里挖?拿什么挖?挖矿的本质是什么?

比特币的本质�
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!