iT邦幫忙

2021 iThome 鐵人賽

DAY 30
0
自我挑戰組

網路通訊輕鬆聊系列 第 30

初探網路安全(五):數位憑證,怎麼防止假冒事件?

前面在講非對稱式加密時談到網際網路中聰明的加密手法,公鑰和私鑰如何運用來保護資料被竊取。這樣的做法雖然可以保證資料傳輸的安全,讓「中間人」難以破解並得到資料,但是還有個小問題存在。

那就是,有人假冒你來傳訊息怎麼辦?

仿冒者

假設 Eve 想假冒 Bob 傳訊息給 Alice,便用 Alice 的公鑰加密後傳過去。

Alice 拿到密文後用自己的私鑰解密,發現解的開,這是要給我的訊息沒錯。

Eve 假冒 Bob,拿 Alice 的公鑰加密訊息
*Eve 假冒 Bob,拿 Alice 的公鑰加密訊息

如果 Alice 沒有什麼防備心,可能就此相信了傳訊息給他的人就是 Bob,匯款到了 Eve 的帳戶裡。

數位簽章

這可怎麼辦?總得想想辦法讓 Alice 確定訊息是否由 Bob 所發出吧?

Bob 說沒問題,我簽個名好了!

問題是在網路的世界,要怎麼做到「簽名」這件事呢?可以透過公鑰及私鑰!

前面提到公鑰及私鑰是一組的鑰匙,用公鑰加密可以用私鑰解密,反之用私鑰加密可以用公鑰解密。

那麼我們是否可以反過來,這次不用對方的公鑰加密,讓對方用私鑰解密。而用自己的私鑰加密,讓對方用自己的公鑰解密?

Bob 用自己的私鑰加密,其它人用 Bob 的公鑰才解的開
*Bob 用自己的私鑰加密,其它人用 Bob 的公鑰才解的開

當然可以,這就是數位簽章的基本原理。透過公鑰及私鑰,可以用兩種角度分別實現資料的加密,以及確定身份這兩件事。

但事情還沒結束,世界還沒和平,還有一個小問題:Alice 怎麼能確認在 Bob 網路上公開的公鑰,不是 Eve 掉包過的呢?

數位憑證

此時就需要第三方的公證人了,Bob 會把自己的公鑰放在公道伯 CA 這裡,所謂的 CA 是 Certficate Authority(數位憑證認證機構)。

這時 Alice 只要和這些機構拿取 Bob 的公鑰,在用這把鑰匙確認收到的訊息是否為 Bob 私鑰所加密的即可,再也不用擔心受怕了。

當我們透過 HTTPS 連上一個網站時,點下瀏覽器「鎖」的圖示便能查看數位憑證的詳細資訊,像是哪個 CA 發行、什麼時候過期等等。

Google 的數位憑證
*Google 的數位憑證

這就是為什麼要輸入較敏感的訊息到網站上時,一定要確保這個網站是透過 HTTPS 協定了,加密訊息和確認目標身份是保證網路通訊安全的基石。

參考資料

  1. Wiki - 數位簽章
  2. Wiki - 公開金鑰認證

完賽心得

當初抱著透過寫作來複習一些理論,順帶從自己的角度科普網路知識,終於寫到第 30 天,默默的也寫了 4、5 萬字。

寫作的過程中發現自己以為很懂的一些知識,其實根本不那麼懂,很多時候還要查閱許久的資料,重新學習後才敢把文章寫出來發佈。就算只是以科普為主軸,沒有加入太多技術細節,但還是有部分內容講的不夠精準,甚至有一些錯誤。

也有一些想要提的還沒提,像是 VPN、Rounting Algorithms、ARP、Wireshark 等等我覺得蠻重要的概念、應用,或是一些網路工具。

但總之,蠻開心的是有個開始並持續寫到結束,好過沒有開始。

寫作期間也看了許多大神們的文章,真的很值得學習呀!感謝 iT 邦幫忙所發起的活動以及社群,感謝閱讀我文章的網友們,歡迎交流交流,也希望多少有些幫助。

最後,雖然團隊挑戰失敗 XD,但還是非常感謝隊友 Jimmy, Kevin, Bouyu 的參與及一路相伴!


上一篇
初探網路安全(四):加密演算法,何謂對稱及非對稱式加密?
系列文
網路通訊輕鬆聊30

尚未有邦友留言

立即登入留言