- 相關(guān)推薦
基于散列算法的RSA盲簽名方案設(shè)計(jì)論文
摘 要:盲簽名方案中,消息的內(nèi)容對(duì)簽名者是不可見的,簽名被泄露后,簽名者不能追蹤其簽名。筆者利用散列函數(shù)的單向性,基于RSA算法的基礎(chǔ)上,設(shè)計(jì)了一種不可跟蹤的盲簽名方案,并對(duì)其安全性進(jìn)行了分析。
關(guān)鍵詞:盲簽名;哈希算法;RSA
一般的數(shù)字簽名中,總是要先知道文件內(nèi)容而后才簽署。但有時(shí)需要某人對(duì)一個(gè)文件簽名,而又不讓他知道文件內(nèi)容,稱為盲簽名,它是由Chaum在1983年最先提出的。在此之后,人們做了許多努力去構(gòu)造各種盲簽名方案,并將盲簽名技術(shù)應(yīng)用于電子貨幣和電子投票等許多安全應(yīng)用系統(tǒng)。一般來說,一個(gè)好的盲簽名應(yīng)該具有以下性質(zhì):不可偽造性、不可抵賴性、盲性、不可跟蹤性,滿足上面幾條性質(zhì)的盲簽名,被認(rèn)為是安全的。祁明按照不同參數(shù)以及盲化的強(qiáng)度,將盲簽名方案分為盲參數(shù)簽名、弱盲簽名和強(qiáng)盲簽名三類。盲簽名方案中,簽名者僅知道盲消息M的簽名sign(M), 而不知原始消息m及其簽名sign(m),sign(m)是簽名收方利用sign(M)所求得。如果簽名者存儲(chǔ)sign(M)或其它有關(guān)數(shù)據(jù),待sign(m)公開后,簽名者可以找到sign(M)和sign(m)的內(nèi)在聯(lián)系,從而達(dá)到對(duì)消息擁有者的跟蹤,即為弱盲簽名,若簽名無(wú)法將sign(M)和sign(m)進(jìn)行聯(lián)系,則是強(qiáng)盲簽名方案。筆者分別利用散列函數(shù)的單向性,隨機(jī)性,對(duì)盲因子進(jìn)行改進(jìn),設(shè)計(jì)一種不可跟蹤的盲簽名方案。
1 基于散列算法的RSA盲簽名方案設(shè)計(jì)
1.1 散列函數(shù)
散列函數(shù)又稱哈希函數(shù)或雜湊函數(shù),是現(xiàn)代密碼學(xué)的核心之一。一個(gè)好的散列函數(shù)h=H(m),其中H為散列函數(shù),m為輸入串,h為散列值,長(zhǎng)度是固定的。它有如下特性:
性質(zhì)一,給定m,很容易計(jì)算h,即實(shí)用有效性;
性質(zhì)二,給定h,不能計(jì)算m,即抗原象攻擊;
性質(zhì)三,給定m,很難找到另一個(gè)輸入串m1并滿足H(m1)= H(m),即抗碰撞攻擊;
正因于散列函數(shù)的這些特性,在現(xiàn)代密碼學(xué)中,散列函數(shù)有眾多方面的應(yīng)用:如在數(shù)字簽名中,散列函數(shù)用來產(chǎn)生“消息摘要”,在需要隨機(jī)數(shù)的密碼學(xué)應(yīng)用中,散列函數(shù)被廣泛地用做實(shí)用的偽隨機(jī)函數(shù)等。
1.2 散列函數(shù)與AES算法結(jié)合產(chǎn)生盲因子
盲因子產(chǎn)生過程如下:
1)用戶A選擇一隨機(jī)數(shù)序列r和 K,并秘密保存,n初值為0;
2)計(jì)算r1’=H(r);
3)k1=H(k);
4)r1=Ek1(r’1)
r1 即為當(dāng)次盲簽名因子。E表示加密,k1為密鑰,下一次盲簽名因子的產(chǎn)生,即以r1’代替r,k1代替k, 重復(fù)2) 3) 4)步,即可產(chǎn)生新的盲因子r2,隨機(jī)盲因子產(chǎn)生,見圖1。
國(guó)際上廣泛應(yīng)用的散列函數(shù)MD5、加密算法AES具有很好的安全性,上述盲因子產(chǎn)生中用MD5作為散列算法,AES作為加密算法以保證其安全性。
1.3 RSA盲簽名方案
盲簽名方案有如下三個(gè)階段:
盲化階段:A方選取隨機(jī)數(shù)序列r,選擇一隨機(jī)序列為加密密鑰K,按上述方法產(chǎn)生本次簽名盲因子r1;將簽名信息m盲化M=m r1e mod n 將M發(fā)送給盲簽名者B;(e,n為B的公鑰)
簽名階段:B將信息M簽名s’=(M)d mod n ,得到簽名s’,發(fā)送s’給A; (d、n為B的私鑰)
脫盲階段:A計(jì)算s=s’ r-1 mod n ,得到簽名s
判斷驗(yàn)證等式m=(s)e mod n是否成立,由此可確定簽名是否有效。RSA 簽名體制的安全性依賴分解大數(shù)的難易程序。分解n是最常用的攻擊方法,攻擊者只要能分解n,求出簽名者的私鑰是輕而易舉的事,因此,n的取值要盡可能大些。
3 方案安全性分析
3.1 不可偽造性
由于RSA算法的安全性是基于大數(shù)分解的困難性,A很難偽造另一個(gè)有效的簽名S,使得 m=(S)e mod n成立。
3.2 盲性
信息m經(jīng)過了M`=m re mod n的變換,Bob只能看到M,從而m對(duì)Bob是不可見的。
3.3 不可跟蹤性
待sign(m)公開后,簽名者即算能找到sign(M)和sign(m)的內(nèi)在聯(lián)系,即盲因子r1,由于散列算法的性質(zhì)二,AES加密與散列函數(shù)的一次一盲因子,由r1無(wú)法推導(dǎo)出前一次和后一次的盲因子,從而保證了盲簽名的不可跟蹤性,又使請(qǐng)求簽名方只需保存初始量r、k及n,能找出每次簽名的盲因子,實(shí)現(xiàn)其記錄特點(diǎn)。
3.4 有效性
由于采用的是散列算法及對(duì)稱加密算法AES,其計(jì)算量不大,并未增加太多的簽名計(jì)算量。
4 結(jié) 語(yǔ)
本文利用散列函數(shù)的單向性、隨機(jī)性與RSA算法相結(jié)合,構(gòu)造了一種不可跟蹤的盲簽名方案,并使用戶只須秘密保存盲因子產(chǎn)生的初始量,使此簽名方案具有較強(qiáng)的不可跟蹤性及有效性。
參考文獻(xiàn)
[1]祁明,張凌.盲參數(shù)簽名及其應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2001(14).
[4]Radia Perlman.網(wǎng)絡(luò)安全[M].北京:電子工業(yè)出版社,2004:52-57.
【基于散列算法的RSA盲簽名方案設(shè)計(jì)論文】相關(guān)文章:
腦盲!腦盲作文04-23
感情說散就散的心情說說05-09
NGN承載網(wǎng)方案設(shè)計(jì)論文05-11
關(guān)于股權(quán)激勵(lì)方案設(shè)計(jì)的論文05-11
河閘工程方案設(shè)計(jì)論文05-12
矮塔斜拉橋方案設(shè)計(jì)論文05-11