欢迎光临散文网 会员登陆 & 注册

抢不到显卡的矿工们,已经开始用GAMEBOY挖矿了

2021-04-16 16:07 作者:老猫和一修  | 我要投稿

  在过去的一年里,数字加密货币成为了不少网民热议的话题,毕竟像比特币这样6个月涨幅320%让许多人都实现财务自由的货币,并不常见。

  前两个月,比特币的单价从5.5万美元快速跌落到4.5万,又在短时间升值到6.1万迎来历史巅峰,让不少朋友都经历了一场人生中最重要的“大起大落再大起”。

  这也让不少人动起了进场淘金的小心思,stacksmashing是一名YouTuber,他显然也想成为这个世代的弄潮儿之一。

  他很快发现了一个严重的问题,追逐这场淘金热的人不只有他一个,显卡的需求随着挖矿需求提升,个人矿场的盛行,现在已经是全球缺货的状态了。

  买不到显卡的他,只能将目光投向了一台30年前发售,风行了十几年,在每个玩家的情怀中大抵都会占据一席之地的掌机—GAMEBOY。

  挖矿的原理并不复杂,拿热度最高的比特币来举例,矿工们使用计算机依照算法进行大量的运算来“开采”比特币,只要抢先于其他矿工找到比特币网络所承认的64位数字,就可以获得一个区块链的比特币(现在是12.5个)。

  运算的需要解开的SHA-256哈希函数并不复杂,只要能无限穷举,像GAMEBOY这样的老机子也不是不可能采到比特币。

  不过作为一台系统封闭的掌机,想要让GAMEBOY成为矿机也有不少需要解决的难题。GAMEBOY只支持运行专门的系统和对应系统的游戏卡带,没有办法直接连接电脑接受挖矿指令,没有wifi功能,也没有办法联网。

  动手能力极强的stacksmashing还是一一解决了难题。

  为了能让GAMEBOY接受电脑下达的指令,他使用了一块基于Linux的单片机电脑—Raspberry Pi Pico,作为下达指令的端口。

  GAMEBOY的侧面也有一个用来“插线联机”的接口,这个端口的设计初衷是可以用一根专门的数据线,让2-4台GB进行面对面通信,因此也能用来让GAMEBOY连接比特币的区块接受指令并上传自己算完的结果。

  使用了开源程序包GBDK,这位老哥很快也用C语言敲好了代码,完成了一个新的程序,将它放到GAMEBOY里,这台并不智能的老式游戏机就会将挖矿程序当成一款自己可以运行的游戏,并吭哧吭哧地开始工作。

  能和比特币区块链接,可以计算并上传哈希值,一台简易矿机就这么打造完成了,在开机测试后,GAMEBOY也正常运行起了挖矿程序。

  相比起只需要4节5号电池的能耗,GAMEBOY挖矿能提供的算力也相当...惊人,它配备了 一个8位的Sharp LR35902处理器,主频仅为 4.18MHz,换算成算力,每秒大约能提供0.8哈希值!

  如果拿它与最新的ASIC芯片矿机相比,你会发现它们之间的速度相差不多,只差了大概 125 兆倍吧。

  每10分钟里第一个计算出结果的节点才能获得奖励,比特币的游戏规则也基本让用GAMEBOY挖矿只有一个存在于理论上的可能性,更别说比特币被越挖越少,入场挖矿的矿工越来越多,挖矿难度会进一步变高,用GAMEBOY想挖到一个币的期望也就小几百万年吧。

这个在挖矿的“游戏男孩”究竟有多难,大概就这么难吧

  那么阅读理解题来了,这个老哥用一台二手市场上随随便便就能拍卖到100刀以上的GAMEBOY,却做出了一台根本没办法挖矿收回成本的矿机,他想表达什么?

  先别急着回答,这可不是矿工们第一次“发疯”了。

  3年前就有动手能力很强的老哥将一台NES改造成矿机并成功运行的先例了。

  不过这还不是最疯狂的。

  再往前一点,5年前挖矿还没现在这么难(那会儿解开一个区块链可以得到25个比特币,是现在的2倍),有个叫Ken Shirriff的老哥就选择了一台放在美国加州山景城计算机博物馆中的究极老爷机,1959年发售的IBM1401大型机作为自己的“矿机”。

  想要接触到这台老爷机的机会并不算多,每周三和周六,计算机博物馆里的工作人员都会进行这台老古董的运行演示,而一般民众也能进行预约体验,让它运行自己制作的程序...卡。

  是的,因为这是一台61年前的老计算机,IBM1401的工作原理相当复古,运行的程序并不是现在我们认知中的数据包,而是需要在打孔卡上用IBM1401专用的汇编表编写程式,再放入IBM1401进行计算,最后在另一张打孔卡上打印得出的结果。

  想要让这台老爷机挖矿,也有不少技术难题,SHA-256的哈希算法在32位及以上的系统中才能运行,而IBM1401使用的是6位字符,而且这台计算机甚至无法处理2进制的算数而是10进制的。

  相比之下,它没有子例程调用和返回,也没有任何通用储存器,因此所有操作都需要在内存上运行倒也不是大问题了,毕竟是老选手了,能完整运行并算完一条哈希函数就算成功了。

  因此Ken Shirriff进行了相当复杂的汇编工作,光是一条哈希函数就需要85张打孔卡来记录。

  讲这些打孔卡放入读卡器后,读取程序就需要好几秒钟(IBM1401的读卡速度是800张/分钟),在经过长达80秒的计算后,IBM1401终于得出了结果。

  所以它的算力是0.0125哈希值/秒,而IBM1401也差不多是这个世界上用来计算挖矿需要的SHA-256算法最最“入门”的硬件门槛了。

  这个入门指的是计算功能上的,在实用性上,IBM1401可以说是一文不值,比前面的GAMEBOY还差,一台IBM1401在当时的售价是125600美元,算上通胀和汇率,大概等于现在的110万美元,跟别提这台巨兽的功率还高达3000瓦。

  而利用IBM1401来挖矿最大的问题是,就计算机算出了哈希值,只不过这台老式计算机本身不具备联网功能,所以也没办法上传结果。

  在上世纪60年代,IBM 1401可以连接到 IBM 1009数据传输单元,该调制解调器大小与洗碗机一样大,最多可以每秒通过电话线将300个字符传输到另一台计算机,但就连山景城的计算机博物馆也没有这个数据传输单元。

  所以用IBM1401挖矿的任务也就此宣告失败了,Ken Shirriff只是展示了一种可能性而已。

  让我们知道了从理论上来讲,想用IBM 1401解开一个区块链,它将花费大约5*10^14年(大约是当前宇宙年龄的40000倍)。电费大概是10^18美元,如果成功了,按现在的行情来讲,你就能获得12.5个价值约60000美元的比特币。

  至少他们比上一个生成给他一支笔和一张草稿纸,他想要把整个比特币池挖空的老哥正常多了,是吧?

  毕竟像他说的那样,挖矿也不过就是解函数做数学题(需要无限穷举的那种)而已,油管上也确实有人教学如何手算挖矿的。

  只不过,传授这个方法的人也表示,光靠人脑和手的力量,每天,注意是每天的算力大概只有0.67哈希值,连前面提到的30年前的GAMEBOY和61年前的IBM1401都能轻松秒杀手算。

  讲道理,要是首富埃隆马斯克不强推加密货币,区块链也不会像现在这么突然爆火,大家就都能抢到自己心仪的显卡高高兴兴地去打游戏,也自然没有人搞这种行为艺术了。所以你今天能看到这篇文章,其实都tm赖马斯克。




抢不到显卡的矿工们,已经开始用GAMEBOY挖矿了的评论 (共 条)

分享到微博请遵守国家法律