亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

并行哈希函數(shù)的構造方法與流程

文檔序號:11155988閱讀:449來源:國知局
并行哈希函數(shù)的構造方法與制造工藝
本發(fā)明涉及信息安全領域,尤其涉及一種并行哈希函數(shù)的構造方法。
背景技術
:現(xiàn)有的哈希函數(shù)消息運算過程中重復使用一壓縮函數(shù)f,如圖1所示,函數(shù)f的輸入有兩項,一項是上一輪(第i-1輪)的輸出CVi-1,也即是鏈接變量,另一項則是本輪(第i輪)輸入的消息塊Yi。因此只有上一個消息塊的值計算結束之后才能計算下一個消息塊的值,這就增加了計算時間。當消息足夠長時,運算速率不可避免的會很低,使得運算的效率降低。技術實現(xiàn)要素:本發(fā)明旨在解決現(xiàn)有技術中哈希函數(shù)運算效率較低的技術問題,提供一種并行哈希函數(shù)的構造方法。本發(fā)明的實施例提供一種并行哈希函數(shù)的構造方法,所述構造方法包括以下步驟:對給定值進行填充得到填充給定值,并將所述填充給定值進行劃分得到多個初始消息塊;對多個初始消息塊進行預設的函數(shù)處理得到對應的多個塊哈希值;判斷當前輪數(shù)的序列號為奇數(shù)或偶數(shù),其中,當當前輪數(shù)的序列號為奇數(shù)時,相鄰兩個塊哈希值進行異或運算得到一個異或運算值,并將所述異或運算值緩存在8個寄存器中,當當前輪數(shù)的序列號為偶數(shù)時,相鄰兩個塊哈希值進行合并交換運算得到一個合并運算,并將所述合并運算值緩存在8個寄存器中;直到根據(jù)多個塊哈希值得到最終的異或運算值或最終的合并運算值;根據(jù)最終的異或運算值或最終的合并運算值得到哈希值。本發(fā)明的技術方案與現(xiàn)有技術相比,有益效果在于:每個塊哈希值在計算時不受其他消息塊值的影響,不需要等待其他消息塊值的運算結果來進行運算,即在每輪計算中,多個消息塊可以同時被處理,因此可以提高運算效率,節(jié)省運算時間。附圖說明圖1是現(xiàn)有技術中哈希函數(shù)的運算示意圖;圖2是本發(fā)明并行哈希函數(shù)的構造方法一種實施例的流程示意圖;圖3是本發(fā)明并行哈希函數(shù)一種實施例的結構示意圖;圖4是本發(fā)明并行哈希函數(shù)的構造方法中初始鏈接變量值的處理方法一種實施例的流程示意圖;圖5是本發(fā)明并行哈希函數(shù)的構造方法中初始鏈接變量值的處理方法另一種實施例的流程示意圖;圖6是本發(fā)明并行哈希函數(shù)的仿真結果示意圖。具體實施方式下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。本發(fā)明一個實施例的并行哈希函數(shù)的構造方法,如圖2所示,所述構造方法包括以下步驟:步驟S201,對給定值進行填充得到填充給定值,并將所述填充給定值進行劃分得到多個初始消息塊;步驟S202,對多個初始消息塊進行預設的函數(shù)處理得到對應的多個塊哈希值;步驟S203,判斷當前輪數(shù)的序列號為奇數(shù)或偶數(shù),其中,當當前輪數(shù)的序列號為奇數(shù)時,進入步驟S204,當當前輪數(shù)的序列號為偶數(shù)時,進入步驟S205;步驟S204,相鄰兩個塊哈希值進行異或運算得到一個異或運算值,并將所述異或運算值緩存在8個寄存器中;步驟S205,相鄰兩個塊哈希值進行合并交換運算得到一個合并運算,并將所述合并運算值緩存在8個寄存器中;步驟S206,直到根據(jù)多個塊哈希值得到最終的異或運算值或最終的合并運算值;步驟S207,根據(jù)最終的異或運算值或最終的合并運算值得到哈希值。在具體實施中,所述對給定值進行填充得到填充給定值具體為:在給定值的后面加入一個常數(shù)1和多個常數(shù)0;加入給定值的長度值,得到長度為512倍數(shù)的填充給定值。在具體實施中,所述將所述填充給定值進行劃分得到多個初始消息塊的步驟,具體為:按照512比特,將所述填充給定值進行劃分得到多個初始消息塊在具體實施中,所述預設的函數(shù)具體為:壓縮函數(shù)f。在具體實施中,當當前輪數(shù)的序列號為奇數(shù)時,相鄰兩個塊哈希值進行異或運算得到一個異或運算值,具體為:當當前輪數(shù)的序列號為奇數(shù)時,在最后一個塊哈希值之后增加一個塊哈希值;相鄰兩個塊哈希值進行異或運算得到一個異或運算值,其中,增加的塊哈希值與最后一個塊哈希值相同。在具體實施中,圖3是本發(fā)明一個實施例并行哈希函數(shù)的結構示意圖。首先把給定的消息M進行填充,使得填充后的長度是512的倍數(shù)。填充的規(guī)則是在消息后加入一個1和若干個0,在最后再加入消息的長度。填充之后的消息被分成若干個512比特的消息塊Y0,Y1,…,YL-1。我們先各自計算每一個消息塊的值并把它們的值記錄下來表示為塊哈希值。在接下來的每一輪里,每兩個相鄰的消息塊的值被一起進行運算。當每一輪里消息塊的個數(shù)是奇數(shù)時,我們添加一個塊哈希值,該塊哈希值和本輪最后一個消息塊的值是相同的。在這個階段,使用256比特長的緩沖區(qū)以存儲中間結果和最后的哈希值,緩沖區(qū)可表示為8個32比特長的寄存器A,B,C,D,E,F(xiàn),G,H。假設i是輪數(shù)的序列號,當imod2=1(i=1,2,...)時,讓該輪里相鄰的兩個消息塊進行異或運算,獲得的值分別存放在八個寄存器A,B,C,D,E,F(xiàn),G,H中。比如在第一輪中,Y0對應的消息塊值和Y1對應的消息塊值進行異或運算得到運算值h1,Y2對應的消息塊值和Y2對應的消息塊值進行異或運算得到運算值h2,在第一輪中,最后一個Yi對應的消息塊值沒有可以進行運算的對象,因此增加一個Yi對應的消息塊值與最后一個Yi對應的消息塊值進行異或運算。當imod2=0(i=1,2,...)時,我們把這兩個消息塊中前一個消息塊的E,F,G,H中的值依次賦給新的寄存器A,B,C,D,把后一個消息塊的A,B,C,D中的值依次賦給新的寄存器E,F,G,H,這樣就得到新的值。比如相鄰兩個消息塊需要合并,記第一消息塊為MB1和第二消息塊MB2。第一消息塊MB1需要ABCDEFGH八個寄存器存放,第二消息塊MB2也需要ABCDEFGH八個寄存器存放。當imod2=0時,第一消息塊為MB1和第二消息塊MB2的合并結果記為NMB。其中,NMB的ABCD四個寄存器存放第一消息塊MB1的EFGH四個寄存器的值,NMB的四個寄存器EFGH存放第二消息塊MB2的ABCD四個寄存器的值。根據(jù)本發(fā)明中并行哈希函數(shù)的構造方法,每個塊哈希值在計算時不受其他消息塊值的影響,不需要等待其他消息塊值的運算結果來進行運算,即在每輪計算中,多個消息塊可以同時被處理,因此可以提高運算效率,節(jié)省運算時間。在具體實施中,由于現(xiàn)有哈希函數(shù)的初始鏈接變量值是常量,這就使得攻擊者可以采用窮舉攻擊的方法找到碰撞,使得哈希函數(shù)變得不安全,通過對初始鏈接變量值進行處理改進,可以增強哈希函數(shù)的不可確定性和不可預測性。本發(fā)明還提供一種實施例的并行哈希函數(shù)的構造方法,如圖4所述,在步驟S203之前以下步驟:步驟S401,將多個塊哈希值一一對應存放在對應的8個寄存器中;步驟S402,在每個塊哈希值對應的8個寄存器中進行第一次計算,根據(jù)函數(shù)f1,f2,σ1,σ2對每相鄰兩個寄存器中的值進行結合運算,得到第一次結合運算結果;步驟S403,進行第二次計算,根據(jù)函數(shù)f3,f4,σ3,σ4和第一輪結合運算結果對第一寄存器中的值和第四寄存器中的值、第二寄存器中的值和第三寄存器中的值、第五寄存器中的值和第八寄存器中的值以及第六寄存器中的值和第七寄存器中的值分別進行結合運算,得到第二次結合運算結果;步驟S404,進行第三次計算,根據(jù)函數(shù)f5,f6,σ5,σ6和第二次結合運算結果對第一寄存器中的值和第六寄存器中的值、第二寄存器中的值和第五寄存器中的值、第三寄存器中的值和第八寄存器中的值以及第四寄存器中的值和第七寄存器中的值分別進行結合運算,得到每個塊哈希值對應的8個寄存器中的更新值。也就是說,上述步驟具體為圖3中blockhash的細化步驟,在當i=1時,先對初始鏈接變量值進行處理改進之后,再根據(jù)每相鄰兩個塊哈希值對應的8個寄存器中的更新值進行異或運算。在具體實施中,步驟S402具體為:根據(jù)函數(shù)σ1對第一寄存器A中的值進行運算得到函數(shù)σ1的第一計算結果,并將函數(shù)σ1的第一計算結果輸出至函數(shù)f1和函數(shù)f2中;根據(jù)函數(shù)f1對第二寄存器B中的值、函數(shù)σ1的第一計算結果和第一預設值n1進行運算得到函數(shù)f1的第一計算結果,并將函數(shù)f1的第一計算結果輸出至函數(shù)σ2中;根據(jù)函數(shù)σ2對函數(shù)f1的第一計算結果進行運算得到函數(shù)σ2的第一計算結果并更新至第二寄存器B,并將函數(shù)σ2的第一計算結果輸出至函數(shù)f2和第二次計算中;根據(jù)函數(shù)f2對函數(shù)σ1的第一計算結果、函數(shù)σ2的第一計算結果和第二預設值n2進行運算得到函數(shù)f2的第一計算結果更新至第一寄存器A,并將函數(shù)f2的第一計算結果輸出至第二次計算中;根據(jù)函數(shù)σ1對第三寄存器C中的值進行運算得到函數(shù)σ1的第二計算結果,并函數(shù)σ1的第二計算結果輸出至函數(shù)f1和函數(shù)f2中;根據(jù)函數(shù)f1對第四寄存器D中的值、函數(shù)σ1的第二計算結果和第一預設值n1進行運算得到函數(shù)f1的第二計算結果,并將函數(shù)f1的第一計算結果輸出至函數(shù)σ2中;根據(jù)函數(shù)σ2對函數(shù)f1的第二計算結果進行運算得到函數(shù)σ2的第二計算結果更新至第四寄存器D,并將函數(shù)σ2的第二計算結果輸出至函數(shù)f2和第二次計算中;根據(jù)函數(shù)f2對函數(shù)σ1的第二計算結果、函數(shù)σ2的第二計算結果和第二預設值n2進行運算得到函數(shù)f2的第二計算結果更新至第三寄存器C,并將函數(shù)f2的第二計算結果輸出至第二次計算中;根據(jù)函數(shù)σ1對第五寄存器E中的值進行運算得到函數(shù)σ1的第三計算結果,并將函數(shù)σ1的第三計算結果輸出至函數(shù)f1和函數(shù)f2中;根據(jù)函數(shù)f1對第六寄存器F中的值、函數(shù)σ1的第三計算結果和第一預設值n1進行運算得到函數(shù)f1的第三計算結果,并將函數(shù)f1的第三計算結果輸出至函數(shù)σ2中;根據(jù)函數(shù)σ2對函數(shù)f1的第三計算結果進行運算得到函數(shù)σ2的第三計算結果更新至第六寄存器F,并將函數(shù)σ2的第三計算結果輸出至函數(shù)f2和第二次計算中;根據(jù)函數(shù)f2對函數(shù)σ1的第三計算結果、函數(shù)σ2的第三計算結果和第二預設值n2進行運算得到函數(shù)f2的第三計算結果更新至第五寄存器E,并將函數(shù)f2的第三計算結果輸出至第二次計算中;根據(jù)函數(shù)σ1對第七寄存器G中的值進行運算得到函數(shù)σ1的第四計算結果,并將函數(shù)σ1的第四計算結果輸出至函數(shù)f1和函數(shù)f2中;根據(jù)函數(shù)f1對第八寄存器H中的值、函數(shù)σ1的第四計算結果和第一預設值n1進行運算得到函數(shù)f1的第四計算結果,并將函數(shù)f1的第四計算結果輸出至函數(shù)σ2中;根據(jù)函數(shù)σ2對函數(shù)f1的第四計算結果進行運算得到函數(shù)σ2的第四計算結果更新至第八寄存器H,并將函數(shù)σ2的第四計算結果輸出至函數(shù)f2和第二次計算中;根據(jù)函數(shù)f2對函數(shù)σ1的第四計算結果、函數(shù)σ2的第四計算結果和第二預設值n2進行運算得到函數(shù)f2的第四計算結果更新至第七寄存器G,并將函數(shù)f2的第四計算結果輸出至第二次計算中。在具體實施中,步驟S403具體為:根據(jù)函數(shù)σ3對函數(shù)f2的第一計算結果進行運算得到函數(shù)σ3的第一計算結果,并將函數(shù)σ3的第一計算結果輸出至函數(shù)f3和函數(shù)f4中;根據(jù)函數(shù)σ3對函數(shù)f2的第二計算結果進行運算得到函數(shù)σ3的第二計算結果,并將函數(shù)σ3的第二計算結果輸出至函數(shù)f3和函數(shù)f4中;根據(jù)函數(shù)f3對函數(shù)σ2的第一計算結果、函數(shù)σ3的第二計算結果和第三預設值n3進行運算得到函數(shù)f3的第一計算結果,并將函數(shù)f3的第一計算結果輸出至函數(shù)σ4中;根據(jù)函數(shù)σ4對函數(shù)f3的第一計算結果進行運算得到函數(shù)σ4的第一計算結果更新至第二寄存器B,并將函數(shù)σ4的第一計算結果輸出至函數(shù)f4和第三次運算中;根據(jù)函數(shù)f4對函數(shù)σ4的第一計算結果、函數(shù)σ3的第二計算結果和第四預設值n4進行運算得到函數(shù)f4的第一計算結果更新至第三寄存器C,并將函數(shù)f4的第一計算結果輸出至第三次運算中;根據(jù)函數(shù)f3對函數(shù)σ3的第一計算結果、函數(shù)σ2的第二計算結果和第三預設值n3進行運算得到函數(shù)f3的第二計算結果,并將函數(shù)f3的第二計算結果輸出至函數(shù)σ4中;根據(jù)函數(shù)σ4對函數(shù)f3的第二計算結果進行運算得到函數(shù)σ4的第二計算結果更新至第四寄存器D,并將函數(shù)σ4的第二計算結果輸出至函數(shù)f4;根據(jù)函數(shù)f4對函數(shù)σ4的第二計算結果、函數(shù)σ3的第一計算結果和第四預設值n4進行運算得到函數(shù)f4的第二計算結果更新至第一寄存器A,并將函數(shù)f4的第二計算結果輸出至第三次運算中;根據(jù)函數(shù)σ3對函數(shù)f2的第三計算結果進行運算得到函數(shù)σ3的第三計算結果,并將函數(shù)σ3的第三計算結果輸出至函數(shù)f3和函數(shù)f4中;根據(jù)函數(shù)σ3對函數(shù)f2的第四計算結果進行運算得到函數(shù)σ3的第四計算結果,并將函數(shù)σ3的第四計算結果輸出至函數(shù)f3和函數(shù)f4中;根據(jù)函數(shù)f3對函數(shù)σ2的第三計算結果、函數(shù)σ3的第四計算結果和第三預設值n3進行運算得到函數(shù)f3的第三計算結果,并將函數(shù)f3的第三計算結果輸出至函數(shù)σ4中;根據(jù)函數(shù)σ4對函數(shù)f3的第三計算結果進行運算得到函數(shù)σ4的第三計算結果更新至第六寄存器F,并將函數(shù)σ4的第三計算結果輸出至函數(shù)f4和第三次運算中;根據(jù)函數(shù)f4對函數(shù)σ4的第三計算結果、函數(shù)σ3的第四計算結果和第四預設值n4進行運算得到函數(shù)f4的第三計算結果更新至第七寄存器G,并將函數(shù)f4的第三計算結果輸出至第三次運算中;根據(jù)函數(shù)f3對函數(shù)σ3的第三計算結果、函數(shù)σ2的第四計算結果和第三預設值n3進行運算得到函數(shù)f3的第四計算結果,并將函數(shù)f3的第四計算結果輸出至函數(shù)σ4中;根據(jù)函數(shù)σ4對函數(shù)f3的第四計算結果進行運算得到函數(shù)σ4的第四計算結果更新至第八寄存器H,并將函數(shù)σ4的第四計算結果輸出至函數(shù)f4;根據(jù)函數(shù)f4對函數(shù)σ4的第四計算結果、函數(shù)σ3的第三計算結果和第四預設值n4進行運算得到函數(shù)f4的第四計算結果更新至第五寄存器E,并將函數(shù)f4的第四計算結果輸出至第三次運算中。在具體實施中,步驟S404具體為:根據(jù)函數(shù)σ5對函數(shù)f4的第二計算結果進行運算得到函數(shù)σ5的第一計算結果,并將函數(shù)σ5的第一計算結果輸出至函數(shù)f5和函數(shù)f6中;根據(jù)函數(shù)f5對函數(shù)σ5的第一計算結果、函數(shù)σ4的第三計算結果和第五預設值n5進行運算得到函數(shù)f5的第一計算結果,并將函數(shù)f5的第一計算結果輸出至函數(shù)σ6中;根據(jù)函數(shù)σ6對函數(shù)f5的第一計算結果進行運算得到函數(shù)σ6的第一計算結果更新至第六寄存器F,并將函數(shù)σ6的第一計算結果輸出至函數(shù)f6中;根據(jù)函數(shù)f6對函數(shù)σ6的第一計算結果、函數(shù)σ5的第一計算結果和第六預設值n6進行運算得到函數(shù)f6的第一計算結果更新至第一寄存器A中;根據(jù)函數(shù)σ5對函數(shù)f4的第四計算結果進行運算得到函數(shù)σ5的第二計算結果,并將函數(shù)σ5的第二計算結果輸出至函數(shù)f5和函數(shù)f6中;根據(jù)函數(shù)f5對函數(shù)σ5的第二計算結果、函數(shù)σ4的第一計算結果和第五預設值n5進行運算得到函數(shù)f5的第二計算結果,并將函數(shù)f5的第二計算結果輸出至函數(shù)σ6中;根據(jù)函數(shù)σ6對函數(shù)f5的第二計算結果進行運算得到函數(shù)σ6的第二計算結果更新至第二寄存器B,并將函數(shù)σ6的第二計算結果輸出至函數(shù)f6中;根據(jù)函數(shù)f6對函數(shù)σ6的第二計算結果、函數(shù)σ5的第二計算結果和第六預設值n6進行運算得到函數(shù)f6的第二計算結果更新至第五寄存器E中;根據(jù)函數(shù)σ5對函數(shù)f4的第一計算結果進行運算得到函數(shù)σ5的第三計算結果,并將函數(shù)σ5的第三計算結果輸出至函數(shù)f5和函數(shù)f6中;根據(jù)函數(shù)f5對函數(shù)σ5的第三計算結果、函數(shù)σ4的第四計算結果和第五預設值n5進行運算得到函數(shù)f5的第三計算結果,并將函數(shù)f5的第三計算結果輸出至函數(shù)σ6中;根據(jù)函數(shù)σ6對函數(shù)f5的第三計算結果進行運算得到函數(shù)σ6的第三計算結果更新至第八寄存器H中,并將函數(shù)σ6的第三計算結果輸出至函數(shù)f6中;根據(jù)函數(shù)f6對函數(shù)σ6的第三計算結果、函數(shù)σ5的第三計算結果和第六預設值n6進行運算得到函數(shù)f6的第三計算結果更新至第三寄存器C中;根據(jù)函數(shù)σ5對函數(shù)f4的第三計算結果進行運算得到函數(shù)σ5的第四計算結果,并將函數(shù)σ5的第四計算結果輸出至函數(shù)f5和函數(shù)f6中;根據(jù)函數(shù)f5對函數(shù)σ5的第四計算結果、函數(shù)σ4的第二計算結果和第五預設值n5進行運算得到函數(shù)f5的第四計算結果,并將函數(shù)f5的第四計算結果輸出至函數(shù)σ6中;根據(jù)函數(shù)σ6對函數(shù)f5的第四計算結果進行運算得到函數(shù)σ6的第四計算結果更新至第四寄存器中,并將函數(shù)σ6的第四計算結果輸出至函數(shù)f6中;根據(jù)函數(shù)f6對函數(shù)σ6的第四計算結果、函數(shù)σ5的第四計算結果和第六預設值n6進行運算得到函數(shù)f6的第四計算結果更新至第七寄存器G中。在具體實施中,如圖5所示,在初始鏈接變量值的處理過程中,采用一個32比特輸入xi的函數(shù)σi和有三個32比特的輸入ki,mi,ni的函數(shù)fi,i=1,2,...,6。表示把xi循環(huán)右移si位。在不同輪選擇了不同的si值。σi和fi的計算公式如下所示:其中,x1,x2,x3,x4,x5,x6為輸入值,ki表示函數(shù)σi的輸出,mi表述函數(shù)σi-1的輸出,當i=1時,σ0是寄存器中的值。原先已知的初始值存放在寄存器A,B,C,D,E,F,G,H中,這些值將經(jīng)過三輪處理來獲得更新后的初始值。在第一輪中,相鄰寄存器中的值通過函數(shù)f1,f2,σ1,σ2進行運算,也即是A和B進行結合運算,C和D進行運算,E和F進行運算,G和H進行結合運算,得到新的值。接下來兩輪中值的計算方法和第一輪中是類似的,只是采用的函數(shù)和值結合的次序不同。第二輪中,采用的函數(shù)是f3,f4,σ3,σ4,前四個值中,A和D,B和C分別進行進行結合運算,后四個值中,E和H,F(xiàn)和G分別進行結合運算。在第三輪中,函數(shù)f5,f6,σ5,σ6被采用,其中A和F進行結合運算,B和E進行運算,C和H進行運算,D和G進行運算。經(jīng)過這三輪運算,最終得出更新后初始值。對于任意函數(shù)fi有三個輸入,其中一個輸入ki來自函數(shù)σi的輸出,另一個輸入mi來自函數(shù)σi-1的輸出,最后一個輸入ni的值是常數(shù),在不同輪的取值情況分別列在表一和表二中。在表一中,n1的值分別取自SHA256(t)(t=0,1,2,3)得到的哈希值的前32比特,n2的值來源于t(t=2,3,5,7)的平方根的十進制部分的二進制表示的前32位。通過表二可以看出,對于n3,n4,n5,n6,同樣的值被使用。表一第一輪A&BC&DE&FG&Hn1的值5feceb666b86b273d4735e3a4e074085n2的值428a2f9871374491b5c0fbcfe9b5dba5表二第二輪B&CA&DF&GE&H第三輪B&EA&FD&GC&Hn3,n5的值713744916b86b273e9b5dba54e074085n4,n6的值5feceb66428a2f98d4735e3ab5c0fbcf通過把最終得到的值作為新的初始鏈接變量值。通過對于初始值的改進,增強了函數(shù)的不可確定性和不可預測性。在具體實施中,測試哈希值對初始鏈接變量的敏感性,即為了評估初始值改變對于最終哈希值的影響,任意選擇了一個文本“Hashfunctionisoneofthemajortoolsincryptography,whichisusuallyusedfordataintegrityinconjunctionwithdigitalsignatureschemes.”并對其在六種不同的情況下進行測試。情形1:計算這個給定的消息的哈希值;情形2:第一個字符‘H’換成‘A’;情形3:把單詞“data”變成“date”;情形4:句子末尾的句號換成分號;情形5:把句子中的第二個單詞“function”改成“Function”;情形6:在單詞“Hash”之前添加一個數(shù)字6。得出的相對應的哈希值用十六進制表示如下:情形1:107CC9225AD8BB6D15D51992C3AE6386321F150D5320716C71F9BF7C47783920;情形2:B81788A2CF98DE7AD4CB770459046C9104E7F46953563302FEFDA941A46C1D08;情形3:8AC84B4DAD82294541B27C1207C0D90ACF9CD89A541871AC9BFA6D2A9E7A2849;情形4:63DFE552EDACCB56E73225BE335FBE7FD4947C2BEE2697DF0D5346A422001A38;情形5:5BC213F16560D60784E6815039E9677C80F5129EA7D5920AE57A70B30D93ADB0;情形6:AB20F763C0E7093C10011597572D0E828118662FA28C57E0A8DE4C651D051CC0。如圖6所示,得出的不同情況下的測試值即仿真結果。根據(jù)仿真結果可以看出,不管消息有多么極小的改變,哈希值都將會有很大的變化。結果表明并行哈希函數(shù)的敏感性很好。在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結合和組合。盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領域的普通技術人員在本發(fā)明的范圍內(nèi)可以對上述實施例進行變化、修改、替換和變型。當前第1頁1 2 3 
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1