从拜占庭将军问题出发,聊聊比特币能耗问题

  原创 | 点宽学院 作者 | 秦立春   全文字数 4131字,建议阅读时长 11 分钟。   2009年…

  原创 | 点宽学院 作者 | 秦立春

  全文字数 4131字,建议阅读时长 11 分钟。

  2009年1月,比特币创世区块诞生,此后十余年,比特币开始频频出现在人们眼前,人们对比特币的的态度从最开始的迟疑观望到观点对撞,再到今天,比特币最近一次出现在人们视野范围内,伴随着的是一项令人瞠目结舌的数据:比特币年耗电量达到惊人的115.54twh,这个数值相当于三峡水电站全年发电量,供给百万人口的县城可用约130年。在碳中和的大趋势下,比特币的能源消耗和其所谓的对环境有害的碳排放水平再一次将其推上风口浪尖。比特币为何会产生如此大的能源消耗?要想回答这个问题要从所谓的“挖矿机制”开始讲起。

  在比特币世界中,比特币网络通过“挖矿”来生成新的比特币。所谓“挖矿”实质上是用计算机解决一项复杂的数学问题,来保证比特币网络分布式记账系统的一致性。比特币网络会自动调整数学问题的难度,让整个网络约每10分钟得到一个合格答案。随后比特币网络会新生成一定量的比特币作为区块奖励,奖励给第一个获得答案的人。

  作为一种事先约定总量(2100万)的虚拟货币,时至今日,比特币已开采超88%。为了保证比特币资源短期内不至于枯竭,比特币对奖励机制上做出规定:比特币奖励采取二分法,在比特币诞生初期,区块奖励是50个比特币。诞生10分钟后,第一批50个比特币生成,此时的货币总量就是50。随后比特币就以约每10分钟50个的速度增长。当总量达到1050万时(2100万的50%),区块奖励减半为25个,以此类推。时至今日,比特币区块奖励已从最开始的50降为6.25。

  伴随着奖励数量的减少,想要获得更多的比特币奖励势必要增加“挖机”的数量,相对应的就是更高的能耗。

  但“挖机”数量的增加其实仅是造成能耗问题的表象,造成这一现状的最深层的原因需要回到挖矿机制的实质——基于算力竞赛提出的“工作量证明”。要弄清楚“工作量证明”是什么,我们需要回到比特币诞生之前,研究一个信息传播领域中困扰计算机学家数十年的问题——拜占庭将军问题。

  

  所谓拜占庭帝国问题是计算机学家莱斯利·兰伯特在研究分布式系统容错性的时候时所虚构的背景故事,故事内容大致如下:历史上的拜占庭幅员辽阔,坐拥十支强大的军队,为了抵御外敌入侵,每支部队之间相隔甚远,将军之间只能靠信使传递消息。当发生战争时,只有超过半数以上的将军达成共识,才能赢得此次战争的胜利。但每支部队中都可能存在叛徒或间谍,这些叛徒或间谍可能会策反将军或是篡改信息,传递错误的信息扰乱其他将军的判断。当帝国命令攻占邻邦,但具体时间交由各位将军进行自行协定且已知有成员谋反的情况下,将军面临如何在不受叛徒影响的情况下达成多数共识的问题,这就是拜占庭将军问题。

  拜占庭将军问题实际想要说明在互联网背景下,当需要与不熟悉的主体进行价值交换活动时,人们如何采取措施避免被蓄意者欺骗、迷惑而做出错误的决策。或者说,在缺少可信赖的中央服务器以及可信任的通道的情况下,各节点之间应如何达成共识。归结起来,拜占庭帝国问题想要解决的是互联网交易合作过程中存在的四个核心问题

  
1、信息发送的身份追溯;

  2、信息的私密性;

  3、不可伪造的签名;

  4、发送信息的规则。

  区块链的出现为这四个核心问题提供了解决方案。在中本聪提出的比特币概念中,加密技术的使用解决了四个核心问题中的前三个问题,即信息发送的身份追溯、信息的私密性以及不可伪造的签名。基于哈希算法的“工作量证明”,也就是我们在文章一开头提出的造成比特币能耗问题的底层原因,为信息的发送设置了规则。二者共同促成了拜占庭将军问题的解决。

  首先从区块链所采取的加密技术开始讲起。在密码技术体系存在多种分类。但基本可以分为对称加密体系和非对称加密体系两大类。其中对称加密算法应用较早,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,需要用加密使用的密钥及相同算法的逆算法对密文进行解密,使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求双方方必须事先进行协商确定密钥,以确保一方的加密可以被另一方解密。

  

  而非对称加密算法使用的是两把完全不同但又是完全匹配的一对密钥—公钥和私钥。在使用非对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥进行解密。

  

  相较于对称加密算法,非对称加密算法花费的时间长、速度慢,只适合对少量数据进行加密。但在安全性方面,非对称加密算法有着对称加密算法不可比拟的优点。具体来讲,对称加密算法在加密和解密过程中使用的是同一把密钥,这要求加密方将密钥发送给解密方时,必须有不被监听的独立的安全通信信道。而且,当要向多个解密方发送信息时,加密方必须使用不同的密钥值对信息进行重复加密,随后再分别将密钥发送给解密方。

  而在非对称加密算法中,加密方首先用自己的私钥对信息进行签名,解密方将自己的公钥发送给加密方后,再由加密方利用解密方的公钥对文档进行加密。由于任何使用解密方公钥加密的信息只能由解密方的私钥进行解密,即使解密方的公钥被其他人知道,信息也不会发生泄露,所以公钥可以通过非安全通道进行发送。解密方收到信息后,就用自己的私钥解密信息,同时用加密方的公钥验证加密方的签名。

  比特币采取的正是非对称加密算法,这一算法通过加密解密中加密方的私钥签名解决了信息发送的身份追溯问题,加密解密过程解决了发送信息的私密性问题,个人拥有的非公开私钥解决了不可伪造的签名问题,也就是拜占庭将军问题四大核心问题中的前三个问题。

  现在还剩最后一个问题—发送信息的规则,即通信过程中各节点如何确定发送信息的规则以保证在信息传播过程中能够达成共识。

  区块链在解决这个问题时采取的方案是为发送信息加入成本,使得在一定时间内只能有一位将军广播信息,忠诚的将军在看到信息时会做出决定,而不会发布新的信息,以此作为传播信息的规则。这里所加入的成本就是我们在文章一开始提到的比特币能耗问题的深层原因—基于随机哈希算法的“工作量证明”。

  首先我们来了解一下什么是哈希算法。

  哈希(Hash)又称散列,哈希算法主要用于将任意长度的输入转换为固定长度的输出,这个输出值被称为散列值。它反映的是一种数据压缩映射关系,简单来说就是将做任意长度的消息压缩到某一固定长度的消息摘要。

  例如:

  

  哈希算法虽然被称为一种算法,但实际上更像是一种思想,因为它并没有一个固定的公式,只要符合散列思想的算法都可以被称作哈希算法。它具有如下四个特征:

  1、正向快速:给定明文和哈希算法,在有限的时间和资源内计算哈希值,相同输入的输出结果一致,效率高。

  2、不可逆性:给定任意的哈希值,在有限时间内很难逆推出明文,即已知输出无法逆推输入。

  3、输入敏感:如果输入的数据信息被轻微修改,输出的哈希值也会有很明显的变化。

  4、抗碰撞性:任意输入不同的数据,其输出的哈希值几乎不可能相同,如果给定一个数据块去找出其具有相同哈希值的数据块,是几乎不可能的。

  哈希算法的特征使其成为区块链记账过程中普遍采用的方法。区块链在记账时先将账页信息(包含序号、记账时间、交易记录)作为原始信息进行Hash, 得到一个Hash值。账页信息和Hash值进行组合一同构成第一个区块。在记第2个账页的时候,哈希函数会把上一个块的Hash值和当前的账页信息一起作为原始信息进行Hash,这样第2个区块不仅包含了本账页信息,还间接的包含了第一个区块的信息。依次按照此方法继续记账,组合起来就形成了区块链,它便于验证(只要验证最后一个区块的Hash值就相当于验证了整个账本),且不可更改(任何一个交易信息的更改,会让所有之后的区块的Hash值发生变化,这样在验证时就无法通过)。

  在对哈希算法有一个简要了解之后,我们再来讲一下 “工作量证明”。

  比特币的本质是对记账行为的奖励,节点的每次成功的记账行为都可以获得一定数量的比特币(现在是6.25个),为了对比特币的规模进行限制,比特币采取一些规则来限制记账行为:

  
1、一段时间内(10分钟左右)只有一人可以记账成功。

  2、通过解决密码学难题(即工作量证明)的算力竞争获得唯一记账权(区块链只接受前若干位为0的哈希值,其他哈希值无效)。

  3、其他节点可以自由复制记账结果。

  这三条规则中的第二条就是前面所提到的工作量证明。哈希值是由数字和大小写字母构成的字符串,每一位有62种可能性(可能为26个大写字母、26个小写字母,10个数字中任一个),假设任何一个字符出现的概率是均等的,那么第一位为0的概率就是1/62,理论上也就需要62次哈希运算才能得到这个哈希值,而区块链要求前若干位必须为零,0的位数还会随算力的提升而增加。

  以区块#493050为例,此区块前十八位为0,意味着理论上需要经过62的18次方才能计算出这个哈希值,这么大的计算量确保了大约十分钟的记账间隔,也确保了信息发送的规则的实现。

  拜占庭将军问题的最后一个核心问题得到解决,这也意味着拜占庭将军问题得到全面解决。

  但区块链通过“工作量证明”解决拜占庭将军问题的过程中,新的问题随之产生,也就是我们文章开头提到的能耗问题。哈希值计算过程中如此大的计算量势必需要投入大量的计算设备、电力等,相对应的就是过高的能耗。同时,国内电力成本低,相对收益更高,也导致比特币的能源耗费问题在中国显得尤为突出。

  即便是在碳中和的大背景下,只要比特币价格持续居高不下,有利可图,想要管控能源消耗就不是一件现实的事情。并且随着下一个总量“中点”的到来以及算力的提升,这种能源消耗将只增不减。“偷电挖矿”新闻的不断爆出,在达到一定警戒效果的同时似乎也说明一段时间内试图彻底叫停比特币交易的举动可能难以达到预期的效果。

  参考文献:

  [1]张浪著,区块链+ 商业模式革新与全行业应用实例,中国经济出版社,2019.01,第7页-第8页

  [2] 韩布伟著,区块链 重塑经济的力量,中国铁道出版社,2016.12,第111页-第113页

  [3] 密码学之Hash散列算法(

  [4] 比特币私钥、账户与钱包(

  [5] 漫画:什么是拜占庭将军问题?(

  [6] 区块链如何在技术上实现去中心化的呢?(

  [7] 密钥,私钥,公钥的区分(

  [8] 拜占庭将军问题深入探讨 | 巴比特

  [9]区块链记账原理 | 登链社区 | 深入浅出区块链技术

  [10]比特币如何挖矿(挖矿原理)-工作量证明 | 登链社区 | 深入浅出区块链技术

  - 本期作者 –

  

  DIG MORE

  DIG MORE

  量化投资

  丨 丨 [线上]初阶 丨 [线上] 丨 [线上]金融 丨 [线下]深圳暑期/国庆 丨

  人工智能

  丨[录播]丨[录播]

  大数据

  丨[线下]丨 [录播]丨[录播]丨[录播]

  金融基础

  [线下] 丨 [线上]丨 丨 [录播]

  认证培训

  © DigQuant

  

  点击“阅读原文”,登录官网www.digquant.com,一起解锁更多金融科技姿势:涵盖 Python 、 金融基础 、 量化投资 、 区块链 、 大数据 、 人工智能 。 Dig More, Learn More!

  别忘了“点赞”、“在看”、“分享”素质三连哦

关于作者: 比特币价格大师

为您推荐

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注