基於雙密鑰及數字證書體制的ic卡籤驗方法及系統的製作方法
2023-06-08 15:43:26 3
專利名稱:基於雙密鑰及數字證書體制的ic卡籤驗方法及系統的製作方法
技術領域:
本發明涉及IC卡數字籤驗技術領域,特別涉及一種基於雙密鑰及證書體制的IC 卡籤驗方法及系統。
背景技術:
目前全國大多省份陸續啟動並開展社會保障卡建設項目,但在安全保障方面,只 採用對稱密碼體制,單一的密碼口令驗證方式只能對參保人員的身份驗證,並不能防止交 易信息洩露、交易信息篡改等行為。
發明內容
(一)要解決的技術問題本發明要解決的技術問題是如何保證IC卡交易過程中的安全性。( 二 )技術方案一種基於雙密鑰及數字證書體制的IC卡籤驗方法,包括以下步驟Sl 利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證請求;S2 利用IC卡對應的數字證書中的公鑰驗證數字籤名。其中,所述步驟Sl具體包括步驟對需要籤名的數據進行摘要提取;利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名;讀出數字籤名後的籤名值以及數字證書或證書號;發送需要籤名的數據、籤名值以及數字證書或證書號的驗證請求。其中,所述步驟S2具體包括驗證數字證書的真實性,或通過證書號獲取數字證書再驗證數字證書的真實性;利用數字證書中的公鑰對籤名值進行脫籤,並獲取脫籤結果;對需要籤名的數據進行摘要提取,並對比提取摘要的結果和脫籤結果,若摘要的 結果和脫籤結果一致,則保存需要籤名的數據、籤名值以及證書或證書號,並處理需要籤名 的數據,否則記錄失敗信息,包括記錄時間、錯誤號,需要籤名的數據、籤名值以及證書或證 書號。一種基於雙密鑰及數字證書體制的IC卡籤驗系統,包括數字籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送 驗證請求;數字籤名驗證模塊,用於利用IC卡對應的數字證書中的公鑰驗證數字籤名。其中,所述數字籤名模塊包括摘要提取模塊,用於對需要籤名的數據進行摘要提取;籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名;籤名信息讀取模塊,用於讀出數字籤名後的籤名值以及數字證書或證書號;
請求驗證模塊,用於發送對需要籤名的數據、籤名值以及數字證書或證書號的驗 證請求。其中,所述數字籤名驗證模塊包括數字證書驗證模塊,用於驗證數字證書的真實性,或通過證書號獲取數字證書再 驗證數字證書的真實性;脫籤模塊,用於利用數字證書中的公鑰對籤名值進行脫籤,並獲取脫籤結果;比較驗證模塊,用於對需要籤名的數據進行摘要提取,並對比提取摘要的結果和 脫籤結果,若摘要的結果和脫籤結果一致,則保存需要籤名的數據、籤名值以及證書或證書 號,並處理需要籤名的數據,否則記錄失敗信息,包括記錄時間、錯誤號,需要籤名的數據、 籤名值以及證書或證書號。(三)有益效果本發明通過雙密鑰和數字證書機制對IC卡交易時進行數字籤名和驗證,保證了 IC卡交易的安全性,交易數據真實、完整且不可抵賴。
圖1是本發明實施例的基於雙密鑰及數字證書體制的IC卡籤驗方法流程圖;圖2是圖1中步驟SlOl的具體流程圖;圖3是圖1中步驟S102的具體流程圖;圖4是本發明實施例的基於雙密鑰及數字證書體制的IC卡籤驗系統結構示意圖;圖5是本發明實施例中社保卡數字籤名流程;圖6是本發明實施例中社保卡數字籤名驗證流程圖。
具體實施例方式下面結合附圖和實施例,對本發明的具體實施方式
作進一步詳細描述。以下實施 例用於說明本發明,但不用來限制本發明的範圍。如圖1所示,為本發明基於雙密鑰及數字證書體制的IC卡籤驗方法流程圖,包 括步驟SlOl,利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證請 求。具體步驟如圖2所示步驟S201,對需要籤名的數據進行摘要提取,使用SHA-I數據摘要算法作HASH運 算得到摘要H = SHA(DATA),其中DATA為需要籤名的數據。步驟S202,利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名,使用IC卡 內的私鑰(Pvk)對摘要H作RSA運算,得到籤名值DS = RSApvk (H),按PKCS#7標準格式對 籤名進行編碼,得到的最終的籤名結果記為signedData。步驟S203,讀出數字籤名後的籤名值以及數字證書或證書號;步驟S204,發送包含需要籤名的數據、籤名值以及數字證書或證書號的驗證請求。步驟S102 利用IC卡對應的數字證書中的公鑰驗證數字籤名。具體步驟如圖3所 示步驟S301,驗證數字證書的真實性,或通過證書號獲取數字證書再驗證數字證書的真實性;即從SignedData中提取籤名值以及證書或證書號等信息,按證書號獲取籤名者 的數字證書並檢驗數字證書的有效性;步驟S302,利用數字證書中的公鑰(pbk)對所述籤名值進行脫籤,並獲取脫籤結 果 H' = RSApbk(DS);步驟S303,與步驟S201中對需要籤名的數據進行摘要提取方式一樣,並對比提取 摘要的結果H和脫籤結果H',若摘要的結果和脫籤結果一致,則保存需要籤名的數據、籤 名值以及證書或證書號,並處理需要籤名的數據,否則記錄失敗信息,失敗信息包括記錄時 間、錯誤號,需要籤名的數據、籤名值以及證書或證書號。本發明還公開了一種基於雙密鑰及數字證書體制的IC卡籤驗系統,如圖4所示 包括數字籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗 證請求;數字籤名驗證模塊,接收到數字籤名模塊發送的驗證請求後,用於利用IC卡對應 的數字證書中的公鑰驗證數字籤名。其中,所述數字籤名模塊包括摘要提取模塊,用於對需要籤名的數據進行摘要提 取;籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名;籤名信息 讀取模塊,用於讀出數字籤名後的籤名值以及數字證書或證書號;請求驗證模塊,用於發送 對需要籤名的數據、籤名值以及數字證書或證書號的驗證請求。其中,所述數字籤名驗證模塊包括數字證書驗證模塊,用於驗證數字證書的真實 性,或通過證書號獲取數字證書再驗證數字證書的真實性;脫籤模塊,用於利用數字證書中 的公鑰對所述籤名值進行脫籤,並獲取脫籤結果;比較驗證模塊,用於對需要籤名的數據進 行摘要提取,並對比提取摘要的結果和脫籤結果,若摘要的結果和脫籤結果一致,則保存需 要籤名的數據、籤名值以及證書或證書號,並處理需要籤名的數據,否則記錄失敗信息,失 敗信息包括記錄時間、錯誤號,需要籤名的數據、籤名值以及證書或證書號。下面以社會保險卡為例來說本發明。就診人在醫院終端使用社保卡進行交易時,由社保卡中的私鑰對交易數據進行籤 名,交易後數據成批自動上傳時,每一筆交易的籤名後的數據隨交易數據一同上傳至後臺 服務系統。後臺服務系統審核交易數據時,調用該社保卡的對應的數字證書中的公鑰驗證 籤名,驗證籤名失敗的交易將被拒付,並進入異常數據處理流程進行重新分析和處理。社會保險卡採用的數字證書符合GB/T 20518-2006和ITU X. 509V3標準,證書撤 銷列表符合ITU X. 509V2標準,證書編碼格式支持Base64和DER格式。按照國家相關規定, 北京社保證書籤發安全管理系統籤名證書對應的私鑰由社保卡內生成。社保證書的主要內容為版本號、證書序列號、籤名算法標識、籤發者標識、有效期 (含生效期、失效期)、申請者信息、申請者公鑰、籤名值等。證書格式如表1所示表1數字證書格式
權利要求
一種基於雙密鑰及數字證書體制的IC卡籤驗方法,其特徵在於,包括以下步驟S1利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證請求;S2利用IC卡對應的數字證書中的公鑰驗證數字籤名。
2.如權利要求1所述的基於雙密鑰體系的IC卡交易方法,其特徵在於,所述步驟Sl具 體包括步驟對需要籤名的數據進行摘要提取;利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名;讀出數字籤名後的籤名值以及數字證書或證書號;發送需要籤名的數據、籤名值以及數字證書或證書號的驗證請求。
3.如權利要求1所述的基於雙密鑰體系的IC卡交易方法,其特徵在於,所述步驟S2具 體包括驗證數字證書的真實性,或通過證書號獲取數字證書再驗證數字證書的真實性; 利用數字證書中的公鑰對籤名值進行脫籤,並獲取脫籤結果; 對需要籤名的數據進行摘要提取,並對比提取摘要的結果和脫籤結果,若摘要的結果 和脫籤結果一致,則保存需要籤名的數據、籤名值以及證書或證書號,並處理需要籤名的數 據,否則記錄失敗信息,包括記錄時間、錯誤號,需要籤名的數據、籤名值以及證書或證書 號。
4.一種基於雙密鑰及數字證書體制的IC卡籤驗系統,其特徵在於,包括數字籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證 請求;數字籤名驗證模塊,用於利用IC卡對應的數字證書中的公鑰驗證數字籤名。
5.如權利要求4所述的基於雙密鑰及數字證書體制的IC卡籤驗系統,其特徵在於,所 述數字籤名模塊包括摘要提取模塊,用於對需要籤名的數據進行摘要提取;籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據的摘要進行數字籤名;籤名信息讀取模塊,用於讀出數字籤名後的籤名值以及數字證書或證書號;請求驗證模塊,用於發送對需要籤名的數據、籤名值以及數字證書或證書號的驗證請求。
6.如權利要求4所述的基於雙密鑰及數字證書體制的IC卡籤驗系統,其特徵在於,所 述數字籤名驗證模塊包括數字證書驗證模塊,用於驗證數字證書的真實性,或通過證書號獲取數字證書再驗證 數字證書的真實性;脫籤模塊,用於利用數字證書中的公鑰對籤名值進行脫籤,並獲取脫籤結果; 比較驗證模塊,用於對需要籤名的數據進行摘要提取,並對比提取摘要的結果和脫籤 結果,若摘要的結果和脫籤結果一致,則保存需要籤名的數據、籤名值以及證書或證書號, 並處理需要籤名的數據,否則記錄失敗信息,包括記錄時間、錯誤號,需要籤名的數據、籤名 值以及證書或證書號。
全文摘要
本發明公開了一種基於雙密鑰及數字證書體制的IC卡籤驗方法,包括利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證請求;利用IC卡對應的數字證書中的公鑰驗證數字籤名,還公開了一種基於雙密鑰及數字證書體制的IC卡籤驗系統,包括數字籤名模塊,用於利用IC卡中的私鑰對需要籤名的數據進行數字籤名,並發送驗證請求;數字籤名驗證模塊,用於利用IC卡對應的數字證書中的公鑰驗證數字籤名。本發明保證了IC卡交易的安全性,交易數據真實、完整且不可抵賴。
文檔編號H04L9/32GK101944997SQ201010263690
公開日2011年1月12日 申請日期2010年8月25日 優先權日2010年8月25日
發明者朱東軒 申請人:北京市勞動信息中心