科普文丨带你走近比特币背后的技术世界

摘要: 1. 比特币行业黑话详解\x0a\x0a2. 为什么比特币是多种技术的集大成者\x0a\x0a3. 比特币技术生态系统\x0a\x0a4. 如何能把比特币改造得更好\x0a\x0a5. 如何学习相关技术?

10-11 18:12 首页 InfoQ
作者|程显峰

编辑|小智


戳  「 阅读原文 」,获得短信提醒,不错过下次 InfoQ 大咖说直播!

回复: 比特币 ,获取视频下载。

1 比特币行业中有哪些“行话”?

中本聪发表比特币的论文快有 10 年了,相信大家在主流媒体上经常都能看到与之相关的新闻报道。比特币是一种数字资产,它完全存在于数字世界里,是人类第一次用完全虚拟的方式来有效传递价值的技术产品。

第一个要跟大家分享的是“私钥”,这是密码学领域的一个概念。一般我们登录微信、QQ 等都需要密码,这里的“密码”实质上是一种口令、一种凭证。而“私钥”则是非对称密码体制的一部分,是可以进行加解密计算、数字签名认证的。跟 QQ 密码类似,私钥是不能告诉他人的,一旦拥有比特币钱包的私钥,就如同拥有了这个钱包内所有的比特币,所以大家一定不要将私钥泄露给他人。

接下来我们来谈谈“共识机制”,共识机制是让分布全球的比特币记账者达成共识、形成唯一账本的方法。比特币采取的共识机制是“工作量证明”,这种方法让参与者通过计算,解出题目来让别人相信做了一定事情。

那最近常听到的“分叉”又是怎么回事呢?在共识机制作用下,会形成由一个接一个区块连接而成的比特币账本,如同一根链条一样。然而,不同的人对于比特币的未来有不同的想法,如同一个班原先都使用的红色作业本,突然有一半的人突然改用绿色作业本,则一个班就会形成两种互不兼容的作业本。最近新产生的比特现金,就是从原先比特币链上分叉出来的新币种。

我们经常听到“挖矿”这个词,参与比特币记账计算的过程就是挖矿。参与挖矿的人叫矿工,目前挖得一个区块的奖励为 12.5 个比特币,已经有专业的团队在做这件事情。专业的比特矿机非常高效,一台能顶数万台普通电脑的效果,所以很多感兴趣的人用自己电脑或云计算去挖矿,经济效益是抵不上的。

最近一些有关于“ICO”的新闻,ICO 就是首次代币发行,它借用数字资产的手段,借鉴传统股票发行,发行代币(Token)。ICO 跟众筹非常像,不过融到的不是现实世界的钱,而是数字资产,融资方通过变卖数字资产得到资金支持。

“区块链”这个词大家不会陌生,它是比特币的底层技术,它的提出是在比特币之后的,也是一堆技术的集合。区块链是一个可信的分布式记账体系,如何达成?如何分发?如何验证?这都是区块链会涉及的问题。现在所有其他的数字资产都是基于区块链,在某个方向(如计算速度)等进行改进而诞生的。

2 为什么说比特币是多种技术的集大成者?

比特币包含众多技术,“公私钥密码体制”在上世纪 70 年代就有了,“工作量证明”的共识机制在上世纪 90 年代反垃圾邮件就已有应用,“P2P 网络”也不是什么新的概念,大家熟悉的 BT、电驴下载等都用了这项技术。

而比特币则把它们都揉在了一起,正如乔布斯当年发布 iPhone 一样,传感器、触控屏、播放器等等都不是苹果公司发明的,但乔布斯把它们组合在了一起,开启了智能手机的新时代。

因为比特币的出现,密码学研究在近几年突飞猛进,大量程序员、工程师等技术人才进入研究,矿工们也因比特币有利可图,不断升级矿机,从最初个人电脑的 CPU 到 GPU,再到可编程逻辑门阵列(FPGA),再到目前的专用集成电路(ASIC)。可以说,比特币集成众多的成熟技术,而火热的比特币行业又反过来促进这些技术的发展。

3 比特币行业的生态是怎样的?

比特币有完整的生态链。有矿机的厂商,简单来说他们就是卖电脑的,他们的工作是非常有挑战的,芯片的设计,设备的部署、运维,算法的有效调度,这些都需要很强的技术支持。现在世界上 70%-80% 矿机芯片都是中国产的,正如 Intel 垄断传统芯片业一样,矿机业的芯片大部分是被中国厂商垄断的。

行业内也有一些“矿池”,矿工将自己的算力投入矿池进行集体挖矿,一般会取得比独自挖矿更佳的收益。关于矿池,一个比较有意思的话题是智能调度,如果矿机能进行多种币种的挖矿,矿池能够智能地根据当前市场的币价甚至是未来的走势,完成矿池内算力在不同币种上的分配,进而达到整个组织效益最大化。

通常,人们会通过交易所参与买卖比特币。数字资产的交易所和传统股票等交易所比较相似,可靠性、安全性都会是非常重要的衡量指标。前些天有新闻,FBI 抓获了 BTC-e 的创始人,有媒体调侃:比特币的国际化就体现于,美国的 FBI 在希腊抓获了俄罗斯人。

在生态圈中,用户和矿工们的人数占比是最高的。几个月前,以太坊猛涨,矿工们认为挖矿有利可图,导致高端显卡一抢而光。甚至根据国外媒体报道,矿工曾租用一架波音 747 来运输刚购买的显卡。

4 怎么才能把比特币变得更好?

我们前面讲到,比特币是一次尝试用虚拟方式传递价值的实验,单从技术角度来说它暂时经受住了市场的考验,是比较成功的。但是,我们也有改进方法让这种模式变得更健壮、更高效。

比如莱特币,就在速度、容量上对比特币进行了改进。比特币非常安全——但这牺牲了大量的效率,比特币的处理速度仅有每秒钟七笔,而我们日常用的 Visa 等传统金融网络能处理的交易数大概是数十万笔每秒,可见比特币的速度远远不能满足我们的日常需求。今年年中莱特币采用了“闪电网络”这样的技术,把部分交易放于主链之外进行,极大提升了处理速度。

另一个非常有特色的币种是以太坊,以太坊独创了 EVM 虚拟机,能够以去中心化的方式来处理点对点智能合约。以太坊让我们不仅可以在网上执行交易,而且还可以运行代码。例如两个人之间借房款,传统方法是签订合同,到日期后实体执行还款;如果有了智能合约,则是通过代码,到日期后自动将钱款打回借款方,能不借助可信第三方来强制执行,极大便利了人们的生活。

5 如何学习比特币相关技术及常见问题?

首先可以从国内书籍入手,目前市面上已经有数十本关于比特币或区块链方面的书籍,但讲技术的书还不够多,可以选择性购买阅读。在国内书籍阅读完后,可以尝试买部分国外相关书籍,但这个行业日新月异,发展非常迅速,因此可以直接去相关项目官网,去读官方所给白皮书、文档及代码,关注代码变更。

另外还可以加入相关项目的讨论组、社区,国外用 Slack 用得比较多,可以加入他们,做部分贡献。在代码方面,区块链有 truffle 之类的框架,智能合约的语言也比较类似于 JavaScript,因此从事这方面的学习工作并不会像大家想象的那样困难。

Q1:学习智能合约可以做什么?

这个问题很有意思,其实可以相当于在二十年前问“学会写程序可以做什么”,当时这确实是个问题。同理,现在来看,学会写智能合约能做的事情暂时还不太清楚。目前部分招智能合约的相关人才就已经非常困难了,有较大的缺口;可能五六年后,智能合约相关的人才就非常热门了。

Q2:挖矿时的哈希值有什么用?

挖矿时的哈希值就是用来进行工作量证明的。哈希是一种单向不可逆的计算,可得到固定长度的原有信息的摘要。哈希有雪崩性,一点微小的改变也会造成最终结果的巨大变化;哈希有均匀性,它将结果值较均匀地分布于取值空间,并不会集中于一点;哈希有单向性,从最终结果来反推测出原信息是不可行的。比特币用哈希来进行工作量证明,矿工通过大量的计算才可能解决问题。

Q3:比特币的设计属性是什么?

比特币的设计更像黄金。比特币能代表一定价值,能被人们储藏以及能进行价值传递。

Q4:人民币的数字化与电子化有什么差别?

比如支付宝、微信与比特币类似的数字资产的差别,我认为,主要在发行机制和清算机制上。发行方面,我们熟悉的货币主要依赖于央行之类的机构的行政命令,但如果是去中心化的数字资产,则可以通过修改代码这样的技术手段来执行,这个过程效率是非常高的。清算方面,目前银行等金融机构间的接口标准可能是不统一的,如果是去中心化的数字资产,一般的人通过网络下载得比特币程序即可接入,使清算更标准规范。

作者介绍

程显峰,火币网 CTO,外号“技术圈的交际花”,会霸,野鸡金融家,好为人师,各种坑爹技术的推广者,翻译过《MongoDB 权威指南》。经常穿着浮夸,冒充记者出现在各种技术会议上。乐高爱好者,且经常因为抢玩具欺负家里的小孩儿。

今日荐文

点击下方图片即可阅读

为什么 30 岁的工程师容易跳槽?




首页 - InfoQ 的更多文章: