古詩詞大全網 - 藝術簽名 - 什麽是消息認證碼?它和消息哈希值的主要區別是什麽?

什麽是消息認證碼?它和消息哈希值的主要區別是什麽?

區別在於消息認證碼是認證碼,消息哈希值是哈希值。

消息驗證碼:

消息認證碼是壹種確認完整性和認證的技術,消息認證碼,簡稱MAC。

消息認證碼的輸入是任意長度的消息,是發送方和接收方共享的密鑰。輸出是固定長度的MAC值。

消息認證碼的特點:

消息認證碼是與密鑰相關聯的單向散列函數。消息認證碼需要預先有密鑰。

消息認證碼也有密鑰分發的問題,解決方案類似於對稱密碼:公鑰密碼、Diffie-Hellman、密鑰分發中心等。

消息認證碼可以判斷消息是否被篡改,或者是否有人偽裝成發送者發送消息。

應用示例:

SWIFT:護送國際銀行間交易並使用消息認證碼技術的國際組織。

IPsec:消息的認證和完整性檢查由消息認證碼完成。

SSL/TLS:消息認證碼也用於通信內容的認證和完整性檢查。

消息認證碼的實現;

消息認證碼有多種實現方式。

使用單向哈希函數實現。

消息認證碼可以通過使用單向散列函數來實現,例如SHA-2,其中壹種被稱為HMAC。

使用分組密碼實現。

采用分組密碼的密鑰作為消息認證的共享密鑰,所有消息均采用CBC方式加密。

取最後壹條密文作為MAC值。因為CBC模式下的最後壹個包會同時受到整個消息和密鑰的影響,所以它可以用作消息認證碼。