密腦研究與應用介紹
﹒曾文貴I
.前言電腦與網路於九零年代
起以飛快的速度普及於全 世界。電腦化與資訊化象 徵人類資訊化社會的來 臨,提供給人類極大的方 便性,但是相對的也伴隨 了嚴重的資通訊安全問 題。為了統合解決我國資 通訊基礎建設的安全問題,行政院於九十年五月
成立『國家資通安全會幸恥 ,下轄「國家安全應變
中心」與六個工作小組,
分別針對資訊搜集、危機 A 曾文置教授攝民典雅清麗的嘲竹之心" (照片提供/茵文貴教授)
通報、標準規範、網路犯 罪、稽核與安全技術等提供服務。世界其他各國也都非常重視資通訊安全問題, 投注大量的資源希望能夠將危害資訊安全的因素減到最低。 資訊安全領域包含很廣,例如傳輸安全、身份認證、存取控制、病毒防制、 入侵偵測、數位資料隱藏、數位浮水印、風險管理、安全稽核等。解決這些問題 的技術包含實體防護、制訂標準、建構安全資訊系統,以及人員的訓練與管理 等。而密碼技術是保障資訊安全的一項重要的元件,不但加解密技術提供傳輸安 全的保證,公開金鑰技術更可以提供數位簽章的功能,使得網路上的使用者能夠 對其所下的命令簽章,對收受者而言,簽章者不能否認其效力。密碼技術還有很 廣泛的應用,例如電子投票、電子下標系統、電子錢等。 密碼的精妙之處在於利用很精簡的數學函數式,就可以解決一些很重大的資 April 2日叫 15訊安全問題,在這裡我們介紹一些密碼有關技術及應用 o 我們也介紹交大謝績 平、葉義雄及曾文貴教授有關密碼的研究。
I I
.密碼相關技術 A. 單向赫序函數:單向赫序函數是指將任何長度字串對應到約 160 位元赫序 值的函數,任何人都很難找出兩個對應到相同赫序值的字串 O 目前國際上的單向 赫序函數標準有 MD5 、 SHA-l 等。單向赫序函數主要用於計算任一個文件的數位 指紋,任何文件的單向赫序值可以說是唯一的,因此無論文件多大,我們都可以 用一個 160 位元的宇串來代表,這使得處理起來方便很多。 B. 私密金鑰加密:當距離很遠的兩方要透過公開的媒介相互傳遞訊息,但又 不想讓第三者從中攔截到訊息,那就得靠資訊加密的技術了 O 目前資訊加密技術 分為私密金鑰加密及公開金鑰加密。公開金鑰加密技術雖然比較容易使用,但是 需要花費的計算較多,無法使用於高速傳輸上,因此大都用於金鑰協議的初始設 定階段,然後資料加密的工作就由私密金鑰加密系統完成。所謂私密金鑰加密系 統是指傳遞訊息的雙方必須要建立他們之間共有的一把金鑰(大於長度為 64 至 128 位元的字串) ,作為加解密之用,而這把金鑰不能讓第三者知悉。通常要建 立、儲存及管理私密金鑰是一件不容易的工作 O 設計私密金鑰加密系統可以說是一項科學加藝術的工作:要計算速度快,又 要簡潔及非常安全,可以說是是一項非常困難的工作。目前較有名的私密金鑰加 密系統有 DES 、 AES 等,而其他各國的安全單位也都有自行開發的加密系統。我 們日常生活中常不知不覺地使用加密系統,例如手機通話,網路瀏覽等。 C· 公開金鑰加密系統:公開金鑰加密系統可以說是近代密碼最重要的發明。 和私密金鑰系統不同的是公開金鑰加密系統中,每位使用者 A 有兩把金鑰:一把 公開 PA '另一把私密 RA 。當任何一人想要傳遞資訊給 A 時,就使用 PA 加密, 然後 A 可以用他私有的 RA 解密,如此可以解決相互金鑰建立與管理的問題。 目前實用的公開金鑰加密系統寥寥可數,最知名的為 RSA 系統 o 在此系統中,每位使用者的公開金鑰為 (n.e) ,私密金鑰為 (n.d) ,其中 n=pq 為兩個大質數 p
與 q 的相乘積,且 ed 模 (p- I) (q- I)為 1 。在加密資訊 m 為密文時計算 c=memod n '
解密時計算 Cdmod
n 則可以得回 rn° 雖然只有簡單的兩道式子,但卻可以達到公 開金鑰加密系統目的,很不容易。RSA 的安全是基於分解n=pq 是一件很因難的計 16I
alur恥算工作。以當今電腦的運算能力而言,目前已知能夠分解的最大 n 大約為 400 位 元,又根據估計每增加 3 位元,計算量就得增加一倍,因此 1024 位元的 n 就已經
足夠安全了。
D. 數位簽章:如果說公開金鑰加密系統是近代密碼最重要的發現,那麼相關 的數位簽章系統則是最實用的發明,它讓我們在網路上能夠簽章,也能夠在網路 上執行其有法律效力的動作,例如網路購物、金錢支付及轉帳、證券交易、查詢個人私密資料等。
在數位簽章系統中,每位使用者 A 有兩把金鑰,一把私密的簽名金鑰,另一 把為公開的驗章金鑰。當 A 利用他的簽名金鑰對一文件簽章時,任何人都可以使 用他的驗章金鑰來驗誰簽章的真偽及有效性,因此 A 對他自己的數位簽章就不能 否認,也就有了法律效力。我國已經於 2001 年通過了「電子簽章法 J '提供商業 交易信任與信賴的根基,也為無紙化社會提供實現的基礎。 數位簽章系統也是公開金鑰系統的一種,但不像加密系統那樣稀少。有趣的 是 RSA 系統也可以作為數位簽章之用。使用者 A 的私密簽章金鑰為徊, d) ,公開驗章金鑰為仰, e) ,對文件 m 的簽章為 s=h(m)d
mod n
'其中 h 為單向赫序函數。對 (m ,
s) 的驗章為測試 semod
n 與 hem) 是否相等,如果相等則驗證成功,否則驗證失敗。 美國的國家數位簽章演算法的標準為DSA '主要是基於計算離散對數問題上的困 難性,和 RSA 系統不同。 E. 公開金鑰基礎建設:公開金鑰基礎建設(PKI) 的目的在讓每一位國民都能 使用公開金鑰加密與數位簽章系統,也就是得到一對私密金鑰與公開金鑰,作為 資訊化社會安全的基石。公開金鑰基礎建設中會有一些電子憑證中心(CA) 對使用 者發放電子憑證,就是將使用者的身份與其公開金鑰結合,使得其他使用者能夠 得到某一使用者使用某一公開金鑰的保證。公開金鑰基礎建設可以說是將近二十年發展的公開金鑰系統實用化與法律化。
目前我國政府對人民發放憑證的有「自然人憑證中心」。我們可以使用自己 的自然人憑證來查詢財政部資訊系統內的個人所得稅扣繳資料,作為報繳所得稅 之用,以兔因為沒有收到扣繳憑單而漏報。自然人憑證也可以用在監理所資料查 詢與繳交稅額與罰款之用。我們預期未來會有更多得地方可以使用。 F. 忘卻式傳輸協定:這個協定是要解決使用者選取資料時的個人隱私問題,資料擁有者A 擁有 n 組資料 M
I
,
M
2,···,
M
n,
f也願意讓使用者 B 選擇其中任意一組資
April 2004117曾文置教授小檔案 學歷:美國紐約州立大學石溪分校博士 現職:交通大學資訊科學系 教授 專長:資訊安全,演算法 複雜度理論 料,但是其他資料不讓使用者 B 獲知,同時 B 也不想讓 A 知道他所選擇的資料, 我們希望 A 和 B 透過少量的資訊交換就達到上述目的 O 密碼技術的解決方法為 B 先送 z=grhk
mod
p 給 A ,其中 B 選的資料為第k 個,然後 A 計算 gamod
p 及 C1三MiEBh((z/h')a
mod
p)
,
1 豆豆 n '給 B , p 為一大質數,最後 B 計算 Mk
二三 C1@h((gaymod
p)便可得到所選的值O 我們再次看到密碼技術的威力O