馬占剛 李婷婷 曹喜信,?
1.集成電路和智能系統(tǒng)系, 北京大學(xué)軟件與微電子學(xué)院, 北京 100871; 2.鄭州職業(yè)技術(shù)學(xué)院, 鄭州 450000;? 通信作者, E-mail: cxx@ss.pku.edu.cn
SHA2[1]是美國國家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)2001年發(fā)布的哈希算法, 作為 SHA1[2]的替代哈希算法, 包括 SHA224, SHA256, SHA384, SHA512,SHA512/224 和 SHA512/256 等 6種不同的算法標(biāo)準(zhǔn),廣泛應(yīng)用于數(shù)字簽名與驗(yàn)證、消息認(rèn)證碼生成和驗(yàn)證以及偽隨機(jī)數(shù)生成等領(lǐng)域。
很多應(yīng)用(如公共密鑰設(shè)施(PKI)[3], IPSec[4],SSL/TLS[5]和 802.16 標(biāo)準(zhǔn)[6])都包含數(shù)字認(rèn)證、數(shù)字簽名和偽隨機(jī)數(shù)生成等服務(wù)。這些服務(wù)在進(jìn)行過程中, 對數(shù)據(jù)進(jìn)行哈希計(jì)算是特別關(guān)鍵的步驟。當(dāng)具有安全保護(hù)功能應(yīng)用處理的用戶數(shù)據(jù)比較多時(shí), 特別是擁有大量客戶端的服務(wù)器, 對處理數(shù)據(jù)的吞吐率有很高的要求, 而應(yīng)用的吞吐率往往由哈希函數(shù)的吞吐率決定。
基于處理速度和安全保護(hù)方面的考慮, 產(chǎn)業(yè)界很多公司采用硬件電路實(shí)現(xiàn)哈希函數(shù), 例如NASA只授權(quán)使用特定的硬件電路對關(guān)鍵數(shù)據(jù)進(jìn)行加密。
隨著區(qū)塊鏈技術(shù)[7]的興起, 大量的數(shù)據(jù)完整性驗(yàn)證、數(shù)字簽名和偽隨機(jī)數(shù)生成等功能應(yīng)用到區(qū)塊鏈的底層計(jì)算中。具有完整性驗(yàn)證和數(shù)據(jù)壓縮功能的哈希計(jì)算在交易和區(qū)塊的同步過程中是必不可少的環(huán)節(jié)。隨著通信技術(shù)的發(fā)展和區(qū)塊鏈共識(shí)算法的進(jìn)化, 網(wǎng)絡(luò)傳輸過程的延遲和共識(shí)機(jī)制對數(shù)據(jù)同步的影響越來越小, 而節(jié)點(diǎn)對交易和區(qū)塊的驗(yàn)證計(jì)算對數(shù)據(jù)同步的影響越來越大。所以, 哈希計(jì)算硬件加速器性能的提升對區(qū)塊鏈交易和區(qū)塊驗(yàn)證速度的提升有較大的幫助, 從而對促進(jìn)區(qū)塊鏈技術(shù)的商業(yè)應(yīng)用落地有一定的幫助。……