Page 158 - 金融科技力
P. 158
「成 對」生成 的;而公 鑰之所以 不怕公開 ,是因為 單向函數 的反 向
演算極為困難所致,解密所需的關鍵訊息都藏在私鑰裡。
假設志明 (加密者 ) 想利用公 鑰密碼術 傳送機密 訊息給 春 嬌
(解密者 ),則做法可分為三個步驟:第一、春嬌生成一對公鑰與 私
鑰,將公鑰 (公開 ) 傳送給志明;第二、志明用春嬌的公鑰將訊 息
加密,把加密後的訊息傳送給春嬌;第三、春嬌用自己的私鑰解密,
讀取 訊息。在 上述加密 解密的過 程裡,完 全沒有涉 及「解密 鑰匙 」
的傳 遞,因此 避開了如 何安全發 送「解密 鑰匙」的 難題。也 由於 加
密和解密用的不是同一把鑰匙,公鑰密碼術又稱為「非對稱密碼術」。
非對稱密 碼術就像 是一把有 兩個鑰匙 孔的鎖, 如果用公 鑰 上
鎖, 就只有與 該公鑰成 對的私鑰 才能解鎖 。這個比 喻自然容 易讓 人
追問 :如果反 過來用私 鑰上鎖, 就只有與 該私鑰成 對的公鑰 才能 解
鎖嗎?答案是肯定的,而且這恰好就是數位簽章的原理。
要處理數位簽章的問題,必須回到簽章的原始目的來思考。簽章
的功能,在於使文件接受者基於「簽章不可複製」,相信這份文件確實
為特定人 (即簽章者) 所發出。數位簽章遭遇的主要困難,在於數位
環境下「簽章」的「不可複製性」難以解決。假設春嬌收到一封電子
情書,署名是志明,她如何確定這封情書真的是由志明所寄發,而不
是其他人的惡作劇?倘若他們之間用傳統的紙筆溝通,則志明可在信
紙上簽名或蓋章。簽名與蓋章當然有被偽造的可能,而當訊息以數位
傳輸時這個問題更大 (複製貼上就可以了)。一個解決方法是這樣的:
志明先以私鑰將情書原文加密成「簽署文」,然後將情書原文與簽署文
同時發送給春嬌,春嬌依據志明的公鑰解密簽署文,如果解密的結果
與情書原文一致,則春嬌可相信這封情書是由志明所發。這裡看不到
真正的「簽名」,數位簽署演算法中的「不可複製性」完全彰顯在公鑰
密碼術的逆方向:以志明私鑰加密的訊息,只能用志明的公鑰解密;
而世界上擁有志明私鑰者,僅有志明一人。
如果志明要發出一個訊息給春嬌,他希望讓春嬌確認這條 訊 息
是自 己發出的 ,但又不 想讓第三 人得知訊 息的內容 ,則志明 的可 行
作法如下:首 先,志明先用自己的私鑰替訊息做第 一 層 加 密;接 著 ,
志明 對經過第 一層加密 的訊息用 春嬌的公 鑰做第二 層加密。 第一 層
144