專利名稱:交換鑒別和標(biāo)記電子簽名的方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于一種能夠確認(rèn)數(shù)據(jù)處理的專用實(shí)體的交換鑒別方法和能夠提供鑒別功能及非否定功能以防止否定數(shù)據(jù)處理操作和數(shù)據(jù)完整性的電子標(biāo)記方法。
隨著軟件技術(shù)和半導(dǎo)體工藝的飛速發(fā)展,特別是生活在現(xiàn)今信息被當(dāng)作是財(cái)富的信息時(shí)代,計(jì)算機(jī)已經(jīng)被普遍地用來進(jìn)行數(shù)據(jù)處理。通過公共通訊網(wǎng)絡(luò)的數(shù)據(jù)通訊也已經(jīng)傳播開來,因此,采用公共通訊網(wǎng)絡(luò)傳輸數(shù)據(jù)以及在計(jì)算機(jī)中存儲(chǔ)數(shù)據(jù)就顯得日益重要。于是便產(chǎn)生了保護(hù)這些數(shù)據(jù)的要求。與此相聯(lián)系用交換鑒別和電子標(biāo)記方法可以實(shí)現(xiàn)對(duì)每個(gè)執(zhí)行數(shù)據(jù)處理的實(shí)體的識(shí)別并能檢驗(yàn)數(shù)據(jù)在被處理的運(yùn)行過程中是否發(fā)現(xiàn)有偽造的數(shù)據(jù)以及檢驗(yàn)數(shù)據(jù)處理的實(shí)際操作。
在鑒別交換和電子標(biāo)記的方法當(dāng)中,其保密性是基于離散對(duì)數(shù)問題,與本發(fā)明相關(guān)的問題是Schnorr方法和Okamoto方法。離散對(duì)數(shù)涉及如下事實(shí),即當(dāng)一個(gè)人沒有涉及計(jì)算X值的話,那么他就很難從產(chǎn)生的隨機(jī)數(shù)r中推導(dǎo)出值X(X≡grmod p)以完成對(duì)實(shí)體(entity)的檢驗(yàn),即使x和g已知也是如此。由l和p(1<g<p)之間的一個(gè)數(shù)g,其r次冪而后除以p所得的結(jié)果是值X。這里p和q是素?cái)?shù)。特別是,q可以被(p-1)相除。換句話說,q是整數(shù),在l和p之間,當(dāng)求出它的q次冪而后被p除時(shí),其值是1(即1≡gqmod p)。
根據(jù)Schnorr的鑒別交換方法,試驗(yàn)者(prover)A產(chǎn)生(produc-eS)1和q之間的隨機(jī)數(shù)r以便在驗(yàn)證者(verifier)B之前對(duì)他本身進(jìn)行檢驗(yàn)。在產(chǎn)生隨機(jī)數(shù)r之后,求出g的r次冪。所得的值再除以P以推導(dǎo)出值X(X≡grmod p)。值X發(fā)送給驗(yàn)證者B。在從試驗(yàn)者A處收到值X的基礎(chǔ)上,驗(yàn)證者B產(chǎn)生1到q之間的隨機(jī)數(shù)e,由驗(yàn)證者B產(chǎn)生的隨機(jī)數(shù)∈發(fā)送給試驗(yàn)者A,試驗(yàn)者A把從驗(yàn)證者B處收到的隨機(jī)數(shù)e與他的保密信息標(biāo)號(hào)S相乘,所得的值再加上隨機(jī)數(shù)r,。然后除以q,這樣便得出值Y(Y≡r+eS mod q),試驗(yàn)者A發(fā)送計(jì)算出的值y到驗(yàn)證者B。根據(jù)從試驗(yàn)者A處收到的值Y,驗(yàn)證者B求出g的y次冪,并將得到的結(jié)果值與公共信息標(biāo)號(hào)V(V≡g-Smod p)的e次冪相乘然后除以p,這樣得出值gyVemod p。此后,驗(yàn)證者B檢驗(yàn)最終得出的值是否與從試驗(yàn)者A處得到的值X(X≡grmod p)相符,以通過檢驗(yàn)鑒別試驗(yàn)者。另一方面,按照Schnorr的電子標(biāo)記方法,當(dāng)他必須把他的簽名放到電子文件m時(shí),標(biāo)記者(signer)A產(chǎn)生1到q之間的隨機(jī)數(shù)r。在產(chǎn)生隨機(jī)數(shù)r之后,求出g的r次冪,將結(jié)果值除以p得到模X(X≡grmod p)。使用散列(hash)函數(shù)對(duì)模X和文件m加以散列,這樣得出e(e=h(grmod p,m))。為了產(chǎn)生附到文件m上的標(biāo)記者A的電子簽名,將得出的e與標(biāo)記者A的保密信息標(biāo)號(hào)S相乘,再將得出的結(jié)果與隨機(jī)數(shù)r相加,然后除以q,這樣得出值y(y≡r+eS modq)。這樣由上述方法得出的(e,y)構(gòu)成了標(biāo)記者A的電子簽名。為了檢驗(yàn)標(biāo)記者A的附在文件m上的電子簽名(e,y),求出g的y次冪。其結(jié)果值乘以由標(biāo)記者A的公共信息標(biāo)號(hào)V(V=g-Smod p)的e次冪而后除以P,這樣得出值gyVemod p。將最后得出的值和文件m被加以散列,于是得出散列值h(gyVemod p,m)。之后,進(jìn)行檢驗(yàn)是否散列值與標(biāo)記者的e相一致,以檢驗(yàn)標(biāo)記者A的電子簽名的有效性。
按照Okamoto的方法,每個(gè)用戶可以使用兩個(gè)保密信息標(biāo)號(hào)S1和S2,以保證Schnorr方法的保密性。為了同樣的目的,Okamoto方法中也使用了等效于Schnorr方法中使用的g的g1和g20按照Okamoto的方法,試驗(yàn)者A產(chǎn)生1到q之間的兩個(gè)隨機(jī)數(shù)r1和r2以在驗(yàn)證者B之前對(duì)他自己進(jìn)行檢驗(yàn)。在產(chǎn)生隨機(jī)數(shù)r1和r2之后,求出g1的r1次冪,并求出g2的r2次冪。將其結(jié)果值互相相乘。將得出的值然后再除以P驗(yàn)者A的值X的基礎(chǔ)上,驗(yàn)證者B產(chǎn)生1到q之間的隨機(jī)數(shù)e,由驗(yàn)證者B產(chǎn)生的隨機(jī)數(shù)e發(fā)送給試驗(yàn)者A,試驗(yàn)者A把從驗(yàn)證者B處收到的隨機(jī)數(shù)e與自己的一個(gè)保密信息標(biāo)號(hào)S1相乘,得到的值與隨機(jī)數(shù)r1相加而后除以q,這樣計(jì)算出值y1(y1≡r1+eS1mod q),試驗(yàn)者A也使隨機(jī)數(shù)e與另外一個(gè)保密信息標(biāo)號(hào)S2相乘。所得結(jié)果與隨機(jī)數(shù)r2相加而后除以q,這樣得出值y2(y2≡r2+eS2mod q),試驗(yàn)者A發(fā)送得出的值(y1,y2)到驗(yàn)證者B。在接收到試驗(yàn)者A的值(y1,y2)的基礎(chǔ)上,驗(yàn)證者B分別求出g1的y1次冪和求出g2的y2次冪,將計(jì)算出的值相互相乘。將這樣得出的值然后與由公共信息標(biāo)號(hào)V(V≡g1-S1g2-S2mod p)的e次冪相乘而后除以P,這樣得出值g1Y1g2Y2Vemod p。此后,驗(yàn)證者B檢驗(yàn)最后得出的值是否與從試驗(yàn)者A的值X(X≡g1r1g2r2mod p)相符,以此通過檢驗(yàn)來鑒別試驗(yàn)者A,換言之,依照Okamoto的電子標(biāo)記方法,當(dāng)他必須把他的鑒名附到電子文件m上時(shí),標(biāo)記者A產(chǎn)生1到q之間的兩個(gè)隨機(jī)數(shù)r1和r20在產(chǎn)生兩個(gè)隨機(jī)數(shù)r1和r2之后,求出g1的r1次冪,并求出g2的r2次冪。將計(jì)算出的值相乘,并將得出的值除以P以計(jì)算出值X(X≡g1r1g2r2mod p)。使用散列函數(shù)h對(duì)值X和文件m加以散列,這樣得出值e(e≡h(g1r1g2r2mod p,m)。為了產(chǎn)生附在文件m上的標(biāo)記者A的電子簽名,使得出的e與標(biāo)記者A的一個(gè)保密信息標(biāo)號(hào)S1相乘,再將得出的值與隨機(jī)數(shù)r1相加后除以q,這樣得出值y1(y1=r1+eS1mod q)。標(biāo)記者A也使另一個(gè)保密信息標(biāo)號(hào)S2與得出值e相乘,將得出值與隨機(jī)數(shù)r2相加而后除以q,這樣得出值y2(y2≡r2+eS2modq)。由上述方法得出的(e,y1,y2)構(gòu)成了標(biāo)記者A的電子簽名。為了檢驗(yàn)附到文件m上的標(biāo)記者A的電子簽名(e,y1,y2),求出g1的y1次冪,并求出g2的y2次冪。將計(jì)算得出的值相乘。將得出的值再與由公共信息標(biāo)號(hào)V(V≡g1-S1g2-S2mod p)的e次冪相乘然后除以P,這樣得出值g1y1g2y2Vemod p,將最后得出的值和文件m被加以散列,于是得出散列值h(g1y1g2y2Vemod p,m)。此后,進(jìn)行檢驗(yàn),是否散列值與標(biāo)記者A的e相符,以此來檢驗(yàn)標(biāo)記者A的電子簽名的有效性。
根據(jù)Okamoto的方法在發(fā)生鑒別交換和電子簽名的過程中使用了g1和g2,以防止不是有權(quán)提出要求的用戶A的其它用戶裝扮用戶A或用戶A的電子簽名被假冒。Okamoto方法允許每個(gè)用戶使用兩個(gè)保密信息標(biāo)號(hào)S1和S2和由此獲得保密性的增強(qiáng),從而超過了Schnorr的方法。當(dāng)考慮到交換鑒別和產(chǎn)生電子簽名以及檢驗(yàn)它所需要的計(jì)算量時(shí),從實(shí)際使用的觀點(diǎn)出發(fā)Okamoto方法要比Schorr方法更困難。
因此,本發(fā)明的目的是提供一種信息保密服務(wù)方法,在使用鑒別交換方法和電子標(biāo)記方法時(shí),該信息保密服務(wù)方法能夠提供更高的保密性和有效性。首先該方法在處理數(shù)據(jù)和在實(shí)體之間傳送數(shù)據(jù)時(shí)能夠確認(rèn)和檢驗(yàn)專用的實(shí)體,其次能夠提供把電子簽名送到電子文件上、確認(rèn)傳送或接收電子文件的對(duì)方、確認(rèn)電子文件的真實(shí)性、檢驗(yàn)傳送和接收電子文件的操作等功能。
一方面,本發(fā)明提供了一種交換鑒別和產(chǎn)生電子簽名的方法,該方法包括如下步驟設(shè)置p,q和g為系統(tǒng)參數(shù),其中p和q是素?cái)?shù)而g(1≡gqmod p)是整數(shù),其值是在1和P之間,并且g的q次冪除以p時(shí)其值為1;使每個(gè)用戶采用n個(gè)保密信息標(biāo)號(hào)和n個(gè)公共信息標(biāo)號(hào),其中n是不小于2的整數(shù),公共信息標(biāo)號(hào)Vn分別對(duì)應(yīng)著保密信息標(biāo)號(hào)Sn,其中每一個(gè)保密信息標(biāo)號(hào)是一個(gè)1到q之間的整數(shù)并且是由等式Vn≡g-Snmod p產(chǎn)生的。
另一方面,本發(fā)明提供的一種鑒別交換方法,其包括如下步驟由試驗(yàn)者產(chǎn)生一個(gè)在1和q之間的隨機(jī)數(shù)r1,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),使得1≡gqmod p,由試驗(yàn)者發(fā)送值X到驗(yàn)證者;驗(yàn)證者產(chǎn)生一隨機(jī)數(shù)e和傳送隨機(jī)數(shù)e到試驗(yàn)者;由試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r2和r3,在試驗(yàn)者保密信息標(biāo)號(hào)S1和S2和試驗(yàn)者收到驗(yàn)證者發(fā)送的隨機(jī)數(shù)e的基礎(chǔ)上計(jì)算值r(r≡r1+S1r2mod q)和值r4(r4≡S1r3+S2mod q),在r和r4的基礎(chǔ)上計(jì)算值y1(y1≡r+er4mod q)和值y2(y2≡r2+er3mod q)和然后將y1和y2送給驗(yàn)證者;在收到由試驗(yàn)者發(fā)給驗(yàn)證者的y1和y2的基礎(chǔ)上并且結(jié)合試驗(yàn)者的公共信息標(biāo)號(hào)V1(V1≡g-S1mod p)和V2(V2≡g-S2mod p)由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p),并且檢驗(yàn)是否模X′與從試驗(yàn)者收到的X(X≡gr1mod p)相符合。這些步驟可以以如上所述同樣的方式應(yīng)用到多于兩個(gè)保密信息標(biāo)號(hào)和兩個(gè)公共信息標(biāo)號(hào)的場(chǎng)合。
再一方面,本發(fā)明提供的電子標(biāo)記方法包括如下步驟由標(biāo)記者產(chǎn)生隨機(jī)數(shù)r1,該標(biāo)記者A是諸如電子文件或信息的電子數(shù)據(jù)的草擬者或處理者,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1至p之間的整數(shù),使得1≡gqmod p,用m散列值X,這樣得出e(e=h(X,m));由標(biāo)記者A產(chǎn)生隨機(jī)數(shù)r2和r3,在標(biāo)記者的保密信息標(biāo)號(hào)S1和S2的基礎(chǔ)上并結(jié)合e計(jì)算值r(r≡r1+S1r2mod q)和模r4(r4≡S1r3+S2mod q),在r和r4的基礎(chǔ)上計(jì)算值y1(y1≡r+er4mod q)和值y2(y2≡r2+er3mod q),這樣,得出m的電子簽名(e,y1,y2);計(jì)算值X′(X′≡gy1V1y2V2emod p)以檢驗(yàn)m的電子簽名(e,y1,y2),用m散列值X′,檢驗(yàn)是否h(x′,m)等于構(gòu)成電子簽名部分的e。按照上述相同的方法,這些步驟可以應(yīng)用多于兩個(gè)保密信息標(biāo)號(hào)和兩個(gè)公共信息標(biāo)號(hào)的場(chǎng)合。
通過下面結(jié)合附圖對(duì)實(shí)施例的描述可以使本發(fā)明的其它目的和特征變得更為明顯。
附圖簡(jiǎn)要說明
圖1是本發(fā)明應(yīng)用“mod q”的鑒別交換方法的示意圖;圖2是本發(fā)明應(yīng)用“mod q”的電子標(biāo)記方法的示意圖;圖3是本發(fā)明應(yīng)用“mod(p-1)”鑒別交換方法的示意圖;圖4是本發(fā)明應(yīng)用“mod(p-1)”電子標(biāo)記方法的示意圖;圖5是在試驗(yàn)者使用Schnorr方法和驗(yàn)證者使用本發(fā)明的方法之間的鑒別交換的示意圖;圖6是在試驗(yàn)者使用Okamoto方法和驗(yàn)證者使用本發(fā)明的方法之間的鑒別交換的示意圖;圖7是檢驗(yàn)本發(fā)明由Schnorr方法產(chǎn)生的電子簽名的有效性的示意圖;和圖8是檢驗(yàn)本發(fā)明用Okamoto方法產(chǎn)生的電子簽名有效性的示意圖。
在本發(fā)明的鑒別交換方法和電子標(biāo)記方法中,使用三個(gè)系統(tǒng)參數(shù)p、q和g,兩個(gè)保密信息標(biāo)號(hào)S1和S2,及兩個(gè)公共信息標(biāo)號(hào)V1和V2,這里,保密和公共信息標(biāo)號(hào)的數(shù)量可以多于兩個(gè),系統(tǒng)參數(shù)p和q是素?cái)?shù)。實(shí)際上,q可被(p-1)相除。換言之,g是在1和p之間的整數(shù),并且g的q次冪再除以p其值為1(即,1≡gqmod p)。每個(gè)用戶的保密信息標(biāo)號(hào)S1和S2是1和q之間的整數(shù)(1<S1, S2<q),每個(gè)用戶也使用分別對(duì)應(yīng)于保密信息標(biāo)號(hào)S1和S2的公共信息標(biāo)號(hào)V1和V2(V1≡g-S1mod p,V2≡g-S2mod p)。
首先,結(jié)合圖1描述本發(fā)明鑒別交換方法。
依據(jù)本發(fā)明的鑒別交換方法,試驗(yàn)者A產(chǎn)生1到q之間的隨機(jī)數(shù)r1,以在驗(yàn)證者B之前對(duì)他自己進(jìn)行檢驗(yàn)。在產(chǎn)生隨機(jī)數(shù)r1之后,求出g的r1次冪,得到的值除以P求得值X(X≡gr1mod p),值X發(fā)送給驗(yàn)證者B。在從試驗(yàn)者A收到模X的基礎(chǔ)上,驗(yàn)證者B產(chǎn)生1到q之間的隨機(jī)數(shù)e。由驗(yàn)證者B產(chǎn)生的隨機(jī)數(shù)e發(fā)送給試驗(yàn)者A。在接收到由驗(yàn)證者B發(fā)來的隨機(jī)數(shù)e基礎(chǔ)上,試驗(yàn)者A產(chǎn)生1和q之間的隨機(jī)數(shù)r2。此后,試驗(yàn)者A用他自己的保密信息標(biāo)號(hào)S1與隨機(jī)數(shù)r2相乘,得到的值與用來計(jì)算X所使用的隨機(jī)數(shù)r1相加而后除以q,這樣,得到值r(r≡r1+S1r2mod q)。試驗(yàn)者A也產(chǎn)生1和q之間的隨機(jī)數(shù)r3。該隨機(jī)數(shù)r3與試驗(yàn)者A的保密信息標(biāo)號(hào)S1相乘。得到的值與試驗(yàn)者A的保密信息標(biāo)號(hào)S2相加而后除以q,這樣得出值r4(r4≡S1r3+S2mod q)。使得出的值r4與隨機(jī)數(shù)e相乘。將得到的值與值r相加而后除以q,這樣得出值y1(y1≡r+er4mod q)。隨機(jī)數(shù)r3與隨機(jī)數(shù)e相乘。將得出的值與隨機(jī)數(shù)r2相加而后除以q,這樣,得值y2(y2≡r2+er3modq)。在計(jì)算兩值y1和y2的地方,由產(chǎn)生隨機(jī)數(shù)r2和r3,并且在保密信息標(biāo)號(hào)S1和S2并結(jié)合隨機(jī)數(shù)r1、r2和r3的基礎(chǔ)上計(jì)算值r和r4然后使用隨機(jī)數(shù)e和僅僅y1值就能夠被計(jì)算和檢驗(yàn)試驗(yàn)者A的鑒別。在這種情況下,僅一隨機(jī)數(shù)r2被產(chǎn)生,使得它被設(shè)置作為值y2,值y1是使用保密信息標(biāo)號(hào)S1和S2并結(jié)合隨機(jī)數(shù)e演算出來的。這就是說,試驗(yàn)者A響應(yīng)從驗(yàn)證者B接收到的隨機(jī)數(shù)e而產(chǎn)生1到q之間的隨機(jī)數(shù)r2,然后確定隨機(jī)數(shù)r2為y2。此后,試驗(yàn)者A使y2乘以自己的保密信息標(biāo)號(hào)S1,計(jì)算出的值而后與隨機(jī)數(shù)e和另一保密信息標(biāo)號(hào)S2的積相加,得出的值再與用來計(jì)算X而使用的隨機(jī)數(shù)r1相加然后再除以q,這樣得出值y1(y1≡r1+eS2+S1y2mod q)。以這樣方式得出的y1和y2發(fā)送給驗(yàn)證者B,在接收到模y1和y2的基礎(chǔ)上、驗(yàn)證者B計(jì)算g的y1次冪。驗(yàn)證者B也計(jì)算一公共信息標(biāo)號(hào)V1(V1≡g-S1mod p)的y2次冪。將計(jì)算出的值相乘,將得出的值然后再乘以另一公共信息標(biāo)號(hào)V2(V2≡g-S2mod p)的e次冪,再將這一結(jié)果值除以P,這樣得出模X′(X′≡gy1V1y2V2emod p)。此后,驗(yàn)證者B檢驗(yàn)是否模X′與從試驗(yàn)者A所接收的X(X≡gr1mod p)相符,以檢驗(yàn)試驗(yàn)者A的鑒別。
另一方面,依據(jù)本發(fā)明的電子標(biāo)記方法,當(dāng)他必須把他的簽名附到電子文件m上時(shí),標(biāo)記者A產(chǎn)生一個(gè)隨機(jī)數(shù)r1。在產(chǎn)生隨機(jī)數(shù)r1之后,計(jì)算g的r1次冪。計(jì)算出的值然后除以P以得出值X(X≡g1r1mod p)。使用散列函數(shù)h對(duì)值X和文件m進(jìn)行散列,由此得出e(e≡h(gr1mod p,m))。標(biāo)記者A也產(chǎn)生1到q之間的隨機(jī)數(shù)r2。此后,標(biāo)記者A用他自己的一個(gè)保密信息標(biāo)記S1與隨機(jī)數(shù)r2相乘,得出的值與用于計(jì)算X值所用的隨機(jī)數(shù)r1相加然后除以q,這樣得出值r(r≡r,+S1r2mod q)。標(biāo)記者A也產(chǎn)生1到q之間的隨機(jī)數(shù)r3。將隨機(jī)數(shù)r3與標(biāo)記者A的一個(gè)保密信息標(biāo)號(hào)S1相乘,使得出的值與標(biāo)記者A的另一個(gè)保密信息標(biāo)號(hào)S2相加然后除以q,這樣得出值r4(r4≡S1r3+S2modq)。
將計(jì)算出的值r4與隨機(jī)數(shù)e相乘,再將得出的值與模數(shù)r相加然后除以q,這樣得到值y1(y1≡r+er4mod q)。隨機(jī)數(shù)r3也與隨機(jī)數(shù)e相乘,得到的值與隨機(jī)數(shù)r2相加然后除以q,這樣得出值y2(y2≡r2+er3mod q)。在計(jì)算兩值y1和y2的地方利用產(chǎn)生隨機(jī)數(shù)r2和r3,在保密信息標(biāo)號(hào)S1和S2并結(jié)合隨機(jī)數(shù)r1、 r2和r3的基礎(chǔ)上計(jì)算值r和r4,然后使用隨機(jī)數(shù)e,僅值y1能被用來計(jì)算以便檢驗(yàn)標(biāo)記者A的電子簽名的有效性。在這種情況下,僅僅一個(gè)隨機(jī)數(shù)r2被產(chǎn)生,使得它被設(shè)置為值y2。使用保密信息標(biāo)號(hào)S1和S2并結(jié)合隨機(jī)數(shù)e可以算出值y1,即,標(biāo)記者A產(chǎn)生1到q之間的隨機(jī)數(shù)r2和確定隨機(jī)數(shù)r2為y2。此后,標(biāo)記者A用他自己的保密信息標(biāo)號(hào)S1與y2相乘,將計(jì)算出的值再與隨機(jī)數(shù)e和另一個(gè)保密信息標(biāo)號(hào)S2的積相加,使得出的值與用來計(jì)算X值所用的隨機(jī)數(shù)r1相加然后除以q,這樣,得出值y1(y1≡r1+eS2+S1y2mod q)。用這種方法得出的值y1和y2并結(jié)合隨機(jī)數(shù)e便構(gòu)成了標(biāo)記者A的電子簽名。為了驗(yàn)證標(biāo)記者A附在文件m上的電子簽名(e,y1,y2),計(jì)算g的y1次冪,計(jì)算一公共信息標(biāo)號(hào)V1(V1≡g-S1modp)的y2次冪。將計(jì)算出的值相互相乘,得出的值然后與標(biāo)記A的另一公共信息標(biāo)號(hào)V2的e次冪所得的結(jié)果相乘。將得出的值除以P,這樣得出值X′(X′≡gy1V1y2V2emod p)。將最終得出的值X′和文件m被散列,使得出散列值h(X′,m)。此后,檢驗(yàn)是否散列值與e一致,以檢驗(yàn)標(biāo)記者A的電子簽名(e,y1,y2)的有效性。
在結(jié)合本發(fā)明的鑒別交換方法和電子標(biāo)記方法中,雖然q在計(jì)算r(r≡r1+S1y2mod q),r4(r4≡S1r3+S2mod q),y1(y1≡r+er4mod q)和y2(y2≡r2+er3mod q)時(shí)作為模量使用,在所示的圖3和4中,p-1也可以用來作為模量使用。在這種情況下,為使每一種方法保險(xiǎn)起見,一素?cái)?shù)P可以用來作為包含至少一個(gè)大因子(factor)的模量p-1。
在本發(fā)明的鑒別交換和電子標(biāo)記方法中,使用計(jì)算X(X≡gr1mod p)的隨機(jī)數(shù)r1,用戶的保密信息標(biāo)號(hào)之一S1,和隨機(jī)數(shù)r2一起使用公式r≡r1+S1r2來計(jì)算值r。使用隨機(jī)數(shù)r3和用戶的保密信息標(biāo)號(hào)S1和S2并采用公式r4≡S1r3+S2mod q來計(jì)算值r4。使用公式y(tǒng)1≡r+er4mod q和公式y(tǒng)2≡r2+er3mod q并用值r和r2來計(jì)算y1。在上述方法中計(jì)算y1和y2的原因是因?yàn)橛?jì)算X,gr1mod p(X≡gr1mod p)的計(jì)算等效于gr(g-S1)r2mod p(X≡gr1≡gr-S1r2≡grg-S1r2≡gr(g-s1)r2mod p)的隱含計(jì)算,這樣,使用單獨(dú)的隨機(jī)數(shù)r1對(duì)gr1mod p的計(jì)算和使用兩個(gè)隨機(jī)數(shù)r和r2對(duì)gr(g-S1)r2mod p的計(jì)算產(chǎn)生相同的效果。
這樣計(jì)算的效果和以連續(xù)的方式計(jì)算兩次的情況下所獲得的效果相同。換言之,在鑒別交換方法和電子標(biāo)記方法中,該計(jì)算必須是能增強(qiáng)保密性而不增加任何計(jì)算量的有效方法。這就是為什么要推導(dǎo)出用來計(jì)算gr(g-S1)r2mod p的兩個(gè)隨機(jī)數(shù)r和r2要比推導(dǎo)出用來計(jì)算gr1mod p所用的一個(gè)隨機(jī)數(shù)r1更加困難的原因。實(shí)際上在本發(fā)明的鑒別交換方法和電子標(biāo)記方法中,僅僅gr1mod p的計(jì)算被執(zhí)行了而不執(zhí)行g(shù)r(g-S1)r2mod p的計(jì)算,以得到高處理速度和增強(qiáng)保密性。進(jìn)而,本發(fā)明的鑒別交換方法和電子標(biāo)記方法能夠成為增加保密性而不增加計(jì)算量的有效方法。
在上述的方法中,使用公式y(tǒng)1≡r+er4mod q)和公式y(tǒng)2≡r2+er3mod q分別地求y1和y2的值,在本發(fā)明的鑒別交換方法中,使用了由試驗(yàn)者A計(jì)算的值r(r≡r1+S1r2mod q)和r4(r4≡S1r3+S2mod q)和驗(yàn)證者B發(fā)送給試驗(yàn)者A的隨機(jī)數(shù)e,或在本發(fā)明的電子標(biāo)記方法中使用了由標(biāo)記者A計(jì)算的模r(r≡r1+S1r2mod q)和r4(r4≡S1r3+S2mod q)和對(duì)文件m和值X(X≡gr1mod p)進(jìn)行散列而得出的散列值e(e=h(x,m))而與保密信息標(biāo)號(hào)值S1和S2相結(jié)合。在本發(fā)明的鑒別交換方法和電子標(biāo)記方法中檢驗(yàn)有效性時(shí),使用了驗(yàn)證者收到的X,e,y1和y2并結(jié)合對(duì)方用戶A的信息標(biāo)號(hào)V1和V2執(zhí)行檢驗(yàn)計(jì)算gy1V1y2V2emod p。在方程式r≡r1+S1r2mod q和r4≡S1r3+S2mod q的基礎(chǔ)上,計(jì)算gy1V1y2V2emod p等效于以連續(xù)的方式對(duì)公式grg-es2g-es2(g-S1)er3(g-S1)-er3mod p進(jìn)行二次計(jì)算和以此檢驗(yàn)鑒別交換方法和電子標(biāo)記方法的正確性。
依照本發(fā)明,由于用戶的保密信息標(biāo)號(hào)S1和S2在計(jì)算y1和y2時(shí)是間接使用的,因此本發(fā)明的鑒別交換方法和電子標(biāo)記方法是能夠減少把用戶的保密信息標(biāo)號(hào)暴露給其它人的可能性和由此增加保密性的優(yōu)選的方法。
本發(fā)明的方法和Schnorr方法和Okamoto(oK92)方法相兼容。換言之,本發(fā)明的方法允許使用Schnorr方法或OK92方法或OK92方法中的任一個(gè)進(jìn)行鑒別交換和對(duì)由Schorr方法或OK92方法的任一個(gè)產(chǎn)生的電子簽名進(jìn)行檢驗(yàn)而不需任何轉(zhuǎn)換。圖5至圖8示出了本發(fā)明的方法和Schnorr方法或OK92方法的兼容性。
圖5示出了試驗(yàn)者A使用Schnorr方法和驗(yàn)證者B使用本發(fā)明的方法之間的鑒別交換。如圖5所示,試驗(yàn)者A產(chǎn)生1到q之間的隨機(jī)數(shù)r。在產(chǎn)生隨機(jī)數(shù)r之后,求g的r次冪。得到的值然后除以P得出值X(X≡grmod p),值X送到驗(yàn)證者B。在收到從試驗(yàn)者A來的值X之后,驗(yàn)證者B產(chǎn)生1到q之間的隨機(jī)數(shù)e。由驗(yàn)證者B產(chǎn)生的隨機(jī)數(shù)e送往試驗(yàn)者A,試驗(yàn)者A使從驗(yàn)證者B處收到的隨機(jī)數(shù)e與他自己的保密信息標(biāo)號(hào)S相乘,所得的值與用來計(jì)算X所使用的隨機(jī)數(shù)r相加然后除以q,這樣,得出值y(y≡r+eS mod q),試驗(yàn)者A發(fā)送得到的值y到驗(yàn)證者B。在從試驗(yàn)者A收到值y后,驗(yàn)證者B使用在其中收到的g,求gy1V1y2V2emod p。驗(yàn)證者B用收到的y替換式gy1V1y2V2emod p中的y1。這時(shí),試驗(yàn)者A的公共信息標(biāo)號(hào)V替換了gy1V1y2V2emod p中的V2。同樣,gy1V1y2V2emod p的V1由1替換,而y2由0替換。以這樣的方式,驗(yàn)證者B計(jì)算gy1V1y2V2emod p。最后,驗(yàn)證者B檢驗(yàn)是否gy1V1y2V2emod p與從試驗(yàn)者A收到的X相一致,以此來檢驗(yàn)試驗(yàn)者A。
圖7示出了由標(biāo)記者A使用Schnorr方法產(chǎn)生的附在電子文件m上的電子簽名(e,y)的有效性的檢驗(yàn)。在這種情況下,g被用來求gy1V1y2V2emod p,y替換式gy1V1y2V2emod p中的y1。在這時(shí),試驗(yàn)者A的公共信息標(biāo)號(hào)V代替了gy1V1y2V2emod p的V2。同樣,式gy1V1y2V2emod p的V1由1代替,而y2由0代替。以這樣方式,實(shí)現(xiàn)了對(duì)公式gy1V1y2V2emod p的計(jì)算。和文件m一起,gy1V1y2V2emod p被散列。最后,驗(yàn)證者B檢驗(yàn)是否散列的值h(gy1V1y2V2emod p,m)與從標(biāo)記者A收到的e相符,以此檢驗(yàn)電子簽名的有效性。
圖6示出了試驗(yàn)者A使用Okamoto方法和驗(yàn)證者B使用本發(fā)明的方法之間的鑒別交換。如圖6所示,試驗(yàn)者A產(chǎn)生兩個(gè)1和q之間的隨機(jī)數(shù)r1和r2,在產(chǎn)生隨機(jī)數(shù)r1和r2之后,求g1的r1次冪和求g2的r2次冪。將計(jì)算出的值相乘,使得出的值再除以P得出值X(X≡g1r1g2r2modp),值X發(fā)送給驗(yàn)證者B。在從試驗(yàn)者A處收到值X后,驗(yàn)證者B產(chǎn)生1到q之間的隨機(jī)數(shù)e,由驗(yàn)證者B產(chǎn)生的隨機(jī)數(shù)e被送到試驗(yàn)者A,試驗(yàn)者A把從驗(yàn)證者B處收到的隨機(jī)數(shù)e與他自己的保密信息標(biāo)號(hào)S1相乘,將計(jì)算出的值與隨機(jī)數(shù)r1相加然后除以q,這樣得出值y1(y1≡r1+eS1mod q),試驗(yàn)者把他自己的另一個(gè)保密信息標(biāo)號(hào)S2與隨機(jī)數(shù)e相乘,將計(jì)算出的值與隨機(jī)數(shù)r2相加然后除以q,這樣得出值y2(y2≡r2+eS2mod q),試驗(yàn)者把得出的值(y1,y2)發(fā)送給驗(yàn)證者B,在收到試驗(yàn)者A的值(y1,y2)后,驗(yàn)證者B把試驗(yàn)者A使用的g1替換式gy1V1y2V2emod p中的g。另一方面,驗(yàn)證者B也使用了從它們當(dāng)中所收到的y1和y2。在這時(shí)使用試驗(yàn)者A的公共信息標(biāo)號(hào)V代替gy1V1y2V2emodp中的V2。同樣,用g2代替gy1V1y2V2emod p中的V1。以這樣的方式,驗(yàn)證者B計(jì)算gy1V1y2V2emod p。最后,驗(yàn)證者B檢驗(yàn)是否gy1V1y2V2emod p與從試驗(yàn)者A收到的X相符,以此檢驗(yàn)試驗(yàn)者A。
圖8示出了由標(biāo)記者A使用Okamoto方法產(chǎn)生的附在電子文件m的電子簽名(e,y1,y2)進(jìn)行有效性的檢驗(yàn)。在這種情況下,如圖6的檢驗(yàn)程序,g1代替gy1V1y2V2emod p中的g。另一方面,驗(yàn)檢者B使用了其中收到的y1和y2。在這時(shí),試驗(yàn)者A的公共信息標(biāo)號(hào)V也代替gy1V1y2V2emod p中的V2。由g2代替gy1V1y2V2emod p中的V1。以這樣的方式實(shí)現(xiàn)gy1V1y2V2emod p的計(jì)算,和文件m一起,gy1V1y2V2emod p被散列。最后,驗(yàn)證者B檢驗(yàn)是否h(gy1V1y2V2emod p,m)的散列值和從試驗(yàn)者A收到的e值相符,以此來檢驗(yàn)電子簽名的有效性。
雖然為了說明本發(fā)明的目的、特征,已將本發(fā)明優(yōu)選的實(shí)施例公開,但是依據(jù)本發(fā)明而作出的各種改進(jìn),添加和替換均應(yīng)被包括在本發(fā)明的權(quán)利要求所限定的范圍內(nèi)。
權(quán)利要求
1.一種交換鑒別和標(biāo)記電子簽名的方法,其特征在于,包括以下步驟設(shè)置p、q和g作為系統(tǒng)參數(shù),其中p和q是素?cái)?shù)而g是在1和p之間的整數(shù),并且當(dāng)它的q次冪除以p時(shí),其值為1;和將n個(gè)保密信息標(biāo)號(hào)和n個(gè)公共信息標(biāo)號(hào)提供給每個(gè)用戶使用,其中n不小于2,對(duì)應(yīng)于保密信息標(biāo)號(hào)Sn的公共信息標(biāo)號(hào)Vn是1到q之間的整數(shù),并且是由公式Vn=g-Snmod p產(chǎn)生的。
2.根據(jù)權(quán)利要求1的方法,其特征在于作為模量使用的q可以由p-1加以替換。
3.一種鑒別交換方示,用于數(shù)據(jù)處理系統(tǒng)本身雙方實(shí)體的鑒別和數(shù)據(jù)在它們之間的傳送,其特征在于;包括如下步驟由試驗(yàn)者產(chǎn)生1到q之間的隨機(jī)數(shù)r1,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),試驗(yàn)者發(fā)送值X給驗(yàn)證者。由驗(yàn)證者產(chǎn)生一隨機(jī)數(shù)e和把隨機(jī)數(shù)e發(fā)送給試驗(yàn)者;由試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r2和r3,在試驗(yàn)者A保密信息標(biāo)號(hào)S1和S2和從驗(yàn)證者處收到給試驗(yàn)者的隨機(jī)數(shù)e的基礎(chǔ)上計(jì)算值r(r≡r1+S1r2mod q)和值r4(r4≡S1r3+S2mod q),在r和r4的基礎(chǔ)上計(jì)算值y1(y1≡r+er4mod q)和值y2(y2≡r2+er3mod q)并將值y1和y2發(fā)送給驗(yàn)證者;和在收到由試驗(yàn)者發(fā)給驗(yàn)證者的y1和y2并結(jié)合試驗(yàn)者的公共信息標(biāo)號(hào)V1(V1≡g-S1mod p)和V2(V2≡g-S2mod p)的基礎(chǔ)上由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p)檢驗(yàn)是否值X′與從試驗(yàn)者處收到的值X(X≡gr1mod p)相符。
4.根據(jù)權(quán)利要求3的方法,其特征在于作為模量使用的q可以由p-1加以代替。
5.一種標(biāo)記電子簽名的方法,其特征在于;包括如下步驟由標(biāo)記者產(chǎn)生隨機(jī)數(shù)r1,該標(biāo)記者是電子文件或信息的電子數(shù)據(jù)m的草擬者或處理者,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),用m值對(duì)值X進(jìn)行散列,由此得出e(e=h(x,m));由標(biāo)記者產(chǎn)生隨機(jī)數(shù)r2和r3,在標(biāo)記者的保密信息標(biāo)號(hào)S1和S2并結(jié)合e的基礎(chǔ)上計(jì)算值r(r≡r1+S1r2mod q)和值r4(r4≡S1r3+S2modq),在r和r4的基礎(chǔ)上計(jì)算值y1(y1≡r+er4mod q)和值y2(y2≡r2+er3mod q),得出m的電子簽名(e,y1,y2);和計(jì)算值X′(X′≡gy1V1y2V2emod p)以檢驗(yàn)m的電子簽名(e,y1,y2),用m對(duì)X′值進(jìn)行散列,檢驗(yàn)是否h(X′,m)與電子簽名的構(gòu)成部分e相一致。
6.根據(jù)權(quán)利要求5的方法,其特征在于作為模量的q可以用p-1代替。
7.一種交換鑒別的方法,其特征在于;包括如下步驟當(dāng)試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r時(shí),計(jì)算值X(X=grmod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),然后將值X發(fā)送給驗(yàn)證者;由驗(yàn)證者產(chǎn)生隨機(jī)數(shù)e和將隨機(jī)數(shù)e發(fā)送給試驗(yàn)者;和在他自己的保密信息標(biāo)號(hào)和用來計(jì)算X所使用的隨機(jī)數(shù)r以及接收到的e的基礎(chǔ)上由試驗(yàn)者計(jì)算值y(y≡r+eS mod q),和將y發(fā)送給驗(yàn)證者,使用1代替指示驗(yàn)證者的一個(gè)公共信息標(biāo)號(hào)y1,使用0代替y2,使用表示試驗(yàn)者公共信息標(biāo)號(hào)的V代替表示驗(yàn)證者另一公共信息標(biāo)號(hào)的V2,由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p),和檢驗(yàn)是否X′與驗(yàn)證者從試驗(yàn)者處收到的X(X≡grmod p)值相一致。
8.一種交換鑒別方法,其特征在于;包括如下步驟當(dāng)試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r1和r2時(shí),計(jì)算值X(X≡g1r1g2r2mod p),其中p是素?cái)?shù)而g1和g2是1到p之間的整數(shù),并把值X發(fā)送給驗(yàn)證者;由驗(yàn)證者產(chǎn)生隨機(jī)數(shù)e并發(fā)送隨機(jī)數(shù)e給試驗(yàn)者;和在他的保密信息標(biāo)號(hào)S1和S2及用來計(jì)算X所使用的隨機(jī)數(shù)r1和r2并結(jié)合所接收的e的基礎(chǔ)上由試驗(yàn)者計(jì)算值y1(y1≡r1+eS1mod q)和值y2(y2≡r2+eS2mod q),和把y1和y2發(fā)送給驗(yàn)證者;使用g2代替表示驗(yàn)證者公共信息標(biāo)號(hào)之一的V1,使用表示試驗(yàn)者一公共信息標(biāo)號(hào)的V代替表示驗(yàn)證者另一公共信息標(biāo)號(hào)V2,和使用g1代替g,由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p),和檢驗(yàn)是否X′與由檢證者從試驗(yàn)者所接收的X(X≡g1r1g2r2mod p)相一致。
9.一種電子標(biāo)記方法,由驗(yàn)證者檢驗(yàn)從試驗(yàn)者附在電子文件或信息的電子數(shù)據(jù)m上的電子簽名(e,y)的有效性,其特征在于;包括如下步驟使用1代替表示驗(yàn)證者公共信息標(biāo)號(hào)之一的V1,使用y代替y1,使用0代替y2,和使用試驗(yàn)者的一公共信息標(biāo)號(hào)V代替表示驗(yàn)證者另一公共信息標(biāo)號(hào)的V2,由驗(yàn)證者計(jì)算模數(shù)X′(X′≡gy1V1y2V2emod p);用m對(duì)值X′進(jìn)行散列;和檢驗(yàn)是否散列值h(x′,m)與e值相一致。
10.一種電子標(biāo)記方法,由驗(yàn)證者檢驗(yàn)從試驗(yàn)者附在電子文件或信息的電子數(shù)據(jù)m上的電子簽名(e,y1,y2),其特征在于;包括如下步驟使用g2代替表示驗(yàn)證者公共信息標(biāo)號(hào)之一的V1,使用表示試驗(yàn)者一公共信息標(biāo)號(hào)的V代替表示驗(yàn)證者另一個(gè)公共信息標(biāo)號(hào)的V2,和使用g1代替g,由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p);用m散列值X;和檢驗(yàn)是否散列值h(x′,m)與e相一致。
11.一種鑒別交換方法,用于數(shù)據(jù)處理系統(tǒng)本身相互鑒別實(shí)體和數(shù)據(jù)在它們之間傳輸,其特征在于;包括如下的步驟由試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r1,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),從試驗(yàn)者發(fā)送值X到驗(yàn)證者;由驗(yàn)證者產(chǎn)生隨機(jī)數(shù)e和發(fā)送隨機(jī)數(shù)e給試驗(yàn)者;由試驗(yàn)者產(chǎn)生隨機(jī)數(shù)r2,設(shè)置隨機(jī)數(shù)r2為y2,在試驗(yàn)者保密信息標(biāo)號(hào)S1和S2及結(jié)合e的基礎(chǔ)上計(jì)算Y1(y1≡r1+eS2+S1y2mod q)和發(fā)送y1和y2;和在驗(yàn)證者接收到由試驗(yàn)者發(fā)來的y1和y2和試驗(yàn)者的公共信息標(biāo)號(hào)V1(V1≡g-S1mod p)和V2(V2≡g-S2mod p)的基礎(chǔ)上,由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p),和檢驗(yàn)是否值X′與從試驗(yàn)者處收到的X(X≡gr1mod p)相一致。
12.一種標(biāo)記電子簽名的方法,其特征在于;包括以下步驟由標(biāo)記者產(chǎn)生一隨機(jī)數(shù)r1,標(biāo)記者是電子文件或信息的電子數(shù)據(jù)m的草擬者或處理者,計(jì)算值X(X≡gr1mod p),其中p是素?cái)?shù)而g是1到p之間的整數(shù),用m對(duì)值X進(jìn)行散列,由此,得出值e(e=h(x,m));由標(biāo)記者產(chǎn)生隨機(jī)數(shù)r2,設(shè)置隨機(jī)數(shù)r2為y2,在試驗(yàn)者保密信息標(biāo)號(hào)S1和S2并結(jié)合e的基礎(chǔ)上計(jì)算y1(y1≡r1+eS2+S1y2mod p),由此,得出電子簽名(e,y1,y2);和為檢驗(yàn)m的電子簽名(e,y1,y2),由驗(yàn)證者計(jì)算值X′(X′≡gy1V1y2V2emod p),用m對(duì)值X′進(jìn)行散列,檢驗(yàn)是否h(x′,m)與構(gòu)成電子簽名部分的e相一致。
全文摘要
一種能提供高保密和高效率實(shí)現(xiàn)交換鑒別和標(biāo)記電子簽名的方法,包括如下步驟設(shè)置p、q和g為系統(tǒng)參數(shù),其中p和q是素?cái)?shù),而g是1到p之間的整數(shù),當(dāng)它的q次冪除以p時(shí)g的值為1,給每個(gè)用戶提供n個(gè)保密信息標(biāo)號(hào)和n個(gè)公共信息標(biāo)號(hào),其中n是不小于2的數(shù),對(duì)應(yīng)保密信息標(biāo)號(hào)S
文檔編號(hào)H04L9/32GK1121219SQ9510512
公開日1996年4月24日 申請(qǐng)日期1995年3月31日 優(yōu)先權(quán)日1994年3月31日
發(fā)明者安錦爀, 張青龍, 樸一煥 申請(qǐng)人:韓國(guó)電氣通信公社