簡(jiǎn)述Blake2算法
Blake作為一款優(yōu)秀的哈希算法,以高速、安全和簡(jiǎn)單的特點(diǎn)被許多項(xiàng)目所采用。也正因如此,人們?cè)贐lake的基礎(chǔ)之上研發(fā)出了Blake2。下面我們就一起來(lái)了解一下Blake2算法。
Blake2簡(jiǎn)介
Blake2不是一種算法,而是一系列算法,分別為Blake2b、Blake2s、Blake2bp、Blake2sp和Blake2x,它們的區(qū)別在于:
- Blake2b是Blake的64位版本,它可以生成最高512位的任意長(zhǎng)度哈希。
- Blake2s是Blake的32位版本,它可以生成最高256位的任意長(zhǎng)度哈希。
- Blake2bp和Blake2sp是Blake2b和Blake2s算法,可進(jìn)行多核并行運(yùn)算大幅度的提升運(yùn)算效率。
- Blake2x可以生成任意長(zhǎng)度的哈希值,最多可以生成4GiB的哈希值。

Blake2與Blake的不同
Blake2不再向blake round函數(shù)中對(duì)輸入字添加常量,修改了兩個(gè)旋轉(zhuǎn)常量及padding等。并在Blake2b中將rounds的數(shù)量由16減少為12,在Blake2s中將rounds數(shù)量由14減少為10。
由此變化之后,Blake2比Blake更加安全,并且在運(yùn)算速度上有了大幅的提升。不但如此,由于Blake2變體算法較多,可使用場(chǎng)景也要比Blake算法更多。
Blake2的安全性
自2012年發(fā)布至今,Blake2經(jīng)歷了密碼學(xué)專家的多年審查,并沒(méi)有發(fā)現(xiàn)不安全因素。后來(lái)也被NIST認(rèn)可,認(rèn)為它與SHA-3具有同等級(jí)別的安全性。

Blake2的應(yīng)用
目前,Blake2被廣泛應(yīng)用于區(qū)塊鏈數(shù)字貨幣領(lǐng)域,以取代SHA算法,另外WhatsApp和FreeBSD的管理器都在使用BLAKE2系列哈希算法。
Blake2的不足
雖然Blake2和SHA-3一樣安全,甚至Blake2的速度更快,但從整體的應(yīng)用情況來(lái)看,SHA-3還是處于優(yōu)勢(shì)的。很多人選擇使用SHA-3而不選擇BLAKE2的理由可能是Blake2并不是一種規(guī)范標(biāo)準(zhǔn)(雖然Blake也有自己的標(biāo)準(zhǔn)化文檔RFC),而且Blake2也沒(méi)有得到FIPS的許可認(rèn)證。
免責(zé)聲明:素材源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系刪稿。



