區(qū)塊鏈跨域安全解決方案
(3) scrypt算法,后來(lái)隨著顯卡挖礦以及礦池的出現(xiàn),社區(qū)開(kāi)始擔(dān)心礦池會(huì)導(dǎo)致算力集中,違背中本聰“一CPU一票”的最初設(shè)計(jì)理念。在那段時(shí)間,中心化的焦慮非常嚴(yán)重,討論很激烈,比特幣一次又一次“被死亡”,直到現(xiàn)在,針對(duì)礦池是否違背去中心化原則的爭(zhēng)論仍在繼續(xù)。無(wú)論如何,有人將矛頭指向SHA256,認(rèn)為是算法太容易導(dǎo)致礦機(jī)和礦池出現(xiàn),并試圖尋找更難的算法。恰逢其時(shí),使用SCRYPT算法的萊特幣(Litecoin)橫空出世。據(jù)說(shuō)SCRYPT是由一位著名的黑客開(kāi)發(fā),由于沒(méi)有得到諸如SHA系列的嚴(yán)格的安全審查和全面論證,一直沒(méi)被廣泛推廣使用。
(4) 串聯(lián)算法,2013年7月,夸克幣(Quark)發(fā)布,首創(chuàng)使用多輪Hash算法,看似高大上,其實(shí)很簡(jiǎn)單,就是對(duì)輸入數(shù)據(jù)運(yùn)算了9次hash函數(shù),前一輪運(yùn)算結(jié)果作為后一輪運(yùn)算的輸入。這9輪Hash共使用6種加密算法,分別為BLAKE, BMW, GROESTL, JH, KECCAK和SKEIN,這些都是公認(rèn)的安全Hash算法,并且早已存在現(xiàn)成的實(shí)現(xiàn)代碼。這種多輪Hash一出現(xiàn)就給人造成直觀上很安全很強(qiáng)大的感覺(jué),追捧者無(wú)數(shù)。現(xiàn)今價(jià)格依然堅(jiān)挺的達(dá)世幣(DASH,前身是暗黑幣,Darkcoin,)接過(guò)下一棒,率先使用11種加密算法(BLAKE, BMW, GROESTL, JH, KECCAK, SKEIN, LUFFA, CUBEHASH, SHAVITE, SIMD, ECHO),美其名曰X11,緊接著X13,X15這一系列就有人開(kāi)發(fā)出來(lái)了。
(5) 并聯(lián)算法,有人串聯(lián),就有人并聯(lián),Heavycoin(HVC)率先做了嘗試。HVC如今在國(guó)內(nèi)名不見(jiàn)經(jīng)傳,當(dāng)時(shí)還是名噪一時(shí),首次實(shí)現(xiàn)鏈上游戲,作者是俄羅斯人,后來(lái)不幸英年早逝,在幣圈引起一陣惋惜。
(6) primecoin算法,正當(dāng)一部分人在算法探索之路上進(jìn)行的如火如荼之時(shí),另一部分人的聲音也非常刺耳,那就是指責(zé)POW浪費(fèi)能源(彼時(shí)POS機(jī)制已經(jīng)實(shí)現(xiàn))。POW黨雖極力維護(hù),但也承認(rèn)耗費(fèi)能源這一事實(shí)。這一指責(zé)打開(kāi)了另一條探索之路,即如果能找到一種算法,既能維護(hù)區(qū)塊鏈安全,這些Hash運(yùn)算又能在其他方面產(chǎn)生價(jià)值,那簡(jiǎn)直更完美。在這條探索之路上最讓人振奮人心的成果來(lái)自于Sunny King(這大神之前已經(jīng)開(kāi)發(fā)了Peercoin,點(diǎn)點(diǎn)幣)發(fā)明的素?cái)?shù)幣(Primecoin)。素?cái)?shù)幣算法的核心理念是:在做Hash運(yùn)算的同時(shí)尋找大素?cái)?shù)。素?cái)?shù)如今已被廣泛應(yīng)用于各個(gè)領(lǐng)域,但人類對(duì)他的認(rèn)識(shí)還是有限。素?cái)?shù)在數(shù)軸上不但稀有(相對(duì)于偶數(shù)而言),而且分布不規(guī)律,在數(shù)軸上尋找素?cái)?shù)只能盲目搜索探測(cè),這正是POW的特征。POW還有另一個(gè)要求是容易驗(yàn)證,這方面人類經(jīng)過(guò)幾百年探索已經(jīng)獲得一些成果。素?cái)?shù)幣使用兩種方法測(cè)試,首先進(jìn)行費(fèi)馬測(cè)試(Fermat Test),通過(guò)則再進(jìn)行歐拉-拉格朗日-立夫習(xí)茲測(cè)試(Euler-Lagrange-Lifchitz Test),還通過(guò)測(cè)試則被視為是素?cái)?shù)。需要指出的是,這種方法并不能保證通過(guò)測(cè)試的數(shù)百分百是素?cái)?shù),不過(guò)這并不影響系統(tǒng)運(yùn)行,即便測(cè)試結(jié)果錯(cuò)誤,只要每個(gè)節(jié)點(diǎn)都認(rèn)為是素?cái)?shù)就行。
(7) ethash算法,以太坊(Ethereum)一開(kāi)始就打算使用POS方式,但由于POS設(shè)計(jì)存在一些問(wèn)題,開(kāi)發(fā)團(tuán)隊(duì)決定在以太坊1.0階段使用POW方式,預(yù)計(jì)在Serenity階段轉(zhuǎn)入POS。以太坊POW算法叫Ethash,雖只是一個(gè)過(guò)渡算法,但開(kāi)發(fā)團(tuán)隊(duì)一點(diǎn)也不含糊,一如既往發(fā)揚(yáng)其“簡(jiǎn)單問(wèn)題復(fù)雜化,繁瑣細(xì)節(jié)秀智商”的設(shè)計(jì)風(fēng)格。Ethash 是最新版本的 Dagger-Hashimoto改良算法,是Hashimoto算法結(jié)合Dagger算法產(chǎn)成的一個(gè)新變種。Ethash設(shè)計(jì)時(shí)就明確兩大目標(biāo):
抵御礦機(jī)性能(ASIC-resistance),團(tuán)隊(duì)希望CPU也能參與挖礦獲得收益。
輕客戶端可快速驗(yàn)證(Light client verifiability)。
基于以上兩個(gè)目標(biāo),開(kāi)發(fā)團(tuán)隊(duì)最后倒騰出來(lái)的Ethash挖礦時(shí)基本與CPU性能無(wú)關(guān),卻和內(nèi)存大小和內(nèi)存帶寬成正相關(guān)。不過(guò)在實(shí)現(xiàn)上還是借鑒了SHA3的設(shè)計(jì)思路,但是使用的”SHA3_256” ,”SHA3_512”與標(biāo)準(zhǔn)實(shí)現(xiàn)很不同。
(8) Ethash算法,基本流程是這樣的:對(duì)于每一個(gè)塊,首先計(jì)算一個(gè)種子(seed),該種子只和當(dāng)前塊的信息有關(guān);然后根據(jù)種子生成一個(gè)32M的隨機(jī)數(shù)據(jù)集(Cache);緊接著根據(jù)Cache生成一個(gè)1GB大小的數(shù)據(jù)集合(DAG),DAG可以理解為一個(gè)完整的搜索空間,挖礦的過(guò)程就是從DAG中隨機(jī)選擇元素(類似于比特幣挖礦中查找合適Nonce)再進(jìn)行哈希運(yùn)算。可以從Cache快速計(jì)算DAG指定位置的元素,進(jìn)而哈希驗(yàn)證。此外還要求對(duì)Cache和DAG進(jìn)行周期性更新,每1000個(gè)塊更新一次,并且規(guī)定DAG的大小隨著時(shí)間推移線性增長(zhǎng),從1G開(kāi)始,每年大約增長(zhǎng)7G左右。

- 相關(guān)閱讀
- 業(yè)務(wù)信息化
- 戰(zhàn)略規(guī)劃
- IT運(yùn)維與治理
-
“零信任”安全架構(gòu)將成為網(wǎng)絡(luò)安全流行框架之一
-
2018全球風(fēng)險(xiǎn)報(bào)告:網(wǎng)絡(luò)攻擊排名前三
-
為什么說(shuō)區(qū)塊鏈仍會(huì)遭到黑客攻擊?
-
區(qū)塊鏈概念大熱的背后,真正的價(jià)值在這里
-
【觀點(diǎn)】區(qū)塊鏈的火熱,是不是一場(chǎng)錯(cuò)覺(jué)游戲
-
恩力能源攜手蘭石集團(tuán)等拓展動(dòng)力電池及微電網(wǎng)應(yīng)用新領(lǐng)域