欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種簽密方法和系統(tǒng)的制作方法

文檔序號:1784577閱讀:217來源:國知局
專利名稱:一種簽密方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)應(yīng)用領(lǐng)域,特別是涉及一種簽密方法和系統(tǒng)。
背景技術(shù)
在計(jì)算機(jī)應(yīng)用領(lǐng)域中,保密和認(rèn)證是最重要的問題之一。現(xiàn)有技術(shù)常用加密手段達(dá)到保密的目的,用數(shù)字簽名的手段達(dá)到認(rèn)證的目的,即計(jì)算機(jī)之間在傳輸數(shù)據(jù)時(shí),通常需要對這些數(shù)據(jù)進(jìn)行加密,以防止發(fā)生泄密事件,同時(shí),為了防止數(shù)據(jù)發(fā)送方與接收方之間發(fā)生數(shù)據(jù)傳輸責(zé)任方面的糾紛、并防止第三方假冒發(fā)送方向接收方傳輸數(shù)據(jù),發(fā)送方在發(fā)送加密數(shù)據(jù)的同時(shí),還要向接收方發(fā)送數(shù)字簽名,以供接收方根據(jù)該數(shù)字簽名來確認(rèn)發(fā)送方確實(shí)發(fā)送了該加密數(shù)據(jù),這有效防止了發(fā)送方否認(rèn)發(fā)送過數(shù)據(jù)、接收方否認(rèn)接收到正確的數(shù)據(jù)以及第三方假冒發(fā)送方等事件的發(fā)生?,F(xiàn)有技術(shù)中,明文數(shù)據(jù)從發(fā)送方傳輸?shù)浇邮辗降倪^程要同時(shí)滿足保密和認(rèn)證的要求,因而發(fā)送方需要將明文數(shù)據(jù)加密后的密文和數(shù)字簽名同時(shí)發(fā)送給接收方。這樣,發(fā)送方在發(fā)送密文和數(shù)字簽名之前,要進(jìn)行明文加密和生成數(shù)字簽名兩項(xiàng)工作?,F(xiàn)有技術(shù)中,加密和生成數(shù)字簽名是采用兩套算法先后進(jìn)行的,雖然二者的先后順序可以顛倒,但發(fā)送方必須按照兩套算法運(yùn)算完畢才能獲得密文和數(shù)字簽名,因此,現(xiàn)有技術(shù)進(jìn)行保密和認(rèn)證的運(yùn)算效率比較低。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種簽密方法和系統(tǒng),能提高保密和認(rèn)證的運(yùn)
算效率。本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下一種簽密方法,該方法包括在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中, 所述發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰A和發(fā)送方私鑰dA,所述接收方公私密鑰對包括相互對應(yīng)的接收方公鑰A和接收方私鑰dB,且A和( 均為所述橢圓曲線上的點(diǎn);發(fā)送方根據(jù)所述橢圓曲線的基點(diǎn)G,生成明文m的填充信息p,并將m與ρ連接為填充明文m I I ρ ;發(fā)送方根據(jù)( ,將m I I ρ加密為密文c ;發(fā)送方根據(jù)c的哈希值e,以及dA,確定滿足fJskc^eHg = k+(f2(s) &&)+而&))4的簽密特征值8;其中沽為小于6的階的隨機(jī)正整數(shù),^8)和f2(s)是以S 為自變量的函數(shù),go (e)、gl (e)、g2 (e)和而(e)是以e為自變量的函數(shù),(s) g0 (e) +gl (e)和 f2 (s) g2 (e) +g3 (e)均與 s 和 e 相關(guān),且 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA 對 s 有唯一正整數(shù)解;發(fā)送方將c和s作為簽密信息,發(fā)送到接收方;接收方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e)+gl (e))G-(f2(s) g2(e)+&(e))(iA 得到中間點(diǎn) B; 接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和P ;
接收方根據(jù)B生成m的接收方填充信息P’ ;接收方判斷ρ與ρ’是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。本發(fā)明的有益效果是本發(fā)明中,發(fā)送方公私密鑰對中的發(fā)送方公鑰仏和發(fā)送方私鑰dA,以及接收方公私密鑰對中的接收方公鑰( 和接收方私鑰dB分別相互對應(yīng),且A 和A均為橢圓曲線上的點(diǎn),發(fā)送方可利用橢圓曲線的基點(diǎn)G生成明文m的填充信息p,提供給接收方來驗(yàn)證發(fā)送方確實(shí)發(fā)送了針對m的簽密信息,發(fā)送方在將m和ρ連接為填充明文ml Ip后,即可根據(jù)仏將一 Ip加密為密文C,這樣,發(fā)送方用橢圓曲線簽密的方法實(shí)現(xiàn)了明文數(shù)據(jù)的保密和認(rèn)證工作;發(fā)送方利用c的哈希值6和4確定出滿^8)^|&)+&&)= k+ (f2 (s) g2 (e) +g3 (e)) dA的簽密特征值s,并將c和s作為簽密信息發(fā)送給接收方之后,接收方即可利用 c 的哈希值 e 以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B,然后根據(jù)dB和B對c進(jìn)行解密,從而得到明文信息m和填充信息p,接著, 接收方可根據(jù)B生成m的接收方填充信息P’,通過判斷ρ與P’是否相等,即可實(shí)現(xiàn)認(rèn)證過程,因此,本發(fā)明中,發(fā)送方可以利用橢圓曲線簽密方法一次性實(shí)現(xiàn)對明文m進(jìn)行加密得到密文c和驗(yàn)證用的填充信息P,從而實(shí)現(xiàn)保密和認(rèn)證功能,相對于現(xiàn)有技術(shù)先后執(zhí)行兩套算法來實(shí)現(xiàn)保密和認(rèn)證功能,本發(fā)明大大提高了保密和認(rèn)證的運(yùn)算效率。在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)進(jìn)一步,在生成發(fā)送方公私密鑰對和接收方公私密鑰對之后,該方法進(jìn)一步包括 將A與發(fā)送方的身份信息相對應(yīng)、將%與接收方的身份信息相對應(yīng),發(fā)送到證書管理機(jī)構(gòu);所述證書管理機(jī)構(gòu)判斷所述發(fā)送方的身份信息是否真實(shí),如果是,則生成發(fā)送方的數(shù)字證書發(fā)布到目錄服務(wù)協(xié)議LDAP服務(wù)器上;其中,所述發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;所述證書管理機(jī)構(gòu)判斷所述接收方的身份信息是否真實(shí),如果是,則生成接收方的數(shù)字證書發(fā)布到LDAP服務(wù)器上;其中,所述接收方的數(shù)字證書包括( 和接收方的身份信息;則在發(fā)送方根據(jù)A,將ml ι ρ加密為密文c之前,該方法進(jìn)一步包括發(fā)送方從所述 LDAP服務(wù)器上獲得% ;在接收方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B之前,該方法進(jìn)一步包括接收方從所述LDAP服務(wù)器上獲得
Qa ο進(jìn)一步,發(fā)送方根據(jù)A,將ml Ip加密為密文C的方法為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k;將1^與A進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(Ii1A2)的數(shù)組;利用IP 加密為密文C ;接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用Ic1對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將Ic1和所述簽密信息發(fā)送到仲裁方;所述仲裁方根據(jù)Ic1對c進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) go (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P”;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息;或,發(fā)送方根據(jù)Qb,將m| |p加密為密文c的方法為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k;將1^與A進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1; k2)的數(shù)組;利用1 將ml IP加密為密文c ;接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用1 對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將1 和所述簽密信息發(fā)送到仲裁方;所述仲裁方根據(jù)1 對c進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) go (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P”;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。進(jìn)一步,發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k之后,發(fā)送方根據(jù)所述橢圓曲線的基點(diǎn)G,生成明文m的填充信息ρ的方法為發(fā)送方將k與所述橢圓曲線的基點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。進(jìn)一步,生成發(fā)送方公私密鑰對的方法為隨機(jī)從小于G的階的正整數(shù)中選取dA 作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;和/ 或,生成接收方公私密鑰對的方法為隨機(jī)從小于G的階的正整數(shù)中選取dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰%。進(jìn)一步,所述有限域?yàn)榇笏財(cái)?shù)域或二元域。進(jìn)一步,G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160。進(jìn)一步,f“s)的函數(shù)式為(s) =s;iP/^,f2(s)的函數(shù)式為 f2 (s) = S0本發(fā)明還提出了一種簽密系統(tǒng),該系統(tǒng)包括曲線與密鑰生成模塊、簽密模塊、解密與驗(yàn)證模塊,其中,所述曲線與密鑰生成模塊用于,在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中,所述發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰 和發(fā)送方私鑰dA,所述接收方公私密鑰對包括相互對應(yīng)的接收方公鑰( 和接收方私鑰dB,且 和仏均為所述橢圓曲線上的點(diǎn);將所述橢圓曲線的基點(diǎn)G和G的階發(fā)送到所述簽密模塊; 將G發(fā)送到所述解密與驗(yàn)證模塊;所述簽密模塊用于,根據(jù)G生成明文m的填充信息p,并將m與ρ連接為填充明文 ml Ip ;根據(jù)A將ml IP加密為密文C ;根據(jù)C的哈希值e,以及dA,確定滿足4(8) ^)+ (e) =k+(f2(S)&(e)+g3(e))dA的簽密特征值s;其中,k為小于G的階的隨機(jī)正整數(shù),f“s) 和f2(s)是以S為自變量的函數(shù),g0(e), gl(e), g2(e)和g3(e)是以e為自變量的函數(shù), f! (s) g0 (e) +gl (e)和 f2 (s) g2 (e) +g3 (e)均與 s 和 e 相關(guān),且 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA對s有唯一正整數(shù)解;將c和s作為簽密信息,發(fā)送到解密與驗(yàn)證模塊;所述解密與驗(yàn)證模塊用于,利用c的哈希值e以及G、,根據(jù)B = (f工(s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;根據(jù)dB和B,對c進(jìn)行解密,得到m和P ;根據(jù)B生成m的接收方填充信息ρ’ ;判斷ρ與ρ’是否相等。進(jìn)一步,該系統(tǒng)包括數(shù)字證書模塊;所述曲線與密鑰生成模塊進(jìn)一步用于,將A與發(fā)送方的身份信息相對應(yīng)、將( 與接收方的身份信息相對應(yīng),發(fā)送到所述數(shù)字證書模塊;所述數(shù)字證書模塊用于,判斷所述發(fā)送方的身份信息是否真實(shí);生成發(fā)送方的數(shù)字證書發(fā)布到自身的服務(wù)器上,所述發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;判斷所述接收方的身份信息是否真實(shí);生成接收方的數(shù)字證書發(fā)布到自身的服務(wù)器上,所述接收方的數(shù)字證書包括A和接收方的身份信息;則所述簽密模塊進(jìn)一步用于,從所述數(shù)字證書模塊的服務(wù)器上獲得( ;所述解密與驗(yàn)證模塊進(jìn)一步用于,從所述數(shù)字證書模塊的服務(wù)器上獲得Qa。進(jìn)一步,該系統(tǒng)包括仲裁模塊;所述簽密模塊用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與%進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1 k2)的數(shù)組;利用1^將ml Ip加密為密文C;所述解密與驗(yàn)證模塊用于,將(^與8進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(Ic1A2)的數(shù)組; 利用h對c進(jìn)行解密,得到m和ρ ;將Ic1和所述簽密信息發(fā)送到所述仲裁模塊;則所述仲裁模塊用于,根據(jù)Ic1對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m的仲裁方填充信息P” ;判斷ρ與P”是否相等;或,所述簽密模塊用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與%進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1 k2)的數(shù)組;利用1 將ml Ip加密為密文C;所述解密與驗(yàn)證模塊用于,將(^與8進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(Ic1A2)的數(shù)組; 利用1 對C進(jìn)行解密,得到m和P ;將1 和所述簽密信息發(fā)送到所述仲裁模塊;則所述仲裁模塊用于,根據(jù)1 對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m的仲裁方填充信息P” ;判斷ρ與P”是否相等。進(jìn)一步,所述簽密模塊用于,將k與所述橢圓曲線的基點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。進(jìn)一步,所述曲線與密鑰生成模塊用于,隨機(jī)從小于G的階的正整數(shù)中選取dA作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;隨機(jī)從小于G的階的正整數(shù)中選取dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰%。進(jìn)一步,所述有限域?yàn)榇笏財(cái)?shù)域或二元域。進(jìn)一步,G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160。進(jìn)一步,f“s)的函數(shù)式為(s) =s;iP/^,f2(s)的函數(shù)式為 f2 (s) = S0


圖1為本發(fā)明提供的簽密方法的流程圖;圖2為本發(fā)明提供的簽密系統(tǒng)的結(jié)構(gòu)圖。
具體實(shí)施例方式以下結(jié)合附圖對本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。圖1為本發(fā)明提供的簽密方法的流程圖。如圖1所示,該方法包括步驟101 在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中,發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰A和發(fā)送方私鑰dA,接收方公私密鑰對包括相互對應(yīng)的接收方公鑰%和接收方私鑰dB,且A和A均為橢圓曲線上的點(diǎn)。本步驟中生成的發(fā)送方公私密鑰對和接收方公私密鑰對,是用于供發(fā)送方對明文數(shù)據(jù)進(jìn)行加密、供接收方對密文進(jìn)行解密以及對發(fā)送方是否發(fā)送了針對m的簽密信息進(jìn)行認(rèn)證的。其中,發(fā)送方可利用接收方公私密鑰對中的接收方公鑰%和發(fā)送方公私密鑰對中的發(fā)送方私鑰dA,對明文數(shù)據(jù)m進(jìn)行加密、產(chǎn)生m的填充信息ρ以供接收方驗(yàn)證發(fā)送方確實(shí)發(fā)送了針對m的簽密信息,并產(chǎn)生簽密特征值s以供接收方解密;接收方可利用發(fā)送方公私密鑰對中的發(fā)送方公鑰A和接收方公私密鑰對中的接收方私鑰dB,對密文c進(jìn)行解密得到明文數(shù)據(jù)m和填充信息p,并生成m的接收方填充信息P’,以與ρ進(jìn)行比較從而驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息。發(fā)送方公私密鑰對中的A和dA是相互對應(yīng)的,接收方公私密鑰對中的( 和dB也是相互對應(yīng)的,這兩個(gè)對應(yīng)關(guān)系可以實(shí)現(xiàn)如下的功能發(fā)送方利用%對明文m和填充信息ρ 連接后的填充明文ml Ip加密所得到的密文C,可由接收方利用(^對其解密從而得到m和P ; 發(fā)送方利用《確定簽密特征值s,接收方即可利用8和A獲得中間點(diǎn)B,從而對c進(jìn)行解密以及生成m的接收方填充信息ρ’,實(shí)現(xiàn)對發(fā)送方是否發(fā)送了針對m的簽密信息進(jìn)行驗(yàn)證。本發(fā)明采用的技術(shù)為橢圓曲線簽密技術(shù),這意味著本發(fā)明中,發(fā)送方公私密鑰對中的A和接收方公私密鑰對中的A均為在有限域內(nèi)確定的橢圓曲線上的點(diǎn)。其中,有限域可以為大素?cái)?shù)域,記為F(p),p為大素?cái)?shù)域F的參數(shù),有限域也可以為二元域,記為F2m,m為二元域F的參數(shù)。這樣,有限域F上的橢圓曲線記為E(F),該橢圓曲線是一條由離散的點(diǎn)組成的封閉曲線,其離散性和封閉性具體表現(xiàn)為該橢圓曲線上有階為η的點(diǎn)G,對于閉區(qū)間[1,η-1]內(nèi)的任一正整數(shù)k,其與點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算之后所得到的新的點(diǎn)仍在該橢圓曲線E(F)上。數(shù)學(xué)原理已證明,對于已知的E(F)上的點(diǎn)G以及G與某一小于其階η的正整數(shù)k進(jìn)行標(biāo)量乘運(yùn)算所得到的另外一點(diǎn)Q,要確定正整數(shù)k是極其困難的,而本發(fā)明利用橢圓曲線簽密技術(shù)來保證數(shù)據(jù)傳輸?shù)陌踩缘囊罁?jù),也就在于定義在橢圓曲線上的離散點(diǎn)的求k問題的難解性。有數(shù)據(jù)表明,按現(xiàn)在的計(jì)算機(jī)技術(shù)水平,在密鑰長度為IOM位的情況下,要破解現(xiàn)有技術(shù)所采用的RSA密鑰,需要上千年的計(jì)算時(shí)間,而要破解本發(fā)明所采用的建立在有限域內(nèi)的橢圓曲線上的發(fā)送方公鑰和接收方公鑰,需要更長的時(shí)間,因此,可以認(rèn)為本發(fā)明所采用的橢圓曲線簽密技術(shù)是非常安全的。以有限域?yàn)榇笏財(cái)?shù)域F(p)的情況為例,說明在有限域內(nèi)確定橢圓曲線的方法在大素?cái)?shù)域F(ρ)中,橢圓曲線的方程為y2 = x3+ax+b,其中,χ和y分別為橢圓曲線上的點(diǎn)的橫坐標(biāo)和縱坐標(biāo),該橢圓曲線基點(diǎn)為G,G的坐標(biāo)為((ix,Gy),G的階為η。要確定一條橢圓曲線,只需確定該橢圓曲線的方程即可,因此,在大素?cái)?shù)域F (ρ)中確定橢圓曲線y2 =x3+ax+b,只需確定p、a、b、Gx, Gy和η這幾個(gè)參數(shù)即可。本發(fā)明給出大素?cái)?shù)域中的橢圓曲線的一組參數(shù)如下,這些參數(shù)均為十六進(jìn)制參數(shù),且長度均為256比特ρ = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF ;a = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC ;b = 5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B ;Gx = 6B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898 C296 ;Gy = 4FE342E2FE1A7F9B8EE7EB4A7C0F9E162BCE33576B315ECECBB6406837BF51 F5 ;η = FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551o當(dāng)然,橢圓曲線的這些參數(shù)也可以設(shè)置為其他數(shù)值,各參數(shù)的二進(jìn)制比特位的長度也可以設(shè)置為其他長度,并且其長度也可以相互不同,只需滿足該橢圓曲線的基點(diǎn)G的階η為素?cái)?shù),且η的二進(jìn)制比特位數(shù)大于160即可。在有限域?yàn)槎虻那闆r下,確定橢圓曲線的方法也為通過確定該橢圓曲線的參數(shù)來確定該橢圓曲線,與大素?cái)?shù)域下確定橢圓曲線的區(qū)別僅在于,二元域下所確定的橢圓曲線的參數(shù)與大素?cái)?shù)域下的不同,在二元域下的橢圓曲線的參數(shù)已在數(shù)學(xué)領(lǐng)域成為公知常識(shí),也包括該橢圓曲線的基點(diǎn)G,該基點(diǎn)G也有階η,其他參數(shù)在此不做贅述。步驟102 發(fā)送方根據(jù)橢圓曲線的基點(diǎn)G,生成明文m的填充信息P,并將m與ρ連接為填充明文ml |p;發(fā)送方根據(jù)Qb,將ml Ip加密為密文C。這里,明文m為發(fā)送方實(shí)際要發(fā)送的數(shù)據(jù)。發(fā)送方根據(jù)橢圓曲線的基點(diǎn)G,可以生成m的填充信息ρ,ρ用于供接收方驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息,另外,ρ也可以用于與m連接為填充明文m| | p,以保證 m| Ip加密后得到的密文c的長度符合規(guī)定。發(fā)送方根據(jù)A將ml Ip加密為密文C,這樣,接收方就可以根據(jù)與A對應(yīng)的dB,對密文C進(jìn)行解密得到m和P,同時(shí),由于利用A來推得dB是極其困難的,因此,即使c在傳輸中被第三方截獲,沒有獲得dB的第三方也不可能將c解密,這也就保證了本發(fā)明中傳輸?shù)男畔⒌陌踩?。發(fā)送方根據(jù)A將ml Ip加密為密文C的方法可以為對稱密鑰算法,也可以為非對稱密鑰算法。步驟103 發(fā)送方根據(jù)c的哈希值e,以及dA,確定滿足^8) ^)+ ^)= k+(f2(S)&(e)+g3(e))dA的簽密特征值s;其中,k為小于G的階的隨機(jī)正整數(shù),f“s) 和f2(s)是以s為自變量的函數(shù),g0(e), gl(e), g2(e)和g3(e)是以e為自變量的函數(shù), f! (s) g0 (e) +gl (e)和 f2 (s) g2 (e) +g3 (e)均與 s 和 e 相關(guān),且 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA對s有唯一正整數(shù)解。這里,發(fā)送方對步驟102所得到的密文c進(jìn)行哈希運(yùn)算,得到c的哈希值e,然后利用自身保存的dA,來確定滿足方程(s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA的簽密特征值s,s是作為發(fā)送方所發(fā)送的簽密信息的一部分發(fā)送給接收方的,用于供接收方生成中間點(diǎn)B,從而進(jìn)一步利用B來對c解密和生成m的接收方填充信息P’以驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息。利用dA來確定S,可以保證接收方利用A獲得中間點(diǎn)B,由于利用A來確定dA是極其困難的,因此,本發(fā)明中的密鑰也是安全的。(e) = k+(f2(s)&(e)+g3(e))ddis 有唯一正整數(shù)解,可以保證本步驟中確定的s是唯一的,從而也就保證了步驟104向接收方發(fā)送的簽密信息的唯一性,因而接收方在利用s確定B的過程是唯一的,不會(huì)發(fā)生得到兩個(gè)以上的s造成接收方無法確定 B,進(jìn)而無法解密和驗(yàn)證的問題。在G的階記為η的情況下,k為小于G的階的隨機(jī)正整數(shù),意味著k為閉區(qū)間[1, n-1]內(nèi)的正整數(shù),且k為隨機(jī)在該閉區(qū)間內(nèi)選取的,本發(fā)明在小于G的階的正整數(shù)中隨機(jī)選取k,有利于保證本步驟所確定的s為外部不可知的,這也有利于本發(fā)明中的密鑰和信息的
安全性。本發(fā)明中,f\(s)禾Pf2(S)是以s為自變量的函數(shù),而⑷^⑷』 ^P g3(e)是以e為自變量的函數(shù)。(e) ^P f2(s)g2(e)+g3(e)均與s和e相關(guān),可以保證任何第三方都不可能冒充發(fā)送方,向接收方發(fā)送偽造的明文IV從而有利于本發(fā)明中的數(shù)據(jù)和密鑰的安全性??梢杂梅醋C法來對這一結(jié)論加以證明設(shè)腳而㈦+^⑷為與s、e無關(guān),則該式即可看做是與S、e無關(guān)的常量1,將1 =fi (s) g0 (e) +gl (e)代入方程 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA,可得1 = k+ (f2 (s) g2 (e) +g3 (e)) dA(1)設(shè)有第三方截獲了發(fā)送方發(fā)送給接收方的簽密信息,即第三方獲得了密文c和簽密特征值S,并且該第三方企圖冒充發(fā)送方,將偽造的明文Hl0加密為密文Ctl后替換發(fā)送方發(fā)送給接收方的密文C,則該第三方根據(jù)橢圓曲線的基點(diǎn)G生成HItl的填充信息P(l,并且將mQ 和Ptl連接為填充明文HitlI Iptl后,對其加密得到密文Ctl,然后通過哈希運(yùn)算得到Ctl的哈希值 e0 ;這樣,第三方只需要計(jì)算得到關(guān)于Ctl的簽密特征值s0,即可實(shí)現(xiàn)冒充發(fā)送方向接收方發(fā)送偽造明文mQ的目標(biāo);式(1)中,k為一小于基點(diǎn)G的階的隨機(jī)正整數(shù),在發(fā)送方將簽密信息發(fā)出的情況下,k已為一定值,1也為常量,因此,1與k相減所得的差值也為常量,這種情況下,第三方雖然不可能獲得式(1)中的發(fā)送方私鑰dA,但由于該式對于發(fā)送方所發(fā)送的簽密信息(C, s)以及第三方所發(fā)送的偽造簽密信息((VStl)都是成立的,因此,有下式成立f2 (s0) g2 (e0) +g3 (e0) = f2 (s) g2 (e) +g3 (e))(2)式⑵中,第三方可以確定S、c的哈希值e以及%,這樣,第三方根據(jù)式(2)即可確定偽造的簽密特征值^;這樣,第三方就可以用偽造的簽密信息(Ctl,S0)替換發(fā)送方發(fā)送的簽密信息(C, s)發(fā)送給接收方,從而使發(fā)送方發(fā)送的簽密信息丟失,這嚴(yán)重影響了發(fā)送方數(shù)據(jù)的安全,因此,前述(S) ^XeHg1 (e)與S、e無關(guān)的假設(shè)是不可行的,^ (s) g0 (e)+gl (e)必須與s和e 相關(guān),才能保證本發(fā)明的數(shù)據(jù)安全性。同理,f2 (s) g2 (e) +g3 (e)也必須與s和e相關(guān),不再重復(fù)證明。步驟104 發(fā)送方將c和s作為簽密信息,發(fā)送到接收方。這里,發(fā)送方將c和s作為簽密信息發(fā)送到接收方,接收方可以利用該簽密信息, 解密得到明文m,并對發(fā)送方是否發(fā)送了針對m的簽密信息進(jìn)行驗(yàn)證。步驟105 接收方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e) +gl (e))G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B。這里,接收方在步驟104中接收到c和s組成的簽密信息后,可以計(jì)算得到c的哈希值 e,然后利用 e、G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn)B,進(jìn)而在后續(xù)步驟中利用B對c解密得到m和p,并利用B獲得接收方填充信息P’,進(jìn)而利用P和P’來驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息。計(jì)算B 的公式 B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 是與步驟 103 中確定 s 的方程 f^skde)+^。) = k+(f2(S)&(e)+&(e))dA 相對應(yīng)的。步驟106 接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ。這里,接收方利用dB和B,即可對c進(jìn)行解密,解密的運(yùn)算為與步驟102中根據(jù)( 將ml Ip加密為密文C的運(yùn)算的逆運(yùn)算,解密得到ml IP,根據(jù)發(fā)送方和接收方對于填充信息 P的長度約定,從解密得到的ml Ip中分離出m和P。步驟107 接收方根據(jù)B生成m的接收方填充信息P’,并判斷ρ與P’是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。這里,接收方在步驟106中解密得到明文m之后,還要對發(fā)送方是否發(fā)送了針對m 的簽密信息進(jìn)行驗(yàn)證,如果驗(yàn)證通過,則說明接收方所收到的簽密信息確實(shí)為發(fā)送方所發(fā)出的,且該簽密信息為針對m的簽密信息,同時(shí),本步驟也可以確定發(fā)送方的具體身份,即在存在多個(gè)發(fā)送方的情況下,接收方可以利用本步驟精確確定每一個(gè)簽密信息的發(fā)送方, 另外,本步驟驗(yàn)證通過后,接收方就可以根據(jù)收到的明文進(jìn)行相應(yīng)的操作,并防止發(fā)送方否認(rèn)曾經(jīng)發(fā)送過該簽密信息。進(jìn)一步地,該驗(yàn)證通過,也意味著接收方不能否認(rèn)自身已收到該簽密信息,而且也可以證明該簽密信息不是由任何第三方所偽造傳輸過來的。接收方是利用在步驟106中解密得到的ρ和本步驟中生成的m的接收方填充信息 P’來驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息的,如果二者相等,則驗(yàn)證通過,說明發(fā)送方確實(shí)發(fā)送了針對m的簽密信息,并且該簽密信息在傳輸過程中并未被篡改,如果二者不相等,則驗(yàn)證不通過,可以確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息,這種情況下,有可能是發(fā)送方所發(fā)送的針對m的簽密信息在發(fā)送到接收方之前被篡改過,也有可能是發(fā)送方所發(fā)送的信息并非針對m的簽密信息,在這種情況下,接收方不能根據(jù)收到的簽密信息進(jìn)行下一步的操作。接收方是根據(jù)B生成m的接收方填充信息P’的,其方法與步驟102中發(fā)送方根據(jù) G生成ρ的方法相同。由此可見,本發(fā)明中,發(fā)送方公私密鑰對中的發(fā)送方公鑰A和發(fā)送方私鑰dA,以及接收方公私密鑰對中的接收方公鑰( 和接收方私鑰dB分別相互對應(yīng),且A和( 均為橢圓曲線上的點(diǎn),發(fā)送方可利用橢圓曲線的基點(diǎn)G生成明文m的填充信息p,提供給接收方來驗(yàn)證發(fā)送方確實(shí)發(fā)送了針對m的簽密信息,發(fā)送方在將m和ρ連接為填充明文m| | ρ后,即可根據(jù)A將m I I ρ加密為密文c,這樣,發(fā)送方用橢圓曲線簽密的方法實(shí)現(xiàn)了明文數(shù)據(jù)的保密和認(rèn)證工作;發(fā)送方利用c的哈希值確定出滿足f^skJe^Ak) = k+(f2(s) g2(e)+g3(e))dA的簽密特征值s,并將c和s作為簽密信息發(fā)送給接收方之后,接收方即可利用 c 的哈希值 e 以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn)B,然后根據(jù)dB和B對c進(jìn)行解密,從而得到明文信息m和填充信息p,接著,接收
1方可根據(jù)B生成m的接收方填充信息P’,通過判斷ρ與P’是否相等,即可實(shí)現(xiàn)認(rèn)證過程,因此,本發(fā)明中,發(fā)送方可以利用橢圓曲線簽密方法一次性實(shí)現(xiàn)對明文m進(jìn)行加密得到密文c 和驗(yàn)證用的填充信息P,從而實(shí)現(xiàn)保密和認(rèn)證功能,相對于現(xiàn)有技術(shù)先后執(zhí)行兩套算法來實(shí)現(xiàn)保密和認(rèn)證功能,本發(fā)明大大提高了保密和認(rèn)證的運(yùn)算效率。本發(fā)明中,在步驟101生成發(fā)送方公私密鑰對和接收方公私密鑰對之后,該方法進(jìn)一步包括將A與發(fā)送方的身份信息相對應(yīng)、將A與接收方的身份信息相對應(yīng),發(fā)送到證書管理機(jī)構(gòu);證書管理機(jī)構(gòu)判斷發(fā)送方的身份信息是否真實(shí),如果是,則生成發(fā)送方的數(shù)字證書發(fā)布到目錄服務(wù)協(xié)議LDAP服務(wù)器上;其中,發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;證書管理機(jī)構(gòu)判斷接收方的身份信息是否真實(shí),如果是,則生成接收方的數(shù)字證書發(fā)布到LDAP服務(wù)器上;其中,接收方的數(shù)字證書包括( 和接收方的身份信息;則在發(fā)送方根據(jù)仏,將ml ι ρ加密為密文c之前,該方法進(jìn)一步包括發(fā)送方從LDAP 服務(wù)器上獲得A;在接收方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B之前,該方法進(jìn)一步包括接收方從LDAP服務(wù)器上獲得A。這里,證書管理機(jī)構(gòu)是作為驗(yàn)證發(fā)送方和接收方的身份信息、并存儲(chǔ)、發(fā)布 和( 的中立的第三方誠信機(jī)構(gòu)而存在的,其判斷發(fā)送方或接收方的身份信息為真實(shí)的情況下, 將A或%發(fā)送到LDAP服務(wù)器上,可以起到存儲(chǔ)和公示A和( 的作用,任何機(jī)構(gòu)和個(gè)人都可以訪問LDAP服務(wù)器來獲得A和%。如果證書管理機(jī)構(gòu)判斷發(fā)送方或接收方的身份信息為虛假信息,則不會(huì)將A或%發(fā)布到其LDAP服務(wù)器上,因而其他機(jī)構(gòu)或個(gè)人也無法獲得A 或%,從而無法與發(fā)送方或接收方進(jìn)行通信,這樣,證書管理機(jī)構(gòu)也就起到了保證發(fā)送方和接收方誠信的作用。步驟102中,發(fā)送方根據(jù)( ,將m| |ρ加密為密文c的方法可以為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與A進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1; k2)的數(shù)組;利用 Ii1將ml |p加密為密文C ;步驟106中,接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB 與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用Ic1對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將Ic1和簽密信息發(fā)送到仲裁方;仲裁方根據(jù)Ic1對c 進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P” ;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。由此可見,本發(fā)明中,發(fā)送方是采用對稱密鑰算法對ml Ip進(jìn)行加密得到密文的, 在加密和解密的過程中所使用的密鑰相同,均為1^與A標(biāo)量乘運(yùn)算得到的形式為(k1; k2) 的數(shù)組中的前一項(xiàng)h。當(dāng)然,加密和解密用的密鑰也可以為該數(shù)組中的第二項(xiàng)1 ,這樣,步驟102中,發(fā)送方根據(jù)A,將m| I ρ加密為密文c的方法為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k;將 k與A進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1; k2)的數(shù)組;利用1 將ml Ip加密為密文C ;
步驟106中,接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB 與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用1 對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將1 和簽密信息發(fā)送到仲裁方;仲裁方根據(jù)1 對c 進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和Qa,根據(jù)B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P” ;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。由于k是發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定的,因此,發(fā)送方之外的任何機(jī)構(gòu)或個(gè)人都無法獲知k的值,也就無法獲得加密和解密用的密鑰,這有利于保證本發(fā)明的密鑰和信息的安全。另外,本發(fā)明還提供了中立的仲裁方,用于防范和解決發(fā)送方和接收方之間的糾紛。由于接收方將自身所得到的密鑰以及簽密信息發(fā)送給了仲裁方,因此,仲裁方可以根據(jù)該密鑰對密文c獨(dú)立進(jìn)行解密,得到m和p,并獨(dú)立生成仲裁方填充信息p”,以與自身獨(dú)立獲得的P進(jìn)行比較,從而獨(dú)立驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息,這樣,在發(fā)送方和接收方之間存在糾紛和爭議的情況下,中立的仲裁方就可以利用自身獨(dú)立得到的數(shù)據(jù)來對二者的爭議和糾紛進(jìn)行仲裁。本發(fā)明中,發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k之后,步驟102中發(fā)送方根據(jù)橢圓曲線的基點(diǎn)G,生成明文m的填充信息ρ的方法為發(fā)送方將k與橢圓曲線的基點(diǎn)G 進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。發(fā)送方根據(jù)M生成ρ的方法在現(xiàn)有技術(shù)中已有很多論述,在此不做贅述。步驟101中,生成發(fā)送方公私密鑰對的方法可以為隨機(jī)從小于G的階的正整數(shù)中選取dA作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;同樣,生成接收方公私密鑰對的方法可以為隨機(jī)從小于G的階的正整數(shù)中選取 dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰%。這里,由于《和4均為隨機(jī)從小于G的階的正整數(shù)中選取的,因此,發(fā)送方之外的任何機(jī)構(gòu)或個(gè)人都無法獲知dA,接收方之外的任何機(jī)構(gòu)或個(gè)人也都無法獲知dB,只要發(fā)送方和接收方不泄露,《和dB是永遠(yuǎn)不會(huì)泄露的,這保證了本發(fā)明中的密鑰安全。本發(fā)明中,公鑰A和( 分別為相應(yīng)的私鑰dA和dB與G進(jìn)行標(biāo)量乘運(yùn)算得到,因此,Qa與dA、以及%與dB之間是有步驟101所述的對應(yīng)關(guān)系的。本發(fā)明中,有限域?yàn)榇笏財(cái)?shù)域的情況下,橢圓曲線的基點(diǎn)G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160,這符合國際標(biāo)準(zhǔn)對橢圓曲線簽密技術(shù)的要求,有利于保證密鑰和數(shù)據(jù)的安全。步驟103和步驟105中的(s)的函數(shù)式的較佳實(shí)施例為(s) = S。同樣,f2(s)的函數(shù)式的較佳實(shí)施例為f2(s) = s。本發(fā)明中,f\(s)的函數(shù)式分別設(shè)置為(s) =s禾Pf2(S) = S,這是符合要求的f\(s) 的函數(shù)式的最簡潔表達(dá)式,采用該實(shí)施例,有利于進(jìn)一步提高本發(fā)明的運(yùn)算效率。現(xiàn)有技術(shù)中,發(fā)送方除了向接收方發(fā)送密文之外,還要發(fā)送數(shù)字簽名,以供接收方進(jìn)行驗(yàn)證,這樣,發(fā)送方向接收方所發(fā)送的數(shù)據(jù)通常包括三部分內(nèi)容,可用(c,r,s)的形式來表征,其中,c表示密文,其二進(jìn)制比特位數(shù)與明文m大致相同;r和s均為發(fā)送方和接收方之間約定的有關(guān)數(shù)據(jù)加解密和簽名驗(yàn)證方面的特征參數(shù),二者的二進(jìn)制比特位數(shù)大致相同,約等于基點(diǎn)的階的長度。因此,現(xiàn)有技術(shù)中,發(fā)送方所發(fā)送的數(shù)據(jù)包的總長度約為基點(diǎn)的階的長度的兩倍與明文m的長度相加所得的和。本發(fā)明中,發(fā)送方向接收方發(fā)送的簽密信息可用(c,S)的形式來表征,比現(xiàn)有技術(shù)少發(fā)送了一個(gè)參數(shù),其中,密文c的長度也與明文m的長度大致相同,而s的長度也與橢圓曲線的基點(diǎn)的階的長度大致相同,因此,本發(fā)明中發(fā)送方所發(fā)送的數(shù)據(jù)包的總長度僅為基點(diǎn)的階的長度與明文m的長度相加所得的和,由此可見,由于本發(fā)明中發(fā)送方可以比現(xiàn)有技術(shù)少發(fā)送一個(gè)特征參數(shù),因而本發(fā)明中發(fā)送方發(fā)送的數(shù)據(jù)的長度遠(yuǎn)遠(yuǎn)小于現(xiàn)有技術(shù)。由于本發(fā)明中發(fā)送方所發(fā)送的數(shù)據(jù)的長度遠(yuǎn)遠(yuǎn)小于現(xiàn)有技術(shù),因此,本發(fā)明能夠提高發(fā)送方與接收方之間的通信效率,在發(fā)送方與接收方之間的通信帶寬比較窄的情況下,本發(fā)明有利于提高通信的速度,同時(shí),與現(xiàn)有技術(shù)相比,在發(fā)送方所發(fā)送的數(shù)據(jù)長度相同的情況下,本發(fā)明能節(jié)省通信所使用的帶寬,并節(jié)省存儲(chǔ)數(shù)據(jù)所占用的存儲(chǔ)空間。圖2為本發(fā)明提供的簽密系統(tǒng)的結(jié)構(gòu)圖。如圖2所示,該系統(tǒng)包括曲線與密鑰生成模塊201、簽密模塊202、解密與驗(yàn)證模塊203,其中,曲線與密鑰生成模塊201用于,在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中,發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰A和發(fā)送方私鑰dA,接收方公私密鑰對包括相互對應(yīng)的接收方公鑰( 和接收方私鑰dB,且A和( 均為橢圓曲線上的點(diǎn);將橢圓曲線的基點(diǎn)G和G的階發(fā)送到簽密模塊202 ;將G發(fā)送到解密與驗(yàn)證模塊203 ;簽密模塊202用于,根據(jù)G生成明文m的填充信息p,并將m與ρ連接為填充明文 ml Ip ;根據(jù)A將ml IP加密為密文C ;根據(jù)C的哈希值e,以及dA,確定滿足4(8) ^)+ (e) =k+(f2(S)&(e)+g3(e))dA的簽密特征值s;其中,k為小于G的階的隨機(jī)正整數(shù),f“s) 和f2(s)是以S為自變量的函數(shù),g0(e), gl(e), g2(e)和g3(e)是以e為自變量的函數(shù), f! (s) g0 (e) +gl (e)和 f2 (s) g2 (e) +g3 (e)均與 s 和 e 相關(guān),且 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA對s有唯一正整數(shù)解;將c和s作為簽密信息,發(fā)送到解密與驗(yàn)證模塊203 ;解密與驗(yàn)證模塊203用于,利用c的哈希值e以及G、s和QA,根據(jù)B = (f工(s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;根據(jù)dB和B,對c進(jìn)行解密,得到m和 P ;根據(jù)B生成m的接收方填充信息P’ ;判斷ρ與P’是否相等。由此可見,曲線與密鑰生成模塊201所生成的發(fā)送方公私密鑰對中的發(fā)送方公鑰 Qa和發(fā)送方私鑰dA,以及接收方公私密鑰對中的接收方公鑰( 和接收方私鑰dB分別相互對應(yīng),且A和%都為橢圓曲線上的點(diǎn),簽密模塊202可利用橢圓曲線的基點(diǎn)G生成明文m的填充信息P,提供給解密與驗(yàn)證模塊203對發(fā)送方是否發(fā)送了針對明文m的簽密信息進(jìn)行驗(yàn)證,簽密模塊202在將m和ρ連接為填充明文m| |p后,即可根據(jù)仏將一 |p加密為密文c,這樣,簽密模塊202用橢圓曲線簽密的方法實(shí)現(xiàn)了明文數(shù)據(jù)的保密和認(rèn)證工作;簽密模塊202 利用c的哈希值e和dA確定出滿足(s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA的簽密特征值s,并將c和s作為簽密信息發(fā)送給解密與驗(yàn)證模塊203之后,解密與驗(yàn)證模塊203即可利用 c 的哈希值 e 以及 G、s 和 Qa,根據(jù) B = (f! (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn)B,然后根據(jù)dB和B對c進(jìn)行解密,從而得到明文信息m和填充信息p,接著,解密與驗(yàn)證模塊203可根據(jù)B生成m的接收方填充信息P’,通過判斷ρ與P’是否相等,即可實(shí)現(xiàn)認(rèn)證過程,因此,本發(fā)明中,簽密模塊202可以利用橢圓曲線簽密技術(shù)一次性實(shí)現(xiàn)對明文m進(jìn)行加密得到密文c和驗(yàn)證用的填充信息P,從而實(shí)現(xiàn)保密和認(rèn)證功能,相對于現(xiàn)有技術(shù)先后執(zhí)行兩套算法來實(shí)現(xiàn)保密和認(rèn)證功能,本發(fā)明大大提高了保密和認(rèn)證的運(yùn)算效率。該系統(tǒng)進(jìn)一步包括數(shù)字證書模塊;則曲線與密鑰生成模塊201進(jìn)一步用于,將A與發(fā)送方的身份信息相對應(yīng)、將( 與接收方的身份信息相對應(yīng),發(fā)送到數(shù)字證書模塊;數(shù)字證書模塊用于,判斷發(fā)送方的身份信息是否真實(shí);生成發(fā)送方的數(shù)字證書發(fā)布到自身的服務(wù)器上,發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;判斷接收方的身份信息是否真實(shí);生成接收方的數(shù)字證書發(fā)布到自身的服務(wù)器上,接收方的數(shù)字證書包括A 和接收方的身份信息;則簽密模塊202進(jìn)一步用于,從數(shù)字證書模塊的服務(wù)器上獲得( ;解密與驗(yàn)證模塊203進(jìn)一步用于,從數(shù)字證書模塊的服務(wù)器上獲得Qa。這里,數(shù)字證書模塊可以作為驗(yàn)證發(fā)送方和接收方的身份信息、存儲(chǔ)和發(fā)布A和 A的中立的第三方模塊,從而保證本發(fā)明中發(fā)送方和接收方身份信息的真實(shí)性。本發(fā)明中,該系統(tǒng)進(jìn)一步包括仲裁模塊;簽密模塊202可以用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與%進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1 k2)的數(shù)組;利用1^將ml Ip加密為密文C;解密與驗(yàn)證模塊203可以用于,將(^與8進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(Ic1A2)的數(shù)組;利用h對c進(jìn)行解密,得到m和ρ ;將Ic1和簽密信息發(fā)送到仲裁模塊;則仲裁模塊可以用于,根據(jù)Ic1對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m的仲裁方填充信息P” ;判斷ρ與P”是否相等;當(dāng)然,簽密模塊202也可以用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與% 進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(k1; k2)的數(shù)組;利用1 將ml |p加密為密文C ;解密與驗(yàn)證模塊203用于,將(^與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(Ic1A2)的數(shù)組; 利用1 對C進(jìn)行解密,得到m和P ;將1 和簽密信息發(fā)送到仲裁模塊;則仲裁模塊用于,根據(jù)1 對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m 的仲裁方填充信息P” ;判斷P與P”是否相等。利用仲裁模塊可以用于防范和解決信息發(fā)送的糾紛。由于解密與驗(yàn)證模塊203將自身所得到的密鑰以及簽密信息發(fā)送給了仲裁模塊,因此,仲裁模塊可以根據(jù)該密鑰對密文c獨(dú)立進(jìn)行解密,得到m和p,并獨(dú)立生成仲裁方填充信息p”,以與自身獨(dú)立獲得的ρ進(jìn)行比較,從而驗(yàn)證發(fā)送方是否發(fā)送了針對明文m的簽密信息,這樣,在存在信息傳輸方面的糾紛的情況下,中立的仲裁模塊就可以利用自身獨(dú)立得到的數(shù)據(jù)來對該糾紛進(jìn)行仲裁。該系統(tǒng)中,簽密模塊202用于,將k與橢圓曲線的基點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。該系統(tǒng)中,曲線與密鑰生成模塊201用于,隨機(jī)從小于G的階的正整數(shù)中選取《作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;隨機(jī)從小于G的階的正整數(shù)中選取dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰%。該系統(tǒng)中,有限域?yàn)榇笏財(cái)?shù)域或二元域。該系統(tǒng)中,G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160。該系統(tǒng)中,(S)的函數(shù)式可以Sf1(S) = s,f2(s)的函數(shù)式也可以為f2(s) = S0由此可見,本發(fā)明具有以下優(yōu)點(diǎn)(1)本發(fā)明中,發(fā)送方公私密鑰對中的發(fā)送方公鑰%和發(fā)送方私鑰dA,以及接收方公私密鑰對中的接收方公鑰%和接收方私鑰dB分別相互對應(yīng),且A和( 均為橢圓曲線上的點(diǎn),發(fā)送方可利用橢圓曲線的基點(diǎn)G生成明文m的填充信息p,提供給接收方來驗(yàn)證發(fā)送方確實(shí)發(fā)送了針對m的簽密信息,發(fā)送方在將m和ρ連接為填充明文m| | ρ后,即可根據(jù)( 將m| I ρ加密為密文c,這樣,發(fā)送方用橢圓曲線簽密的方法實(shí)現(xiàn)了明文數(shù)據(jù)的保密和認(rèn)證工作;發(fā)送方利用c的哈希值e和dA確定出滿足fi (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA的簽密特征值s,并將c和s作為簽密信息發(fā)送給接收方之后,接收方即可利用c的哈希值 e 以及 G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B,然后根據(jù)dB和B對c進(jìn)行解密,從而得到明文信息m和填充信息P,接著,接收方可根據(jù)B生成m的接收方填充信息P’,通過判斷ρ與P’是否相等,即可實(shí)現(xiàn)認(rèn)證過程,因此,本發(fā)明中, 發(fā)送方可以利用橢圓曲線簽密方法一次性實(shí)現(xiàn)對明文m進(jìn)行加密得到密文c和驗(yàn)證用的填充信息P,從而實(shí)現(xiàn)保密和認(rèn)證功能,相對于現(xiàn)有技術(shù)先后執(zhí)行兩套算法來實(shí)現(xiàn)保密和認(rèn)證功能,本發(fā)明大大提高了保密和認(rèn)證的運(yùn)算效率。(2)本發(fā)明利用有限域中的橢圓曲線簽密技術(shù)對明文進(jìn)行簽密,任何第三方都極難破解發(fā)送方所發(fā)送的密文,因而本發(fā)明的信息安全性非常高。(3)本發(fā)明中,由于發(fā)送方公鑰和接收方公鑰均為有限域下橢圓曲線上的點(diǎn),任何第三方想根據(jù)公鑰來獲得私鑰是不可能的,因此,即使發(fā)生密文在傳輸中被第三方截獲的情況,該密文也不能被解密,這保證了本發(fā)明中密鑰和信息的安全性。(4)f“s)和f2(s)的函數(shù)式分別設(shè)置為f“s) = s和f2(s) = s,這是符合要求的 fi(s) 的函數(shù)式的最簡潔表達(dá)式,本發(fā)明采用這種設(shè)置,可以進(jìn)一步提高運(yùn)算效率。(5)本發(fā)明中,由于發(fā)送方所發(fā)送的數(shù)據(jù)的長度遠(yuǎn)遠(yuǎn)小于現(xiàn)有技術(shù),因此,本發(fā)明能夠提高發(fā)送方與接收方之間的通信效率,在發(fā)送方與接收方之間的通信帶寬比較窄的情況下,本發(fā)明有利于提高通信的速度,在發(fā)送方所發(fā)送的數(shù)據(jù)長度相同的情況下,本發(fā)明可比現(xiàn)有技術(shù)用更少的通信帶寬完成傳輸,并節(jié)省存儲(chǔ)數(shù)據(jù)所占用的存儲(chǔ)空間。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
18
權(quán)利要求
1.一種簽密方法,其特征在于,該方法包括在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中,所述發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰A和發(fā)送方私鑰dA,所述接收方公私密鑰對包括相互對應(yīng)的接收方公鑰%和接收方私鑰dB,且A和( 均為所述橢圓曲線上的點(diǎn);發(fā)送方根據(jù)所述橢圓曲線的基點(diǎn)G,生成明文m的填充信息p,并將m與ρ連接為填充明文m I I ρ ;發(fā)送方根據(jù)Qb,將m I I ρ加密為密文c ;發(fā)送方根據(jù)c的哈希值e,以及dA,確定滿足fi (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA的簽密特征值s;其中,k為小于G的階的隨機(jī)正整數(shù),f\(s)和f2(s)是以s為自變量的函數(shù),g0(e), gl(e), g2(e)和 g3(e)是以 e 為自變量的函數(shù),^ (s) g0 (e)+gl (e)和 f2(s) g2(e)+g3(e)均與 s 和 e 相關(guān),且 4(8) ^)+ (e) = k+(f2 (s) & (e)+ (e)) dA 對 s 有唯一正整數(shù)解;發(fā)送方將c和s作為簽密信息,發(fā)送到接收方;接收方利用c的哈希值e以及G、s和Qa,根據(jù)B =(e))G-(f2(s)g2(e)+&(e))(iA 得到中間點(diǎn) B;接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ ;接收方根據(jù)B生成m的接收方填充信息P’ ;接收方判斷P與P’是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在生成發(fā)送方公私密鑰對和接收方公私密鑰對之后,該方法進(jìn)一步包括將A與發(fā)送方的身份信息相對應(yīng)、將%與接收方的身份信息相對應(yīng),發(fā)送到證書管理機(jī)構(gòu);所述證書管理機(jī)構(gòu)判斷所述發(fā)送方的身份信息是否真實(shí),如果是,則生成發(fā)送方的數(shù)字證書發(fā)布到目錄服務(wù)協(xié)議LDAP服務(wù)器上;其中,所述發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;所述證書管理機(jī)構(gòu)判斷所述接收方的身份信息是否真實(shí),如果是,則生成接收方的數(shù)字證書發(fā)布到LDAP服務(wù)器上;其中,所述接收方的數(shù)字證書包括( 和接收方的身份信息;則在發(fā)送方根據(jù)仏,將m| Iρ加密為密文c之前,該方法進(jìn)一步包括發(fā)送方從所述LDAP 服務(wù)器上獲得%;在接收方利用c的哈希值e以及G、s和Qa,根據(jù)B =(e))G-(f2(s)g2 (e) +g3 (e)) Qa得到中間點(diǎn)B之前,該方法進(jìn)一步包括接收方從所述LDAP服務(wù)器上獲得Qa ο
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,發(fā)送方根據(jù)%,將m| I ρ加密為密文c的方法為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k;將1^與( 進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(‘ig的數(shù)組;利用kdf m| |p加密為密文c ;接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用Ic1對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將h和所述簽密信息發(fā)送到仲裁方;所述仲裁方根據(jù) Ic1對c進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和QA,根據(jù)B = (s)go (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P”;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息;或,發(fā)送方根據(jù)%,將m| I ρ加密為密文c的方法為發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定k;將1^與( 進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(‘ig的數(shù)組;利用1 將m| |p加密為密文c ;接收方根據(jù)dB和B,對c進(jìn)行解密,得到m和ρ的方法為接收方將dB與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用1 對c進(jìn)行解密,得到m和ρ ;則該方法進(jìn)一步包括接收方將1 和所述簽密信息發(fā)送到仲裁方;所述仲裁方根據(jù) 1 對c進(jìn)行解密,得到m和ρ ;仲裁方利用c的哈希值e以及G、s和Qa,根據(jù)B = (f工(s) go (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;仲裁方根據(jù)B生成m的仲裁方填充信息P”;仲裁方判斷P與P”是否相等,如果是,則驗(yàn)證通過,確認(rèn)發(fā)送方已發(fā)送針對m的簽密信息,否則,驗(yàn)證不通過,確認(rèn)發(fā)送方并未發(fā)送針對m的簽密信息。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,發(fā)送方隨機(jī)從小于G的階的正整數(shù)中選定 k之后,發(fā)送方根據(jù)所述橢圓曲線的基點(diǎn)G,生成明文m的填充信息ρ的方法為發(fā)送方將k 與所述橢圓曲線的基點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。
5.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,生成發(fā)送方公私密鑰對的方法為隨機(jī)從小于G的階的正整數(shù)中選取dA作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;和/或,生成接收方公私密鑰對的方法為隨機(jī)從小于G的階的正整數(shù)中選取dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰%。
6.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,所述有限域?yàn)榇笏財(cái)?shù)域或二元域。
7.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160。
8.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,f\(s)的函數(shù)式為f\(s)=s;和/ 或,f2(s)的函數(shù)式為f2(s) = S0
9.一種簽密系統(tǒng),其特征在于,該系統(tǒng)包括曲線與密鑰生成模塊、簽密模塊、解密與驗(yàn)證模塊,其中,所述曲線與密鑰生成模塊用于,在有限域內(nèi)確定橢圓曲線,并生成發(fā)送方公私密鑰對和接收方公私密鑰對;其中,所述發(fā)送方公私密鑰對包括相互對應(yīng)的發(fā)送方公鑰A和發(fā)送方私鑰dA,所述接收方公私密鑰對包括相互對應(yīng)的接收方公鑰A和接收方私鑰dB,且A和 A均為所述橢圓曲線上的點(diǎn);將所述橢圓曲線的基點(diǎn)G和G的階發(fā)送到所述簽密模塊;將G 發(fā)送到所述解密與驗(yàn)證模塊;所述簽密模塊用于,根據(jù)G生成明文m的填充信息p,并將m與ρ連接為填充明文 ml Ip ;根據(jù)A將ml IP加密為密文C ;根據(jù)C的哈希值e,以及dA,確定滿足4(8) ^)+ (e) =k+(f2(S)&(e)+g3(e))dA的簽密特征值s;其中,k為小于G的階的隨機(jī)正整數(shù),f“s) 和f2(s)是以S為自變量的函數(shù),g0(e), gl(e), g2(e)和g3(e)是以e為自變量的函數(shù),f! (s) g0 (e) +gl (e)和 f2 (s) g2 (e) +g3 (e)均與 s 和 e 相關(guān),且 (s) g0 (e) +gl (e) = k+ (f2 (s) g2 (e) +g3 (e)) dA對s有唯一正整數(shù)解;將c和s作為簽密信息,發(fā)送到解密與驗(yàn)證模塊;所述解密與驗(yàn)證模塊用于,利用c的哈希值e以及G、s和Qa,根據(jù)B = (f\(s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa得到中間點(diǎn)B ;根據(jù)dB和B,對c進(jìn)行解密,得到m和 P ;根據(jù)B生成m的接收方填充信息P’ ;判斷ρ與P’是否相等。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,該系統(tǒng)進(jìn)一步包括數(shù)字證書模塊; 所述曲線與密鑰生成模塊進(jìn)一步用于,將A與發(fā)送方的身份信息相對應(yīng)、將A與接收方的身份信息相對應(yīng),發(fā)送到所述數(shù)字證書模塊;所述數(shù)字證書模塊用于,判斷所述發(fā)送方的身份信息是否真實(shí);生成發(fā)送方的數(shù)字證書發(fā)布到自身的服務(wù)器上,所述發(fā)送方的數(shù)字證書包括A和發(fā)送方的身份信息;判斷所述接收方的身份信息是否真實(shí);生成接收方的數(shù)字證書發(fā)布到自身的服務(wù)器上,所述接收方的數(shù)字證書包括%和接收方的身份信息;則所述簽密模塊進(jìn)一步用于,從所述數(shù)字證書模塊的服務(wù)器上獲得% ; 所述解密與驗(yàn)證模塊進(jìn)一步用于,從所述數(shù)字證書模塊的服務(wù)器上獲得A。
11.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,該系統(tǒng)進(jìn)一步包括仲裁模塊; 所述簽密模塊用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與A進(jìn)行標(biāo)量乘運(yùn)算,得到形式為(kpig的數(shù)組;利用1^將ml Ip加密為密文C;所述解密與驗(yàn)證模塊用于,將4與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用ki對C進(jìn)行解密,得到m和P ;將ki和所述簽密信息發(fā)送到所述仲裁模塊;則所述仲裁模塊用于,根據(jù)h對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m 的仲裁方填充信息P” ;判斷P與P”是否相等; 或,所述簽密模塊用于,隨機(jī)從小于G的階的正整數(shù)中選定k ;將k與A進(jìn)行標(biāo)量乘運(yùn)算, 得到形式為(ki; k2)的數(shù)組;利用k2將ml Ip加密為密文C ;所述解密與驗(yàn)證模塊用于,將4與B進(jìn)行標(biāo)量乘運(yùn)算,獲得形式為(k1; k2)的數(shù)組;利用1 對C進(jìn)行解密,得到m和P ;將1 和所述簽密信息發(fā)送到所述仲裁模塊;則所述仲裁模塊用于,根據(jù)1 對c進(jìn)行解密,得到m和ρ ;利用c的哈希值e以及G、s 和 Qa,根據(jù) B = (s) g0 (e) +gl (e)) G- (f2 (s) g2 (e) +g3 (e)) Qa 得到中間點(diǎn) B ;根據(jù) B 生成 m 的仲裁方填充信息P” ;判斷P與P”是否相等。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述簽密模塊用于,將k與所述橢圓曲線的基點(diǎn)G進(jìn)行標(biāo)量乘運(yùn)算,得到填充點(diǎn)M ;根據(jù)M生成明文m的填充信息ρ。
13.根據(jù)權(quán)利要求9、10或11所述的系統(tǒng),其特征在于,所述曲線與密鑰生成模塊用于, 隨機(jī)從小于G的階的正整數(shù)中選取dA作為發(fā)送方私鑰;將dA與G進(jìn)行標(biāo)量乘運(yùn)算,生成發(fā)送方公鑰A ;隨機(jī)從小于G的階的正整數(shù)中選取dB作為接收方私鑰;將dB與G進(jìn)行標(biāo)量乘運(yùn)算,生成接收方公鑰仏。
14.根據(jù)權(quán)利要求9、10或11所述的系統(tǒng),其特征在于,所述有限域?yàn)榇笏財(cái)?shù)域或二元域。
15.根據(jù)權(quán)利要求9、10或11所述的系統(tǒng),其特征在于,G的階為素?cái)?shù),且其二進(jìn)制比特位數(shù)大于160。
16.根據(jù)權(quán)利要求9、10或11所述的系統(tǒng),其特征在于,f\(s)的函數(shù)式為(s) =s; 和/或,f2(s)的函數(shù)式為f2(s) = S0
全文摘要
本發(fā)明涉及一種簽密方法和系統(tǒng)。該簽密方法包括在有限域內(nèi)確定橢圓曲線,生成包括相對應(yīng)的QA、dA的發(fā)送方公私密鑰對和包括相對應(yīng)的QB、dB的接收方公私密鑰對,QA、QB均為橢圓曲線的點(diǎn);發(fā)送方根據(jù)橢圓曲線的基點(diǎn)G,生成明文m的填充信息p,將m與p連為m||p后,根據(jù)QB將其加密為密文c;確定滿足f1(s)g0(e)+g1(e)=k+(f2(s)g2(e)+g3(e))dA的s,k為小于G的階的隨機(jī)正整數(shù),f1(s)g0(e)+g1(e)和f2(s)g2(e)+g3(e)均與s、e相關(guān),且f1(s)g0(e)+g1(e)=k+(f2(s)g2(e)+g3(e))dA對s有唯一正整數(shù)解;發(fā)送方將c和s作為簽密信息發(fā)送到接收方;接收方利用c的哈希值e及G、s、QA,根據(jù)B=(f1(s)g0(e)+g1(e))G-(f2(s)g2(e)+g3(e))QA得到B;根據(jù)dB和B對c解密得到m和p;根據(jù)B生成m的接收方填充信息p’;判斷p與p’是否相等來驗(yàn)證發(fā)送方是否發(fā)送了針對m的簽密信息。利用本發(fā)明能提高保密和認(rèn)證的運(yùn)算效率。
文檔編號H04L9/32GK102487321SQ201010578298
公開日2012年6月6日 申請日期2010年12月3日 優(yōu)先權(quán)日2010年12月3日
發(fā)明者張慶勝 申請人:航天信息股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
海门市| 保山市| 肇州县| 惠州市| 双江| 东丰县| 乌拉特后旗| 贡嘎县| 旬阳县| 阜康市| 岳阳县| 金秀| 黑水县| 溆浦县| 林甸县| 名山县| 许昌市| 江城| 山东省| 敖汉旗| 梁河县| 本溪市| 马尔康县| 囊谦县| 临猗县| 富锦市| 桐柏县| 惠安县| 竹山县| 谢通门县| 定襄县| 连南| 林甸县| 巨野县| 郓城县| 金秀| 拜泉县| 开远市| 广德县| 萨迦县| 商城县|