網際網路：加密與公鑰
嗨，我是Mia Gil-Epner，我在UC 柏克萊大學就讀，主修電腦科學
我在國防部工作，主要工作是確保資訊安全
網際網路是一個開放與公共系統 我們在共享的線路上傳送與接受資訊
儘管它是一個開放系統， 我們仍然透過網路交換大量的私密資料
像是：信用卡號碼、帳戶資訊、密碼、電子郵件
那麼這些私人事物要如何保密呢？
透過加密程序：混排或改變訊息來隱藏原始的內容， 任何類型的資料都得以保密
解密是一個重排的過程，得以讓資料變得可以解讀
這是一種簡單的想法，人們這樣做已經有好幾世紀之久
最為人所知的一種加密方法是「凱薩密碼」
這個方法是以凱薩大帝來取名，這位羅馬將軍將軍事命令加密
以確保即使訊息被敵方攔截，也無法解讀
凱薩密碼是一種演算規律： 將原文中的每一個字母，按順序都替換為向下一定間隔「數量」的字母
如果這個數量只有訊息的發送者與接收者知道，它就稱為密鑰（key）
它允許接收者能夠解開秘密資訊
舉例來說：假定你原本的訊息是「HELLO」 使用凱薩密碼演算法，密鑰是 5
會這樣做...
要將訊息解密，接受者只需要使用密鑰，來逆向這個流程
凱薩密碼有很大的缺點：只要嘗試每一個可能的密鑰，任何人都可以輕易地破解加密的訊息
英文只有26個字母，這表示你只需要嘗試最多26次，就可以將訊息解密
嘗試26個可能的密鑰並不困難，頂多只需要一小時就能做到
讓我們把它變得更難： 將每個字母橫移不同的數量，而不是固定的量
這個例子： 用一個10位元長度的密鑰（顯示著每個連續的字母要更改的位置），來加密訊息
要猜到這個密鑰非常困難！ 使用 10 位加密，就有 100 億種可能的密鑰組合
很明顯，這超過任何人類可以解決的範圍，可能要花許多世紀
但現今的一台普通電腦，只要幾秒就可以嘗試所有 100 億種可能組合
因此，在現代世界裡，壞人都裝備了電腦，不是拿筆算
你要怎麼做，才能把訊息加密到足夠安全，太困難到無法破解呢？
太困難是指：有太多的可能性，因此不可能在一段合理的時間內被計算出來
當今的安全通訊是以 256 位元長的密鑰來加密
這表示：壞人攔截了你的訊息，他的電腦必須嘗試這麼多種的可能密鑰... （看畫面上的巨量數字）
直到他找到了正確的密鑰，才能破解訊息
即便你有 100,000 台超級電腦
並能讓每一台超級電腦，每一秒嘗試一百萬億組密鑰， 也要花費 10⌃36 年以上，才能嘗試每一種組合。
哪怕僅僅是破解一條由 256 位元加密保護的資訊。
大約每ㄧ年，電腦晶片的進步，速度提升 2 倍、大小減為 一半。
如果這種指數級的發展速度繼續下去，今天不可能解决的問題，
將在未來幾百年內得到解决，那麼256位元也將不足以保證安全。
事實上，我們已經不得不新增標準密鑰的長度來跟上電腦的速度。
好消息是，使用較長的密鑰並不會使加密消息變得更加困難，
但它會指數倍地增加破解密碼所需的猜測次數。
當發送方和接收方使用相同的密鑰對消息進行加密和解密時，
稱為對稱加密。像凱撒密碼（Caesar Cipher）這樣的對稱加密技術，
密鑰必須由兩個人事先私下商定。對於人們來說沒什麼問題，
但網際網路是開放的，是公開的，所以兩臺電腦不可能私下「見面」，
就密鑰達成一致。相反，電腦使用非對稱加密密鑰，
即公鑰可以與任何人交換，而私鑰則不共享。公鑰用於加密數據，
任何人都可以使用它來建立一份加密訊息，但是只有
取得私鑰的電腦才能解密這個訊息。至於，它運作的原理
是一些我們暫時不會深究的數學知識。現在，假設你有一個私人信箱，
任何人都可以將郵件存入該郵箱，但他們需要一個密鑰才能這樣做。
你可以複製多份密鑰，寄給你的朋友，或者直接把它公開。
你的朋友或陌生人都可以使用這個公鑰，到你的信箱並投入訊息
但只有你可以使用你的私鑰打開信箱，取得你收到的所有秘密訊息。
你也可以使用公鑰傳送加密的訊息，回覆給你的朋友
透過這種方式，人們可以在不需要就私鑰需要相同的情形下
交換加密的訊息
公鑰密碼學是在公開網際網路上傳遞加密訊息的基礎，
包括稱為 SSL 和 TLS 的安全協定，它們在我們瀏覽網頁時提供保護。
現在，每當你在瀏覽器位址列看見小鎖頭或 https
這代表著你的電腦正使用著公鑰加密的方式，安全地與你所在的網站交換資料
隨著越來越多的人上網，越來越多的私人資料將被傳輸，
保護這些資料的需求將變得更加重要。
隨著電腦執行速度越來越快，我們將必須開發新的方法，
使加密技術難以被電腦破解。這就是我的工作，它總是在改變。