訊息鑑別碼

訊息鑑別碼(Message Authentication Code)也叫密碼校驗和(cryptographic checksum),鑑別函式的一種.
訊息鑑別碼實現鑑別的原理是,用公開函式和密鑰產生一個固定長度的值作為認證標識,用這個標識鑑別訊息的完整性.使用一個密鑰生成一個固定大小的小數據塊,即MAC,並將其加入到訊息中,然後傳輸.接收方利用與傳送方共享的密鑰進行鑑別認證等.
MAC是與明文信息M一同傳送給對方,目的方使用事先協商好的密鑰K對明文信息M進行完整性認證,由於密鑰K僅通信雙方知道,所以也可判定訊息是由對方傳送的(而不是攻擊者)。這是MAC與傳統單向函式的區別。
訊息鑑別碼(MAC)僅僅認證訊息M的完整性(不會被篡改)和可靠性(不會是虛假的訊息或偽造的訊息),並不負責信息M是否被安全傳輸。之所以要放棄信息的保密性(使用公鑰加密私鑰簽名的對稱密碼協定可以很好的保證信息M的保密性、完整性和可靠性),是因為在某些場合(政府部門公告、網路管理通知等)並不需要對信息進行加密;或者是有些場合(例如廣播信息等)需要長時間傳輸大量信息。由於MAC函式是單向函式,因此對明文M進行摘要計算的時間遠比使用對稱算法公開密鑰算法對明文加密的時間要小。
例如:A要給B發信,A將明文M使用Hash算法進行摘要提取,提取結果為Hash(M),之後用A的私鑰對摘要進行簽名SA[Hash(M)],之後將M(當然M可以使用對稱算法加密)和SA[Hash(M)]一同發給B。其中SA[Hash(M)]便可稱之為訊息鑑別碼(MAC)。

相關詞條

熱門詞條

聯絡我們