System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及分布式存儲,特別是涉及一種文件校驗方法、裝置、計算機設備和存儲介質。
技術介紹
1、隨著信息技術的發展和互聯網絡的普及,數據安全和完整性成為了影響信息系統的重要因素。特別是在分布式文件系統環境中,由于數據存儲節點分布廣泛且管理復雜,文件數據篡改的風險更高。因此,如何有效地檢測文件數據是否被篡改成為了一個亟待解決的問題。
技術實現思路
1、基于此,有必要針對上述技術問題,提供一種能夠提高數據完整性和安全性的文件校驗方法、裝置、計算機設備和存儲介質。
2、第一方面,提供一種文件校驗方法,所述方法包括:
3、將獲取到的第一目標文件切割成多個數據塊,并將所述多個數據塊分配至對應的數據節點,以存儲所述第一目標文件對應的數據塊;
4、響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼;
5、響應于檢測到文件讀取請求時,讀取第二目標數據塊,基于所述第二目標數據塊,構建第三目標文件,并基于預設校驗算法,確定所述第三目標文件的第二校驗碼;
6、響應于檢測到所述第一校驗碼和所述第二校驗碼相同時,基于所述第三目標文件,響應所述文件讀取請求。
7、可選的,在獲取到所述第一目標文件之后,所述方法還包括:
8、獲取所述第一目標文件的基本信息,所述基本信息包括以下至少一項:名稱、大小、類型、創建時間和訪
9、基于所述第一目標文件的基本信息,生成所述第一目標文件的第一元數據。
10、可選的,響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼包括:
11、檢測第一目標文件對應的數據塊是否已存儲完成;
12、響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,從多個數據節點中讀取多個第一目標數據塊;
13、獲取所述多個第一目標數據塊對應的目標標記符,所述目標標記符用于描述第一目標數據塊的切割順序;
14、基于所述目標標記符,確定多個第一目標數據塊的合并順序;
15、基于所述多個第一目標數據塊的合并順序,對多個第一目標數據塊進行合并;
16、響應于檢測到多個第一目標數據塊已合并完成時,生成所述第二目標文件;
17、在構建所述第二目標文件之后,所述方法還包括:
18、基于預設校驗算法,確定所述第二目標文件的第一校驗碼;
19、基于所述第一校驗碼,對第一目標文件的第一元數據進行調整,以生成所述第二目標文件的第二元數據。
20、可選的,所述第三目標文件的構建方法包括:
21、響應于檢測到文件讀取請求時,從多個數據節點中讀取多個第二目標數據塊;
22、獲取所述多個第二目標數據塊對應的目標標記符,所述目標標記符用于描述第二目標數據塊的切割順序;
23、基于所述目標標記符,對多個第二目標數據塊進行合并,以構建所述第三目標文件。
24、可選的,響應于檢測到文件傳輸指令時,所述方法還包括:
25、將第四目標文件切割成多個數據塊,所述第四目標文件為響應所述文件傳輸指令的文件;
26、基于預設校驗算法,確定所述第三目標數據塊的第三校驗碼;
27、響應于檢測到所述第三校驗碼與第四校驗碼相同時,繼續校驗下一個傳輸的數據塊,所述第四校驗碼為所述第三目標數據塊對應的基于預設校驗算法確定并保存在元數據中的校驗碼。
28、可選的,所述方法還包括:
29、基于預設時間間隔和多個數據節點,讀取至少一個第四目標數據塊;
30、基于預設校驗算法,確定所述第四目標數據塊的第五校驗碼;
31、響應于檢測到所述第五校驗碼與第六校驗碼相同時,確定所述第四目標數據塊通過一致性校驗,所述第六校驗碼為所述第四目標數據塊對應的基于預設校驗算法確定并保存在元數據中的校驗碼。
32、可選的,基于預設校驗算法,確定目標文件或目標數據塊的校驗碼的過程包括:
33、基于散列函數,將目標文件或目標數據塊對應的數據轉換為預設長度的散列值;
34、基于所述預設長度的散列值,確定所述目標文件或目標數據塊的校驗碼。
35、第二方面,提供了一種文件校驗裝置,所述裝置包括:
36、數據塊分配模塊,用于將獲取到的第一目標文件切割成多個數據塊,并將所述多個數據塊分配至對應的數據節點,以存儲所述第一目標文件;
37、第一數據塊處理模塊,用于在檢測到所述第一目標文件已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼;
38、第二數據塊處理模塊,用于在檢測到文件讀取請求時,讀取第二目標數據塊,基于所述第二目標數據塊,構建第三目標文件,并基于預設校驗算法,確定所述第三目標文件的第二校驗碼;
39、請求響應模塊,用于在檢測到所述第一校驗碼和所述第二校驗碼相同時,基于所述第三目標文件,響應所述文件讀取請求。
40、第三方面,提供了一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現以下步驟:
41、將獲取到的第一目標文件切割成多個數據塊,并將所述多個數據塊分配至對應的數據節點,以存儲所述第一目標文件對應的數據塊;
42、響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼;
43、響應于檢測到文件讀取請求時,讀取第二目標數據塊,基于所述第二目標數據塊,構建第三目標文件,并基于預設校驗算法,確定所述第三目標文件的第二校驗碼;
44、響應于檢測到所述第一校驗碼和所述第二校驗碼相同時,基于所述第三目標文件,響應所述文件讀取請求。
45、第四方面,提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現以下步驟:
46、將獲取到的第一目標文件切割成多個數據塊,并將所述多個數據塊分配至對應的數據節點,以存儲所述第一目標文件對應的數據塊;
47、響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼;
48、響應于檢測到文件讀取請求時,讀取第二目標數據塊,基于所述第二目標數據塊,構建第三目標文件,并基于預設校驗算法,確定所述第三目標文件的第二校驗碼;
...【技術保護點】
1.一種文件校驗方法,其特征在于,所述方法包括:
2.根據權利要求1所述的文件校驗方法,其特征在于,在獲取到所述第一目標文件之后,所述方法還包括:
3.根據權利要求1所述的文件校驗方法,其特征在于,響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼包括:
4.根據權利要求1所述的文件校驗方法,其特征在于,所述第三目標文件的構建方法包括:
5.根據權利要求1所述的文件校驗方法,其特征在于,響應于檢測到文件傳輸指令時,所述方法還包括:
6.根據權利要求1所述的文件校驗方法,其特征在于,所述方法還包括:
7.根據權利要求3-6任一項所述的文件校驗方法,其特征在于,基于預設校驗算法,確定目標文件或目標數據塊的校驗碼的過程包括:
8.一種文件校驗裝置,其特征在于,所述裝置包括:
9.一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述
10.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至7中任一項所述的方法。
...【技術特征摘要】
1.一種文件校驗方法,其特征在于,所述方法包括:
2.根據權利要求1所述的文件校驗方法,其特征在于,在獲取到所述第一目標文件之后,所述方法還包括:
3.根據權利要求1所述的文件校驗方法,其特征在于,響應于檢測到所述第一目標文件對應的數據塊已存儲完成時,讀取第一目標數據塊,基于所述第一目標數據塊,構建第二目標文件,并基于預設校驗算法,確定所述第二目標文件的第一校驗碼包括:
4.根據權利要求1所述的文件校驗方法,其特征在于,所述第三目標文件的構建方法包括:
5.根據權利要求1所述的文件校驗方法,其特征在于,響應于檢測到文件傳輸指令時,所述方法還包括:<...
【專利技術屬性】
技術研發人員:王葳,蘇志恒,
申請(專利權)人:濟南浪潮數據技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。