内容简介:创意算法,这是一个monero核心开发人员霍华德·朱(Howard Chu)的说法,他专注于保护来自专业采矿硬件的加密,称为ASIC,这是由数十亿美元的采矿业所建造。最近,Chu找到了一种永久性地将ASIC与网络隔离的解决方案,他称之为RandomJS的一种工作量证明算法,该算法利用了硬件不能同时“做多件事”这一特征。不过,他的算法最有趣的地方可能是,他可能只是偶然发现了创新,因为他喜欢演奏传统的爱尔兰小提琴。
创意算法
创意算法,这是一个monero核心开发人员霍华德·朱(Howard Chu)的说法,他专注于保护来自专业采矿硬件的加密,称为ASIC,这是由数十亿美元的采矿业所建造。最近,Chu找到了一种永久性地将ASIC与网络隔离的解决方案,他称之为RandomJS的一种工作量证明算法,该算法利用了硬件不能同时“做多件事”这一特征。
不过,他的算法最有趣的地方可能是,他可能只是偶然发现了创新,因为他喜欢演奏传统的爱尔兰小提琴。
Chu说他的家乡多尼戈尔(Donegal),是爱尔兰最富有田园音乐风格的角落之一,Chu还讲到,这个算法的创作与他在音乐实践中所用的想象力是相通的。
在他看来,音乐和代码在神经学层面是紧密相连的,需要大脑的逻辑和创造性这两方面同时发挥作用。因此,Chu说编程和音乐人才之间存在着频繁的重叠——他在算法中利用了这一点。
“音乐是非常数学化的,音乐的基础是数学,但与此同时,它也赋有创造力,”他讲到。
然后,Chu创建了一个利用随机生成的代码的算法。
由于ASIC只能被设计用于一种算法,因此在算法中使用随机生成的代码会使ASIC虽然快速却无法兼容,因此也就无利可图。通过这种方式,许多开发人员认为ASIC制造商将会避免为频繁切换算法的加密货币项目开发硬件。
推动人们对ASIC阻塞代码产生兴趣的是矿业巨头Bitmain公司在过去一年中进入了比特币之外的加密货币社区。更具体地说,Bitmain在3月发布了Antminer X3 ASIC,它被编程为运行monero的底层验证算法cryptonight。
在monero的开发人员引发了众所周知的“矿工之战”之后不久,今年4月,他们通过进行紧急软件升级,从而来改变加密货币的算法,以便Antminer X3在协议中毫无用处。
此后,Monero的开发人员一直致力于定期进行软件更改,以删除任何重新出现的硬件。
但是,由于monero所承诺的小型软件变更可能不足以长期劝阻硬件制造商,所以Chu将RandomJS作为加密货币的一种更可持续解决方案。
在谈到算法时,Chu说:“RandomJS正朝着别人没有解决的方向来解决问题。”
随机数学
Chu是一位广受尊重的程序员,他是OpenLDAP项目的高级架构师,该项目创建了一个开源数据库层,并且奠定了电信行业的基础。
自从2015年以来,他就一直致力于为monero效劳(全面的区块链平台数据库)。
根据Chu的说法,他认为RandomJS则是凭借其新颖的方法与他的音乐实践联系在一起。
当ASIC硬件制造商分析软件并构建优化的硬件以运行特定的算法时,RandomJS则采取了相反的方法,分析CPU硬件的功能,这是大多数消费者笔记本电脑的硬件类型——并从那里开始向外构建。
Chu将这项挑战描述为在工作证明协议的两个功能之间取得平衡——计算算法所需的时间和验证算法的速度。
例如,虽然SHA 256(作为比特币基础的工作量证明算法)很容易验证,但根据Chu的说法,从根本上来讲,它 “太容易”计算,这意味着围绕它构建硬件是微不足道的。
“哈希加密算法真的非常适合证明某些东西是真实的,但它作为一个工作单元是很可怕的,因为它太容易了,”Chu说道, “将SHA 256嵌入芯片并克隆数千个这样的计算单元是非常简单的一件事。”
因此,RandomJS使计算过程变得更加复杂,通过使用区块链数据作为输入来生成随机代码,寻求以更全面的方式来使用CPU功能。
“我们接受一个输入,即前一个哈希块,我们将其用作为伪随机数生成器的种子。”Chu解释道。
然后,该数据生成用javascript编写的随机算法,当由参与计算机运行时,然后对其进行散列并添加到区块链中。
尽管如此,monero核心团队仍在对算法本身进行评估。据Chu说,有很多事情可能会推迟它的采用。首先,它目前无法在通用硬件(GPU)上运行,而GPU是monero矿业基础设施的主要组成部分。所以其仍然还有很多工作要做。
音乐思维
话虽如此,Chu的算法可能是阻止ASIC的最独特的技术之一,如果不是艺术上的话。
有些人甚至可能会说,随着代码的不断变化,这是一种高能量的方式,这也正是Chu(来自洛杉矶)最初来到多尼戈尔(Donegal)西北的原因。
由于对爱尔兰传统音乐的热爱,他被带到了崎岖的海岸线。
但在多尼戈尔(Donegal),他发现这一景观被反映在了当地的音乐中。
“多尼戈尔(Donegal)的小提琴风格有相当强大的魅力,声音尖锐且断断续续,当我第一次站在马林头上看着海岸,看见海浪与岩石撞击,我就想啊,这就是大自然的力量量,”Chu说着。
因此,Chu计划在多尼戈尔建立一所编程学校,在那里音乐教学也将作为课程的一部分。“这将提升对事情的灵活性和教养以及不同的思考方式,”他说。
根据开发人员的说法,计算机科学教育经常训练学生的逻辑思维,这并没有让他们为现实世界做好准备,而现实世界需要开发人员创造性地解决新问题。
在谈到他对融合音乐和编程的兴趣时,Chu总结道:
“如果没有创造力,你无法做到这一点,如果你没有接受过训练,如果你没有接受过使用你大脑中创造性部分的训练,那么你就很难做到这一点。”
·END·
(作者:链条CH,内容来自链得得内容开放平台“得得号”;本文仅代表作者观点,不代表链得得官方立场)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Think Python
Allen B. Downey / O'Reilly Media / 2012-8-23 / GBP 29.99
Think Python is an introduction to Python programming for students with no programming experience. It starts with the most basic concepts of programming, and is carefully designed to define all terms ......一起来看看 《Think Python》 这本书的介绍吧!