官术网_书友最值得收藏!

1.4 ElGamal公鑰加密方案

ElGamal加密算法由Taher ElGamal于1985年提出,它是一個(gè)基于Diffie-Hellman密鑰交換的非對(duì)稱加密算法,方案描述如下。

1.4.1 方案描述

SysGen:輸入安全參數(shù)λ,系統(tǒng)參數(shù)生成算法生成循環(huán)群(G,p,g),p為群G的階,g為群G的生成元,輸出系統(tǒng)參數(shù)SP=(G,p,g)。

KeyGen:輸入系統(tǒng)參數(shù)SP,私鑰生成算法選取隨機(jī)數(shù)αZp,計(jì)算g1=gα,輸出公鑰pk=g1,私鑰sk=α。

Encrypt:輸入待加密的明文數(shù)據(jù)m∈G,公鑰pk,系統(tǒng)參數(shù)SP,加密算法選取隨機(jī)數(shù)rZp,計(jì)算C1=gr,C2=·m,輸出密文CT=(C1,C2)。

Decrypt:輸入密文CT,私鑰sk,系統(tǒng)參數(shù)SP,解密算法計(jì)算C2·=·(gr=m獲取明文數(shù)據(jù)。

1.4.2 安全性分析

ElGamal加密算法的安全性基于判定性Diffie-Hellman(Decisional Diffie-Hellman,DDH)問(wèn)題的難解性,我們首先給出DDH困難問(wèn)題的定義。

DDH問(wèn)題:設(shè)G為循環(huán)群,p為群G的階,g為群G的生成元,已知(g,gagb,Z),判斷Z是否等于gab。

定理1.2 如果DDH問(wèn)題是難解的,那么ElGamal加密方案是IND-CPA安全的。

證明:假設(shè)在IND-CPA安全模型中,存在一個(gè)敵手A能以不可忽略的優(yōu)勢(shì)ε攻破ElGamal加密方案,那么可以構(gòu)造一個(gè)模擬算法B通過(guò)與A交互,以不可忽略的優(yōu)勢(shì)給出DDH問(wèn)題的解。設(shè)B以循環(huán)群(G,p,g)上的DDH問(wèn)題實(shí)例(g,ga,gb,Z)作為輸入。

系統(tǒng)建立:令SP=(G,p,g),B設(shè)置公鑰為g1=ga,其中a未知,公鑰可以從給定問(wèn)題實(shí)例中得到。

挑戰(zhàn)A輸出兩個(gè)不同的挑戰(zhàn)明文數(shù)據(jù)m0m1∈G。B隨機(jī)選取比特c∈{0,1},計(jì)算挑戰(zhàn)密文CT*==(gbZ·mc)并發(fā)送給敵手,其中gbZ來(lái)自問(wèn)題實(shí)例。設(shè)r=b,若Z=gab,則

因此,若Z=gab,CT*為消息mc正確的挑戰(zhàn)密文。

猜測(cè)A輸出對(duì)c的猜測(cè),若c′=c,B輸出True,表示Z=gab,否則輸出False,表示Zgab。

由于證明中用到的ab都是隨機(jī)數(shù),因此模擬和真實(shí)攻擊環(huán)境是同分布、不可區(qū)分的。模擬過(guò)程沒(méi)有出現(xiàn)終止情況,所以模擬成功的概率為1。下面分析A攻破挑戰(zhàn)密文的概率。若Z=gab,方案的模擬與真實(shí)攻擊環(huán)境不可區(qū)分,因此根據(jù)假設(shè),敵手正確猜到加密消息的概率為1/2+ε/2。若Zgab,那么Z是隨機(jī)的,與C1*無(wú)關(guān),則CT*是一次一密加密。因此,敵手正確猜測(cè)到加密消息的概率為1/2。綜上所述,B解決DDH問(wèn)題的概率為

主站蜘蛛池模板: 光泽县| 南城县| 寿光市| 咸宁市| 叶城县| 曲松县| 屏山县| 岳阳市| 大田县| 奈曼旗| 无锡市| 铜川市| 嘉黎县| 珲春市| 呼和浩特市| 桂阳县| 呼和浩特市| 昂仁县| 麻城市| 永和县| 平顺县| 衡阳县| 夏津县| 祁连县| 娄底市| 三台县| 安达市| 白朗县| 平潭县| 新巴尔虎左旗| 房山区| 贵溪市| 九寨沟县| 福建省| 玉田县| 双牌县| 克拉玛依市| 兴和县| 沈丘县| 绵竹市| 涞源县|