專利名稱:一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法,具體地說是一種簽 名方使用一種用于限定簽名內(nèi)容的的數(shù)字證書對特定的文檔進(jìn)行數(shù)字簽名的方法,屬于信 息安全領(lǐng)域。
背景技術(shù):
公鑰密碼技術(shù)在網(wǎng)絡(luò)通信中一般應(yīng)用于數(shù)據(jù)保密、身份認(rèn)證、數(shù)據(jù)完整性保護(hù)和 抗抵賴。在使用公鑰密碼系統(tǒng)進(jìn)行數(shù)字簽名時,簽名者首先生成一對公鑰/私鑰對,保存私 鑰,同時由數(shù)字證書認(rèn)證中心(CA中心,Certificate Authority)簽發(fā)數(shù)字證書綁定公鑰 和簽名者身份,以確保公鑰是簽名者的。一般數(shù)字證書的簽名流程中,簽名者使用其私鑰對文檔簽名,驗(yàn)證者使用簽名者 證書中的公鑰驗(yàn)證簽名。由于數(shù)字證書僅指明公鑰與其所有者關(guān)系,簽名者可使用同一個 私鑰對任意文檔簽名,驗(yàn)證方使用同一個公鑰驗(yàn)證簽名。存在這樣一種情形,簽名者對某個紙質(zhì)文檔進(jìn)行手寫簽名,同時業(yè)務(wù)系統(tǒng)需保存 經(jīng)過數(shù)字簽名的相應(yīng)電子文檔,并且對電子文檔的數(shù)字簽名須和紙質(zhì)文檔的簽名對應(yīng)。這 就需要一種數(shù)字簽名方法,此方法中數(shù)字證書和手寫簽名類似,只對特定文檔進(jìn)行簽名,并 且數(shù)字證書所簽的電子文檔正是手寫簽名所簽的紙質(zhì)文檔。通過此方法簽名的電子文檔不 僅可保證文檔完整性,進(jìn)行數(shù)據(jù)源鑒別,提供抗抵賴性,還能和紙質(zhì)文檔的手寫簽名建立可 靠對應(yīng),標(biāo)明相應(yīng)的手寫簽名圖像和簽名時間?,F(xiàn)有方法中,尚沒有一種應(yīng)用于上述場景的數(shù)字簽名方法。通過應(yīng)用一種用于限 定簽名內(nèi)容的數(shù)字證書,設(shè)計(jì)一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法可以解決上 述問題。本發(fā)明的目的是提供一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法,該方法中 一個數(shù)字證書只對一個特定文檔進(jìn)行數(shù)字簽名,同時保存的簽名文檔能標(biāo)明和紙質(zhì)文檔對 應(yīng)的手寫簽名圖像和簽名時間。
發(fā)明內(nèi)容
(一)要解決的問題本發(fā)明的目的是提供一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法,該方法允 許簽名者在對紙質(zhì)文檔進(jìn)行手寫簽名同時,生成經(jīng)過數(shù)字簽名的電子文檔,并且此電子文 檔能和手寫簽名的紙質(zhì)文檔對應(yīng),標(biāo)明了相應(yīng)的手寫簽名圖像和簽名時間。( 二 )技術(shù)方案為達(dá)到上述目的,本發(fā)明技術(shù)方案思路如下首先簽名者獲得一種用于限定簽名內(nèi)容的數(shù)字證書;其次簽名者使用此數(shù)字證書 對應(yīng)的私鑰對電子文檔進(jìn)行數(shù)字簽名;之后可信第三方時間戳服務(wù)器為此數(shù)字簽名簽發(fā)時 間戳;最后簽名者把附帶數(shù)字證書和時間戳的簽名數(shù)據(jù)包發(fā)送給驗(yàn)證者并由驗(yàn)證者驗(yàn)證簽
4名數(shù)據(jù)包,同時生成與紙質(zhì)簽名對應(yīng)的簽名電子文檔并存檔。圖1為一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方案圖,該方案具體步驟如 下[1]簽名者保存簽名私鑰,獲取用于限定簽名內(nèi)容的數(shù)字證書,該證書內(nèi)容包括 簽名者的手寫簽名圖像、待簽名文檔的散列值、簽名者公鑰、簽名者身份信息、以及CA中心 對上述內(nèi)容的簽名。[2]簽名者把用手寫簽名的紙質(zhì)文檔生成電子文檔,并使用私鑰對此電子文檔進(jìn) 行數(shù)字簽名。[3]簽名者把步驟1獲得的把數(shù)字證書、步驟2的電子文檔散列值及其數(shù)字簽名值 打包成時間戳申請數(shù)據(jù)包,并發(fā)送給時間戳服務(wù)器。[4]時間戳服務(wù)器接收到步驟3發(fā)來的時間戳申請數(shù)據(jù)包,然后驗(yàn)證時間戳申請 數(shù)據(jù)包,驗(yàn)證內(nèi)容包括驗(yàn)證數(shù)字證書、數(shù)字簽名、以及時間戳申請數(shù)據(jù)包中的電子文檔的 散列值與數(shù)字證書中待簽名文檔的散列值一致;如果上述驗(yàn)證通過,則時間戳服務(wù)器生成 時間戳,并返回給簽名者,時間戳的內(nèi)容包含時間戳申請數(shù)據(jù)包的散列值、當(dāng)前時間、以及 時間戳服務(wù)器對這兩項(xiàng)的簽名。[5]簽名者收到步驟4發(fā)來的時間戳,之后把步驟2生成的電子文檔和簽名者對電 子文檔的數(shù)字簽名、步驟1獲得的數(shù)字證書、、以及時間戳打包成簽名數(shù)據(jù)包并發(fā)送給驗(yàn)證
者ο[6]驗(yàn)證者接收步驟5發(fā)來的簽名數(shù)據(jù)包,并驗(yàn)證其正確性,之后生成簽名電子文 檔并存檔。簽名數(shù)據(jù)包的驗(yàn)證內(nèi)容包括驗(yàn)證數(shù)字證書、時間戳、數(shù)字簽名、以及電子文檔的 散列值和數(shù)字證書所包含的待簽名文檔散列值一致;如果通過驗(yàn)證,則驗(yàn)證者從證書中提 取出手寫簽名圖像、從時間戳中提取出簽名時間,并在電子文檔中嵌入手寫簽名圖像和簽 名時間生成簽名電子文檔,之后把簽名電子文檔和簽名數(shù)據(jù)包存檔。第1步為進(jìn)行能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名之前的準(zhǔn)備,即獲得私鑰和 用于限定簽名內(nèi)容的數(shù)字證書。此數(shù)字證書不僅綁定了公鑰和簽名者身份,還綁定了公鑰 與手寫簽名及所簽文檔。第2步中簽名者所簽的電子文檔需與在第1步數(shù)字證書中散列值所對應(yīng)的特定文 檔相同,也就是說此數(shù)字證書專為特定的文檔所申請,不能應(yīng)用于其它文檔的簽名。第4步中時間戳服務(wù)器驗(yàn)證時間戳申請數(shù)據(jù)包,驗(yàn)證通過則說明申請時間戳的數(shù) 字簽名為數(shù)字證書中特定文檔的簽名,即簽名者所簽的電子文檔為手寫簽名對應(yīng)的紙質(zhì)文 檔。第6步驗(yàn)證者驗(yàn)證簽名數(shù)據(jù)包,驗(yàn)證通過則說明驗(yàn)證者驗(yàn)證了所簽的電子文檔既 為數(shù)字證書指定的特定文檔,即數(shù)字簽名的文檔對應(yīng)手寫簽名所簽的紙質(zhì)文檔,同時通過 時間戳可獲得簽名時間。驗(yàn)證者把嵌入手寫簽名圖像和簽名時間的簽名電子文檔以及簽名數(shù)據(jù)包存檔,可 保證此數(shù)字簽名能與手寫簽名建立可靠對應(yīng),即簽名電子文檔從形式上與手寫簽名文檔一 致,簽名數(shù)據(jù)包在法律依據(jù)上與手寫簽名一致。(三)有益效果從上訴方案可知,本發(fā)明具有如下效益
5
1.本發(fā)明應(yīng)用一種用于限定簽名內(nèi)容的數(shù)字證書對特定文檔進(jìn)行數(shù)字簽名和驗(yàn) 證,實(shí)現(xiàn)一個手寫簽名圖像和相應(yīng)的數(shù)字證書和簽名文檔的綁定,一個手寫簽名圖像只能 對應(yīng)于一個特定文檔的數(shù)字簽名。2.本發(fā)明通過時間戳可以確保,用于限定簽名內(nèi)容的數(shù)字證書已在特定的時間使 用過,同時明確了對特定文檔的簽名時間。3.本發(fā)明通過對嵌入手寫簽名圖像和簽名時間的簽名電子文檔以及簽名數(shù)據(jù)包 進(jìn)行存檔,可確保此數(shù)字簽名能與手寫簽名建立可靠對應(yīng),也就是說存檔的簽名電子文檔 在形式上和手寫簽名的紙質(zhì)文檔對應(yīng),即能在電子文檔中形象地展示手寫簽名和簽名時 間,同時簽名數(shù)據(jù)包在法律依據(jù)上與手寫簽名一致。
圖1是一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方案圖。圖2是一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名流程圖。
具體實(shí)施例方式圖2為一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名流程圖,為了進(jìn)一步明確本發(fā) 明的技術(shù)方案,下面結(jié)合圖2對一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名流程進(jìn)行詳細(xì) 說明。本例中的數(shù)字證書為包含簽名者手寫簽名圖像和待簽名文檔散列值的特定數(shù)字證 書,具體步驟如下步驟1 簽名者生成紙質(zhì)文檔所對應(yīng)的電子文檔M,獲得手寫簽名圖像HSig,待簽 名文檔散列值H,公鑰Kpu/私鑰Kpv對,簽名者本地保存私鑰Kpv及CA中心簽發(fā)的用于限定 簽名內(nèi)容的數(shù)字證書 Cert = (HSig, H,Kpu,SigCA(HSig, H,Kpu))。步驟2 簽名者計(jì)算簽名文檔M的散列值H',使用本地私鑰對簽名文檔簽名,得到 簽名值 SigKpv(H')。步驟3 簽名者向時間戳服務(wù)器TSA提交時間戳請求數(shù)據(jù)包TSArq,TSArq = (Cert, H',SigKpv(H'))。步驟4 時間戳服務(wù)器接收并驗(yàn)證TSArq的正確性,驗(yàn)證包括Cert的正確性, SigKpv(H')的正確性以及Cert中的H與TSArq的H'是否相等。步驟5 若步驟4驗(yàn)證通過,則TSA根據(jù)當(dāng)前時間time為簽名者生成時間戳,時間 戮為 timestamp = (Hash (TSArq),time, SigTSA(Hash (TSArq),time))。步驟6 簽名者接收到TSA于步驟5發(fā)來的時間戳timestamp。步驟7 簽名者生成簽名數(shù)據(jù)包Sign發(fā)送給驗(yàn)證者,簽名數(shù)據(jù)包包含電子文檔 M,步驟1的數(shù)字證書Cert、簽名者在步驟6獲得的時間戳timestamp、簽名者在步驟2生 成的電子文檔M的簽名值SigKpv(H'),即數(shù)據(jù)包的內(nèi)容為Sign = (Μ, Cert, timestamp, SigKPv (H' ))°步驟8 驗(yàn)證者收到簽名者于步驟7發(fā)來的簽名數(shù)據(jù)包Sign。步驟9 驗(yàn)證者驗(yàn)證于步驟8收到的簽名數(shù)據(jù)包中的數(shù)字證書Cert,即驗(yàn)證Cert 的正確性、有效性及證書是否被吊銷。步驟10 驗(yàn)證者驗(yàn)證于步驟8收到的簽名數(shù)據(jù)包中的時間戳timestamp的正確
步驟11 驗(yàn)證者驗(yàn)證于步驟8收到的簽名數(shù)據(jù)包中的簽名值SigKpv(H')。驗(yàn)證過 程包括如下兩步1、驗(yàn)證者計(jì)算簽名數(shù)據(jù)包中M的散列值H",使用證書Cert中的公鑰Kpu 解密SigKpv(H')并與H"比較,若相等則簽名正確;II、驗(yàn)證者對比H"和證書Cert中的待 簽名文檔散列值H是否匹配。步驟12 若步驟9、10、11的驗(yàn)證通過,驗(yàn)證者從證書中提取手寫簽名圖像,從時間 戳中提取簽名時間,把手寫簽名圖像和簽名時間嵌入電子文檔形成簽名電子文檔,同時保 存簽名電子文檔和簽名數(shù)據(jù)包。以上所述的具體實(shí)施步驟,對本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步 詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施步驟而已,并不用于限制本發(fā) 明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明 的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種于手寫簽名對應(yīng)的數(shù)字簽名方法,其特征在于,應(yīng)用基于手寫簽名生成的數(shù)字證書對特定文檔進(jìn)行簽名的方法,該方法包括如下6個步驟[1]簽名者保存簽名私鑰,獲取用于限定簽名內(nèi)容的數(shù)字證書,該證書內(nèi)容包括簽名者的手寫簽名圖像、待簽名文檔的散列值、簽名者公鑰、簽名者身份信息、以及CA中心對上述內(nèi)容的簽名。[2]簽名者把用手寫簽名的紙質(zhì)文檔生成電子文檔,并使用私鑰對此電子文檔進(jìn)行數(shù)字簽名。[3]簽名者把步驟1獲得的把數(shù)字證書、步驟2的電子文檔散列值及其數(shù)字簽名值打包成時間戳申請數(shù)據(jù)包,并發(fā)送給時間戳服務(wù)器。[4]時間戳服務(wù)器接收到步驟3發(fā)來的時間戳申請數(shù)據(jù)包,然后驗(yàn)證時間戳申請數(shù)據(jù)包,驗(yàn)證內(nèi)容包括驗(yàn)證數(shù)字證書、數(shù)字簽名、以及時間戳申請數(shù)據(jù)包中的電子文檔的散列值與數(shù)字證書中待簽名文檔的散列值一致;如果上述驗(yàn)證通過,則時間戳服務(wù)器生成時間戳,并返回給簽名者,時間戳的內(nèi)容包含時間戳申請數(shù)據(jù)包的散列值、當(dāng)前時間、以及時間戳服務(wù)器對這兩項(xiàng)的簽名。[5]簽名者收到步驟4發(fā)來的時間戳,之后把步驟2生成的電子文檔和簽名者對電子文檔的數(shù)字簽名、步驟1獲得的數(shù)字證書、、以及時間戳打包成簽名數(shù)據(jù)包并發(fā)送給驗(yàn)證者。[6]驗(yàn)證者接收步驟5發(fā)來的簽名數(shù)據(jù)包,并驗(yàn)證其正確性,之后生成簽名電子文檔并存檔。簽名數(shù)據(jù)包的驗(yàn)證內(nèi)容包括驗(yàn)證數(shù)字證書、時間戳、數(shù)字簽名、以及電子文檔的散列值和數(shù)字證書所包含的待簽名文檔散列值一致;如果通過驗(yàn)證,則驗(yàn)證者從證書中提取出手寫簽名圖像、從時間戳中提取出簽名時間,并在電子文檔中嵌入手寫簽名圖像和簽名時間生成簽名電子文檔,之后把簽名電子文檔和簽名數(shù)據(jù)包存檔。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟1所述簽名者保存私鑰的方法為簽名 者生成非對稱算法的公鑰/私鑰對,簽名者保存私鑰。
3.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟1所述簽名者獲得一種用于限定簽名內(nèi) 容的數(shù)字證書的方法為簽名者用手寫簽名圖像、待簽名文檔的散列值、簽名者公鑰、簽名 者身份信息向CA中心申請基于手寫簽名生成的數(shù)字證書,CA中心根據(jù)上訴消息給簽名者 簽發(fā)基于手寫簽名生成的數(shù)字證書。
4.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟2所訴電子文檔為簽名者所需簽名的電 子文檔,是與手寫簽名所簽的紙質(zhì)文檔對應(yīng)的電子文檔。
5.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟2所述簽名者使用私鑰對電子文檔進(jìn)行 數(shù)字簽名的方法為簽名者計(jì)算電子文檔的散列值,簽名者使用與其數(shù)字證書對應(yīng)的私鑰 對此散列值簽名得到簽名值。
6.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟4所述生成時間戳的方法為TSA計(jì)算 時間戳申請數(shù)據(jù)包的散列值、獲得當(dāng)前時間作為簽名時間、TSA對上述兩項(xiàng)內(nèi)容簽名,此三 項(xiàng)內(nèi)容即構(gòu)成時間戳。
7.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟6所述驗(yàn)證數(shù)字證書有效性的方法為 驗(yàn)證者使用CA中心的公鑰驗(yàn)證簽名數(shù)據(jù)包中數(shù)字證書的正確性,檢查證書的有效期,察看 證書是否被吊銷。
8.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟6所述驗(yàn)證時間戳正確性的方法為驗(yàn)證者計(jì)算簽名數(shù)據(jù)包中的電子文檔散列值,簽名者對簽名數(shù)據(jù)包中的數(shù)字證書、簽名數(shù)據(jù) 包中的電子文檔散列值、簽名數(shù)據(jù)包中的簽名值這三項(xiàng)進(jìn)行散列計(jì)算得到H3,之后把H3和 時間戳中所含的散列值比較,如果一致,則驗(yàn)證者使用TSA公鑰對時間戳中的簽名解密所 得的值和H3及時間戳中的時間進(jìn)行比較,若一致,則時間戳驗(yàn)證正確。
9.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟6所述驗(yàn)證簽名正確性的方法為應(yīng)用 簽名數(shù)據(jù)包中數(shù)字證書中的公鑰對簽名解密,所得的結(jié)果和簽名數(shù)據(jù)包中電子文檔的散列 值比較,如果一致,則簽名驗(yàn)證通過。
10.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟6所述驗(yàn)證電子文檔的散列值和數(shù)字 證書所包含的文檔散列值一致的方法為驗(yàn)證者計(jì)算簽名數(shù)據(jù)包中電子文檔的散列值,并 與簽名數(shù)據(jù)包中數(shù)字證書所含的散列值比較,如果一致,則驗(yàn)證通過。
11.根據(jù)權(quán)利要求1所述方法,其特征在于,步驟6所述生成簽名電子文檔的方法為 驗(yàn)證者從數(shù)字證書中提取出手寫簽名圖像,從時間戳中提取出簽名時間,把手寫簽名圖像 和簽名時間用顯現(xiàn)的方式嵌入到電子文檔中,此電子文檔即為簽名電子文檔。
全文摘要
本發(fā)明涉及一種能與手寫簽名建立可靠對應(yīng)的數(shù)字簽名方法,具體的說是基于一種用于限定簽名內(nèi)容的數(shù)字證書,對手寫簽名所對應(yīng)的電子文檔進(jìn)行數(shù)字簽名的方法。該方法允許簽名者在對紙質(zhì)文檔手寫簽名的同時,生成具有數(shù)字簽名的電子文檔,該電子文檔的數(shù)字簽名與手寫簽名具有一一對應(yīng)并且不可抵賴的特征。
文檔編號H04L29/06GK101931631SQ20101028183
公開日2010年12月29日 申請日期2010年9月15日 優(yōu)先權(quán)日2010年9月15日
發(fā)明者林雪焰, 王秀群, 詹榜華, 馬臣云 申請人:北京數(shù)字證書認(rèn)證中心有限公司