
認證也叫鑑別,是防止主動攻擊的重要技術,在現代密碼學中的作用特別重要。簡單地說,認證是個過程,即一個實體對另一個實體表明某聲稱的屬性。例如前者是一個主體,聲稱有某種合法權利,可以進入後一個實體的系統或者使用後者的服務,顺利获得認證,後者確認前者確實擁有這種權利。因此,可得出認證至少會有2個獨立的通信實體。而認證參數一般有多種形式。
通常而言,用人的生理特徵參數認證的方式安全性高,不過技術要求也高,到现在還未普及。现在廣泛應用的還是基於密碼算法的認證技術。
在早期,人們普遍認為保密與認證是有內在聯繫的。但隨着Hash函數和數字簽名的發現,人們才明白保密和認證均為信息系統安全的兩個方面,但它們是屬性不一樣的問題,認證無法自動給出保密性,但保密性還是無法自然地認證。認證主要用於確保消息的真實性及完整性。
認證一般可分為消息認證、實體認證與認證密鑰的建立3個概念。消息認證主要功能是驗證消息的其中一個聲稱屬性;實體認證的作用更多是驗證發件人的身份;認證密鑰的建立主要是為了得到一條安全信道,用於應用層的後續安全通信會話。
純認證系統模型由認證編碼器、密鑰源和認證譯碼器組成。驗證編碼器為傳輸的消息生成驗證碼。密鑰源一般事先協商,由安全信道分配密鑰。認證譯碼器給接收到的消息實施驗證。消息認證的過程如下:第一时间,發送方的認證編碼器生成認證消息,然後將消息和認證信息發送給接收方;接收方接收消息和認證信息後,顺利获得認證解碼器驗證消息的有效性,若消息合法就接受,要不然把它丟棄。
按照產生認證消息方式的不一樣,認證可分為如下三類:
(1)消息認證:用消息的密文本身充當認證信息。
(2)消息認證碼:由以消息與密鑰當做輸入的公開函數得到的認證信息。
(3)哈希值:以消息當做一個僅且這一個輸入的Hash函數得到的認證信息。
