「年代向錢看」是一個高質量的政論節目,不過最近我看到他們討論「密碼法」,由於在座的來賓只有金融、軍事、政治、媒體背景,沒人有IT背景,所以對於密碼法的討論嚴重悖離事實。對於密碼法的理解錯誤,這不怪他們,因為這本來就不是一般人容易理解的專業領域。現在是資訊的時代,什麼東西都跟IT有關,我希望他們邀請我當節目來賓,以後有IT的事情,都交給我做專業發言。我決定寫這篇文章,用最少的篇幅來解密密碼法。這是粗淺的掃盲文,連科普文都還算不上。

如果一開始就錯誤地把密碼法的「密碼」理解為Password,那麼後面的判斷就會全盤錯誤。密碼法的密碼是Cryptography,不是Password。請注意:Password是用來配合ID查驗身分的,Cryptography卻是來對數位內容加密解密的,通常會搭配密鑰(key)。密鑰(key)不是密碼(Password)。密碼一定很簡短,大概都是6~12個字符居多,是你自己選的,可能是你的英文名字加上生日之類的(容易破解的組合),通常你都能記得住;但密鑰(key)不是你自己選的,是「程式」產生出來的,是一長串字符,如果你沒有亞斯伯格症的話,是不太可能記得住Key的。

你的帳號只要存放在伺服器中,政府機構如果讓管理伺服器的企業聽命於政府機構,就能夠完全控制你的帳號,做任何的事情,根本不需要你提供密碼(Password)。政府機構直接從企業下手,簡單多了。

密碼法既然不是為了「有伺服器」的應用,那麼難道是為了「沒有伺服器」的應用?也就是「去中心化」的區塊鏈?這也不對。區塊鏈的每個用戶都要有Key,才能進行操作,但這個操作不包括刪改歷史資料。節目有來賓大致上說:怕資料上了區塊鏈,就改不了,所以政府機構要有你的Key。他這說法是錯的,其實區塊鏈上面的資料是累積的,是不會刪除的,所以別人(政府機構)就算有你的密鑰,也改不了區塊鏈上面的歷史內容,但確實可以「代替你」做其他的操作。

你必須拋開市井小民小鼻子小眼睛的小格局,用政府機構的大眼界來理解這件事,你會發現:政府機構對於假冒你的身分去做這些區塊鏈的操作,是沒有興趣的。不過,政府機構對於「知道你是誰」是有興趣的。區塊鏈上面每個帳號都有對應的key,對於「知道key的擁有者是誰」政府機構絕對是有興趣的,畢竟電話、微信、微博等帳號都是實名制。

政府機構除了對「知道帳號是誰的」感興趣之外,也對「資訊」本身感興趣。日本國把資訊(Information)翻譯為「情報」不是沒有道理的,表示其重要性。明文的情報,經過加密演算法,配合Key做為參數,就變成加密的情報。加密的情報在網路上傳遞,沒有對應Key的人看不了。有Key的人配合解密算法就可以把加密的情報還原為明文的情報。所以政府機構在乎的是加密解密的演算法以及Key。如果能夠把這些管理起來,不但可以知道「誰是誰」,還可以知道「誰發了什麼內容給誰」。

Key不是你自己選的,是「某種程式」產生出來的。對於標準的區塊鏈來說,你創建一個帳號的同時,就創建了Key,這是在你的電腦上進行的,沒有人知道你是誰。所以區塊鏈有很好的隱匿性。但無所不管的政府機構會想要透過法律和技術的手段來改變這點。

瀏覽器等應用,會幫你產生Key、管理Key。你也可以透過國際公正機構(例如VeriSign)來產生Key,他們會嚴格核對你的身分,把你和Key對應起來。比方說你在使用網銀時,只要有透過加密算法和Key處理過(網址欄出現上鎖的記號),傳輸的資料就算被人從中間監聽也不怕。但政府機構會想要透過法律的手段來改變這點,政府機構想要拿到你的Key,尤其是當伺服器在政府機構無法控制的區域、屬於其他國家的企業時,這樣他們才可以看懂你的加密資訊。

總之,「密碼法」其實是「加密通訊法」,和密碼(Password)沒有一毛錢關係。

作者簡介


Advertisement

更多 iThome相關內容