編者:左瑞麟 副教授 國立政治大學資訊科學系 單元名稱:物聯網伺服器以及 雲端安全 編者:左瑞麟 副教授 國立政治大學資訊科學系 2019/4/29
本章重點 IoT感測層會將所蒐集到的資訊透過網路傳送到後端的雲端伺服器。 伺服器需對使用者的身份進行確認,且透過存取控管確保不同權限的使用者具有不同之存取權限,確保唯有通過認證之合法使用者才能存取伺服器資料。 本單元將探討在物聯網中使用者身份鑑別的各種機制。 2019/4/29
大綱 物聯網使用者之身分驗證 身分驗證三要素 身分驗證的方式 2019/4/29
物聯網使用者之身分驗證 https://pixabay.com/zh/%E8%AE%A1%E7%AE%97%E6%9C%BA-%E5%AE%89%E5%85%A8-%E6%8C%82%E9%94%81-%E9%BB%91%E5%AE%A2-%E7%9B%97%E7%AA%83-%E5%B0%8F%E5%81%B7-%E9%94%AE%E7%9B%98-%E7%BD%91%E7%BB%9C-%E4%BA%92%E8%81%94%E7%BD%91%E5%AE%89%E5%85%A8-1591018/ 2019/4/29
物聯網使用者之身分驗證 惠普科技(HP)於2014年公布了物聯網裝置10大安全問題 平均每個物聯網設備 存在25個資安漏洞 身分認證不足 未加密的通信傳輸 2019/4/29
物聯網使用者之身分驗證 目的為確認使用者之身分,是物聯網系統安全之基礎 通過認證之合法用戶, 才可存取伺服器之資源 防止資料外洩 身分認證 防止資料外洩 確保資料安全及使用者隱私 2019/4/29
身分驗證三要素 https://pixabay.com/zh/%E4%BF%A1%E7%94%A8%E5%8D%A1-%E5%80%9F%E6%96%B9-%E7%9B%97%E7%AA%83-%E6%94%AF%E4%BB%98%E5%8D%A1-%E6%8C%82%E9%94%81-%E8%BA%AB%E5%88%86-%E5%B0%8F%E5%81%B7-%E6%95%B0%E6%8D%AE-%E8%AE%A1%E7%AE%97%E6%9C%BA-1591492/ 2019/4/29 圖片來源:http://finance.technews.tw/2016/11/18/fingerprint/
身分驗證三要素 可以作為獨立的驗證方法 若能夠同時採取兩種以上的驗證方式,稱為多因素驗證方式,可以有效降低冒用他人身分的情況發生 若能夠同時採取兩種以上的驗證方式,稱為多因素驗證方式,可以有效降低冒用他人身分的情況發生 What you have What you know 你所擁有的資訊 你所知道的資訊 以上這3種身分驗證方式,無論是哪一種都可以作為獨立的驗證方法,但是如果能夠同時採取兩種以上的驗證方式,其以上所提到的身分驗證方式,無論是哪一種都可以作為獨立的驗證方法,但是如果能夠同時採取兩種以上的驗證方式,其安全強度將遠遠高於只採取一種的作法,這也就是俗稱的多因素驗證方式,可以有效降低冒用他人身分的情況發生。 卡片+通行碼 指紋特徵+通行碼 What you are 屬於你的資訊 2019/4/29
身分驗證三要素(1/3) 最常見的驗證方式 通行碼(password) 有被竊取或密碼猜測的風險 你所擁有的資訊 你所知道的資訊 What you have What you know 你所擁有的資訊 你所知道的資訊 What you are 屬於你的資訊 2019/4/29
身分驗證三要素(2/3) 使用者持有獨一無二的物件,作為辨識身分的依據 鑰匙、身分證等 有被竊取的風險 你所擁有的資訊 你所知道的資訊 What you have What you know 你所擁有的資訊 你所知道的資訊 What you are 屬於你的資訊 2019/4/29
身分驗證三要素(3/3) 生物特徵(指紋、聲紋) 成本較高 較難破解 若外洩,對個人隱私影響極大 你所擁有的資訊 你所知道的資訊 What you have What you know 你所擁有的資訊 你所知道的資訊 What you are 屬於你的資訊 2019/4/29
身分驗證的方式 https://pixabay.com/zh/%E7%99%BB%E5%BD%95-%E5%AF%86%E7%A0%81-%E6%97%A5%E5%BF%97-%E6%89%93%E5%BC%80-%E6%B3%A8%E9%94%80-%E6%8C%89%E9%92%AE-%E6%96%B0%E9%97%BB-%E7%99%BB%E5%87%BA-%E5%90%AF%E7%94%A8-%E5%AE%89%E5%85%A8-1203603/ 2019/4/29
身分驗證的方式 一般多以單向認證為主(one-way authentication) 使用者帳號/通行碼 對稱式密碼 一般多以單向認證為主(one-way authentication) 使用者登入伺服器系統,因此只有伺服器能確認使用者身分,但使用者可以利用網路位址確認伺服器 使用者與伺服器兩方事先共享高熵值(high entropy)之對稱式密鑰 數位簽章 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法 2019/4/29
身分驗證的方式 又稱『基於通行碼之認證協議』。 (password based authentication protocol) 使用者帳號/通行碼 一般多以單向認證為主(one-way authentication) 使用者登入伺服器系統,因此只有伺服器能確認使用者身分,但使用者可以利用網路位址確認伺服器 又稱『基於通行碼之認證協議』。 (password based authentication protocol) 處理通行碼之重點 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 2019/4/29
身分驗證的方式 利用伺服器之公鑰 𝑷𝑲 𝑺𝒆𝒓 加密通行碼後再行傳送 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 利用伺服器之公鑰 𝑷𝑲 𝑺𝒆𝒓 加密通行碼後再行傳送 pwB (PKSer, SKSer) C= 𝐸 𝑃𝐾 𝑆𝑒𝑟 ( 𝑃𝑊 𝐵 ) 發起者Bob利用伺服器公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼PWB得密文C(= 𝐸 𝑃𝐾 𝑆𝑒𝑟 𝑃𝑊 𝐵 ) Authentication Server Bob 2019/4/29
身分驗證的方式 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 Bob傳送IDB以及C給伺服器進行認證 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用者帳號/通行碼 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 pwB (PKSer, SKSer) C= 𝐸 𝑃𝐾 𝑆𝑒𝑟 ( 𝑃𝑊 𝐵 ) Bob傳送IDB以及C給伺服器進行認證 𝐼𝐷 𝐵𝑜𝑏 , C Authentication Server Bob 2019/4/29
身分驗證的方式 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用者帳號/通行碼 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 pwB (PKSer, SKSer) C= 𝐸 𝑃𝐾 𝑆𝑒𝑟 ( 𝑃𝑊 𝐵 ) 𝑃𝑊 𝐵 = 𝐷 𝑆𝐾 𝑆𝑒𝑟 (C) 伺服器利用私鑰SKSer解密C得 𝑃𝑊 𝐵 (= 𝐷 𝑆𝐾 𝑆𝑒𝑟 C ) 𝐼𝐷 𝐵𝑜𝑏 , C Authentication Server Bob 2019/4/29
身分驗證的方式 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 將PKB與驗證表中Bob之通行碼進行比對 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用者帳號/通行碼 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 (PKSer, SKSer) pwB 𝑃𝑊 𝐵 = 𝐷 𝑆𝐾 𝑆𝑒𝑟 (C) 將PKB與驗證表中Bob之通行碼進行比對 C= 𝐸 𝑃𝐾 𝑆𝑒𝑟 ( 𝑃𝑊 𝐵 ) 𝑃𝑊 𝐵 ≜@#EDSW 𝐼𝐷 𝐵𝑜𝑏 , C ID PW Alice Abcde!@# Bob @#EDSW … ….. Cindy Tt125#$ Authentication Server Bob 2019/4/29
身分驗證的方式 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 若相符則通過認證,否則未通過驗證 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用者帳號/通行碼 利用伺服器之公鑰 𝑃𝐾 𝑆𝑒𝑟 加密通行碼後再行傳送 pwB (PKSer, SKSer) C= 𝐸 𝑃𝐾 𝑆𝑒𝑟 ( 𝑃𝑊 𝐵 ) 𝑃𝑊 𝐵 = 𝐷 𝑆𝐾 𝑆𝑒𝑟 (C) 𝑃𝑊 𝐵 ≜@#EDSW 若相符則通過認證,否則未通過驗證 𝐼𝐷 𝐵𝑜𝑏 , C Accept or reject Authentication Server Bob 2019/4/29
身分驗證的方式 利用挑戰/回應(Challenge/Response)方式進行驗證 發起者Bob首先傳送IDB給伺服器進行認證要求 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用者帳號/通行碼 利用挑戰/回應(Challenge/Response)方式進行驗證 pwB 𝐼𝐷 𝐵𝑜𝑏 發起者Bob首先傳送IDB給伺服器進行認證要求 Authentication Server Bob 2019/4/29
身分驗證的方式 利用挑戰/回應(Challenge/Response)方式進行驗證 伺服器回應挑戰訊息c 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 利用挑戰/回應(Challenge/Response)方式進行驗證 pwB 𝐼𝐷 𝐵𝑜𝑏 c 伺服器回應挑戰訊息c Authentication Server Bob 2019/4/29
身分驗證的方式 利用挑戰/回應(Challenge/Response)方式進行驗證 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 利用挑戰/回應(Challenge/Response)方式進行驗證 pwB R=𝑓(𝑐, 𝑃𝑊 𝐵 ) 𝐼𝐷 𝐵𝑜𝑏 Bob利用密碼函數f對c及通行碼PWB進行運算得R=f(c,PWB)並送出R c R Authentication Server Bob 2019/4/29
身分驗證的方式 利用挑戰/回應(Challenge/Response)方式進行驗證 伺服器利用同樣方式計算得出R′並與R進行比對 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 利用挑戰/回應(Challenge/Response)方式進行驗證 pwB R′=𝑓(𝑐, 𝑃𝑊 𝐵 ) R=𝑓(𝑐, 𝑃𝑊 𝐵 ) R′≜R 𝐼𝐷 𝐵𝑜𝑏 伺服器利用同樣方式計算得出R′並與R進行比對 c R Authentication Server Bob 2019/4/29
身分驗證的方式 利用挑戰/回應(Challenge/Response)方式進行驗證 若相符則通過認證,否則未通過驗證 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 利用挑戰/回應(Challenge/Response)方式進行驗證 pwB R′=𝑓(𝑐, 𝑃𝑊 𝐵 ) R=𝑓(𝑐, 𝑃𝑊 𝐵 ) R′≜R 𝐼𝐷 𝐵𝑜𝑏 c 若相符則通過認證,否則未通過驗證 R Accept or reject Authentication Server Bob 2019/4/29
身分驗證的方式 使用一次性密碼 提供有限次數的認證 利用單向雜湊函數(hash function)之單向行 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用一次性密碼 提供有限次數的認證 利用單向雜湊函數(hash function)之單向行 EX. 提供Bob進行100次認證之一次性密碼產生方式 Bob與伺服器雙方皆利用單向雜湊函數f()與通行碼PWB進行以下運算 𝑥 1 =𝑓 𝑃𝑊 𝐵 𝑥 2 =𝑓 𝑥 1 =𝑓(𝑓 𝑃𝑊 𝐵 ) 𝑥 3 =𝑓 𝑥 2 =𝑓 𝑓 𝑓 𝑃𝑊 𝐵 …… ……. 𝑥 100 =𝑓 𝑥 99 =𝑓(…𝑓 𝑓 𝑓 𝑃𝑊 𝐵 ) 2019/4/29
身分驗證的方式 使用一次性密碼 提供有限次數的認證 利用單向雜湊函數(hash function)之單向行 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 使用一次性密碼 提供有限次數的認證 利用單向雜湊函數(hash function)之單向行 EX. 提供Bob進行100次認證之一次性密碼產生方式 當需要進行認證時 第一次Bob送出x100進行身份認證 第二次Bob送出x99進行身份認證 …. …. 第100次Bob送出x1進行身份認證 2019/4/29
身分驗證的方式 避免駭客偷取或修改原來的通行碼 一般利用加鹽(salt)方式以及單向雜湊函數進行儲存 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 避免駭客偷取或修改原來的通行碼 一般利用加鹽(salt)方式以及單向雜湊函數進行儲存 當需進行使用者身份認證時,透過挑戰/回應方式,以salt為挑戰值進行驗證 ID Salt Password Alice 2569 H(PWA,2569) Bob 1234 H(PWB,1234) … …. Cindy 16852 H(PWC,16852) 2019/4/29
身分驗證的方式 長度需為八碼以上 需包含英文字母大小寫、數字以及特殊符號 勿設定任何如生日、姓名等和自己個人資訊和帳號有關之資訊為通行碼 使用者帳號/通行碼 通行碼不可以明文方式傳送 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 長度需為八碼以上 需包含英文字母大小寫、數字以及特殊符號 勿設定任何如生日、姓名等和自己個人資訊和帳號有關之資訊為通行碼 確認通行碼可以記憶,勿以便條紙或任何方式儲存於個人記憶以外 定期更換通行碼 2019/4/29
身分驗證的方式 2014年最不安全之25組密碼 通行碼不可以明文方式傳送 使用者帳號/通行碼 通行碼不可以明文方式儲存於伺服器 通行碼強度需夠強以抵擋密碼猜測攻擊 2014年最不安全之25組密碼 Rank Password Change from2013 1 123456 No Change 2 password 3 12345 Up 17 4 12345678 Down 1 5 qwerty 6 123456789 7 1234 Up 9 8 baseball New 9 dragon 10 football Rank Password Change from2013 11 1234567 Down 4 12 monkey Up 5 13 letmein Up 1 14 abc123 Down 9 15 111111 Down 8 16 mustang New 17 access 18 shadow No Change 19 master 20 michael 2019/4/29
身分驗證的方式 一般可利用基於通行碼之認證系統方式 加解密機制以及密碼函數為輕量級密碼機制或輕量級單向雜湊函數 輕量級認證協定 有些物聯網裝置如RFID標籤(tag)或傳感器(sensor)等,由於儲存空間以及計算量有限,因此無法支援一般的認證方式 一般可利用基於通行碼之認證系統方式 加解密機制以及密碼函數為輕量級密碼機制或輕量級單向雜湊函數 加解密及雜湊僅包含簡單的邏輯運算 安全性較一般認證方式低 2019/4/29
身分驗證的方式 利用對稱式密碼系統如AES或3DES 基本運作利用挑戰/回應方式 單向認證 (僅提供伺服器確認登入者身份,登入者如 使用者與伺服器兩方事先共享高熵值(high entropy)之對稱式密鑰。 利用對稱式密碼系統如AES或3DES 基本運作利用挑戰/回應方式 單向認證 (僅提供伺服器確認登入者身份,登入者如 有需要,可以網路位址確認伺服器之正確性) 雙向認證 2019/4/29
身分驗證的方式 使用者與伺服器共享高熵值密鑰k 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B ID PW Alice k A Bob k B … ….. Cindy k C Authentication Server Bob 2019/4/29
身分驗證的方式 使用者Bob送出身份資訊IDB 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B 𝐼𝐷 𝐵𝑜𝑏 使用者Bob送出身份資訊IDB Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器提出挑戰訊息r 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B 𝐼𝐷 𝐵𝑜𝑏 伺服器提出挑戰訊息r r Authentication Server Bob 2019/4/29
身分驗證的方式 使用者利用對稱式密碼系統E以及共享密鑰k加密r得C= E k (r)並送出C 單向認證 對稱式密碼 雙向認證 k B C= E k B (r) 𝐼𝐷 𝐵𝑜𝑏 使用者利用對稱式密碼系統E以及共享密鑰k加密r得C= E k (r)並送出C r C Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器解密C回復r 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B C= E k B (r) r′=D k B (C) 𝐼𝐷 𝐵𝑜𝑏 r 伺服器解密C回復r C Authentication Server Bob 2019/4/29
身分驗證的方式 若r能被正確回復,則使用者通過認證 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B r′=D k B (C) C= E k B (r) r’≜r 𝐼𝐷 𝐵𝑜𝑏 r 若r能被正確回復,則使用者通過認證 C Accept or reject Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 使用者與伺服器共享高熵值密鑰k 單向認證 對稱式密碼 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 使用者與伺服器共享高熵值密鑰k k B ID PW Alice k A Bob k B … ….. Cindy k C Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 k B C= E k B ( 𝑇 1 ) 使用者Bob利用對稱式密碼系統E以及共享密鑰k加密目前時戳 T 1 得C= E k ( T 1 )並送出身份資訊IDB以及C ( 𝐼𝐷 𝐵𝑜𝑏 ,C) Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 伺服器解密C得 T 1 單向認證 對稱式密碼 雙向認證 k B T 1 = D k B (C) C= E k B ( 𝑇 1 ) ( 𝐼𝐷 𝐵𝑜𝑏 ,C) 伺服器解密C得 T 1 Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 k B T 1 = D k B (C) T 2 − T 1 <∆T? C= E k B ( 𝑇 1 ) T 2 為目前時戳。 T 2 − T 1 若在可容許範圍( T 2 − T 1 <∆T),則使用者通過認證 ( 𝐼𝐷 𝐵𝑜𝑏 ,C) Accept or reject Authentication Server Bob 2019/4/29
身分驗證的方式 使用者與伺服器共享高熵值密鑰k 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B ID PW Alice k A Bob k B … ….. Cindy k C Authentication Server Bob 2019/4/29
身分驗證的方式 使用者Bob送出身份資訊IDB 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B 𝐼𝐷 𝐵𝑜𝑏 使用者Bob送出身份資訊IDB Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器提出挑戰訊息 r 1 單向認證 對稱式密碼 雙向認證 Authentication Bob Server k B 𝐼𝐷 𝐵𝑜𝑏 r 1 伺服器提出挑戰訊息 r 1 Authentication Server Bob 2019/4/29
身分驗證的方式 使用者利用對稱式密碼系統E以及共享密鑰k加密r得 𝐶 1 = E k ( r 1 ) 單向認證 對稱式密碼 雙向認證 k B 𝐶 1 = E k B ( r 1 ) 𝐼𝐷 𝐵𝑜𝑏 使用者利用對稱式密碼系統E以及共享密鑰k加密r得 𝐶 1 = E k ( r 1 ) r 1 Authentication Server Bob 2019/4/29
身分驗證的方式 使用者產生另一挑戰訊息 r 2 並送出(C, r 2 ) 單向認證 對稱式密碼 雙向認證 Authentication k B 𝐶 1 = E k B ( r 1 ) 𝐼𝐷 𝐵𝑜𝑏 使用者產生另一挑戰訊息 r 2 並送出(C, r 2 ) r 1 (C, r 2 ) Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器解密C確認 r 1 ,若 r 1 能被正確回覆,則使用者通過認證 單向認證 對稱式密碼 雙向認證 k B r 1 ′= D k B ( C 1 ) 𝐶 1 = E k B ( r 1 ) r 1 ’≜ r 1 𝐼𝐷 𝐵𝑜𝑏 伺服器解密C確認 r 1 ,若 r 1 能被正確回覆,則使用者通過認證 r 1 (C, r 2 ) Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器計算 𝐶 2 = E k ( r 2 )並送出 𝐶 2 單向認證 對稱式密碼 雙向認證 Authentication k B r 1 ′= D k B ( C 1 ) 𝐶 1 = E k B ( r 1 ) r 1 ’≜ r 1 𝐼𝐷 𝐵𝑜𝑏 r 1 伺服器計算 𝐶 2 = E k ( r 2 )並送出 𝐶 2 (C, r 2 ) 𝐶 2 = E k B ( r 2 ) Authentication Server Bob 2019/4/29
身分驗證的方式 使用者解密 𝐶 2 回復 r 2 ,若 r 2 能被正確回復則伺服器通過認證 單向認證 對稱式密碼 雙向認證 k B C= E k B (r) r 1 ′= D k B ( C 1 ) r 2 ′= D k B ( C 2 ) r 1 ’≜ r 1 r 2 ’≜ r 2 𝐼𝐷 𝐵𝑜𝑏 使用者解密 𝐶 2 回復 r 2 ,若 r 2 能被正確回復則伺服器通過認證 r 1 (C, r 2 ) 𝐶 2 = E k B ( r 2 ) Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 使用者與伺服器共享高熵值密鑰k 單向認證 雙向認證 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 使用者與伺服器共享高熵值密鑰k k B ID PW Alice k A Bob k B … ….. Cindy k C Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 k B 𝐶 1 = E k B ( 𝑇 1 ) 使用者Bob利用對稱式密碼系統E以及共享密鑰k加密目前時戳 T 1 得 C 1 = E k ( T 1 )並送出身份資訊IDB以及 C 1 ( 𝐼𝐷 𝐵𝑜𝑏 , C 1 ) Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 k B T 1 = D k B ( C 1 ) T 2 − T 1 <∆T? 𝐶 1 = E k B ( 𝑇 1 ) 伺服器解密 𝐶 1 得 T 1 。 T 2 為目前時戳。 T 2 − T 1 若在可容許範圍( T 2 − T 1 <∆T),則使用者通過認證 ( 𝐼𝐷 𝐵𝑜𝑏 , C 1 ) Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 T 1 = D k B ( C 1 ) T 2 − T 1 <∆T? k B 𝐶 1 = E k B ( 𝑇 1 ) 𝐶 2 = E k B ( 𝑇 2 ) 伺服器利用k加密目前時戳 T 2 得 C 2 = E k ( T 2 )並送出 C 2 ( 𝐼𝐷 𝐵𝑜𝑏 , C 1 ) 𝐶 2 Authentication Server Bob 2019/4/29
身分驗證的方式 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 對稱式密碼 單向認證 雙向認證 挑戰訊息r可利用公開訊息如時間戳記(time stamp)代替 k B 𝐶 1 = E k B ( 𝑇 1 ) T 1 = D k B ( C 1 ) T 2 − T 1 <∆T? T 2 = D k B ( C 2 ) T 3 − T 2 <∆T? Bob解密 𝐶 2 得 T 2 。 T 3 為目前時戳。 T 3 − T 2 若在可容許範圍( T 3 − T 2 <∆T),則伺服器通過認證 𝐶 2 = E k B ( 𝑇 2 ) ( 𝐼𝐷 𝐵𝑜𝑏 , C 1 ) 𝐶 2 Authentication Server Bob 2019/4/29
身分驗證的方式 使用者Bob擁有公鑰/私鑰對( PK B , SK B )並有可信賴機關所發行之公鑰憑證 Cert Bob 數位簽章 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法。 ( PK B , SK B ) 使用者Bob擁有公鑰/私鑰對( PK B , SK B )並有可信賴機關所發行之公鑰憑證 Cert Bob Authentication Server Bob 2019/4/29
身分驗證的方式 使用者Bob送出身份資訊IDB 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法。 數位簽章 ( PK B , SK B ) 𝐼𝐷 𝐵𝑜𝑏 使用者Bob送出身份資訊IDB Authentication Server Bob 2019/4/29
身分驗證的方式 伺服器提出挑戰訊息r 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法。 數位簽章 Authentication Bob ( PK B , SK B ) 𝐼𝐷 𝐵𝑜𝑏 伺服器提出挑戰訊息r r Authentication Server Bob 2019/4/29
身分驗證的方式 使用者利用私鑰 SK B 簽署訊息r得S= Sign SK B (r)並送出S及公鑰憑證 Cert Bob 數位簽章 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法。 ( PK B , SK B ) S= Sign S k B (r) 使用者利用私鑰 SK B 簽署訊息r得S= Sign SK B (r)並送出S及公鑰憑證 Cert Bob 𝐼𝐷 𝐵𝑜𝑏 r ( Cert 𝐵𝑜𝑏 , S) Authentication Server Bob 2019/4/29
Verify(S)=(true, false) 身分驗證的方式 數位簽章 使用了公鑰加密領域的技術實現,用於鑑別數位信息的方法。 ( PK B , SK B ) Verify(S)=(true, false) 伺服器利用 Cert PK 確認公鑰正確性,利用公鑰 PK B 驗證數位簽章之有效性,若簽章通過驗證,則使用者通過認證,利用相同方式,使用者亦可對伺服器進行認證 S= Sign S k B (r) 𝐼𝐷 𝐵𝑜𝑏 r ( Cert 𝐵𝑜𝑏 , S) Authentication Server Bob 2019/4/29