Alice and Bob
日期:2023-03-24
這個專欄的名稱叫做《Alice and Bob》,有很多人好奇這個名字的意思,所以正好用本篇來說一下並做一個引子,帶出這篇文章的主題——加密法與我們的生活。在電腦科學的文章中,如果需要用到兩個參與者去介紹概念,傳統上我們都會使用「Alice」和「Bob」,情況像中文課我們很喜歡用「陳大文」去表示虛構的參與者一樣。而其中最常聽到的用例,就是:「問Alice如何可以安全地傳遞信息給Bob而不被其他人偷看?」
加密法與我們的生活
在現代社會,加密法無處不在,甚至說加密法是我們現代生活的基礎也不為過。試想像一下,你每天的生活,你會使用通訊軟體和朋友對話、辦公,把資料互通;你會在網上購物,把各樣資料交出去;以至在社會層面,企業與政府都在用資訊科技去處理公務等。有一刻你或會想過,我們這些資料交換與通訊,是安全的嗎?其他人可以在傳輸過程中偷看到我的訊息嗎?
加密的原理
加密法是一個很大的題目,我打算以最基礎的原理介紹,讓大家了解這個互聯網生活的基石。我們一般使用的加密方式,都是以非對稱加密(Asymmetric Cryptography)進行的。加密過程需要一對密匙,分別是公匙與私匙(Public key and Private key)。它們在數學上是有關聯,但又很難由公匙估計到私匙,所以大家會把自己的公匙開放給其他人,而又毋須擔心因此會令自己的私匙公開。設想一個簡單例子:「Alice要把信用卡資料交給Bob,Alice會使用Bob放給公眾的公匙,把資料密封然後傳給Bob,待Bob收到後才用自己的私匙解開。」這樣Alice就確保只有Bob可以看到她的資料。因為以公匙加密後,只有對應的私匙才可解開。
為甚麼安全?
從以上例子中,Alice的資料不會被Bob以外的人偷看,信心來自於以這種方式去加密的話,如果沒有對應的密匙,用傳統電腦來破解的話,是需要幾百萬年的時間去不停嘗試,因此我們都總結為現有科技不能破解,可以安心使用來作資料交換。這樣,整個互聯網經濟就由此而生。
惟要留意的是,我提到的是「傳統電腦」技術上不可行,但有沒有「非傳統電腦」可以做得到呢?答案是有,下一篇我會和大家看一下時下另一個很多人用的名詞:「量子電腦」,以及它如何摧毀現有加密法。
作者電郵:mikewong@house730.com