新四季網

終端及其不可抵賴的加密籤名方法和裝置與流程

2023-04-25 03:46:41 2


本發明涉及到數字籤名領域,特別是涉及到一種終端及其不可抵賴的加密籤名方法和裝置。



背景技術:

在一些安全應用中需要對數據進行加密保護,同時要保證數據發送方身份的真實性。一般的方法是對數據籤名後,再對數據加密,或者先對數據加密後,再對數據進行籤名。但是這種分別執行完整的加密方法和籤名方法的保護方法會導致輸出結果為加密方法輸出和籤名方法輸出的總長度。

一種輸出長度短、驗證方法簡單的加密籤名方法是有需求的。



技術實現要素:

本發明的主要目的為提供一種輸出長度短、驗證方法簡單的終端及其不可抵賴的加密籤名方法和裝置。

為了實現上述發明目的,本發明提出一種不可抵賴的加密籤名方法,包括:

加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對;

對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據;

通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值。

進一步地,所述標識密碼系統參數為;其中,

e為密鑰生成中心選擇的一條橢圓曲線;

e為雙線性對;

p1和p2為點群g1和g2中的兩個點;g1和g2為橢圓曲線e上的兩個階為素數q的點群;

s為主私鑰,其為隨機選擇的0到q之間的整數;

[s]p1為s個p1相加;

[s]p2為s個p2相加;

h為映射函數,其將一個比特串o映射到[1,q-1]上;

kdf為標準的密鑰派生函數。

進一步地,所述解密驗籤端的標識解密私鑰d_b為:

d_b=[s/(h(1||id_b)+s)]p2。

進一步地,所述加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對的步驟,包括:

所述加密籤名端獲取密鑰生成中心的所述標識密碼系統參數;

隨機選擇0到q之間的整數x,將所述x作為所述籤名私鑰;

選擇g1和g2中的兩個點f1和f2,將、、中的一種作為所述籤名公鑰。

進一步地,所述f1=p1,所述f2=p2。

進一步地,所述對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據的步驟,包括:

計算整數h1=h(1||id_b);

計算解密驗籤端的公鑰q_b=[h1]p1+[s]p1;

產生隨機數r∈[1,q-1];

計算x=[r]q_b,將x數據類型轉換為比特串c1;

計算w=gr,將w的數據類型轉換為比特串u,其中,g=e(p1,[s]p2);

準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接;

計算和m一樣長度的k=kdf(xi);

計算c2=m⊕k;

準備哈希輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接;

計算整數h=h(hi);

計算s=[x/(h+x)]f1,將s數據類型轉換為比特串c3;

將作為輸出,給所述消息m進行加密籤名。

進一步地,所述通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值的步驟,包括:

通過所述解密驗籤端將c1的數據類型轉換為橢圓曲線e上的點x,檢驗x∈g1是否成立;

若否,則通過所述解密驗籤端直接判定則驗證失敗;

通過所述解密驗籤端將所述c3的數據類型轉換為橢圓曲線e上的點s,檢驗s∈g1是否成立;

若否,則通過所述解密驗籤端直接判定則驗證失敗;

若所述x∈g1以及s∈g1均成立,則通過所述解密驗籤端計算w=e(x,d_b);將w的數據類型轉換為比特串u;

通過所述解密驗籤端準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接;

通過所述解密驗籤端計算和c2一樣長度的k=kdf(xi);

通過所述解密驗籤端計算m=c2⊕k;

通過所述解密驗籤端準備密鑰派生輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接;

通過所述解密驗籤端計算整數h=h(hi);

通過所述解密驗籤端計算加密籤名端的公鑰q_a=[h1]f2+[s]f2;

通過所述解密驗籤端計算u=e(s,q_a);

通過所述解密驗籤端計算f=e(f1,[x]f2);

通過所述解密驗籤端檢驗f=u是否成立,若是,則驗證通過,否則驗證失敗,解密輸出空值。

本發明還提供一種不可抵賴的加密籤名裝置,包括:

籤名密鑰對生成單元,用於加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對;

加密籤名單元,用於對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據;

解密驗籤單元,用於通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值。

進一步地,所述標識密碼系統參數為;其中,

e為密鑰生成中心選擇的一條橢圓曲線;

e為雙線性對;

p1和p2為點群g1和g2中的兩個點;g1和g2為橢圓曲線e上的兩個階為素數q的點群;

s為主私鑰,其為隨機選擇的0到q之間的整數;

[s]p1為s個p1相加;

[s]p2為s個p2相加;

h為映射函數,其將一個比特串o映射到[1,q-1]上;

kdf為標準的密鑰派生函數。

進一步地,所述解密驗籤端的標識解密私鑰d_b為:

d_b=[s/(h(1||id_b)+s)]p2。

進一步地,所述籤名密鑰對生成單元,包括:

獲取模塊,用於所述加密籤名端獲取所述標識密碼系統參數;

第一選擇模塊,用於隨機選擇0到q之間的整數x,將所述x作為所述籤名私鑰;

第二選擇模塊,用於選擇g1和g2中的兩個點f1和f2,將、、中的一種作為所述籤名公鑰。

進一步地,所述f1=p1,所述f2=p2。

進一步地,,所述加密籤名單元,包括:

加密第一計算模塊,用於計算整數h1=h(1||id_b);

加密第二計算模塊,用於計算解密驗籤端的公鑰q_b=[h1]p1+[s]p1;

選擇模塊,用於產生隨機數r∈[1,q-1];

加密第三計算模塊,用於計算x=[r]q_b,將x數據類型轉換為比特串c1;

加密第四計算模塊,用於計算w=gr,將w的數據類型轉換為比特串u,其中,g=e(p1,[s]p2);

加密第五計算模塊,準備密鑰派生輸入xi,xi包含c1和u的拼接,可選地,還可拼接id_b;

加密第六計算模塊,用於計算和m一樣長度的k=kdf(xi);

加密第七計算模塊,用於計算c2=m⊕k;

加密第八計算模塊,用於準備哈希輸入hi,其中,所述hi包含哈希操作索引、m和u的拼接;

加密第九計算模塊,用於計算整數h=h(hi);

加密第十計算模塊,用於計算s=[x/(h+x)]f1,將s數據類型轉換為比特串c3;

輸出模塊,用於通過所述加密籤名端將作為輸出,給所述消息m進行加密籤名。

進一步地,所述解密驗籤單元,包括:

第一選擇判斷模塊,用於通過所述解密驗籤端將c1的數據類型轉換為橢圓曲線e上的點x,檢驗x∈g1是否成立;

第一驗證模塊,用於若x∈g1不成立,則通過所述解密驗籤端直接判定則驗證失敗;

第二選擇判斷模塊,用於通過所述解密驗籤端將c3的數據類型轉換為橢圓曲線e上的點s,檢驗s∈g1是否成立;

第二驗證模塊,用於若s∈g1不成立,則通過所述解密驗籤端直接判定則驗證失敗;

解密第一計算模塊,用於若x∈g1以及s∈g1均成立,則通過所述解密驗籤端計算w=e(x,d_b);將w的數據類型轉換為比特串u;

解密第二計算模塊,用於通過所述解密驗籤端準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接;

解密第三計算模塊,用於通過所述解密驗籤端計算和c2一樣長度的k=kdf(xi);

解密第四計算模塊,用於通過所述解密驗籤端計算m=c2⊕k;

解密第五計算模塊,用於通過所述解密驗籤端準備哈希輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接;

解密第六計算模塊,用於通過所述解密驗籤端計算整數h=h(hi);

解密第七計算模塊,用於通過所述解密驗籤端計算加密籤名端的公鑰q_a=[h1]f2+[s]f2;

解密第八計算模塊,用於通過所述解密驗籤端計算u=e(s,q_a);

解密第九計算模塊,用於通過所述解密驗籤端計算f=e(f1,[x]f2);

第三驗證模塊,用於通過所述解密驗籤端檢驗f=u是否成立,若是,則驗證通過,否則驗證失敗。

本發明還提供一種終端,包括存儲器和處理器;

所述存儲器用於存儲支持不可抵賴的加密籤名裝置執行上述任一項所述的不可抵賴的加密籤名方法的程序;

所述處理器被配置為用於執行所述存儲器中存儲的程序。

本發明的終端及其不可抵賴的籤名方法和裝置,加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短,驗證簡單,既保證了數據的私密性,又保證了數據的真實性。

附圖說明

圖1為本發明一實施例的不可抵賴的籤名方法的流程示意圖;

圖2為本發明一實施例的生成籤名公鑰和籤名私鑰的密鑰對的方法流程示意圖;

圖3為本發明一實施例的生成加密籤名結果數據的方法流程示意圖;

圖4為本發明一實施例的對加密籤名結果數據進行解密驗籤的方法流程示意圖;

圖5為本發明一時實施例的不可抵賴的籤名裝置的結構示意框圖;

圖6為本發明一實施例的獲取單元的結構示意框圖;

圖7為本發明一實施例的獲取單元的結構示意框圖;

圖8為本發明一實施例的解密驗籤單元的結構示意框圖;

圖9為本發明一實施例的終端的結構示意框圖。

本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。

具體實施方式

應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。

參照圖1,本發明實施例提供一種不可抵賴的加密籤名方法,包括:

s1、加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對;

s2、對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據;

s3、通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值。

如上述步驟s1所述,上述解密驗籤端和加密籤名端為智能電子設備,如電腦、筆記本電腦、智慧型手機、平板電腦等;智能電子設備在加密籤名時,即為加密籤名端,在解密驗籤時,即為解密驗籤端。上述密鑰生成中心即為密鑰管理中心,是公鑰基礎設施中的一個重要組成部分,提供密鑰的生成、保存、備份、更新、恢復、查詢等密鑰服務,可以解決分布式企業應用環境中大規模密碼技術應用所帶來的密鑰管理問題。上述密鑰生成中心生成的標識密碼系統參數為;其中,

e為密鑰生成中心選擇的一條橢圓曲線;

e為雙線性對;

p1和p2為點群g1和g2中的兩個點;g1和g2為橢圓曲線e上的兩個階為素數q的點群;

s為主私鑰,其為隨機選擇的0到q之間的整數;

[s]p1為s個p1相加;

[s]p2為s個p2相加;

h為映射函數,其將一個比特串o映射到[1,q-1]上;

kdf為標準的密鑰派生函數。

在上述標識密碼系統參數中還可以加入g=e(p1,[s]p2),即標識密碼系統參數為,因為g=e(p1,[s]p2)可以通過已知的參數計算得出,所以,可以根據需要加入或不加入上述標識密碼系統參數中。

上述加密籤名端的籤名公鑰和籤名私鑰,均使用標識密碼系統參數中的參數計算而成,但是無需在密鑰生成中心生成,而是在加密籤名端完成,無需將消息m發送至密鑰生成中心進行加密處理等。

如上述步驟s2所述,上述加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短。

如上述步驟s3所述,通過解密驗籤端利用預設的規則,獲取指定的參數對加密籤名結果數據進行解密驗籤。在驗籤過程中,上述標識解密私鑰d_b即為利用解密驗籤端的標識id_b和預設的計算規則而獲得,本實施例中,d_b=[s/(h(1||id_b)+s)]p2。

參照圖2,本實施例中,上述加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對的步驟s1,包括:

s101、所述加密籤名端獲取密鑰生成中心的上述標識密碼系統參數;

s102、隨機選擇0到q之間的整數x,將所述x作為所述籤名私鑰;

s103、選擇g1和g2中的兩個點f1和f2,將、、中的一種作為所述籤名公鑰。

如上述步驟s101、s102和s103所述,即為加密籤名端生成籤名私鑰和籤名公鑰的過程。本實施例中,可以選擇將f1=p1,f2=p2,方便後期計算和驗證等。

參照圖3,本實施例中,上述對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據的步驟s2,包括:

s201、計算整數h1=h(1||id_b);

s202、計算解密驗籤端的公鑰q_b=[h1]p1+[s]p1;

s203、產生隨機數r∈[1,q-1];

s204、計算x=[r]q_b,將x數據類型轉換為比特串c1;

s205、計算w=gr,將w的數據類型轉換為比特串u,其中,g=e(p1,[s]p2);

s206、準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接,可選地,還可以拼接id_b;

s207、計算和m一樣長度的k=kdf(xi);

s208、計算c2=m⊕k;

s209、準備哈希輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接,可選地,還可以拼接c1、id_a、id_b;

s210、計算整數h=h(hi);

s211、計算s=[x/(h+x)]f1,將s數據類型轉換為比特串c3;

s212、將作為輸出,給所述消息m進行加密籤名。

如上述步驟s201至s212所述,即為利用上述籤名公鑰和籤名私鑰等參數給消息m進行加密籤名的具體過程,其籤名過程為短籤名的過程,消息m加密籤名後的長度較小。上述操作索引用於區分計算過程中的各次哈希操作。其取值無特定要求,只需保證不同的哈希操作使用的哈希操作索引不同,比如h=h(2||m||u||c1||id_a||id_b)中,操作索引即為2。

參照圖4,本實施例中,上述通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值的步驟s3,包括:

s301、通過解密驗籤端將c1的數據類型轉換為橢圓曲線e上的點x,檢驗x∈g1是否成立;

s302、若否,則通過解密驗籤端直接判定則驗證失敗,解密輸出空值;

s303、通過所述解密驗籤端將所述c3的數據類型轉換為橢圓曲線e上的點s,檢驗s∈g1是否成立;

s304、若否,則通過所述解密驗籤端直接判定則驗證失敗;

s305、若所述x∈g1以及s∈g1均成立,則通過解密驗籤端計算w=e(x,d_b);將w的數據類型轉換為比特串u;

s306、通過所述解密驗籤端準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接,可選地,還可以拼接id_b;

s307、通過解密驗籤端計算和c2一樣長度的k=kdf(xi);s308、通過解密驗籤端計算m=c2⊕k;

s309、通過所述解密驗籤端準備密鑰派生輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接,可選地,還可以拼接c1、id_a、id_b;

s310、通過解密驗籤端計算整數h=h(hi);

s311、通過解密驗籤端計算加密籤名端的公鑰q_a=[h1]f2+[s]f2;

s312、通過解密驗籤端計算u=e(s,q_a);

s313、通過解密驗籤端計算f=e(f1,[x]f2);

s314、通過解密驗籤端檢驗f=u是否成立,若是,則驗證通過,否則驗證失敗,解密輸出空值。

如上述步驟s301至s314所述,即為解密驗籤的過程,解密驗籤過程簡單而安全。

在一具體實施例中,整個解密驗籤過程中,需要三方協作,即密鑰生成中心、加密籤名端和解密驗籤端,其過程具體為:

雙線性對是一種具有以下三個特性的二元映射e:g1xg2→gt

1.二元線性:e([s]p,[t]q)=e(p,q)st.s,t∈z/zq.p∈g1,q∈g2,g1是一個階為q的循環群,g2是一個冪為q群,其子群階為q.[s]p表示s個p相加。

2.非退化性:存在非0元p和q,e(p,q)≠1.

3.可計算性:有多項式時間方法計算e(p,q).

現在已知的雙線性對有橢圓曲線上的weil、tate、ate、r-ate、優化ate對等。

步驟a:密鑰生成中心選擇一條橢圓曲線e,其特徵是有可高效計算的雙線性對e。確定曲線e上的兩個階為素數q的點群g1和g2。分別選擇g1和g2中的兩個點p1和p2。隨機選擇0<s<q的整數s作為主私鑰,計算[s]p1,[s]p2以及g=e(p1,[s]p2)。其中[s]p表示標準的s個p相加。密鑰生成中心公開標識密碼系統參數。其中g=e(p1,[s]p2)可以預計算,所以可以不作為系統參數的一部分;消息映射函數h將一個比特串o映射到[1,q-1]上;kdf是標準的密鑰派生函數。

步驟b、密鑰生成中心生成標識id_b對應的標識解密私鑰:

d_b=[s/(h(1||id_ba)+s)]p2,其中,標識id_b為解密驗籤端的標識id_b。

步驟c、加密籤名端擁有標識id_a,其獲得密鑰生成中心公開的標識密碼系統參數後,隨機選擇0<x<q的整數x,選擇g1和g2中的兩個點f1和f2,計算[x]f2,將作為其公鑰數據,其中f=e(f1,[x]f2)可以由雙線對計算得出,所以可以不用作為公鑰的部分,x作為其籤名私鑰。可選的方法是設置f1=p1,f2=p2。

步驟d、加密籤名人獲得系統公開參數以及籤名公鑰,籤名私鑰x後,對消息m進行加密籤名給解密驗籤端。加密籤名方法為:

d1:計算整數h1=h(1||id_b);

d2:計算q_b=[h1]p1+[s]p1;

d3:產生隨機數r[1,q-1];

d4:計算x=[r]q_b,將x數據類型轉換為比特串c1;

d5:計算w=gr,將w的數據類型轉換為比特串u;

d6:計算和m一樣長度的k=kdf(c1||u||id_b);

d7:計算c2=m⊕k;

d8:計算整數h=h(2||m||u||c1||id_a||id_b);

d9:計算s=[x/(h+x)]f1,將s數據類型轉換為比特串c3;

d11:將作為輸出。

步驟e、解密驗籤端使用系統公開參數以及標識解密私鑰d_b=[s/(h(1||id_b)+s)]p2,籤名公鑰,對密文解密驗籤,其過程如下:

e1:將c1的數據類型轉換為橢圓曲線e上的點x,檢驗x∈g1是否成立,若不成立則驗證不通過;

e2:將所述c3的數據類型轉換為橢圓曲線e上的點s,檢驗s∈g1是否成立;若否,則直接判定則驗證失敗;

e3:計算w=e(x,d_b);將w的數據類型轉換為比特串u;

e4:計算和c2一樣長度的k=kdf(c1||u||id_b);

e5:計算m=c2⊕k;

e6:計算整數h=h(2||m||u||c1||id_a||id_b);

e7:計算q_a=[h1]f2+[s]f2;

e8:計算u=e(s,q_a);

e9:計算f=e(f1,[x]f2),該步驟可以針對id_a進行預計算f後存儲。

e10:檢驗f=u是否成立,若成立則驗證通過,輸出m;否則驗證不通過,解密輸出空值。

本發明實施例的不可抵賴的籤名方法,加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短,驗證簡單,既保證了數據的私密性,又保證了數據的真實性。

參照圖5,本發明實施例還提供一種不可抵賴的加密籤名裝置,包括:

籤名密鑰對生成單元10,用於加密籤名端獲取密鑰生成中心的標識密碼系統參數,生成籤名公鑰和籤名私鑰的密鑰對;

加密籤名單元20,用於對消息m使用解密驗籤端的標識id_b加密,以及對加密結果數據和消息m使用所述籤名私鑰進行短籤名,生成加密籤名結果數據;

解密驗籤單元30,用於通過所述解密驗籤端利用標識密碼系統參數、標識id_b對應的標識解密私鑰d_b以及所述籤名公鑰,對所述加密籤名結果數據進行解密驗籤,如果驗證不成功,則解密輸出空值。

如上述籤名密鑰對生成單元10,上述解密驗籤端和加密籤名端為智能電子設備,如電腦、筆記本電腦、智慧型手機、平板電腦等;智能電子設備在加密籤名時,即為加密籤名端,在解密驗籤時,即為解密驗籤端。上述密鑰生成中心即為密鑰管理中心,是公鑰基礎設施中的一個重要組成部分,提供密鑰的生成、保存、備份、更新、恢復、查詢等密鑰服務,可以解決分布式企業應用環境中大規模密碼技術應用所帶來的密鑰管理問題。上述密鑰生成中心生成的標識密碼系統參數為;其中,

e為密鑰生成中心選擇的一條橢圓曲線;

e為雙線性對;

p1和p2為點群g1和g2中的兩個點;g1和g2為曲線e上的兩個階為素數q的點群;

s為主私鑰,其為隨機選擇的0到q之間的整數;

[s]p1為s個p1相加;

[s]p2為s個p2相加;

h為映射函數,其將一個比特串o映射到[1,q-1]上;

kdf為標準的密鑰派生函數。

在上述標識密碼系統參數中還可以加入g=e(p1,[s]p2),即標識密碼系統參數為,因為g=e(p1,[s]p2)可以通過已知的參數計算得出,所以,可以根據需要加入或不加入上述標識密碼系統參數中。

上述加密籤名端的籤名公鑰和籤名私鑰,均使用標識密碼系統參數中的參數計算而成,但是無需在密鑰生成中心生成,而是在加密籤名端完成,無需將消息m發送至密鑰生成中心進行加密處理等。

如上述加密籤名單元20,上述加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短。

如上述解密驗籤單元30,解密驗籤端利用預設的規則,獲取指定的參數對加密籤名結果數據進行解密驗籤。在驗籤過程中,上述標識解密私鑰d_b即為利用解密驗籤端的標識id_b和預設的計算規則而獲得,本實施例中,d_b=[s/(h(1||id_b)+s)]p2。

參照圖6,本實施例中,上述籤名密鑰對生成單元10,包括:

獲取模塊101,用於所述加密籤名端獲取密鑰生成中心的上述標識密碼系統參數;

第一選擇模塊102,用於隨機選擇0到q之間的整數x,將所述x作為所述籤名私鑰;

第二選擇模塊103,用於選擇g1和g2中的兩個點f1和f2,將、、中的一種作為所述籤名公鑰。

如上述獲取模塊101、第一選擇模塊102和第二選擇模塊103,即為加密籤名端生成籤名私鑰和籤名公鑰的模塊。本實施例中,上述f1=p1,f2=p2,方便後期計算和驗證等。

參照圖7,本實施例中,上述加密籤名單元20,包括:

加密第一計算模塊201,用於計算整數h1=h(1||id_b);

加密第二計算模塊202,用於計算解密驗籤端的公鑰q_b=[h1]p1+[s]p1;

選擇模塊203,用於產生隨機數r∈[1,q-1];

加密第三計算模塊204,用於計算x=[r]q_b,將x數據類型轉換為比特串c1;

加密第四計算模塊205,用於計算w=gr,將w的數據類型轉換為比特串u,其中,g=e(p1,[s]p2);

加密第五計算模塊206,準備密鑰派生輸入xi,xi包含c1和u的拼接,可選地,還可拼接id_b;

加密第六計算模塊207,用於計算和m一樣長度的k=kdf(xi);

加密第七計算模塊208,用於計算c2=m⊕k;

加密第八計算模塊209,用於準備哈希輸入hi,其中,所述hi包含哈希操作索引、m和u的拼接,可選地,還可以拼接c1、id_a、id_b;

加密第九計算模塊210,用於計算整數h=h(hi);

加密第十計算模塊211,用於計算s=[x/(h+x)]f1,將s數據類型轉換為比特串c3;

輸出模塊212,用於將作為輸出,給所述消息m進行加密籤名。

上述即為利用上述籤名公鑰和籤名私鑰等參數給消息m進行加密和短籤名的模塊,消息m加密籤名後的長度較小。上述操作索引用於區分計算過程中的各次哈希操作。其取值無特定要求,只需保證不同的哈希操作使用的哈希操作索引不同,比如h=h(2||m||u||c1||id_a||id_b)中,操作索引即為2。

參照圖8,本實施例中,上述解密驗籤單元30,包括:

第一選擇判斷模塊301,用於通過解密驗籤端將c1的數據類型轉換為橢圓曲線e上的點x,檢驗x∈g1是否成立;

第一驗證模塊302,用於若x∈g1不成立,則通過解密驗籤端直接判定則驗證失敗,解密輸出空值;

第二選擇判斷模塊303,用於通過所述解密驗籤端將c3的數據類型轉換為橢圓曲線e上的點s,檢驗s∈g1是否成立;

第二驗證模塊304,用於若s∈g1不成立,則通過所述解密驗籤端直接判定則驗證失敗;

解密第一計算模塊305,用於若x∈g1以及s∈g1均成立,則通過解密驗籤端計算w=e(x,d_b);將w的數據類型轉換為比特串u;

解密第二計算模塊306,用於通過所述解密驗籤端準備密鑰派生輸入xi,其中,所述xi包含c1和u的拼接,可選地,還可拼接id_b;

解密第三計算模塊307,用於通過解密驗籤端計算和c2一樣長度的k=kdf(xi);

解密第四計算模塊308,用於通過解密驗籤端計算m=c2⊕k;

解密第五計算模塊309,用於通過所述解密驗籤端準備哈希輸入hi,其中,所述hi包含一個哈希操作索引、m和u的拼接,可選地,還可以拼接c1、id_a、id_b

解密第六計算模塊310,用於通過解密驗籤端計算整數h=h(hi);

解密第七計算模塊311,用於通過解密驗籤端計算加密籤名端的公鑰q_a=[h1]f2+[s]f2;

解密第八計算模塊312,用於通過解密驗籤端計算u=e(s,q_a);

解密第九計算模塊313,用於通過解密驗籤端計算f=e(f1,[x]f2);

第二驗證模塊314,用於通過解密驗籤端檢驗f=u是否成立,若是,則驗證通過,否則驗證失敗,解密輸出空值。

上述各模塊即為解密驗籤的過程中使用的裝置,解密驗籤過程簡單而安全。

本發明實施例的不可抵賴的籤名裝置,加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短,驗證簡單,既保證了數據的私密性,又保證了數據的真實性。

本發明實施例還提供一種終端300,包括存儲器301和處理器302;上述存儲器301用於存儲支持不可抵賴的加密籤名裝置執行上述任一項中的不可抵賴的加密籤名方法的程序;處理器302被配置為用於執行所述存儲器中存儲的程序。

上述終端300可以為智能電子設備,如電腦、筆記本電腦、智慧型手機、平板電腦等。

上述終端300,在加密籤名時,即為加密籤名端,在解密驗籤時,即為解密驗籤端。

本發明實施例的終端300,加密籤名結果數據是通過短籤形成的,所以加密籤名端輸出結果長度短,驗證簡單,既保證了數據的私密性,又保證了數據的真實性。

以上所述僅為本發明的優選實施例,並非因此限制本發明的專利範圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發明的專利保護範圍內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀