昨天我們聊完了法律,今天,我們要來挑戰數位簽章裡很重要的技術名詞們。先承認,雖然以前當過前端工程師,但當我第一次聽到「公鑰」、「私鑰」、「雜湊」的時候,我的表情大概跟你現在一樣是那種面帶微笑但眼睛已經轉圈圈融化的狀態。
接下來,就讓我用簡單的比喻,跟大家介紹這些名詞,再來看看它們是如何組成一個強大的「公開金鑰基礎建設」(又稱數位信任系統) PKI 的。
我們先來講講公鑰跟私鑰是什麼,公鑰和私鑰是非對稱加密演算法中的一個概念。公鑰用於加密資料,私鑰用於解密公鑰加密的資料,兩者是互相對應的。
嗯?你說你好像看了很多字進去但又不知道自己看了什麼?好吧,我第一次看到時也是這樣啦,下面就用一些簡單的東西來舉例,讓你可以更容易了解它的概念。
【果汁店老闆的保證書與驗證工具】
舉個例子,你是果汁店老闆,並且用很珍貴的水果打了果汁要拿去拍賣。
換句話說,私鑰就像是「簽名用的筆」,只有你自己有;公鑰是「驗證簽名的放大鏡」,可以發給全世界。我用我的筆簽名,你用你跟我的筆一對的放大鏡來確認,這是不是我的筆跡。
雜湊函數是一種將任意長度的輸入數據,通過雜湊函數轉換為固定長度的輸出值(雜湊值)的算法。 這個過程是單向的,且具有不可逆性。
嗯,我知道你又好像有看沒有懂了,讓我們直接來看看例子。
【神奇的文件果汁機】
接續上面果汁店老闆的設定,你手上有一台專門把文件打成汁的神奇果汁機。
雜湊就是將每一份文件,生成一組不會重複的數位指紋 (Digital Fingerprint)。在簽署流程中,我們真正用私鑰加密的,其實就是這串短短的「指紋」,而不是整份文件。因為文件可能很大,但 Hash 值通常只有 256 位元,這樣加密就可以既快速,又能確保文件有任何變動都會被發現。
現在,讓我們把前面介紹的東西串起來,組成一個完整的 PKI 系統。
將「公鑰 / 私鑰」、「雜湊」以及「數位憑證的發行與驗證機制」這一整套的技術及規範全部打包在一起,這個完整的信任體系就叫做「公開金鑰基礎建設」(Public Key Infrastructure, PKI)。
它就是我們在數位世界的信任基準,也確保了所有數位簽章的安全與可信。
今天用了幾個簡單的比喻來帶大家了解數位簽章的三個技術要點,不知道各位有沒有更了解了一些?
掌握了 PKI 的基本概念後,明天讓我們來看看,在這個體系中最像數位身份證的角色「數位憑證」吧。