文章来源:
https://hugonguyen.medium.com/bitcoin-chance-and-randomness-ba49a6edf933
全文翻译:dina.bit
翻译时间:22.10.07
随机性构成了比特币工作量证明 (PoW) 的基石。但是它是怎么一步步演变的呢?
随机性一直是生活中必不可少的一部分。许多古老的占卜仪式都是基于偶然性的:希腊人投掷黄芪,中国人的占卜,西非人的 Opele。在游戏和赌博中使用的骰子也可以追溯到数千年前。然而,直到 16 世纪,我们才开始有了必要的工具和语言来理解偶然性和随机性。这些工具包括数学,比如分数和数字 0。我们对机会和随机性的研究始于一位名叫卡尔达诺的数学家。卡尔达诺 1501 年出生于意大利,是一位博学多才的人,也是文艺复兴时期最有影响力的数学家之一,同时他也喜欢赌博。由于他痴迷赌博,Cardano 最终陷入赤贫,一生默默无闻。 然而,正是他的赌博经验促使他写了《Book on Games of Chance》这本书,这是对机会和随机性的第一个系统表达。有趣的是,Cardano 在世时选择对这本书保密。《Book on Games of Chance》是在 Cardano 去世一个世纪后才出版的。
卡尔达诺对我们理解偶然性和随机性的主要贡献是科普了样本空间的概念。跟随卡尔达诺的脚步的是伽利略和帕斯卡。伽利略是那个时代叛逆精神的完美体现:反对强大的天主教会,宣称地球不是宇宙的中心。伽利略创作了许多重要的工作,他的一部不太知名的作品《Thoughts about Dice Games》探讨了和卡尔达诺类似的主题。与费马和笛卡尔同时代的帕斯卡比卡尔达诺和伽利略走得更远。他发现了我们现在所说的帕斯卡三角。尽管其他文明(例如:伊朗、中国和印度)的数学家比帕斯卡早几个世纪发现了相同的三角形,但帕斯卡的发明是最全面和最新颖的,特别是在概率论领域。帕斯卡还介绍了“帕斯卡赌注”和数学期望的概念。从卡尔达诺、伽利略和帕斯卡种下的种子开始,我们对偶然性和随机性的理解逐渐加深,随着时间的推移变得更加复杂和深入。这是文艺复兴时期的共同主题,带来了一些根本性的突破——如天文学、牛顿物理学、微积分、经验主义。它们奠定了科学基础,带来了新的知识分支和重大技术创新,最终带来了工业革命。下面是人类历史上破解“机会和随机性”之旅中的重要里程碑列表:样本空间排列组合帕斯卡三角大数定律小数定律贝叶斯定理——条件概率钟形曲线和标准偏差回归均值随机游走蒙特卡罗模拟伪随机性在这之中,有两个主要的发展脱颖而出:蒙特卡罗模拟和伪随机性,因为它们与当今世界高度相关。计算机的发明为随机性的全新应用打开了大门:计算机模拟。历史上第一次,我们有了一种“预测”未来的能力,或通过一次又一次廉价实验来揭示隐藏真相的方法。机器能为我们提供大量的模拟,这在以前是不可想象的。20 世纪初,蒙特卡洛模拟的发明标志着人类历史上的一个重大转折点。在文艺复兴之前,人类经常生活在对随机性和不确定性的恐惧中。进入 20 世纪,我们慢慢地进步,对它有了更好的理解,但仍然很大程度上让随机性决定了事物的流动。通过蒙特卡罗模拟,我们开始让随机性为我们工作。用一句话说就是,“多年媳妇熬成婆”。著名的蒙特卡罗模拟早期先驱包括现代计算机的两位教父:约翰·冯·诺依曼和艾伦·图灵。如今,蒙特卡罗模拟有大量的应用:流体力学、商业、金融、人工智能等等。AlphaGo 的案例是蒙特卡洛模拟(与其他技术相结合)引导我们发现新发现的完美示例:AlphaGo 以超出人类想象的棋步击败了最优秀的人类棋手。AlphaGo 挑战了机器无法发挥创造力的观点,并迫使我们重新思考“创造力”的真正含义。蒙特卡洛方法的日益普及,并推动了“伪随机性”的发展(伪随机过程是一个看似随机的过程,但实际上并非如此),因为一个好的模拟需要能够密切反映现实的随机性。这种过程产生的数字是确定性的,但它们通过了被认为是“随机”的统计测试。反过来,伪随机性成为一个全新领域的基石之一,也是计算机时代的产物:现代密码学。工作量证明 (PoW) 最初是作为一种针对垃圾邮件的措施而发明的。只是后来它才被改编为用于数字 Cash。PoW 挖矿实际上在幕后所做的是将动能(电能)转换为分类账块。 矿机反复执行哈希运算,直到解决了一个密码难题。除了解决它的一个哈希之外,所有哈希操作都被丢弃。这个微小的哈希本身只需要很少的能量来计算,它直接代表了产生它所需的巨大能量。区块被铸造的“证据”。为了重写该块,攻击者稍后将不得不花费与最初所需数量大致相等的散列操作。SHA256 是支持比特币 PoW 挖矿的哈希函数。一个哈希输入(用于挖掘),一个哈希输出(用于恢复),这就是比特币具有不变性的原因。像 SHA256 这样的哈希函数已经证明是足够随机的,也就是“伪随机”。从根本上说,我相信将能量“附加”到区块上的想法是正确的,并且可能是虚拟模拟不变性的唯一方法。我们也可以将 PoW 视为将数字 0 和 1 带入生活的魔法。比特币的主要创新之一是使用 PoW 来建立分布式共识。PoW 提供了一个客观的标准,比特币网络参与者可以依靠它达成共识,而无需信任网络上的任何人。这与权益证明(PoS)等方案不同。刚才说了,比特币 PoW 方案使用 SHA256 的加密哈希函数。密码散列函数的一个重要特征是它们是单向的。这意味着仅通过查看哈希输出来推断哈希输入是不可行的。它们是单向的原因很大程度上取决于哈希输出的随机性。这非常关键,因为如果散列函数没有生成足够随机(“伪随机”)的输出,则会从所需的输出开始,即:具有一定数量前导零的字符串,然后从那里继续工作。这样一来,工作量证明将在最好的情况下变得不那么可信,在最坏的情况下毫无用处。一个好的谜题让每个矿工都有机会根据他们贡献的哈希算力数量赢得下一个谜题解决方案。就像随机向棋盘投掷飞镖,目标大小不同,对应矿工的算力也不同。— 阿文德·纳拉亚南。没有正式证据表明随机性是 PoW 的强制性要求,但从经验上看,这似乎是正确的。还有一个简单的观察,即解决方案是非随机性的问题,往往需要与解决方案付出一样多的努力来验证。任何此类方案在可扩展性方面都会受到严重限制(比特币很难按原样扩展)。它还疯狂偏爱最快的矿工——那些稍微慢一点的矿工将一无所获。基于随机性的 PoW 的另一个好处是挖矿成员的高度开放,即矿工可以随时随地进出。无论他们是在发现一个区块后立即加入挖矿,还是在 5 分钟后加入,他们获得下一个奖励的机会都不会改变。除了散列之外,还有其他已知的方法来模拟随机搜索的过程,例如整数分解或离散对数。因此,哈希可能不是实现随机性的唯一手段,而随机性是创建数字工作量证明的必要先决条件。计算限制:随机搜索受处理器速度的限制内存限制:随机搜索受内存访问限制这两种 PoW 方案类别哪一个更优秀还有待观察(我个人认为内存绑定更略一筹),但底层机制是相同的:在解决方案的巨大空间中进行概率随机搜索,以及任何可以廉价地验证解决方案。总之,只要人类存在,我们就一直在与随机性和不确定性作斗争。现代计算机的发明和 20 世纪的蒙特卡洛模拟使我们第一次将随机性变成了我们的优势。在比特币中使用随机性标志着这一漫长旅程中的另一个里程碑。简而言之,随机性是工作量证明中“证明”的后盾。如果没有随机性或真正好的伪随机性,工作量证明将无法工作。如果比特币成功地成为未来的货币,它将代表我们迄今为止最重要和最大规模的随机性应用。