本發明涉及數據校驗,具體涉及一種基于哈希算法的數據完整性校驗系統及方法。
背景技術:
1、基于哈希算法的數據完整性校驗系統是一種通過使用哈希函數來驗證數據是否在傳輸或存儲過程中發生了改變的技術。在這種系統中,數據的原始內容會經過哈希算法處理,生成一個固定長度的哈希值(也叫摘要)。這個哈希值是數據的唯一“指紋”,具有較強的抗碰撞性和敏感性。傳輸或存儲的數據和它的哈希值一起被發送或存儲,當數據接收方或用戶需要驗證數據的完整性時,再次對接收到的數據進行哈希計算,并將計算出的哈希值與原始哈希值進行比較。如果兩者一致,說明數據在傳輸或存儲過程中未被篡改,否則就表明數據可能遭到篡改或丟失。哈希算法常見的有md5、sha-1、sha-256等。
2、現有技術存在以下不足:
3、現有哈希算法在處理輸入變化時,如果輸出的哈希值變化較小或不顯著,當前技術通常無法智能地識別這種情況。當輸入數據具有較強的結構化或規律性時,算法可能無法產生足夠多樣化的哈希值,從而導致不同的輸入生成相同的哈希值。如果輸入數據的變化未能引起哈希值的顯著變化,多個不同的數據可能會產生相同的哈希值,進而導致校驗失敗,甚至使偽造數據得以通過驗證。
4、在所述背景技術部分公開的上述信息僅用于加強對本公開的背景的理解,因此它可以包括不構成對本領域普通技術人員已知的現有技術的信息。
技術實現思路
1、本發明的目的是提供一種基于哈希算法的數據完整性校驗系統及方法,通過構建分析集并提取與哈希值變化相關的特征,結合機器學習模型的預測,能夠智能識別出哈希值變化不顯著的潛在模式。當哈希值變化未能有效響應數據變化時,通過引入隨機鹽值并動態調整鹽值的哈希迭代次數,增加哈希計算的復雜性和隨機性,避免因數據的低熵或重復模式導致哈希值變化不足的情況。通過增強哈希算法的隨機性和適應性,有效降低哈希碰撞的風險,并確保在面對微小數據變化時,哈希值能夠準確地反映出這些變化,從而增強了數據完整性校驗的可靠性與安全性,提升了系統對潛在攻擊的防御能力,以解決上述背景技術中的問題。
2、為了實現上述目的,本發明提供如下技術方案:一種基于哈希算法的數據完整性校驗方法,包括以下步驟:
3、對原始輸入數據經過哈希算法處理生成一個固定長度的哈希值,將生成的哈希值收集并構建一個分析集,包含所有輸入數據對應的哈希值;
4、在分析集構建完成后,從中提取出與哈希值變化相關的特征,對提取的特征進行量化處理,初步識別哈希值變化不顯著的潛在模式;
5、將量化處理后的特征作為特征向量輸入至訓練完成的機器學習模型中,通過模型預測哈希值輸出結果的變化情況;
6、在識別到哈希值變化不顯著的情況下,將生成的隨機鹽值與原始數據組合在一起,形成新的輸入數據,再通過哈希算法進行處理,生成新的哈希值,提升哈希結果的隨機性與復雜度,并且根據哈希值變化的不顯著程度動態調整鹽值的哈希迭代次數,降低哈希碰撞風險。
7、優選的,對原始輸入數據經過哈希算法處理生成一個固定長度的哈希值,具體為:
8、通過哈希算法將輸入數據映射到一個固定長度的哈希值,哈希值是一個數字串,且相同的輸入始終會產生相同的哈希值。
9、優選的,從分析集提取出與哈希值變化相關的特征,其中,提取的特征包括相鄰哈希值之間的比特翻轉率和相鄰哈希值之間的相似程度,對相鄰哈希值之間的比特翻轉率和相鄰哈希值之間的相似程度進行量化處理,分別生成位翻轉率量化值和相鄰哈希相似度量化值,通過位翻轉率量化值和相鄰哈希相似度量化值初步識別哈希值變化不顯著的潛在模式。
10、優選的,將量化處理后的位翻轉率量化值和相鄰哈希相似度量化值作為特征向量輸入至訓練完成的機器學習模型中,基于機器學習模型預測生成變化響應指數,通過變化響應指數預測哈希值輸出結果的變化情況。
11、優選的,將通過訓練完成的機器學習模型對哈希值輸出結果的變化情況進行預測時生成的變化響應指數與預先設定的變化響應指數參考閾值進行比對分析,對哈希值的不顯著變化情況進行預測,具體的步驟如下:若變化響應指數小于變化響應指數參考閾值,則判定哈希值變化不顯著;若變化響應指數大于等于變化響應指數參考閾值,則判定哈希值變化顯著。
12、優選的,在識別到哈希值變化不顯著的情況下,將生成的隨機鹽值與原始數據組合在一起,形成新的輸入數據,再通過哈希算法進行處理,生成新的哈希值,具體的步驟如下:
13、在識別到哈希值變化不顯著后,首先生成隨機鹽值,并將其與原始數據 d組合形成新的輸入數據,具體的表達式為:
14、,其中:是用于控制隨機性來源的內部參數,表示在參數下生成的高熵隨機序列,保證鹽值的不可預測性,表示對隨機序列進行哈希運算后,取其結果的次冪,進一步增強鹽值的復雜度,表示將和進行級聯, d為原始數據,為新的待哈希輸入;
15、在得到新的待哈希輸入后,通過哈希算法進行多次迭代計算,迭代次數由下式決定:
16、
17、,其中:為鹽值哈希迭代次數,決定了對新的待哈希輸入進行反復哈希處理的輪數,為變化響應指數,表示哈希值變化不顯著程度的度量,為變化響應指數參考閾值,為基礎倍增系數,用于控制整體迭代強度,為指數放大參數,對變化不顯著度進行非線性變換,表示向下取整,保證迭代次數為整數,為對數調節因子,放大不顯著變化對迭代次數的影響。
18、優選的,對相鄰哈希值之間的比特翻轉率進行量化處理生成位翻轉率量化值的具體步驟如下:
19、針對一組輸入數據的哈希值,構建比特翻轉矩陣,用于記錄相鄰哈希值之間的逐位變化情況,構建的表達式為:
20、
21、,其中:表示第 i個哈希值在第 j位的比特翻轉情況,和分別表示第 i個和第 i+1個哈希值在第 j位上的二進制值,表示異或運算,若兩位相同則結果為0,若不同則結果為1,表示該位發生翻轉,為權重函數,定義為:
22、
23、,其中: m是哈希值的長度, mod是取模運算的縮寫,表示取余數的運算,計算的是比特索引 j對哈希長度 m取模后的結果,即索引 j在哈希值范圍內的循環索引,如果索引 j超過 m,則通過取模使其在 m范圍內循環,而不會超出預定的比特范,用于增強不同位的影響程度;
24、基于比特翻轉矩陣bfm計算位翻轉率量化值,用于量化哈希值變化的不顯著性,計算的表達式為:
25、,其中:為位翻轉率量化值, n為總哈希樣本數,即數據集中的哈希值個數,使用正弦函數對位索引進行非線性縮放,使得哈希值中部的位翻轉對位翻轉率量化值貢獻更大,而首尾的位翻轉影響更小,避免模式化哈希碰撞被忽略, e為指數調整因子,用于放大低翻轉率的影響,提高該位翻轉率量化值對哈希碰撞的敏感度。
26、優選的,對相鄰哈希值之間的相似程度進行量化處理生成相鄰哈希相似度量化值的具體步驟如下:
27、采用歸一化權重漢明相似度來衡量哈希值的整體相似性,權重漢明相似度的計算表達式為:
28、,其中:表示歸一化權重漢明相似度,和分別表示相鄰輸入數據計算所得的哈希值在第 k位上的二進制數,為第 k位的動態權重,采用熵權法計算,定義如下:,其中,表示該比特位在多個哈希值中出現0或1的概率;
29、根據歸一化權重漢明相似度來計算相鄰哈希相似度量化值,相鄰哈希相似度量化值反映了相鄰哈希值的相似性,具體的計算表達式為:
30、,其中,表示相鄰哈希相似度量化值,所有相鄰哈希值計算中歸一化權重漢明相似度的最大值。
31、基于哈希算法的數據完整性校驗系統,包括哈希值生成模塊、特征提取與量化模塊、機器學習預測模塊、鹽值生成與哈希增強模塊以及動態調整與碰撞防護模塊;
32、哈希值生成模塊,對原始輸入數據經過哈希算法處理生成一個固定長度的哈希值,將生成的哈希值收集并構建一個分析集,包含所有輸入數據對應的哈希值;
33、特征提取與量化模塊,在分析集構建完成后,從中提取出與哈希值變化相關的特征,對提取的特征進行量化處理,初步識別哈希值變化不顯著的潛在模式;
34、機器學習預測模塊,將量化處理后的特征作為特征向量輸入至訓練完成的機器學習模型中,通過模型預測哈希值輸出結果的變化情況;
35、鹽值生成與哈希增強模塊,在識別到哈希值變化不顯著的情況下,將生成的隨機鹽值與原始數據組合在一起,形成新的輸入數據,再通過哈希算法進行處理,生成新的哈希值,提升哈希結果的隨機性與復雜度;
36、動態調整與碰撞防護模塊,根據哈希值變化的不顯著程度動態調整鹽值的哈希迭代次數,降低哈希碰撞風險。
37、在上述技術方案中,本發明提供的技術效果和優點:
38、本發明通過構建分析集并提取與哈希值變化相關的特征,結合機器學習模型的預測,能夠智能識別出哈希值變化不顯著的潛在模式。當哈希值變化未能有效響應數據變化時,通過引入隨機鹽值并動態調整鹽值的哈希迭代次數,增加哈希計算的復雜性和隨機性,避免因數據的低熵或重復模式導致哈希值變化不足的情況。通過增強哈希算法的隨機性和適應性,有效降低哈希碰撞的風險,并確保在面對微小數據變化時,哈希值能夠準確地反映出這些變化,從而增強了數據完整性校驗的可靠性與安全性,提升了系統對潛在攻擊的防御能力。