Scrypt的另一個局限性是,它需要用與計算所用的同樣大小的內存來做校驗。為了讓內存剛性有意義,N需要變得比較大。這意味著一個Scrypt的計算要比一個SHA-256的迭代計算(在
比特幣里只需要一個SHA-256計算就可以校驗)昂貴許多倍。
這會產生負面的結果,因為在網絡里的每個用戶必須重復這個計算來檢查每一個新發現的區塊是否有效。這會減緩新區塊傳播和被認可的速度,從而增加了分叉攻擊的風險。它還要求每個客戶端(即使是輕量級的SPV客戶端)擁有足夠的內存來有效地進行函數計算。這樣一來,實際上在加密
數字貨幣中能夠被Scrypt用到的內存N是有限的。
一直到最近我們都不明確,是否有可能設計一個挖礦解謎程序在計算上是剛性內存類的,又可以很快地(不需要大量內存)進行校驗。這個特性對密碼進行哈希運算沒有多大作用,在用于加密數字貨幣之前,這是Scrypt算法的主要用途。
在2014年,一個叫作杜鵑鳥周期的新解謎算法被約翰·特龍普(John Tromp)所提出(起這個名字是因為這個算法的特性與杜鵑鳥的特性類似,杜占雀巢)。杜鵑鳥周期算法,是從杜鵑鳥哈希表所衍生的一張圖中尋找周期的難度而設定的,杜鵑鳥哈希表這種數據結構在2001年才被首次提出。除了建立起一個很大的哈希表之外,沒有其他已知的方法來計算這個周期,結果卻可以通過發現一個周期(相對小的)來簡單地驗證。
這個算法可能會讓剛性內存或是內存限制類的證明工作在比特幣共識里變得更加實用。可惜的是,這個函數無法再數學上證明,如果它不用內存的話就不能被有效地計算。通常,一個新的密碼學算法看起來都是安全的,但是社區會對它持有保留意見,直到它存在了多年而沒有被破解過。因為這個緣故,并且因為它也是最近才被發明的,當前杜鵑鳥周期算法還沒有被任何加密數字貨幣所采用。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。