有單向、雙向、三向3種認證方式,前兩者必須檢查時間戳以防重放攻擊,單向因為只有一個消息傳遞,如果僅靠一次性隨機數(shù)是無法判斷消息是否重放。雙向有兩個消息傳遞,一來一回,僅靠一次性隨機數(shù)只能檢測到發(fā)響應那方的重放。最后者則不必,可僅通過一次性隨機數(shù)檢測自己是否遭遇重放攻擊,因為接收第二個消息的那方,通過判斷第二個消息中隨機數(shù)是否等于自己先前已發(fā)送第一個消息中的那個,若不等于則為重放,若等于則發(fā)第三個確認消息給對方,對方收到并判斷確認消息中的隨機數(shù)是否等于先前它已發(fā)送第二個消息中的隨機數(shù),若等于則說明第它收到的第一個消息的確是另一方發(fā)送的即非重放,否則為重放。因此三向認證可不必同步雙方時鐘。但正因為不強制檢查時間戳而可能導致
中間人攻擊:假設(shè)通信雙方為A、B,中間人為C,攻擊步驟如下
1. C與B認證時,發(fā)送先前已截獲的A到B請求消息給B
2. 截獲并存儲B到A的響應消息x,但不轉(zhuǎn)發(fā),開始與A認證
3. 收到A的請求消息后,解密x取出其中的隨機數(shù)Rb作為響應給A消息中的隨機數(shù),用自己私鑰簽署整個消息后發(fā)給A
4. 收到并轉(zhuǎn)發(fā)A的確認消息給B
以上完成后,C就能冒充A與B通信了。一種簡單的改進方法是先用對方的公鑰加密消息中的隨機數(shù),再用自己的私鑰簽署整個消息。關(guān)于網(wǎng)絡(luò)協(xié)議的安全性分析,主流方法是形式化分析,可以借助相關(guān)工具來驗證找出漏洞
posted on 2023-09-30 08:00
春秋十二月 閱讀(436)
評論(0) 編輯 收藏 引用 所屬分類:
Network