五分鐘可以跟爸媽解釋的比特幣「公開密鑰加密」學習筆記

YK.W
YK.W
Nov 7 · 4 min read

中國國家主席習近平 10 月 24 日大讚區塊鏈技術:「中國要把區塊鏈作為核心技術、自主創新的重要突破口,加速推動區塊鏈技術和產業創新發展….」頓時幣圈的夥伴們都醒了,揣摩上意讓比特幣(BTC)價格大漲40%,看到這現象領導們八成滴咕著:我是要你們大鳴大放區塊鏈底層應用,誰叫你們去炒幣啊!!

SOURCE:Fortune Insight

不過,迎接中國明年一月開始的「密碼法」,各類科普區塊鏈基礎概念的確也潮了起來。自己做過些區塊鏈應用,以前常常要對小白長輩們解釋什麼是私鑰,公鑰可以幹嘛,講久了開始用生活中的例子來對應,效果似乎不錯。這篇就用口語來解釋下支撐比特幣安全性的「公開密鑰加密」(也稱為非對稱式密碼學) 的基本概念。

什麼是公開密鑰加密,Wiki給的註解是這樣的:

如果任何人使用公鑰加密明文,得到的密文可以透過不安全的途徑(如網路)傳送,只有對應的私鑰持有者才可以解密得到明文;其他人即使從網路上竊取到密文及加密公鑰,也無法(在數以年計的合理時間內)解密得出明文。

看的有點矇了,一句話來說,在不安全的網絡環境中傳資料需要加解密處理,而「公鑰(Public Key)」用來加密,「私鑰(Private Key)」用來解密,但那又是什麼意思?

先來個情境題,假設Alice要去郵局寄一段需要保密的訊息給Bob, 因為擔心傳輸過程中旁人看到訊息內容,Alice買了個保險箱,塞進了要保護的明文紙條上鎖(加密)後寄出,接著在下一個包裹裝入了鑰匙,分批寄給了Bob。最後打了個電話過去說有兩個包裹,一個是加密文件,一個是解密方法,Bob記得查收裡頭內容…。

這個情境有沒有似曾相識?把敏感資訊檔案Zip壓縮起來加上密碼,Email給朋友後再想辦法讓對方拿到密碼解檔。或是在通訊軟體中跟家人交代網路銀行ID,再透過其他的手段(email等)傳遞密碼。

這些方式在不安全的網路中是很容易被監聽,拼湊,甚至攔截竄改後重寄給收件人。原因是解密用的鑰匙在傳輸中太容易曝光了。

所以聰明的密碼學家想了個辦法,一樣Alice要送訊息給Bob,但這一次是要求Bob自己先去買鎖頭、把鑰匙留在身邊,先將未上鎖的鎖頭寄給Alice, Alice將訊息用Bob的鎖頭鎖上(加密)後寄出。Bob收到後用身邊的鑰匙解鎖(解密),少了傳遞密碼這一段安全性大幅提升。

所以對應起來:

「公鑰」是鎖頭,任何訊息都可以拿來上鎖(加密)

「私鑰」就是鑰匙,用來解密,留在身邊不上網傳輸

「公鑰用來加密,私鑰用來解密」這樣回頭看Wiki的解釋有沒有更清楚。另一個每天都會遇到的CASE,瀏覽器訪問網站有時要填入敏感資料(比方信用卡號,帳密等)此時受信任的網站伺服器在接收前先發公鑰給瀏覽器,使用公鑰(鎖頭)加密後傳輸,伺服器再用對應的私鑰解密,確保安全,這就是公開密鑰加密的基礎概念。

接著有人會問,公鑰在外頭流通,有可能拆解公鑰猜出私鑰嗎?

這當然有可能,這個破解過程也稱為碰撞攻擊,生活的例子就像是你忘了帶鑰匙請鎖匠開門,有些門十秒就開了,有些門師傅弄半天跟你搖搖頭說不行。

鎖匠開門大多是知道鎖的機制,因此即使沒有原始鑰匙都能打開。而現代密碼學就是增加鎖的複雜度,最基本的是無法分解鎖的結構,也就是近乎要嘗試所有私鑰(不斷嘗試各種鑰匙組合)的才可能成功,讓破解者付出龐大時間資源代價,在限定運算時間內(比方100年)達到安全牢固的標準了。

在虛擬貨幣世界中,私鑰是證明數字資產所有權的唯一簽章,在區塊鏈世界是認章不認人的。對應到現實銀行帳戶上,私鑰的權力就像:

  • 提款卡+密碼
  • 存摺+印章
  • 網路銀行帳號+密碼

也就是掉了私鑰就像上面任一組合遺失,都有可能資產被盜走。而比特幣的公鑰是從私鑰演算來的,這個算法過程只能單向,幾乎不可能從公開的地址反推回私鑰。

下一章將會介紹hash(哈希,也稱為雜湊值)的生活應用,如果這篇文章您覺得還可以請給我個掌聲,要是真的為你解惑了(或說是觀念有通不用再死背)那就鼓掌5次以上吧👏。

YK.W

Written by

YK.W

http://linkedin.com/in/tony-yk-wang-94552237

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade