Scrypt算法

Scrypt算法简介

Scrypt是内存依赖型的POW算法,莱特币采用此算法。第一个使用Scrypt算法的数字货币是Tenebrix,而后该算法被莱特币使用。莱特币创始人在莱特币创世帖中介绍了莱特币采用的共识机制,挖矿算法,发行总量,挖矿难度等相关重要信息。李启威说明了莱特币所使用的挖矿算法为数字货币Tenebrix所使用的Scrypt算法,是一种符合PoW共识机制的算法。Scrypt算法过程中也需要计算哈希值,但是,Scrypt计算过程中需要使用较多的内存资源。

其它使用Scrypt算法的数字货币还有数码币(DigitalCoin)、狗狗币(DogeCoin)、幸运币(LuckyCoin)、世界币(WorldCoin)等。

Scrypt的诞生

由于比特币将hash算法作为pow工作量证明的重要手段,后续的各种采用pow的数字货币也延续了这个设计,以SHA256、MD5(MD5后来被证明不具备强碰撞性数字货币一般不用)为代表算法在设计之初属于算法都是算力敏感型,意味着计算资源是瓶颈,主频越高的 CPU 进行 Hash 的速度也越快。这个设计直接导致后来的矿机出现,采用ASIC芯片的矿机更是将这种运算能力成倍提升,更多矿场的出现使得当时的比特币面临算力中心化的威胁(关于矿场这个争论现在依旧)

为了限制计算能力的依赖,人们开始寻求新的算法,我们说过现代计算机是“存储转发结构”,既然要限制转发CPU的能力,目光自然投向存储依赖,也就是内存依赖,莱特币率先使用内存依赖型的scrypt算法作为pow核心,因此奠定了第一山寨币的地位。

scrpyt算法是由著名的FreeBSD黑客 Colin Percival为他的备份服务 Tarsnap开发的,当初的设计是为了降低CPU负荷,尽量少的依赖cpu计算,利用CPU闲置时间进行计算,因此scrypt不仅计算所需时间长,而且占用的内存也多,使得并行计算多个摘要异常困难,因此利用rainbow table进行暴力攻击更加困难。scrypt没有在生产环境中大规模应用,并且缺乏仔细的审察和广泛的函数库支持。所以scrpyt一直没有推广开,但是由于其内存依赖的设计特别符合当时对抗专业矿机的设计,成为数字货币算法发展的一个主要应用方向。

后来有人在SCRYPT的基础上稍作修改形成Scrypt –N算法,改进思路都一样,都是追求更大的内存消耗和计算时间,以有效阻止ASIC专用矿机。

Scrpyt后续影响

虽然后来诞生的FPGA矿机可以有效运行scrpyt算法进行大规模挖矿,(FPGA和ASIC类似,FGPA板每块有高达24.8GB/s或以上的内存带宽,属于专用可编程芯片,其实显卡挖矿也是利用了显卡GPU计算能力和内存带宽能力),但是scrpyt算法的使用开启了人们对于hash计算去中心化安全的探索。

后来诞生过串行算法,并行算法等等,其中X11就是使用了11种加密算法(BLAKE, BMW, GROESTL, JH, KECCAK, SKEIN, LUFFA, CUBEHASH, SHAVITE, SIMD, ECHO)

不要被这些算法吓到,其实就是对一段数据进行了11次不同算法的运算,通过运算复杂度增强安全性和加大计算资源消耗,一方面更安全,另一方面抵抗专业硬件编程矿机。后来认为这种串行方式一个算法被攻破实际上会导致整个体系安全性受到攻击,又发展出并行算法。

所谓并行就是将数据进行分块,比如切分成11份,每一份使用不同算法计算,再拼接不同的结算结果而已。

由于pow算法依赖计算资源,不论是CPU或者是内存依赖,到后期总会有更专门的硬件出现,这是计算机体系结构决定的,后期诞生的币种或相关项目将目光投向pos证明机制,不再依赖算力,这也是发展的必然结果,虽然目前pos机制还在发展中,但是未来这是抵御中心化算力更好的方式。

scrpyt的价值在于提醒了人们对于算力中心化的认识,促进了区块链系统向更好的方向发展,我认为这是一个里程碑式的算法,估计该算法的发明人也没有想到scrpyt在区块链世界是那么的重要。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏区块链大本营

这项技术即将改变世界,你却还不知道它的英文怎么读。。。

40214
来自专栏人工智能

机器人批改作文 你觉得它能胜任吗?

都市快报消息,一篇200字不到的作文,机器人用几十秒时间找出了8处语法和用词错误。最近,在浙江外国语学院国际学院,来自俄罗斯、韩国、赞比亚等6个国家的11位外国...

2258
来自专栏企鹅号快讯

路林欣:区块链技术是不是互联网之后最大的价值?

如今互联网是我们已经不再陌生的概念,它渗入我们生活的方方面面,可以让信息高速、低成本地传输,是一条信息高速公路,但是,它却无法传递一类特殊的信息,那就是货币,而...

2069
来自专栏新智元

【老炮儿白硕开讲】区块链可替AI对抗数据寡头

---- 新智元专栏 作者:白硕 【新智元导读】目前最火的两个领域——人工智能和区块链的完整知识结构长在同一个人的脑子里,这是不常见的,白硕就是这样一...

34810
来自专栏项目分析

一篇简短文章带你认识硅谷最火的DFINITY!

DFINITY是什么?一篇简短文章带你认识硅谷最火的DFINITY—以太坊的最强竞争对手!

44618
来自专栏喔家ArchiSelf

老码农眼中的区块链

大家可能已经听说过比特币、莱特币、以太币等等,以及它们作为一种新货币在市场上的潜力。 有趣的是,很多投资比特币的人也提到了区块链之类的东西。 显然,这项技术是比...

1261
来自专栏区块链大本营

BTA | 厉晹Roy Li:浅谈区块链技术在企业级应用中的实践

3857
来自专栏区块链开发公司

区块链技术公司谈区块链与AI结合

一般人听到区块链与AI觉得这是这个事情应该没什么关系,因为区块链和AI分别属于是技术谱系的两个极端:一个是在封闭数据平台上培育中心化的智能,另一个则是在开放数据...

1383
来自专栏申龙斌的程序人生

Steemit上写作你需要知道的一些事

一、steemit认知篇 1、steemit会被越来越多人知道 李笑来《财富自由之路》40页写到:微信订阅号培养了无数作者,给更多的文字工作者以更多的机会,已经...

72411
来自专栏新智元

【机器人解魔方秒杀人类】MIT学生开发机器人解魔方仅需0.38秒!(视频)

麻省理工学院(MIT)学生Ben Katz和软件开发人员Jared Di Carlo共同创建的全新机器人以0.38秒解开三阶魔方,打破此前的0.637秒记录...

36716

扫码关注云+社区

领取腾讯云代金券