关于渡鸦币ASIC的第二轮思考

[复制链接]
56991 |0
发表于 2020-2-8 22:27:40 | 显示全部楼层 |阅读模式

222727htnu96cpattwscuo.jpg


显然,仍有ASIC矿机在挖Ravencoin。正如我多次声明的那样,Ravencoin网络上的专用硬件挖矿没有任何问题。事实上,可以认为专用硬件增加了哈希率的稳定性,因为它们的硬件在其他地方都没有用处。这就形成了一种对代币的锁定。


那么,为什么要担心ASIC呢?因为Ravencoin的白皮书讨论了抗ASIC以及让ASIC远离网络。为什么会在白皮书上这样说?因为还有一个强有力的论点认为,广泛分布的代币(RVN)有利于网络的健康。想象一下,如果世界上每个人都有一个RVN。那将是一个近乎完美的分布,到那时,每个人都可以决定是持有、消费还是交易他们的RVN。所以说,允许消费级硬件(CPU或GPU)挖矿更接近于完美的分布。


总的来说,一方面我们拥有对RVN网络承诺有利的专用硬件,另一方面就是消费级硬件挖矿具有广泛的完美分布。


我不太关心现有的CPU/GPU/ASIC挖矿率和挖矿难度是有原因的。这对Ravencoin生态系统来说并不是一个生存威胁。为了便于讨论,我们假设算法从这里开始永远不会改变。最坏的情况是,Ravencoin开始变得更像比特币,因为具有专用硬件和低电费率的数据场集中了一些挖矿能力。这些商业运营最关心的是利润,所以他们会在公开市场上出售RVN。与持有GPU的矿工相比,这增加了下跌的价格压力,但另一方面,它允许任何人在早期以低廉的价格获得RVN。如果能回到2011年,用你现在知道的东西换取比特币,你会付出什么代价?


首先,让我介绍一下前面的算法更改。最初的意图是想要具有更强的抗ASIC,但是还有其他的情况,这就需要加速修改以解决两个关键的bug。错过它的人,可以在这里查看更多的更新。

https://medium.com/@tronblack/ravencoin-upgrade-retrospective-705707b4b51


那么如何再次改变挖矿算法呢?我们有一个大型的矿工社区,大多数是GPU矿工,他们都希望从中获利。我们如何才能使在GPU上挖矿有利可图呢?一些善意的人说ASIC是不可能远离网络的。他们也许是对的,但我相信有些算法会充分利用GPU的能力和优势,为ASIC制作一个看起来和执行起来更像GPU的算法。我们把此作为目标。


另一个需要考虑的问题是,移动钱包算法的可行性必须验证区块。有两个选择:

1)确保算法可以在移动设备(iOS和Android)上实现,2)丢失自我验证SPV钱包选项。当前的移动钱包会检查每个区块,以确保区块是有效的并链接在一起的。这对于安全性和最佳实践来说非常好,但可能并非是绝对必要。如果一个移动钱包被欺骗,就会导致糟糕的体验,但不会伪造RVN。大多数移动钱包都是基于API的,不需要通过执行挖矿算法来验证区块。我所知道的两个例外是tZero钱包和RVN钱包,它们确实验证了每个区块。tZero钱包的iOS版本已经转换为基于API的钱包,以改善用户体验。


也有其他批评者指出,无法消除FPGA或ASIC,且只要有足够的激励,它们有能力执行CPU或GPU所能做的一切。我同意这一点,但随着算法不断突破CPU或GPU的边界,ASIC开始看起来像通用计算机或显卡,失去了其优势。接下来的目标是消除专用硬件的特殊优势。


我也收到了一些批评,有些是私下的,有些是公开的,认为Ravencoin社区#algos频道现有的提议很大程度上是由那些具有FPGA驱动动机所驱动的。在我看来,情况似乎并非如此,但要审查未经测试的算法及其抵抗FPGA开发人员的工作努力很难。


那么让我们假设我们将移动钱包切换成基于API,或者删除区块验证,并为可选挖矿算法提供最大的灵活性。


迁移到仅使用CPU算法是一种选择,但是Ravencoin社区的大多数是GPU,出于这个原因,我们的目标是支持GPU。

使用哪种算法?


目标:


  • 保留x16r变体(roots and branding)

  • 减少ASIC,使其与GPU相似。

  • 具有与另一个代币不同的算法,以防止代币跳动并降低安全性。


有了这些目标,就有了一些选择。一个是将现有的GPU友好算法集成到x16r中。有两种方法可以做到这一点:一种是将现有算法替换为诸如progPOW或Ethash之类的GPU友好算法。唯一的问题是,现有的16个算法和类似于Ethash的算法之间存在明显的速度差异。通过仅解决16个字节中不包含Ethash的块来确定下一个区块的算法,这可以导致系统博弈。可以通过按原样使用x16r来解决此问题,然后始终将其中一种算法换成Ethash。为了提高安全性并防止Ethash解决方案的预缓存,我们可以将Ethash插入算法2至15(从1开始计数)。


Ethash


  • Bitmain E3 ASIC-190MH/s@760W

  • Innosilicon A10 ETHMaster—500MH/s@850W—$5000

  • 1070–30MH/s@150W

  • 1080Ti-50MH/s@250W

  • Titan V—75MH/s@250W


目前,最好的公共ASIC是Innosilicon A10,相当于10 1080Ti。这确实胜过GPU。


挖矿数据:https://minerstat.com/coin/RVN


X16Rv2


  • 1070Ti 20MH/s@150W

  • 1080Ti 35MH/s@250W

  • OW1 182MH/s@1400W

  • Rumor 680MH/s@800W


据我所知,目前在x16r ASIC制造商和Ethash ASIC制造商之间没有任何重叠,并且他们似乎在使用不同的技术(Xilinx芯片和定制的硅)。


结合算法有数百万种可能。我将提出一个符合上述目标的方案。


代号:x16rE


它从最初的x16r开始。x16r有很好的文档记录。


第一个阶段是x16r,但是在哈希开始之前,将16个半字节加起来,得到一个0到256之间的数字。取这个数字的mod14,得到0到13之间的数字,然后加上1,得到一个介于1到14之间的数X。然后用Ethash替换位置X的算法。


因此,将有16个哈希链接在一起,其中一个永远是Ethash,并且它永远不会是第一个或最后一个哈希。


它是两个已知的抗ASIC算法的简单融合,这迫使FPGA/ASIC实施这两种算法,而这两种算法的效率仅略高一点。每个(x16r和Ethash)的特性都是众所周知的,但每个的ASICish解决方案是不同的。



原文标题 | Ravencoin — ASIC Thoughts —— Round Two
原文作者 | Tron Black
翻译 | Annie_头等仓
本文来自Medium,翻译来自头等仓(www.first.vip),转载请保留文末信息。


转载声明:本文转载自微信公众号「头等仓区块链研究院」

设置›个人资料-个人信息-个人签名里可以设置哦。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表