密碼學篇(資料完整性)

2021-10-25 15:36:57 字數 985 閱讀 7154

密碼技術的目的很明確,就是為了解決資訊保安問題。

就本人從事行業來說,可以用客戶端與伺服器端的資料通訊過程舉例(考慮客戶端與伺服器端通訊的雙向性)。

資訊保安可分為四類特性:

1、資料保密性:為了防止通訊過程中資訊被竊聽,對應的密碼技術有對稱加密非對稱加密。(使用者敏感資料不應明文傳輸)

2、資料完整性:為了防止通訊過程中資訊被篡改,對應的密碼技術有單向雜湊函式、訊息認證碼、數字簽名。

3、認證:為了防止攻擊者偽裝成真正的傳送者,對應的密碼技術有訊息認證碼和數字簽名。

4、資料抗抵賴:為了防止傳送者事後否認自己沒有做過,對應的密碼技術為數字簽名。

訊息摘要

訊息摘要函式是一種用於判斷資料完整性的演算法,也稱為雜湊函式或雜湊函式,函式的返回值是雜湊值,雜湊值又稱為訊息摘要或者指紋。

這種演算法是不可逆的,即無法通過訊息摘要反向推導出訊息,因此又稱為單向雜湊函式。

常見演算法:

md5 sha-1 sha-2(sha-224,sha-256,sha-384,sha-512)

國密sm3(安全性及效率與sha-256相當)

值得注意的是,現階段有些系統會使用md5或者base64當做應用層的加密手段。姑且不論md5和base64根本不可稱之為加密演算法,實際就目前而言,md5和sha1已被破解,base64只是作為一種轉碼演算法。目前相對安全的雜湊演算法需達到sha256及以上級別

例:

keytool -list -printcert -jarfile f:\1.apk

優點:可以保證資料的完整性。

缺點:無法保證資料的真實性,即不能確定資料和雜湊值是來自傳送方的,因為攻擊者完全可以將資料和雜湊值一起替換。

問題:如何驗證傳送的資料確實來自於傳送方?

密碼學 資料完整性 單向雜湊函式md5

完整性用來確保資訊沒有被修改,也可以防止假冒的資訊。目前資料完整性的主要解決方案就是使用單向雜湊函式和加密演算法。單向雜湊函式能夠將乙個檔案對映成一段小的資訊碼並且不同檔案雜湊之後的值是不同的。通常將原始檔案使用單向雜湊函式處理得到一段資訊碼,然後將其加密,和檔案一起儲存。如果由人改動檔案,那麼我們...

MySQL資料完整性(實體完整性 域完整性)

資料完整性 為保證插入到資料庫中的資料是正確的,防止使用者輸入錯誤的資料 分為實體完整性 域完整性 參照完整性 下節再說 1 實體完整性 實體指的是表中的一行,一行記錄對應乙個實體 通過主鍵實現 主鍵 關鍵字 primary key 特點 不能為null,並且唯一。邏輯主鍵 推薦 例如id,不代表實...

資料完整性

資料完整性定義 是指資料庫中的資料的正確性和完整性。資料完整性的型別 要求的資料。not null。有效檢查。資料的有效範圍檢查。字段檢查約束。資料域。實體完整性。主鍵欄位唯 一 非空。引用完整性引發的問題 1 插入 更新子表記錄的外鍵值在主表主鍵中不存在。2 刪除 更新父表的主鍵記錄有關聯外來鍵記...