兄弟连Go语言+区块链技术培训以太坊源码分析(41)hashimoto源码分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

兄弟连Go语言+区块链技术培训以太坊源码分析(41)hash imoto源码分析

Hashimoto :I/O bound proof of work

Abstract: Using a cryptographic hash function not as a proofofwork by i tself, but

rather as a generator of pointers to a shared data set, allows for an I /O bound

proof of work. This method of proof of work is difficult to optimize vi a ASIC

design, and difficult to outsource to nodes without the full data set. The name is

based on the three operations which comprise the algorithm: hash, shift, and

modulo.

摘要:使用密码散列函数本身并不作为工作的证明,

而是作为指向共享数据集的指针生成器,允许I / O绑定

工作证明。这种工作证明方法很难通过ASIC设计来优化,并且在没有完整数据集的情况下很难外包给节点。这个名字是基于构成算法的三个操作:散列,移位和

模。

The need for proofs which are difficult to outsource and optimize

工作量证明难以外包和优化的需求

A common challenge in cryptocurrency development is maintaining decentr alization ofthe

network. The use ofproofofwork to achieve decentralized consensus has b een most notably

demonstrated by Bitcoin, which uses partial collisions with zero ofsha2 56, similar to hashcash. As

Bitcoin’s popularity has grown, dedicated hardw are (currently applicati on specific integrated circuits, or

ASICs) has been produced to rapidly iterate the hashbased proofofwork f unction. Newer projects

similar to Bitcoin often use different algorithms for proofofwork, and often with the goal ofASIC

resistance. For algorithms such as Bitcoin’s, the improvement factor of ASICs means that commodity

computer hardware can no longer be effectively used, potentially limiti ng adoption.

加密货币发展的一项挑战就是如何维持去中心化的网络结构。正如比特币采用sha256哈希谜题的工作量证明方式来达到去中心化的一致性。随着比特币的流行,专用硬件(目前的专用集成电路,或者是ASICs)已经被用来快速的执行基于hash方式的工作量证明函数。类似比特币的新项目通常使用不同的工作量证明算法,而且通常都有抵抗ASICs的目标。对于诸如比特币之类的算法,ASIC的对于性能的提升意味着普通的商业计算机硬件不再有效使用,可能会被限制采用。

Proofofwork can also be “outsourced”, or performed by a dedicated machi ne (a “miner”)

without knowledge ofwhat is being verified. This is often the case in B itcoin’s “mining pools”. It is also

beneficial for a proofofwork algorithm to be difficult to outsource, in order to promote decentralization

and encourage all nodes participating in the proofofwork process to als o verify transactions. With these

goals in mind, we present Hashimoto, an I/O bound proofofwork algorithm we believe to be resistant to

both ASIC design and outsourcing.

工作量证明同样能够被外包出去,或者使用专用的机器(矿机)来执行工作量证明,而这些机器对于验证的内容并不清楚。比特币的“矿池”通常就是这种情况。如果工作量证明算法很难外包,以促进去中心化

并鼓励参与证明过程的所有节点也验证交易。为了达到这个目标,我们设计了hashimoti,一个基于I/O 带宽的工作量证明算法,我们认为这个算法可以抵抗ASICs,同时也难以外包。

Initial attempts at "ASIC resistance" involved changing Bitcoin's sha25 6 algorithm for a different,

more memory intensive algorithm, Percival's "scrypt" password based key derivation function1. Many

implementations set the scrypt arguments to low memory requirements, de feating much ofthe purpose of

the key derivation algorithm. While changing to a new algorithm, couple d with the relative obscurity of the

various scryptbased cryptocurrencies allowed for a delay, scrypt optimi zed ASICs are now available.

Similar attempts at variations or multiple heterogeneous hash functions can at best only delay ASIC

相关文档
最新文档