1. 程式人生 > >區塊鏈挖礦演算法清單

區塊鏈挖礦演算法清單

原文地址:公眾號退休的神

SHA-256

介紹:SHA代表安全雜湊演算法,SHA-256是由NSA設計的SHA-2加密雜湊函式的成員。加密雜湊函式是對數字資料執行的數學運算,通過將所計算的“雜湊”與已知的雜湊值進行比較,人們可以確定資料的完整性。 單向雜湊可以從任意資料生成,但不能從雜湊生成資料。在比特幣等多個區塊鏈應用中的多個環節被使用。

論文:Courtois, Nicolas T., Marek Grajek, and Rahul Naik. "Optimizing sha256 in bitcoin mining." International Conference on Cryptography and Security Systems. Springer, Berlin, Heidelberg, 2014.

應用:Bitcoin(BTC)、BitcoinCash(BCH)、Peercoin(PPC)、Zetacoin(ZET)、Universal(UNIT)、Deutsche eMark(DEM)、AUR-SHA(AUR)、DGB-SHA(DGB)

Scrypt

介紹:Scrypt是一個記憶體依賴型的hash演算法。有趣的是演算法是由著名的FreeBSD黑客Colin Percival為他的備份服務Tarsnap開發的。記憶體依賴顧名思義會佔用很多記憶體空間,從而減少cpu負荷。由於其記憶體依賴的設計特別符合當時對抗專業礦機的設計,成為數字貨幣演算法發展的一個主要應用方向。

論文:Percival, Colin. "Stronger key derivation via sequential memory-hard functions." Self-published (2009): 1-16.

應用:Litecoin(LTC)、Dogecoin(DOGE)、DNotes(NOTE)、Florin(FLO)、Gulden(NLG)、DGB-Scrypt(DGB)、GameCredits(GAME)、Verge-Scrypt(XVG)、Einsteinium(EMC2)、AUR-Scrypt(AUR)

X11

介紹: X11演算法的推出和litecoin採用的Scrypt演算法目的一樣,為了抵制ASIC礦機的擴張。X11就是使用了11種加密演算法(BLAKE, BMW, GROESTL, JH, KECCAK, SKEIN, LUFFA, CUBEHASH, SHAVITE, SIMD, ECHO)。資料需要進行11次不同演算法的運算,一方面提高安全性一方面增加計算量。

論文:Duffield, Evan, and Daniel Diaz. "Dash: A PrivacyCentric CryptoCurrency." (2014).

應用:Dash(DASH)、Prime-XI(PXI)、Onix(ONX)、Startcoin(START)、Creamcoin(CRM)、Influxcoin(INFX)、MonetaryUnit(MUE)、Monoeci(XMCC)

Equihash

介紹:Equihash是由盧森堡大學跨學科中心開發的面向記憶體的工作量證明(PoW)演算法。演算法的核心點是基於廣義生日問題(Generalized Birthday Problem)。我個人是比較看好這個演算法的,他提高了定製硬體(ASIC)的成本效益。

論文:Biryukov, Alex, and Dmitry Khovratovich. "Equihash: Asymmetric proof-of-work based on the generalized birthday problem." Ledger 2 (2017): 1-30.

應用:Zcash(ZEC)、Zencash(ZEN)、BitcoinGold(BTG)、Zclassic(ZCL)、Hush(HUSH)、Komodo(KMD)

NeoScrypt

介紹:NeoScrypt是替代Scrypt的下一代工作量驗證演算法。 它消耗的記憶體少於後者,但記憶體更密集,密碼更強。 將流密碼演算法Salsa20,Salsa20改良的ChaCha20,BLAKE2s和FastKDF的功能結合到一個安全的ASIC抗性解決方案中。

論文:Doering, John. "NeoScrypt, a Strong Memory Intensive Key Derivation Function." (2014).

應用:GoByte(GBX)、Innova(INN)、Trezarcoin(TZC)、Vivo(VIVO)、Crowdcoin(CRC)、Phoenixcoin(PXC)

Lyra2REv2

介紹:Vertcoin使用Lyra2REv2作為工作量證明演算法改進Bitcoin,目的同樣也是為了抵抗ASIC。Vertcoin向Scrypt演算法引入了“自適應N因子”。 Scrypt的N因子元件決定計算雜湊函式需要多少記憶體。 Vertcoin的N因子隨著時間的推移而增加,以阻止開發專用的“採礦”硬體並鼓勵在個人使用者的電腦上分發驗證任務。目前的LyraREv2由BLAKE, Keccak, CubeHash, Lyra2,Skein 和 Blue Midnight Wish 雜湊演算法組成。

論文:Lyra2RE – A new PoW algorithm for an ASIC-free future

應用:Vertcoin(VTC)、Monacoin(MONA)、Verge-Lyra2REv2(XVG)

Ethash

介紹:Ethash將DAG(有向非迴圈圖)用於工作量證明演算法,通過共享記憶體的方式阻止專用晶片,降低礦機的作用。 這個演算法是以太坊(Ethereum)現階段的過度演算法,前身是Dagger-Hashimoto。Casper the Friendly Finality Gadget(FFG)實現後以太坊將從概率最終性變成確定最中性。

論文:Buterin, Vitalik. "A next-generation smart contract and decentralized application platform." white paper (2014).

應用:Ethereum(ETH)、EthereumClassic(ETC)、Pirl(PIRL)、Musicoin(MUSIC)、Expanse(EXP)、Metaverse(ETP)

X11Gost

介紹:x11GOST由10個SHA3演算法和Stribog雜湊函式組成 雜湊值,各個演算法逐個進行計算有效的防止了ASIC的獲勝概率。

論文:CRYPTO CURRENCY ON THE BASIS OF DELEGATED NODES (MASTERNODS) WITH QUICK SCALE TECHNOLOGY

應用:Sibcoin(SIB)

CryptoNight

介紹:CryptoNight是一種工作證明演算法。 它被設計為適用於普通的PC CPU,利用現有cpu的優勢(本地AES加密和快速64位乘法器 - 調整為使用與英特爾CPU上的每核心三級快取記憶體大小相當的暫存器,大約2MB),因此CryptoNight只能進行CPU挖掘,目前沒有專門的採礦裝置針其做出設計。 CryptoNight依賴隨機訪問慢速記憶體並強調延遲依賴性,每個新塊都取決於所有以前的塊(不像scrypt)。

論文:CryptoNight Hash Function

應用:Dinastycoin(DCY)、Dinastycoin(DCY)、Electroneum(ETN)、Karbo(KRB)、Bytecoin(BCN)、Monero(XMR)

Blake(14r)

介紹:BLAKE和BLAKE2是基於Dan Bernstein的ChaCha流密碼的密碼雜湊函式,但是在每個ChaCha回合之前新增一個輸入塊的排列副本,其中包含一些常量異或。BLAKE的兩個主要例項是BLAKE-256和BLAKE-512。 它們分別使用32位和64位字,並生成256位和512位摘要。

論文:Aumasson, Jean-Philippe, et al. "Sha-3 proposal blake." Submission to NIST (2008).

應用:Decred(DCR)