探讨区块链货币 Bitcoin 的技术与风险

前言

近日 Bitcoin 被炒得热哄哄的,笔者也来赶上潮流,简单说明一下究竟 Bitcoin 是什麽一回事,也讨论一下 Bitcoin 这种区块链货币取代传统货币的可能性。大家炒卖之馀亦应了解 Bitcoin 背後的技术,否则,你真的有信心真金白银买入这些连你自己也无法解释的东西吗?请大家先看完本文,再衡量是否值得投资。

区块链货币

区块链货币 (Blockchain Currency) 是 Bitcoin 这种电子货币的统称,除了 Bitcoin 以外,网络上已出现超过一千款这种区块链货币了,比较有名的还有Ethereum 和 Litecoin 等。区块链货币与传统货币有以下几个分别:

分别1. 记账方式

传统货币主要依靠银行记账,例如每个月老板出粮给员工多以自动转账方式直接存入员工的银行户口,由银行负责保存记录,这就是所谓的中央记账系统。由於银行是有信誉的机构,我们很有信心由他们去修改和保存我们的存款纪录。而区块链货币则由世界各地的参与者一同记账,是分散式的记账系统,或称为去中心化结构 (Decentralized Structure)。但我们怎样确保参与者记下的是正确纪录呢?稍後说明。

分别2. 不受主权国家操控

主权国家会致力维护其发行的传统货币的价值,包括透过於市场买卖去稳定汇率,国家中央银行也可通过调整息率去调控经济,甚至可以主动发钞影响币值控制通涨。相反,区块链货币并非由国家发行,无法被主权操控,所以也被称为「自由的货币」。

分别3. 发行量有限

区块链货币会限制发行量以维持其价值,以 Bitcoin 为例,上限为 21,000,000 枚。现时 (2017年) 已发行的 Bitcoin 数量大约是 16,000,000 枚,新的 Bitcoin 会透过挖矿产生,这又是一个大家非常关注的话题,稍後说明。

分别4. 匿名拥有

传统货币可以透过户口资料确定拥有者,政府有权把违法者资产冻结或充公。而区块链货币则不需实名制,资产由谁人拥有无法追查,导致区块链货币迅速成为各地罪犯至爱,前阵子肆虐全球的勒索软体都要求受害者用 Bitcoin 缴付赎金。

账簿

区块链货币最让人谜思的是其记账方法。刚才说过,区块链货币用的是分散式记账系统,理论上所有参与者都拥有相同的账簿 (Ledger)。举例:Alice 给 Bob 10 元,Bob 给 Carol 20 元,Carol 给 Alice 5 元。这 3 条纪录称为 Transaction,全世界都会接收到这 3 条 Transaction 并且写进账簿之中。

block chain

谜思1. 可以制做虚构的 Transaction 吗?

如果 Bob 未经 Alice 同意,虚构一条 Alice 给 Bob 100 元的 Transaction 并发给全世界,能够成功吗?区块链货币是使用密码学上一种叫非对称式加密 (Asymmetric Encryption) 的原理,透过这种复杂的数学方法为 Transaction 加上数码签章 (Digital Signature),使其无法被伪冒,只有账户持有者可以产生 Transaction。非对称式加密中最具代表性的 RSA 加密演算法自 1977 年提出,至今也没人能找到一个有效的破解方法,使非对称式加密在网络保安上被广泛使用,例如:HTTPS 加密和 VPN 加密等。如有兴趣了解非对称式加密原理,可参考本网页介绍密码学的文章。由於使用到加密技术,所以区块链货币也被称为电子加密货币 (Cryptocurrency)。

block chain

谜思2. Transaction 的排序可被修改吗?

如果 Alice 起初只有 5 元,她是无法支付 Bob 10 元的,因为账簿不接受负数馀额。如果 Alice 尝试修改账簿里 Transaction 的顺序,让 Carol 先给自己 5 元,她便可以支付 Bob 10 元了。如何防止这个问题发生呢?

block chain

区块链货币使用 Hash 技术去防止这个问题。Hash 也是一种密码学技术,为账簿产生出一堆字串,相同的账簿所产生的字串必然相同,但只要账簿里有一丁点不同,所产生的字串完全变成另一回事。所以只要把产生的字串连同账簿一同发布,其他参与者收到後只要 Hash 一下账簿看看是否能够产生同一组字串便可验证账簿有没有被修改过。Bitcoin 使用 SHA256 来产生 256 Bits 的字串,字串相同机会只有 2^256 份之 1,近乎无可能。

block chain

谜思3. 人人都可发布账簿,该相信那一份?

刚才说过,账簿里少许变动都会让 Hash 字串大幅改变。区块链货币会邀请全世界进行一场竞赛,称为 Proof of Work,就是让大家在账簿末端任意加入一组数字,但规则是这组数字 (Special Number) 必需使 Hash 值首 30 Bits 全部是 0。最快找到这组数字的人可以发布这本包含 Special Number 的账簿,全世界就相信这本账簿。由於 Hash 无法逆向运算,要找出这组 Special Number 的唯一方法是逐一数字尝试,要成功找出来必需使用拥有庞大运算能力的电脑。包含此组特别 Special Number 和 Hash 值的账簿才是真正可信的纪录。

block chain

谜思4. 账簿太大了,影响处理效率

由於账簿记录了全球每一条 Transaction,容量实在太大了,而且每分每秒都在增加,为了方便管理和减少运算 Hash 值的时间,账簿会被分成很多细小的 Block (区块),但 Block 与 Block 之间必需有特定连系以确保其次序没有调乱,所以每个 Block 所计算出来的 Hash 值会被放到下一个 Block 的起始位置。这就组成一串长长的链,称为 Block Chain (区块链),区块链货币这个名字就是从这里出来。

block chain

挖矿

来到大家最关注的题目了,究竟何为挖矿?刚才说过,有效的 Hash 值需要运用庞大运算能力的电脑计算出来,涉及昂贵的硬件成本以及营运开支,有谁愿意为世人付出呢?所以区块链货币提供一些奬励给愿意付出的人士去维持整个分散式记账机制的运作。帮忙计算 Hash 值的志愿者都可以在 Block 内加入一条特殊的挖矿 Transaction (增加少量货币给自己的帐户),一旦成功算出 Hash 值,则 Block 生效并且被发布出去,他就能赚取该些区块链货币,成功挖矿了。

block chain

分散式挖矿

分散式挖矿的道理很简单,10 台电脑提供的运算能力比 1 台好,100 台比 10 台好。分散式挖矿就是由一台机器透过网络操控多台挖矿机同时找寻 Special Number。有人就利用这个概念造出病毒来控制网络上的电脑或手机一同进行挖矿,病毒程式码可能感染程式或手机 Apps,也可能被殖入网页,使用者在不知不觉间被盗用电脑的运算能力进行挖矿,当然挖矿所得属控制者所有。笔者认为分散式挖矿如果可以被善意利用的话,可能得出一套新的商业模式。举例:网络游戏商提供免费游戏给玩家,但预先告知玩家游戏程式会利用电脑或手机的少部份运算能力进行挖矿,玩家可以免费玩游戏之馀,游戏商也得到收入。

风险因素

所以区块链货币值得投资吗?它真的可以取代传统货币吗?笔者对区块链货币仍抱着观望态度,主要考虑到以下风险因素。

风险1. 加密技术被破解

区块链货币建基於非对称式加密技术,虽然暂时仍没有被破解,但电脑运算速度一日千里,有利於暴力解密 (即不断尝试密码或钥匙直至成功解密的一种破解方法)。而发展当中的量子电脑技术更加是加密技术的尅星,一旦研究取得成果,现存的加密技术会否面临重大挑战?

风险2. 政府打压

主权国家必会维护自己能够操控的传统货币,去维持经济和政治稳定。虽说电子货币在未来势必取代实体货币,但由政府认可机构牵头的形式比起这种自由自在的货币成功机率会不会较大呢?毕竟并非所有国家都能够接受「自由」这概念。

风险3. 货币价值

货币之价值一向取决於大众对该种货币能换取货品的信任度,例如某国家政局动荡,大家担心该种货币不可靠,价值自然下跌。然而,现时区块链货币之价值似乎建构於大家对其取代传统货币之愿景,会不会是市场炒作多於事实?

风险4. 投资挖矿值得吗?

如考虑投资大量金钱购买高效能电脑去挖矿,则需留意硬件速度每年递增,今年投资的挖矿机下年已经比别人新买的慢,成功挖矿的机率只会逐年递减,所以收益能否抵消置换过时硬体的成本呢?

风险5. 缺乏监管

如区块链货币有天幸运地成为主流货币,拥有庞大运算能力的组织又会不会可以联合起来垄断 Hash 程序,从而控制大众的资产呢?

相關主題

发表回复

2021-07-22

Posted In: 其他技术 Others

Leave a Comment