• 沒有找到結果。

第五章  安全性與效能分析

5.1  證明方法介紹

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

第五章安全性與效能分析  

此章節我們將會針對上一章節所提出的簽章系統做安全性的證明,我們會利用到 Random Oracle Model[7]證明工具設計出一套安全性模組,然後針對免憑證簽章中的 Type I 與 Type II 兩種攻擊者去進行安全性假設,接著我們會利用 Forking Lemma 輔助 定理[17]來幫助我們將安全性假設導入到定理 2 之 CDH 難問題,然後再利用矛盾證明 法來證明我們的簽章方法是安全的,最後我們也會與其他相關的簽章方法做簡單的效 能分析與比較。

5.1 證明方法介紹 

此小節我們將介紹 Random Oracle Model 的概念以及通常密碼學者如何利用它來 證明簽章演算法的安全性,接著我們再介紹一個證明簽章演算法時所用到的輔助定理:

Forking Lemma 的定義。

5.1.1 Random Oracle Model

1993 年,Bellare 及 Rogway[7]指出雜湊函數可被視為隨機函數,使用雜湊函數的 簽章機制可以在 Random Oracle Model 下證明其安全性。為了證明一個數位簽章演算 法的安全性,我們必須導入 Random Oracle 的概念,Random Oracle 可以被視為完美的 雜湊函數,在假設雜湊函數皆為完全隨機(truly random)的情況下,任何一個機率式多 項式演算法都沒辦法自行計算出此雜湊函數的輸出值,因此我們必須向外在的 Random Oracle 詢問此雜湊函數的輸出值,而 Random Oracle Model 的精神就是我們可

31

以藉由控制此外在的 Random Oracle 的輸出值以及一個假設可以破解目標系統的演算 法,使其來破解某個公認的難問題,因為目前的難問題尚無解,因此藉由反證法,我 們可以證明我們欲證明的簽章演算法是安全的。

通常,我們會利用 Random Oracle Model 將我們的簽章系統模組化,我們欲利用 此安全性模組來證明簽章演算法的安全性,首先我們會以外在獨立的 Random Oracle 來取代簽章演算法中的雜湊函數,如此所證明的簽章安全性才與雜湊函數無相依關係,

在此模組中攻擊者可以向 Random Oracle 詢問相對應某一輸入的輸出值,攻擊者再藉 由這些輸出值來破解簽章演算法,另一方面,此模組中存在著另一挑戰者(Challenger),

挑戰者會控制著 Random Oracle 的輸出值,並隨時紀錄 Random Oracle 的輸入與輸出 值,挑戰者的目的就是利用攻擊者成功破解的結果來攻破公認的難問題,只要攻擊者 有不可忽略的機率可以攻破簽章演算法,挑戰者同樣也可以攻破難問題,最後利用反 證法即可證明簽章演算法的安全程度。

5.1.2 Forking Lemma

Forking Lemma 是密碼學者在證明簽章安全性時常使用到的輔助定理,根據 Pointcheval 及 Stern 對 Forking Lemma 的定義[17],Forking Lemma 只適用在 Generic Signature 的格式下,滿足 Generic Signature 條件的簽章格式為

(

r,h,s

)

(r代表著亂數,

Generic Signature 的簽章格式。

(

r,m,h

)

s

32

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

定理 6:

(Forking Lemma),在 Generic Signature 演算法下,令A為一個只能輸入公開資料機率 式多項式時間之狀態機(Probabilistic Polynomial Time Turning Machine)。令QA向 Random Oracle 要求的次數。假設在時間TA可以在機率 ( 為系統安全參 數)下產生一組合法的簽章

(

;則

Q 2/ k

>7

ε k

)

s h r

m, , , A亦能夠在時間T′≤84480TQ/ε內產生二組簽 章

(

m,r,h,s

)

(

m,r,h′,s

)

,其中h ≠ ( h′ 為hA換了 Random Oracle 後對於 的回傳 值)。

(

m,r

)

33

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

相關文件