亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        區(qū)塊鏈技術(shù)中高效散列函數(shù)的設(shè)計(jì)與實(shí)現(xiàn)

        2021-11-03 13:49:42滕飛李永珍
        關(guān)鍵詞:安全性效率實(shí)驗(yàn)

        滕飛, 李永珍

        ( 延邊大學(xué) 工學(xué)院, 吉林 延吉 133002 )

        0 引言

        區(qū)塊鏈技術(shù)由于具有能保障避數(shù)據(jù)安全、提高協(xié)同效率和控制風(fēng)險(xiǎn)等優(yōu)點(diǎn),因此其在數(shù)字貨幣、智能合約、供應(yīng)鏈管理、物聯(lián)網(wǎng)金融等方面得到應(yīng)用[1-2].但隨著區(qū)塊鏈技術(shù)的廣泛應(yīng)用,現(xiàn)有的區(qū)塊鏈技術(shù)在處理數(shù)據(jù)的效率方面逐漸難以滿足人們的要求,因此提高區(qū)塊鏈技術(shù)處理數(shù)據(jù)的效能具有重要意義.針對(duì)區(qū)塊鏈中的哈希函數(shù)計(jì)算效率較低進(jìn)而影響區(qū)塊鏈整體計(jì)算效率的問題,文獻(xiàn)[3]提出了一種基于FPGA的區(qū)塊鏈哈希加速優(yōu)化算法,但文獻(xiàn)的作者并未對(duì)該優(yōu)化算法的安全性方面進(jìn)行說明.文獻(xiàn)[4]對(duì)SHA - 2系列算法進(jìn)行了改進(jìn),改進(jìn)后的算法的安全性雖然比原算法有所提高,但其效率與原算法基本相同.基于上述研究,本文針對(duì)SHA - 256的迭代結(jié)構(gòu)進(jìn)行改進(jìn),并通過效率測(cè)試實(shí)驗(yàn)和雪崩效應(yīng)實(shí)驗(yàn)驗(yàn)證了改進(jìn)后的SHA - 256算法可有效提高區(qū)塊鏈的效率和安全性.

        1 相關(guān)技術(shù)簡(jiǎn)介

        1.1 區(qū)塊鏈中的數(shù)據(jù)結(jié)構(gòu)

        區(qū)塊鏈中的數(shù)據(jù)結(jié)構(gòu)通常由區(qū)塊頭(塊頭)和區(qū)塊體(塊身)組成,如圖1所示[5].區(qū)塊頭一般包括版本號(hào)、前一區(qū)塊的Hash值(Hash指針)、隨機(jī)數(shù)、目標(biāo)Hash值(本區(qū)塊的Hash值)、Merkle根等.區(qū)塊體保存的是若干條記錄以及由每條記錄的Hash值構(gòu)成的二叉Merkle樹[6].由于哈希函數(shù)具有單向性、抗碰撞性等特點(diǎn),因此其目前被廣泛應(yīng)用于區(qū)塊鏈技術(shù)中.哈希算法在區(qū)塊鏈技術(shù)中的主要作用是將一個(gè)交易區(qū)塊中的交易信息轉(zhuǎn)換成一個(gè)哈希值(區(qū)塊鏈通過比對(duì)交易信息的哈希值來確定信息有無被篡改),以及用于數(shù)據(jù)加密、共識(shí)計(jì)算的工作量證明、區(qū)塊之間的鏈接等[7-9].

        圖1 區(qū)塊數(shù)據(jù)結(jié)構(gòu)圖

        1.2 SHA - 256算法

        傳統(tǒng)的SHA-256算法是將任意長(zhǎng)度的字符串壓縮成固定長(zhǎng)度的字符串的一種算法.該算法的壓縮過程為:首先利用一種不可逆的方式將接收到的一段明文轉(zhuǎn)化為一段長(zhǎng)度較短、位數(shù)固定的散列值,然后通過處理明文生成一個(gè)256 bit長(zhǎng)的哈希值(消息摘要),最后通過比對(duì)哈希值確定信息是否被篡改[10].

        SHA-256算法的加密過程如下:

        第1步 初始化常量.初始化常量包括8個(gè)哈希初值(如表1所示)和64個(gè)哈希常量.

        表1 SHA - 256算法的哈希初值

        第2步 信息處理.信息處理的方式是在報(bào)文末尾對(duì)數(shù)據(jù)進(jìn)行填充.填充方法是:補(bǔ)充第1個(gè)比特,為數(shù)字1; 剩余的比特?cái)?shù)補(bǔ)充數(shù)字0.填充的結(jié)果是報(bào)文長(zhǎng)度對(duì)512取模以后的余數(shù)為448.

        第3步 計(jì)算消息摘要.本文采用函數(shù)迭代的方式計(jì)算消息摘要,由此共生成64個(gè)字.其中前16個(gè)字(記為w[0],…,w[15])由塊分解(將消息分解成512 bit大小的塊,每個(gè)字的大小為32 bit[11])產(chǎn)生,其余48個(gè)字由迭代公式得到.迭代公式[12]為:

        Wt=σ1(Wt -2)+Wt -7+σ0(Wt -15)+Wt -16.

        SHA - 256算法中的映射函數(shù)一共包含64次加密循環(huán)次數(shù),如圖2所示.在圖2中:ABCDEFGH這8個(gè)字(word)按照一定的規(guī)則進(jìn)行更新,其初始值分別為h0、h1、h2、h3、h4、h5、h6、h7;Kt對(duì)應(yīng)的是64個(gè)常量;Wt是本區(qū)塊產(chǎn)生的第t個(gè)字.對(duì)ABCDEFGH這8個(gè)字進(jìn)行循環(huán)加密的過程中,最后一次循環(huán)所產(chǎn)生的8個(gè)字合起來即是第i個(gè)塊對(duì)應(yīng)到的散列字符串.SHA - 256算法中的邏輯運(yùn)算如表2所示.

        圖2 映射函數(shù)的加密循環(huán)示意圖

        表2 SHA - 256算法中的邏輯運(yùn)算

        2 改進(jìn)的SHA - 256算法

        針對(duì)傳統(tǒng)的SHA - 256算法無法滿足區(qū)塊鏈對(duì)大數(shù)據(jù)的快速處理,本文對(duì)傳統(tǒng)的SHA - 256算法做如下改進(jìn):首先將SHA - 256算法按512位進(jìn)行分組劃分,并且將每一個(gè)分組再劃分為8個(gè)64位子分組;其次對(duì)報(bào)文進(jìn)行處理后,算法的輸出由原來的8個(gè)32位分組變?yōu)?個(gè)64位分組;最后將上述4個(gè)64位分組級(jí)聯(lián)生成一個(gè)256位的散列值.

        改進(jìn)的SHA - 256算法的執(zhí)行過程如下:

        第1步 在報(bào)文末尾處進(jìn)行數(shù)據(jù)填充,填充后的報(bào)文長(zhǎng)度對(duì)512取模后其余數(shù)為448.填充的方法是首先在原報(bào)文末尾處添加1個(gè)比特(用數(shù)字1表示),然后補(bǔ)充剩余的比特?cái)?shù)(用數(shù)字0表示).

        第2步 用64位比特?cái)?shù)記錄填充前的信息長(zhǎng)度.

        第3步 在改進(jìn)的SHA - 256算法中裝入標(biāo)準(zhǔn)的幻數(shù),標(biāo)準(zhǔn)的幻數(shù)為:

        A為0x36d219f41e0342b5,

        B為0xf807493c33fac611,

        C為0x1479c317abbfce09,

        D為0x4dbabfa350149e5c.

        第4步 對(duì)改進(jìn)的SHA - 256算法進(jìn)行4輪循環(huán)運(yùn)算(每輪16個(gè)步驟),各輪所使用的線性函數(shù)如表3.

        表3 每輪循環(huán)運(yùn)算中的線性函數(shù)

        圖3 改進(jìn)的SHA - 256算法中的單次循環(huán)示意圖

        表4 名文字順序

        圖4 改進(jìn)的SHA - 256算法的運(yùn)算流程

        為了降低傳統(tǒng)SHA - 256算法的復(fù)雜度,對(duì)上述改進(jìn)的SHA - 256算法進(jìn)行優(yōu)化,即將算法中主循環(huán)的每輪16次迭代變?yōu)?次迭代,由此4輪迭代可共減少32次迭代.減少迭代次數(shù)(32次)后,明文字Mj的數(shù)量和順序如表5所示.對(duì)比表4可知,算法減少32次迭代后,每輪所需要的明文字?jǐn)?shù)量比之前減少了一半,由此表明減少迭代次數(shù)可有效提高算法的效率.

        表5 名文字順序

        3 安全性分析

        1)窮舉攻擊.本文采用天河二號(hào)超級(jí)計(jì)算機(jī)(計(jì)算速度為每秒3.39×1016次)對(duì)改進(jìn)的SHA - 256算法進(jìn)行抗窮舉攻擊驗(yàn)證.經(jīng)計(jì)算知,采用天河二號(hào)超級(jí)計(jì)算機(jī)進(jìn)行窮舉攻擊破解時(shí)平均需要運(yùn)行1.22×1053a,由此說明改進(jìn)的SHA - 256算法對(duì)抗窮舉攻擊具有良好的安全性.

        2)生日攻擊.由生日攻擊原理可知,對(duì)改進(jìn)后的SHA - 256算法進(jìn)行生日攻擊時(shí)大概需要嘗試2128次哈希,若使用天河二號(hào)超級(jí)計(jì)算機(jī)對(duì)改進(jìn)后的SHA - 256算法進(jìn)行生日攻擊破解時(shí)平均需要運(yùn)行3.6×1014a,這說明改進(jìn)后的SHA - 256算法對(duì)生日攻擊具有良好的安全性.

        3)差分攻擊.由于改進(jìn)的SHA - 256算法與傳統(tǒng)的SHA - 256算法具有相同的迭代次數(shù)(64次),因此改進(jìn)的SHA - 256算法也可以有效抵抗現(xiàn)有的差分攻擊.

        4)雪崩效應(yīng).選取100對(duì)報(bào)文進(jìn)行雪崩效應(yīng)實(shí)驗(yàn).改進(jìn)后的SHA - 256算法和傳統(tǒng)的SHA - 256算法的雪崩效應(yīng)實(shí)驗(yàn)結(jié)果見圖5—圖7.由圖可以看出,改進(jìn)的64次迭代的SHA - 256算法和改進(jìn)的32次迭代的SHA - 256算法的壞點(diǎn)出現(xiàn)概率分別為3%和5%,而傳統(tǒng)的SHA - 256算法的壞點(diǎn)出現(xiàn)概率為5%.這表明改進(jìn)的64次迭代的SHA - 256算法的雪崩效果優(yōu)于傳統(tǒng)的SHA - 256算法.

        圖5 改進(jìn)后的SHA - 256(32 steps)算法的雪崩實(shí)驗(yàn)結(jié)果

        圖6 改進(jìn)后的SHA - 256(64 steps)算法的雪崩實(shí)驗(yàn)結(jié)果

        圖7 傳統(tǒng)的SHA - 256(64 steps)算法的雪崩實(shí)驗(yàn)結(jié)果

        4 性能分析

        為了驗(yàn)證方法的有效性,將改進(jìn)的SHA - 256算法的處理速率分別與傳統(tǒng)的SHA - 256算法和MD5算法的處理速率進(jìn)行了比較.實(shí)驗(yàn)利用Python語言編程實(shí)現(xiàn).計(jì)算機(jī)的配置為: Interl(R) Core(TM) i 5 - 5200U CPU@2.2 GHZ處理器, 64位win7操作系統(tǒng).實(shí)驗(yàn)數(shù)據(jù)選取6個(gè)不同字節(jié)的數(shù)據(jù),加密次數(shù)為10 000次.實(shí)驗(yàn)結(jié)果如圖8—圖10所示.由圖可以看出,改進(jìn)的64次迭代的SHA - 256算法和32次迭代的SHA - 256算法的計(jì)算效率比傳統(tǒng)的SHA - 256算法平均分別提高了24%和140%, 改進(jìn)的32次迭代的SHA - 256算法平均計(jì)算效率比MD5算法提高了32%.

        圖8 改進(jìn)的SHA - 256(32 steps)算法和MD5算法的處理速率

        圖9 改進(jìn)的SHA - 256(32 steps)算法和傳統(tǒng)的SHA - 256算法的處理速率

        圖10 改進(jìn)的SHA - 256(64 steps)算法和傳統(tǒng)的SHA - 256算法的處理速率

        5 結(jié)論

        研究表明,在保證算法安全性的基礎(chǔ)上,本文改進(jìn)的SHA - 256算法(64 steps和32 steps)的計(jì)算效率比傳統(tǒng)的SHA - 256算法分別提高了24%和140%,改進(jìn)的32 次迭代的SHA - 256算法的平均計(jì)算效率比MD5算法提高了32%,因此本文研究方法可為區(qū)塊鏈技術(shù)提高數(shù)據(jù)處理效率提供參考.在今后的研究中,我們將在哈希函數(shù)中引入隨機(jī)組合結(jié)構(gòu),以此進(jìn)一步提高本文改進(jìn)算法的安全性和適用性.

        猜你喜歡
        安全性效率實(shí)驗(yàn)
        記一次有趣的實(shí)驗(yàn)
        兩款輸液泵的輸血安全性評(píng)估
        新染料可提高電動(dòng)汽車安全性
        提升朗讀教學(xué)效率的幾點(diǎn)思考
        甘肅教育(2020年14期)2020-09-11 07:57:42
        做個(gè)怪怪長(zhǎng)實(shí)驗(yàn)
        ApplePay橫空出世 安全性遭受質(zhì)疑 拿什么保護(hù)你,我的蘋果支付?
        NO與NO2相互轉(zhuǎn)化實(shí)驗(yàn)的改進(jìn)
        實(shí)踐十號(hào)上的19項(xiàng)實(shí)驗(yàn)
        太空探索(2016年5期)2016-07-12 15:17:55
        跟蹤導(dǎo)練(一)2
        Imagination發(fā)布可實(shí)現(xiàn)下一代SoC安全性的OmniShield技術(shù)
        手机福利视频| 手机在线观看成年人视频| 女同性恋亚洲一区二区| 国产成人精品久久二区二区91| 久久久精品亚洲一区二区国产av| 欧美成人精品第一区| 正在播放国产多p交换视频 | 亚洲人成电影在线无码| 国产精品久久久久久久久免费观看| 亚洲熟妇av日韩熟妇av| 国产色第一区不卡高清| 麻豆md0077饥渴少妇| 九一九色国产| 欧美日韩亚洲成色二本道三区| 亚洲国产一区二区三区在观看 | 韩国19禁无遮挡啪啪无码网站| 亚洲人在线观看| 亚洲伊人成综合人影院| 久久亚洲免费精品视频| 日韩精品 在线 国产 丝袜| 国产成年无码v片在线| 国产在线观看入口| 久久久精品国产亚洲av网| 丝袜美腿丝袜美腿丝袜美腿丝袜| 曰韩无码av一区二区免费| 99久久久国产精品免费蜜臀| 女同久久精品国产99国产精品| 狠狠色丁香婷婷久久综合2021| 色偷偷亚洲精品一区二区| 国产亚洲自拍日本亚洲| 奇米影视777撸吧| 欧美综合区| 中文字幕被公侵犯的丰满人妻| 亚洲国产中文字幕无线乱码| 亚洲熟妇丰满多毛xxxx| 欧美亚洲日本国产综合在线| 久久综合网天天 | 亚洲无av高清一区不卡| 国产无套乱子伦精彩是白视频| 四房播播在线电影| 曰本亚洲欧洲色a在线|