專利名稱:一種Web表單中使用數(shù)字證書(shū)自動(dòng)簽名的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)Web應(yīng)用中,使用數(shù)字證書(shū)對(duì)表單提交的數(shù)據(jù)進(jìn)行自動(dòng) 簽名的系統(tǒng)和方法。尤其當(dāng)用戶使用數(shù)字證書(shū)進(jìn)行身份驗(yàn)證并登陸到應(yīng)用系統(tǒng)后, 后續(xù)表單提交過(guò)程中,自動(dòng)選擇用戶數(shù)字證書(shū)作為用戶簽名證書(shū),對(duì)表單進(jìn)行簽名 的方法。
背景技術(shù):
數(shù)字證書(shū)是證明用戶身份的網(wǎng)上標(biāo)識(shí),在網(wǎng)絡(luò)中識(shí)別通訊各方的身份,即在虛 擬社會(huì)中解決"我是誰(shuí)"的問(wèn)題。通俗的講,數(shù)字證書(shū)就好像是網(wǎng)上用戶的身份證, 能夠保證您在網(wǎng)絡(luò)上進(jìn)行的交易是安全的和可信的。數(shù)字證書(shū)主要有如下作用
1、 身份認(rèn)證
數(shù)字證書(shū)中包括的主要內(nèi)容有證書(shū)擁有者的單位信息、證書(shū)擁有者的公鑰、
公鑰的有效期、頒發(fā)數(shù)字證書(shū)的CA、 CA的數(shù)字簽名等。
2、 加密傳輸信息
通過(guò)數(shù)字證書(shū)在網(wǎng)上傳輸數(shù)據(jù),這些數(shù)據(jù)要進(jìn)行加密,然后以密碼的形式在 Internet上傳輸。發(fā)送方用接收方的公鑰對(duì)文件進(jìn)行加密,接收方用只有自己才有 的私鑰進(jìn)行解密,得到文件明文。
3、 數(shù)字簽名抗否認(rèn)
在現(xiàn)實(shí)生活中用公章、簽名等來(lái)實(shí)現(xiàn)的抗否認(rèn),在網(wǎng)上可以借助數(shù)字證書(shū)的數(shù) 字簽名來(lái)實(shí)現(xiàn)。
數(shù)字證書(shū)被廣泛的使用于軍事、金融、電子政務(wù)和電子商務(wù)領(lǐng)域,用于在因特 網(wǎng)中識(shí)別使用者的身份,并且可以使用數(shù)字證書(shū)對(duì)網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)進(jìn)行簽名,以 達(dá)到不可否認(rèn)的目的。
在實(shí)際操作過(guò)程中,由于Web應(yīng)用的特殊性,Web控件在每次頁(yè)面重新加載時(shí) 都會(huì)重置,無(wú)法將相關(guān)設(shè)置保存并多次使用。即使用數(shù)字證書(shū)對(duì)Web表單進(jìn)行簽名 應(yīng)用中,用戶每次提交表單,都需要手動(dòng)選擇數(shù)字證書(shū)。多次手動(dòng)選擇數(shù)字證書(shū)在 實(shí)際操作過(guò)程中,顯得十分繁瑣,用戶體驗(yàn)很差,特別是當(dāng)有多個(gè)表單提交時(shí)(比如在網(wǎng)上報(bào)稅時(shí),每個(gè)用戶都需要填很多份表)尤其明顯;并且當(dāng)用戶計(jì)算機(jī)中安 裝有多個(gè)數(shù)字證書(shū)時(shí),容易出現(xiàn)交叉簽名現(xiàn)象。即用戶使用A證書(shū)登陸,使用B證 書(shū)簽名,或者X表單使用A證書(shū)簽名,Y表單使用B證書(shū)簽名,造成混亂。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是根據(jù)上文中提到Web應(yīng)用的特點(diǎn),即不能將上次 交互操作中用戶的選擇保存,然后在下次操作中使用的限制,提出的一種當(dāng)用戶在 之前的交互中手動(dòng)選擇用戶證書(shū)后,后續(xù)的表單自動(dòng)選擇同一張數(shù)字證書(shū)對(duì)表單簽 名的方法。
傳統(tǒng)的表單簽名操作步驟如下
1、 首先用戶打開(kāi)瀏覽器,輸入目標(biāo)網(wǎng)址,嘗試訪問(wèn)目標(biāo)應(yīng)用系統(tǒng)。
2、 瀏覽器彈出對(duì)話框,強(qiáng)制用戶進(jìn)行數(shù)字證書(shū)個(gè)人身份認(rèn)證。對(duì)話框中列出計(jì) 算機(jī)中所有合法的個(gè)人證書(shū),用戶必須選擇一個(gè)合法的證書(shū)并點(diǎn)"確定"按 鈕提交個(gè)人證書(shū)。
3、 應(yīng)用服務(wù)器返回給用戶Web表單。
4、 用戶根據(jù)應(yīng)用表單項(xiàng)和自己的實(shí)際情況,如實(shí)填寫表單內(nèi)容。填寫完成后, 點(diǎn)擊"提交"按鈕提交表單。
5、 點(diǎn)擊"提交"按鈕后,瀏覽器彈出對(duì)話框,對(duì)話框中列出用戶終端中所有可 用個(gè)人證書(shū),用戶選擇正確的證書(shū)后,點(diǎn)"確認(rèn)"按鈕將表單內(nèi)容使用此對(duì) 話框中選定的數(shù)字證書(shū)簽名后提交給服務(wù)器。
以上為一個(gè)傳統(tǒng)的表單簽名的操作步驟,當(dāng)有多個(gè)表單提交時(shí),3, 4, 5步重 復(fù)進(jìn)行。用戶在第2步和第5步中都手動(dòng)選擇用戶數(shù)字證書(shū)分別用于登陸和簽名。 本發(fā)明要解決的問(wèn)題是當(dāng)用戶在前面的操作(包括但不限于登陸中手動(dòng)選擇的行為) 因應(yīng)用需要已經(jīng)手動(dòng)選擇數(shù)字證書(shū)A,則在后續(xù)的表單簽名(一次或者多次)中自動(dòng) 為用戶選擇數(shù)字證書(shū)A用于表單簽名。本發(fā)明在傳統(tǒng)的步驟上進(jìn)行改進(jìn),步驟如下
1、 首先用戶打開(kāi)瀏覽器,輸入目標(biāo)網(wǎng)址,嘗試訪問(wèn)目標(biāo)應(yīng)用系統(tǒng)。
2、 瀏覽器彈出對(duì)話框,強(qiáng)制用戶進(jìn)行數(shù)字證書(shū)個(gè)人身份認(rèn)證。對(duì)話框中列出計(jì) 算機(jī)中所有合法的個(gè)人證書(shū),用戶必須選擇一個(gè)合法的證書(shū)并點(diǎn)"確定"按 鈕提交個(gè)人證書(shū)。
2-1、應(yīng)用服務(wù)根據(jù)步驟2中用戶選擇的數(shù)字證書(shū),獲得確定其唯一性的標(biāo)識(shí)碼(比 如證書(shū)指紋)。3、 應(yīng)用服務(wù)器將步驟2-1中的用戶標(biāo)識(shí)碼和表單一起返回給用戶Web界面。
4、 用戶根據(jù)應(yīng)用表單項(xiàng)和自己的實(shí)際情況,如實(shí)填寫表單內(nèi)容。填寫完表單后, 點(diǎn)擊"提交"按鈕提交表單。
5、 點(diǎn)擊"提交"按鈕后,簽名控件從用戶終端中查找所有可用證書(shū),并自動(dòng)使 用與應(yīng)用服務(wù)器返回的唯一標(biāo)識(shí)碼一致的數(shù)字證書(shū)簽名表單,提交給服務(wù)器。
其中
步驟2可以為任何需要用戶手動(dòng)選擇數(shù)字證書(shū)的操作,不僅限于身份認(rèn)證 登陸操作。
*步驟2本身可以為表單簽名操作,則第一次表單簽名時(shí)手動(dòng)選擇數(shù)字證書(shū), 同一會(huì)話中后續(xù)表單簽名(如果應(yīng)用中有多次表單簽名)則適用使用本發(fā) 明中的自動(dòng)簽名方法。
*在同一會(huì)話中,如果某次表單簽名之前,服務(wù)器以任何方式已經(jīng)獲得用戶 數(shù)字證書(shū)唯一標(biāo)識(shí)碼,則適用本發(fā)明的自動(dòng)簽名方法。
*如果用戶要多次提交表單,則步驟3,4,5多次循環(huán)。 在實(shí)際表單簽名應(yīng)用中,本發(fā)明方法避免用戶多次重復(fù)選擇用戶證書(shū),即做到
一次手動(dòng)選擇,多次使用。既避免了交叉簽名提交的非法或者無(wú)效表單帶來(lái)的麻煩, 減少了誤操作發(fā)生的概率,又減少手動(dòng)選擇證書(shū)的次數(shù),有效的改善了用戶體驗(yàn)。
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的說(shuō)明。
圖1為常見(jiàn)的使用數(shù)字證書(shū)身份認(rèn)證后使用本發(fā)明進(jìn)行表單自動(dòng)簽名的過(guò)程 圖2為沒(méi)有使用數(shù)字證書(shū)身份認(rèn)證登陸時(shí)使用本發(fā)明對(duì)多個(gè)表單自動(dòng)簽名的過(guò)
程
具體實(shí)施例方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步描述。 實(shí)施例一,如圖l所示
本實(shí)施例以常見(jiàn)的SSL應(yīng)用(注l)為例,用戶通過(guò)手動(dòng)選擇數(shù)字證書(shū)登陸應(yīng)
用系統(tǒng),然后提交一個(gè)表單并簽名,表單自動(dòng)簽名的步驟如下-
1、 用戶在瀏覽器中輸入地址,以https協(xié)議通過(guò)加密訪問(wèn)SSL來(lái)嘗試訪問(wèn) 目標(biāo)應(yīng)用。2、 SSL根據(jù)設(shè)置的級(jí)別,發(fā)送命令給用戶瀏覽器,瀏覽器彈出證書(shū)選擇對(duì) 話框,強(qiáng)制用戶出示數(shù)字證書(shū)。
3、 用戶在證書(shū)框中選擇自己的數(shù)字證書(shū)并點(diǎn)"確定"按鈕確定。
4、 SSL獲得用戶提交的數(shù)字證書(shū)相關(guān)信息,并將證書(shū)的指紋(唯一標(biāo)識(shí)碼) 傳遞給應(yīng)用服務(wù)器。
5、 應(yīng)用服務(wù)器從SSL獲得訪問(wèn)請(qǐng)求和用戶數(shù)字證書(shū)相關(guān)信息后,并進(jìn)行相 關(guān)身份驗(yàn)證,如果非法,則拒絕訪問(wèn)。如果合法則進(jìn)行下一步。
6、 應(yīng)用服務(wù)器返回給用戶Web表單頁(yè),表單頁(yè)中包含用戶數(shù)字證書(shū)指紋。 并檢査用戶是否安裝相關(guān)的表單簽名控件,如果未檢査到簽名控制,則 提示用戶安裝簽名控件。如果檢査到用戶已安裝簽名控件,則進(jìn)行下一 步。
7、 用戶根據(jù)實(shí)際情況填寫表單,填寫完成后,點(diǎn)"提交"按鈕。
8、 簽名控件從用戶終端中查找所有可用證書(shū),如果查找到與表單中包含的 指紋一致的數(shù)字證書(shū),則使用此證書(shū)對(duì)表單進(jìn)行簽名并提交到服務(wù)器。 如果查不到與表單中包含的指紋一致的證書(shū),則根據(jù)應(yīng)用需要進(jìn)行相應(yīng) 處理。
注1:在網(wǎng)絡(luò)中有多種用戶身份認(rèn)證方式,常見(jiàn)的身份認(rèn)證方式則是用戶名口 令認(rèn)證方式。而在金融,軍事等對(duì)可靠性要求非常高的應(yīng)用中,常用SSL和數(shù) 字證書(shū)進(jìn)行身份認(rèn)證,用戶在登陸系統(tǒng)中,要求出示數(shù)字證書(shū)并驗(yàn)證身份信息。
實(shí)施例二,如圖2所示
本實(shí)施例以沒(méi)有用戶身份登陸過(guò)程,僅有兩個(gè)表單需要簽名為例,描述本發(fā)明 中的自動(dòng)簽名的使用過(guò)程
1. 用戶在瀏覽器中輸入應(yīng)用服務(wù)地址,嘗試訪問(wèn)目標(biāo)應(yīng)用。
2. 應(yīng)用服務(wù)器返回給用戶Web表單頁(yè),并檢査用戶是否安裝相關(guān)的表單簽名 控件,如果未檢查到簽名控制,則提示用戶安裝簽名控件。如果檢查到用 戶已安裝簽名控件,則進(jìn)行下一步。
3. 用戶根據(jù)實(shí)際情況填寫表單,填寫完成后,點(diǎn)"提交"按鈕。
4. 瀏覽器彈出數(shù)字證書(shū)選擇對(duì)話框,用戶選擇用于簽名的數(shù)字證書(shū)后,點(diǎn)"確 定"按鈕。5. 簽名控件使用步驟4中選擇的數(shù)字證書(shū)對(duì)表單進(jìn)行簽名,并發(fā)送到應(yīng)用服 務(wù)器。
6. 應(yīng)用服務(wù)器通過(guò)步驟5中表單簽名提交信息獲得用戶數(shù)字證書(shū)唯一標(biāo)識(shí)識(shí) 別碼指紋。
7. 應(yīng)用服務(wù)器返回給用戶下一個(gè)Web表單頁(yè),表單頁(yè)中包含用戶數(shù)字證書(shū)指 紋。并檢查用戶是否安裝相關(guān)的表單簽名控件,如果未檢查到簽名控制, 則提示用戶安裝簽名控件。如果檢査到用戶已安裝簽名控件,則進(jìn)行下一 步。
8. 用戶根據(jù)實(shí)際情況填寫表單,填寫完成后,點(diǎn)"提交"按鈕。
9. 簽名控件從用戶終端中查找所有可用證書(shū),如果査找到與表單中包含的指 紋一致的數(shù)字證書(shū),則使用此證書(shū)對(duì)表單進(jìn)行簽名并提交到服務(wù)器。如果 查不到與表單中包含的指紋一致的證書(shū),則根據(jù)應(yīng)用需要進(jìn)行相應(yīng)處理。
雖然本發(fā)明通過(guò)實(shí)施例進(jìn)行了描述,但實(shí)施例并非用來(lái)限定本發(fā)明。本領(lǐng)域技 術(shù)人員可在本發(fā)明的精神的范圍內(nèi),做出各種變形和改進(jìn),所附的權(quán)利要求應(yīng)包括 這些變形和改進(jìn)。
權(quán)利要求
1、一種Web表單中使用數(shù)字證書(shū)自動(dòng)簽名的方法,其特征在于,它包括以下步驟步驟1、首先用戶打開(kāi)瀏覽器,輸入目標(biāo)網(wǎng)址,嘗試訪問(wèn)目標(biāo)應(yīng)用系統(tǒng);步驟2+A、瀏覽器彈出對(duì)話框,強(qiáng)制用戶進(jìn)行數(shù)字證書(shū)個(gè)人身份認(rèn)證;證書(shū)選擇對(duì)話框中列出終端中所有可用證書(shū),用戶必須選擇一個(gè)合法的證書(shū)并點(diǎn)”確定”按鈕提交個(gè)人證書(shū);步驟2+B、應(yīng)用服務(wù)根據(jù)步驟2+A中用戶選擇的數(shù)字證書(shū),獲得確定其唯一性的標(biāo)識(shí)碼;步驟3、應(yīng)用服務(wù)器將步驟2+B中的用戶標(biāo)識(shí)碼和表單一起返回給用戶;步驟4、用戶根據(jù)應(yīng)用表單項(xiàng)和自己的實(shí)際情況,如實(shí)填寫表單內(nèi)容;填寫完表單后,點(diǎn)擊”提交”按鈕提交表單;步驟5、點(diǎn)擊“提交”按鈕后,簽名控件從用戶終端中查找所有可用證書(shū),并自動(dòng)使用與應(yīng)用服務(wù)器返回的唯一標(biāo)識(shí)碼一致的數(shù)字證書(shū)簽名表單,提交給服務(wù)器。
2、 根據(jù)權(quán)利要求1所述的Web表單中使用數(shù)字證書(shū)自動(dòng)簽名的方法,其特征在 于,步驟2可以為任何需要用戶手動(dòng)選擇數(shù)字證書(shū)的操作,不僅限于身份認(rèn)證登陸操 作。
3、 根據(jù)權(quán)利要求l所述的Web表單中使用數(shù)字證書(shū)自動(dòng)簽名的方法,其特征在 于,如果用戶要多次提交表單,則步驟3、步驟4、步驟5多次循環(huán)。
4、 一種Web表單中使用數(shù)字證書(shū)自動(dòng)簽名的系統(tǒng),其特征在于,它包括以下單元,登陸單元此單元的目的是訪問(wèn)應(yīng)用系統(tǒng),用戶打開(kāi)瀏覽器,輸入目標(biāo)網(wǎng)址,嘗試 訪問(wèn)目標(biāo)應(yīng)用系統(tǒng);手動(dòng)選擇數(shù)字證書(shū)單元此單元目的是用戶第一次涉及到數(shù)字證書(shū),需要手動(dòng)選擇, 瀏覽器彈出對(duì)話框,強(qiáng)制用戶選擇數(shù)字證書(shū)個(gè)人身份認(rèn)證;對(duì)話框中列出計(jì)算機(jī)中所 有可用的個(gè)人證書(shū),用戶必須選擇一張證書(shū)并點(diǎn)"確定"按鈕提交個(gè)人證書(shū);標(biāo)識(shí)單元此單元目的是指應(yīng)用服務(wù)器要獲得手動(dòng)選擇數(shù)字證書(shū)單元中的證書(shū)的唯 一標(biāo)識(shí)碼;返回單元此單元中返回表單和標(biāo)識(shí)碼,應(yīng)用服務(wù)器將用戶標(biāo)識(shí)碼和表單一起返回給用戶;填寫單元用戶填寫數(shù)據(jù);自動(dòng)選擇證書(shū)進(jìn)行簽名單元:簽名控件査找終端中所有可用證書(shū),并使用與應(yīng)用服 務(wù)器返回的標(biāo)識(shí)碼一致的數(shù)字證書(shū)簽名表單,提交給服務(wù)器。
全文摘要
本發(fā)明提出了一種在使用數(shù)字證書(shū)對(duì)表單進(jìn)行自動(dòng)簽名的方法,應(yīng)用服務(wù)器將用戶在前面手動(dòng)選擇的數(shù)字證書(shū)唯一標(biāo)識(shí)碼傳遞給用戶界面,用戶本地的瀏覽器簽名控件從本地個(gè)人數(shù)字證書(shū)列表中查找到與應(yīng)用傳遞過(guò)來(lái)的唯一標(biāo)識(shí)碼一致的證書(shū)對(duì)表單自動(dòng)簽名,并提交給應(yīng)用服務(wù)器。本發(fā)明方法避免用戶多次重復(fù)選擇用戶證書(shū),做到一次手動(dòng)選擇,多次使用。即避免了交叉簽名提交的非法或者無(wú)效表單帶來(lái)的麻煩、減少了誤操作發(fā)生的概率,又減少手動(dòng)選擇證書(shū)的次數(shù),有效的改善了用戶體驗(yàn)。
文檔編號(hào)H04L9/32GK101610157SQ20091018154
公開(kāi)日2009年12月23日 申請(qǐng)日期2009年7月28日 優(yōu)先權(quán)日2009年7月28日
發(fā)明者莊昱垚, 陳力芳, 陳國(guó)強(qiáng) 申請(qǐng)人:江蘇先安科技有限公司