數(shù)字簽名方法和系統(tǒng)、應(yīng)用服務(wù)器和云密碼服務(wù)器的制造方法
【專利摘要】一種數(shù)字簽名方法,包括:根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求;通過云密碼服務(wù)器響應(yīng)簽名請求,獲取對稱密鑰的密文;根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;在對數(shù)據(jù)報文進行驗簽和對稱解密后,利用云密碼服務(wù)器的私鑰對待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值;根據(jù)原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對原文數(shù)據(jù)簽名值進行驗證。本發(fā)明還提供一種數(shù)字簽名系統(tǒng)、數(shù)字簽名應(yīng)用服務(wù)器和云密碼服務(wù)器,本發(fā)明的技術(shù),可以降低數(shù)字簽名成本,保證密碼運算能力,可以為用戶提供穩(wěn)定性更高的簽名服務(wù)。
【專利說明】數(shù)字簽名方法和系統(tǒng)、應(yīng)用服務(wù)器和云密碼服務(wù)器
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及密碼學(xué)【技術(shù)領(lǐng)域】,特別是涉及一種數(shù)字簽名方法和系統(tǒng)、應(yīng)用服務(wù)器和云密碼服務(wù)器。
【背景技術(shù)】
[0002]基于PKI體系的數(shù)字簽名技術(shù)在信息化系統(tǒng)中的應(yīng)用日益得到普及。在簽名技術(shù)的應(yīng)用中,服務(wù)器端簽名是一種較為普遍的簽名應(yīng)用模式,其基本實現(xiàn)原理是通過在信息化系統(tǒng)的應(yīng)用服務(wù)器端部署直連的密碼機,通過密碼機提供的API接口對服務(wù)器端待簽名原文數(shù)據(jù)進行數(shù)字簽名,簽名過程使用的私鑰信息只存儲在本地部署的密碼機上且唯一,完成服務(wù)器端簽名的原文數(shù)據(jù)和簽名值由信息化系統(tǒng)發(fā)布給終端用戶或其它信息化系統(tǒng),終端用戶或其它信息化系統(tǒng)可結(jié)合原文信息及簽名值驗證發(fā)布信息的完整性和真實性。
[0003]信息化系統(tǒng)結(jié)合自身業(yè)務(wù)需求要實現(xiàn)服務(wù)器端簽名必須購置本地部署的密碼機。由于目前密碼機設(shè)備自身的特殊性,采購成本一般較高。信息化系統(tǒng)要實現(xiàn)一個簡單簽名業(yè)務(wù)功能需要投入較高的系統(tǒng)建設(shè)成本。
[0004]使用本地部署的密碼機進行服務(wù)器端簽名時,密碼機設(shè)備成為了信息化系統(tǒng)的重要組成部分,這樣密碼機同時也成為了信息化系統(tǒng)應(yīng)用的風(fēng)險點,存在單點故障風(fēng)險和維護成本,一旦該設(shè)備出現(xiàn)故障會直接影響到信息化系統(tǒng)的具體業(yè)務(wù)功能。
[0005]另外,在上述技術(shù)中,一般情況下密碼機硬件的密碼運算能力是有限,即其并發(fā)處理能力有限的,當(dāng)需要同時為信息化系統(tǒng)的大量用戶提供簽名服務(wù)時,密碼機無法實現(xiàn)按業(yè)務(wù)所需的密碼運算,而且隨著用戶量的遞增以及業(yè)務(wù)處理能力的擴充,密碼機的運算能力就會達到峰值,而由于唯一性的因素,也無法實現(xiàn)按業(yè)務(wù)需求進行密碼運算能力和并發(fā)能力的動態(tài)擴展,難以為信息化系統(tǒng)提供穩(wěn)定性更高的簽名服務(wù)。
【發(fā)明內(nèi)容】
[0006]基于此,有必要針對上述問題,提供一種成本低、應(yīng)用風(fēng)險低并能依據(jù)應(yīng)用性能需求進行動態(tài)擴展的數(shù)字簽名方法及其支撐系統(tǒng)。
[0007]一種數(shù)字簽名方法,包括如下步驟:
[0008]根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求;
[0009]通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文;
[0010]根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;
[0011]在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值;
[0012]根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
[0013]一種數(shù)字簽名系統(tǒng),包括:[0014]簽名請求模塊,用于根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求;
[0015]簽名響應(yīng)模塊,用于通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文;
[0016]原文簽名模塊,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;
[0017]數(shù)字簽名模塊,用于在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值;
[0018]簽名驗證模塊,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
[0019]上述數(shù)字簽名方法和系統(tǒng),通過云密碼服務(wù)器向應(yīng)用服務(wù)器提供密碼運算服務(wù),應(yīng)用服務(wù)器通過調(diào)用云密碼服務(wù)器完成數(shù)字簽名的密碼運算相關(guān)操作,無需為應(yīng)用服務(wù)器部署本地的密碼機設(shè)備,降低了數(shù)字簽名成本,也避免了密碼機成為了信息化系統(tǒng)應(yīng)用的風(fēng)險點的問題。同時,由于云密碼服務(wù)器可以基于主流的通用服務(wù)器硬件來構(gòu)建,具有海量計算能力、海量存儲、動態(tài)擴展等技術(shù)特點,密碼運算能力得到保證,運算資源可以進行復(fù)用,簽名服務(wù)動態(tài)擴展性能好,可以按業(yè)務(wù)需求進行密碼運算能力和并發(fā)能力的動態(tài)擴展,從而可以為用戶提供穩(wěn)定性更高的簽名服務(wù)。
[0020]一種數(shù)字簽名應(yīng)用服務(wù)器,包括:
[0021]簽名請求單元,用于根據(jù)本地的加密證書向云密碼服務(wù)器發(fā)起簽名請求;
[0022]原文簽名單元,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;其中,所述密文為云密碼服務(wù)器響應(yīng)所述簽名請求后回傳的所述對稱密鑰的密文。
[0023]簽名驗證單元,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證;其中,所述原文數(shù)據(jù)簽名值為所述云密碼服務(wù)器利用自身產(chǎn)生的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名后回傳的簽名值。
[0024]上述數(shù)字簽名應(yīng)用服務(wù)器,通過利用云密碼服務(wù)器來提供密碼運算服務(wù),在執(zhí)行用戶的簽名時,通過調(diào)用云密碼服務(wù)器完成數(shù)字簽名的密碼運算相關(guān)操作,無需部署本地的密碼機設(shè)備,降低了數(shù)字簽名成本,也避免了密碼機成為了信息化系統(tǒng)應(yīng)用的風(fēng)險點的問題。同時,由于云密碼服務(wù)器可以基于主流的通用服務(wù)器硬件來構(gòu)建,具有海量計算能力、海量存儲、動態(tài)擴展等技術(shù)特點,密碼運算能力得到保證,運算資源可以進行復(fù)用,簽名服務(wù)動態(tài)擴展性能好,可以按業(yè)務(wù)需求進行密碼運算能力和并發(fā)能力的動態(tài)擴展,從而可以為用戶提供穩(wěn)定性更高的簽名服務(wù)??梢詰?yīng)用到多個不同的信息化系統(tǒng)中,實現(xiàn)針對不同信息化系統(tǒng)進行簽名,滿足不同信息化系統(tǒng)調(diào)用各自私鑰的需求和密鑰管理安全的需求。
[0025]一種數(shù)字簽名云密碼服務(wù)器,該的云密碼服務(wù)器設(shè)于云端,包括:
[0026]簽名響應(yīng)單元,用于通過云密碼服務(wù)器響應(yīng)簽名請求,獲取對稱密鑰的密文回傳至執(zhí)行簽名的應(yīng)用服務(wù)器;其中,所述簽名請求為所述應(yīng)用服務(wù)器根據(jù)所持有的加密證書提交的簽名請求;
[0027]數(shù)字簽名單元,用于在對所述應(yīng)用服務(wù)器提交的數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值,并回傳至應(yīng)用服務(wù)器;其中,所述數(shù)據(jù)報文為應(yīng)用服務(wù)器根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到的簽名信息,以及密文組裝而成的數(shù)據(jù)報文。
[0028]上述數(shù)字簽名云密碼服務(wù)器,是基于云密碼機的構(gòu)建,可以向應(yīng)用服務(wù)器執(zhí)行簽名提供密碼運算服務(wù),云密碼服務(wù)器完成數(shù)字簽名的密碼運算相關(guān)操作,執(zhí)行簽名的應(yīng)用服務(wù)器無需部署本地的密碼機設(shè)備,降低了數(shù)字簽名成本,也避免了密碼機成為了信息化系統(tǒng)應(yīng)用的風(fēng)險點的問題。同時,云密碼服務(wù)器可以基于主流的通用服務(wù)器硬件來構(gòu)建,具有海量計算能力、海量存儲、動態(tài)擴展等技術(shù)特點,密碼運算能力得到保證,運算資源可以進行復(fù)用,簽名服務(wù)動態(tài)擴展性能好,可以按業(yè)務(wù)需求進行密碼運算能力和并發(fā)能力的動態(tài)擴展,從而可以為用戶提供穩(wěn)定性更高的簽名服務(wù)。
【專利附圖】
【附圖說明】
[0029]圖1為一個實施例的數(shù)字簽名方法的流程圖;
[0030]圖2為一個應(yīng)用示例數(shù)字簽名方法的流程圖;
[0031]圖3為一個實施例的數(shù)字簽名系統(tǒng)的結(jié)構(gòu)示意圖;
[0032]圖4為一個實施例的數(shù)字簽名應(yīng)用服務(wù)器結(jié)構(gòu)示意圖;
[0033]圖5為一個實施例的數(shù)字簽名云密碼服務(wù)器結(jié)構(gòu)示意圖。
【具體實施方式】
[0034]下面結(jié)合附圖對本發(fā)明的數(shù)字簽名方法的【具體實施方式】作詳細描述。
[0035]參見圖1,圖1為一個實施例的數(shù)字簽名方法的流程圖,主要包括以下步驟:
[0036]S101、根據(jù)應(yīng)用服務(wù)器的加密證書向設(shè)于云端的云密碼服務(wù)器發(fā)起簽名請求。
[0037]在本步驟中,可以由應(yīng)用服務(wù)器接受用戶簽名請求,利用云服務(wù)模式及相關(guān)PKI技術(shù),根據(jù)本地的加密證書向設(shè)于云端的云密碼服務(wù)器請求云簽名服務(wù)。
[0038]S102、通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文。
[0039]在本步驟中,可以由云密碼服務(wù)器通過統(tǒng)一的接口為各個應(yīng)用服務(wù)器提供簽名服務(wù),響應(yīng)各個應(yīng)用服務(wù)器的簽名請求,驗證簽名證書有效性后,產(chǎn)生隨機對稱密鑰,并對對稱密鑰進行加密獲得對稱密鑰的密文。
[0040]S103、根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文。
[0041]在本步驟中,可以由應(yīng)用服務(wù)器本地的加密私鑰解密出對稱密鑰,再使用對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密得到密文數(shù)據(jù),然后對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,并將密文和簽名信息組裝成數(shù)據(jù)報文提交至云密碼服務(wù)器。
[0042]S104、在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值。
[0043]在本步驟中,可以由云密碼服務(wù)器對應(yīng)用服務(wù)器提交的數(shù)據(jù)報文進行驗簽和對稱解密,再根據(jù)云密碼服務(wù)器的私鑰對待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得應(yīng)用服務(wù)器對應(yīng)的原文數(shù)據(jù)簽名值。[0044]S105、根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
[0045]在本步驟中,可以由各個應(yīng)用服務(wù)器從云密碼服務(wù)器獲取待簽名原文的原文數(shù)據(jù)簽名值,進一步利用預(yù)先植入到應(yīng)用服務(wù)器中的簽名公鑰證書,對原文數(shù)據(jù)簽名值進行驗證,確定待簽名原文數(shù)據(jù)簽名值的有效性。
[0046]本發(fā)明的數(shù)字簽名方法,結(jié)合了云服務(wù)技術(shù)及相關(guān)PKI技術(shù),以云簽名的方式向由設(shè)于云端的云密碼服務(wù)器提交簽名請求和提交待簽名數(shù)據(jù)的密文,由云密碼服務(wù)器通過統(tǒng)一接口向應(yīng)用服務(wù)器提供簽名云服務(wù),實現(xiàn)了在云端構(gòu)建云密碼機,可以實現(xiàn)向多個應(yīng)用服務(wù)器的用戶提供云簽名服務(wù),用戶要進行簽名時,通過應(yīng)用服務(wù)器調(diào)用云端的云密碼服務(wù)器提供的統(tǒng)一接口,提交簽名請求,執(zhí)行相關(guān)數(shù)字簽名操作流程,即可完成簽名過程。
[0047]相比現(xiàn)有數(shù)字簽名技術(shù),本發(fā)明的技術(shù)方案中無需分別在應(yīng)用服務(wù)器部署本地的密碼機設(shè)備,而是通過統(tǒng)一接口調(diào)用云端的云密碼服務(wù)器來實現(xiàn)數(shù)字簽名密碼機的功能,降低了用戶的數(shù)字簽名成本。
[0048]另外,將簽名過程密碼相關(guān)處理運算都統(tǒng)一交由云密碼服務(wù)器完成,可以充分利用云服務(wù)模式的優(yōu)點,從而可以有效保證簽名過程中的密碼運算能力,云密碼服務(wù)器的運算資源可以得到更好的復(fù)用,提高了資源利用率,由于云端計算能力具有良好的擴展性能,可以按業(yè)務(wù)需求動態(tài)擴展云密碼服務(wù)器的密碼運算能力和并發(fā)能力,動態(tài)擴展簽名服務(wù)性能,從而為用戶提供穩(wěn)定性更高的簽名服務(wù)。
[0049]為了更加清晰本發(fā)明的技術(shù)方案,下面闡述數(shù)字簽名方法的優(yōu)選實施例。
[0050]對于步驟SlOl中所述加密證書,可以包括個人證書、機構(gòu)證書、設(shè)備證書等簽名證書。
[0051]在一個實施例中,步驟S102具體包括:
[0052]a、通過云密碼服務(wù)器驗證所述加密證書的有效性。
[0053]優(yōu)選的,云密碼服務(wù)器可以通過證書鏈驗證、有效期驗證、CRL驗證等方式來確認加密證書的有效性,另外,云密碼服務(wù)器也可以通過應(yīng)用服務(wù)器加密證書的唯一標(biāo)識確定信息化系統(tǒng)的有效性。
[0054]b、在確認所述加密證書有效后,隨機產(chǎn)生對稱密鑰。
[0055]具體的,云密碼服務(wù)器可以通過應(yīng)用服務(wù)器發(fā)起簽名請求的加密證書驗證及其證書唯一標(biāo)識確定信息化系統(tǒng)的有效合法身份,在驗證有效身份后,隨機產(chǎn)生對稱密鑰。
[0056]C、根據(jù)所述加密證書對所述對稱密鑰進行加密,獲得對稱密鑰的密文,然后回傳給應(yīng)用服務(wù)器。
[0057]在一個實施例中,步驟S103具體包括:
[0058]d、利用所述應(yīng)用服務(wù)器本地的加密私鑰解密出所述對稱密鑰。
[0059]e、根據(jù)所述對稱密鑰對待簽名原文數(shù)據(jù)進行加密得到密文數(shù)據(jù)。
[0060]f、利用所述應(yīng)用服務(wù)器的簽名私鑰對所述密文數(shù)據(jù)進行數(shù)字簽名獲得簽名信息。
[0061]在本實施例中,應(yīng)用服務(wù)器可以利用云密碼服務(wù)器通過統(tǒng)一接口回傳的對稱密鑰,從而既可以為所屬的信息化系統(tǒng)提供云簽名服務(wù),也可以確保各個信息化系統(tǒng)的密鑰使用的安全需求。
[0062]在一個實施例中,步驟S104具體包括:[0063]g、根據(jù)所述加密證書驗證所述簽名信息。
[0064]具體的,可以由云密碼服務(wù)器基于前述步驟獲取的應(yīng)用服務(wù)器的簽名證書(伴隨加密證書一起獲取),對應(yīng)用服務(wù)器提交的簽名信息進行驗證,確定簽名信息的完整性和有效性。
[0065]h、在驗證簽名通過后,根據(jù)所述對稱密鑰對所述數(shù)據(jù)報文進行驗簽和對稱解密獲得原文數(shù)據(jù)。
[0066]1、確定所述云密碼服務(wù)器對應(yīng)的私鑰,利用該私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值。
[0067]具體的,可以根據(jù)加密證書的唯一標(biāo)記確定云密碼服務(wù)器的私鑰,再利用該私鑰對待簽名原文數(shù)據(jù)進行數(shù)字簽名得到原文數(shù)據(jù)簽名值;在此過程中,所述唯一標(biāo)記可以為證書HASH值或擴展信息標(biāo)記。
[0068]在本實施例中,可以由云密碼服務(wù)器根據(jù)應(yīng)用服務(wù)器提交的簽名信息,獲取原文數(shù)據(jù)簽名值,回傳至應(yīng)用服務(wù)器,實現(xiàn)提供數(shù)字簽名服務(wù)功能。
[0069]需要聲明的是,本發(fā)明的數(shù)字簽名方法,還可以包括如下技術(shù)特征:
[0070]所述應(yīng)用服務(wù)器與云密碼服務(wù)器之間的通信環(huán)境,可以是互連網(wǎng)環(huán)境或其它網(wǎng)絡(luò)環(huán)境。
[0071]所述統(tǒng)一接口可以是以Web Service技術(shù)提供的數(shù)字簽名服務(wù)接口。
[0072]所述應(yīng)用服務(wù)器可以為信息化系統(tǒng)提供數(shù)字簽名服務(wù),也可以為個人提供數(shù)字簽名服務(wù)。
[0073]所述應(yīng)用服務(wù)器與云密碼服務(wù)器之間的通信過程,所涉及的數(shù)字證書可以采用SM2、RSA密碼運算或其它各種算法的對稱密碼運算,從而確保通信數(shù)據(jù)的安全和可信。
[0074]云密碼服務(wù)器可以采用虛擬化技術(shù)、資源調(diào)用管理技術(shù)以及與云服務(wù)相關(guān)的管理和控制技術(shù),實現(xiàn)密碼運算能力或并發(fā)能力能按應(yīng)用服務(wù)器的業(yè)務(wù)需求而進行動態(tài)的增強或擴展。
[0075]為了更加清晰本發(fā)明的技術(shù)方案,下面闡述基于本發(fā)明的數(shù)字簽名方法實現(xiàn)的應(yīng)用示例。
[0076]在本應(yīng)用示例中,包括用于為信息化系統(tǒng)或個人提供數(shù)字簽名服務(wù)的應(yīng)用服務(wù)器,以及設(shè)于云端的云云密碼服務(wù)器,應(yīng)用服務(wù)器與云密碼服務(wù)器之間通過通信網(wǎng)絡(luò)進行連接。
[0077]參考圖2所示,圖2為一個應(yīng)用示例數(shù)字簽名方法的流程圖,主要包括如下步驟:
[0078]S201、應(yīng)用服務(wù)器獲取應(yīng)用端本地的加密證書和簽名證書,并向云云密碼服務(wù)器發(fā)起云簽名請求。
[0079]S202、應(yīng)用服務(wù)器向云云密碼服務(wù)器發(fā)送本地應(yīng)用端的加密證書和簽名證書。
[0080]S203、云密碼服務(wù)器驗證應(yīng)用服務(wù)器加密證書的有效性。
[0081]S204、云密碼服務(wù)器產(chǎn)生隨機的對稱密鑰。
[0082]S205、云密碼服務(wù)器根據(jù)應(yīng)用服務(wù)器的加密證書對隨機產(chǎn)生對稱密鑰進行加密。
[0083]S206、云密碼服務(wù)器將加密后的對稱密鑰信息回傳給應(yīng)用服務(wù)器。
[0084]S207、應(yīng)用服務(wù)器使用本地加密私鑰完成對稱密鑰信息的解密,獲取到明文的對稱密鑰。[0085]S208、應(yīng)用服務(wù)器使用對稱密鑰對需要進行云簽名的數(shù)據(jù)原文進行加密。
[0086]S209、應(yīng)用服務(wù)器使用本地的簽名私鑰對加密后的密文數(shù)據(jù)進行數(shù)字簽名。
[0087]S210、應(yīng)用服務(wù)器將原文加密后的密文及密文的簽名值提交至云密碼服務(wù)器。
[0088]S211、云密碼服務(wù)器基于在步驟S202中接收的應(yīng)用服務(wù)器簽名證書對密文的簽名值進行驗簽名,確定密文信息的完整性和有效性。
[0089]S212、云密碼服務(wù)器通過存儲的對稱密鑰完成原文數(shù)據(jù)的解密操作,還原出原文信息。
[0090]S213、云密碼服務(wù)器通過所述加密證書或簽名證書的唯一標(biāo)識確定應(yīng)用服務(wù)器需要進行云簽名服務(wù)的對應(yīng)私鑰信息,通過對應(yīng)私鑰完成對原文數(shù)據(jù)的數(shù)字簽名。
[0091]S214、云密碼服務(wù)器向應(yīng)用服務(wù)器回傳原文的簽名值及簽名私鑰對應(yīng)的簽名證書。
[0092]S215、應(yīng)用服務(wù)器對云密碼服務(wù)器的數(shù)字簽名信息進行驗證,確定簽名值的有效性。
[0093]下面結(jié)合附圖對本發(fā)明的數(shù)字簽名系統(tǒng)的【具體實施方式】作詳細描述。
[0094]參考圖3,圖3示出了一個實施例的數(shù)字簽名系統(tǒng)的結(jié)構(gòu)示意圖,包括:
[0095]簽名請求模塊301,用于根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求;
[0096]簽名響應(yīng)模塊302,用于通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文;
[0097]原文簽名模塊303,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;
[0098]數(shù)字簽名模塊304,用于在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值;
[0099]簽名驗證模塊305,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
[0100]對于簽名請求模塊301中發(fā)起簽名請求時所應(yīng)用的加密證書,可以包括個人證書、機構(gòu)證書、設(shè)備證書等。
[0101 ] 在一個實施例中,所述簽名響應(yīng)模塊302進一步用于:
[0102]通過云密碼服務(wù)器驗證所述加密證書的有效性;
[0103]在確認所述加密證書有效后,隨機產(chǎn)生對稱密鑰;
[0104]根據(jù)所述加密證書對所述對稱密鑰進行加密,獲得對稱密鑰的密文。
[0105]在一個實施例中,所述原文簽名模塊303進一步用于:
[0106]利用所述應(yīng)用服務(wù)器本地的加密私鑰解密出所述對稱密鑰;
[0107]根據(jù)所述對稱密鑰對待簽名原文數(shù)據(jù)進行加密得到密文數(shù)據(jù);
[0108]利用所述應(yīng)用服務(wù)器的簽名私鑰對所述密文數(shù)據(jù)進行數(shù)字簽名獲得簽名信息。
[0109]在一個實施例中,所述數(shù)字簽名模塊304進一步用于:
[0110]根據(jù)所述加密證書驗證所述簽名信息;
[0111]在驗證簽名通過后,根據(jù)所述對稱密鑰對所述數(shù)據(jù)報文進行驗簽和對稱解密獲得原文數(shù)據(jù);
[0112]確定所述云密碼服務(wù)器對應(yīng)的私鑰,利用該私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值。
[0113]本發(fā)明的數(shù)字簽名系統(tǒng)與本發(fā)明的數(shù)字簽名方法一一對應(yīng),在上述數(shù)字簽名方法的實施例闡述的技術(shù)特征及其有益效果均適用于數(shù)字簽名系統(tǒng)的實施例中,在此不再贅述。
[0114]下面結(jié)合附圖對本發(fā)明的數(shù)字簽名應(yīng)用服務(wù)器的【具體實施方式】作詳細描述。
[0115]參考圖4,圖4為一個實施例的數(shù)字簽名應(yīng)用服務(wù)器結(jié)構(gòu)示意圖,該應(yīng)用服務(wù)器包括:
[0116]簽名請求單元401,用于根據(jù)本地的加密證書向云密碼服務(wù)器發(fā)起簽名請求;
[0117]原文簽名單元402,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;其中,所述密文為云密碼服務(wù)器響應(yīng)所述簽名請求后回傳的所述對稱密鑰的密文。
[0118]簽名驗證單元403,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證;其中,所述原文數(shù)據(jù)簽名值為所述云密碼服務(wù)器利用自身產(chǎn)生的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名后回傳的簽名值。
[0119]本發(fā)明的數(shù)字簽名應(yīng)用服務(wù)器,可以利用云密碼服務(wù)器來提供云簽名服務(wù),在進行簽名時,根據(jù)本地持有的加密證書向云密碼服務(wù)器發(fā)起簽名請求,就可以調(diào)用云密碼服務(wù)器來執(zhí)行密碼運算相關(guān)處理,既實現(xiàn)針對不同信息化系統(tǒng)進行簽名的需求,又可以保證不同信息化系統(tǒng)調(diào)用各自私鑰的需求和密鑰管理安全的需求,從而可以應(yīng)用到多個不同的信息化系統(tǒng)/用戶系統(tǒng)中執(zhí)行簽名服務(wù)。
[0120]下面結(jié)合附圖對本發(fā)明的數(shù)字簽名云密碼服務(wù)器的【具體實施方式】作詳細描述。
[0121]參考圖5,圖5為一個實施例的數(shù)字簽名云密碼服務(wù)器結(jié)構(gòu)示意圖,該云密碼服務(wù)器設(shè)于云端,包括:
[0122]簽名響應(yīng)單元501,用于通過云密碼服務(wù)器響應(yīng)簽名請求,獲取對稱密鑰的密文回傳至執(zhí)行簽名的應(yīng)用服務(wù)器;其中,所述簽名請求為所述應(yīng)用服務(wù)器根據(jù)所持有的加密證書提交的簽名請求;
[0123]數(shù)字簽名單元502,用于在對所述應(yīng)用服務(wù)器提交的數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值,并回傳至應(yīng)用服務(wù)器;其中,所述數(shù)據(jù)報文為應(yīng)用服務(wù)器根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到的簽名信息,以及密文組裝而成的數(shù)據(jù)報文。
[0124]本發(fā)明的數(shù)字簽名云密碼服務(wù)器,是基于云密碼機的構(gòu)建,可以向執(zhí)行應(yīng)用服務(wù)器的提供統(tǒng)一的云簽名服務(wù),應(yīng)用服務(wù)器在進行簽名時,可以調(diào)用云密碼服務(wù)器來完成簽名中的密碼運算相關(guān)處理操作,這樣,執(zhí)行簽名的應(yīng)用服務(wù)器就無需在本地部署密碼機設(shè)備來執(zhí)行密碼運算,從而降低了簽名成本和建設(shè)的成本,可以為應(yīng)用服務(wù)器的各個信息化系統(tǒng)/用戶系統(tǒng)提供云簽名服務(wù)。
[0125]同時,本發(fā)明的數(shù)字簽名云密碼服務(wù)器,是基于云模式構(gòu)建,云計算系統(tǒng)具有良好的擴展性能,可以便利地擴展服務(wù)器資源,進一步的,通過虛擬化技術(shù)和資源調(diào)動管理技術(shù),可結(jié)合應(yīng)用服務(wù)器進行的簽名業(yè)務(wù)的需求,動態(tài)的調(diào)整密碼運算的能力和并發(fā)能力,可隨著應(yīng)用服務(wù)器中信息化系統(tǒng)用戶量數(shù)的增加和業(yè)務(wù)進行擴展,從而提供長期穩(wěn)定的云簽名服務(wù)。
[0126]在對上述數(shù)字簽名云密碼服務(wù)器和數(shù)字簽名云密碼服務(wù)器的應(yīng)用中,進一步通過PKI體系的SM2、RSA密碼運算和數(shù)字證書認證,進行信息化系統(tǒng)調(diào)用云簽名服務(wù)過程中的身份確認,并通過確認的合法身份進行私鑰信息的管理和使用。通過SM2、RSA密鑰運算和對稱密碼運算,保證基于互聯(lián)網(wǎng)環(huán)境明文數(shù)據(jù)傳輸和簽名產(chǎn)生及驗證的信息安全。云密碼服務(wù)器日常維護和管理可以統(tǒng)一由云服務(wù)中心完成,當(dāng)出現(xiàn)異常情況時,可以由云服務(wù)中心完成切換或重構(gòu),進一步降低信息化系統(tǒng)的應(yīng)用風(fēng)險和維護成本。
[0127]以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
【權(quán)利要求】
1.一種數(shù)字簽名方法,其特征在于,包括如下步驟: 根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求; 通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文; 根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文; 在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值; 根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
2.根據(jù)權(quán)利要求1所述的數(shù)字簽名方法,其特征在于,通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文的步驟包括: 通過云密碼服務(wù)器驗證所述加密證書的有效性; 在確認所述加密證書有效后,隨機產(chǎn)生對稱密鑰; 根據(jù)所述加密證書對所述對稱密鑰進行加密,獲得對稱密鑰的密文。
3.根據(jù)權(quán)利要求1所述的數(shù)字簽名方法,其特征在于,所述根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息的步驟包括: 利用所述應(yīng)用服務(wù)器本地的加密私鑰解密出所述對稱密鑰; 根據(jù)所述對稱密鑰對待簽名原文數(shù)據(jù)進行加密得到密文數(shù)據(jù); 利用所述應(yīng)用服務(wù)器的簽名私鑰對所述密文數(shù)據(jù)進行數(shù)字簽名獲得簽名信息。
4.根據(jù)權(quán)利要求1所述的數(shù)字簽名方法,其特征在于,在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值的步驟包括: 根據(jù)所述加密證書驗證所述簽名信息; 在驗證簽名通過后,根據(jù)所述對稱密鑰對所述數(shù)據(jù)報文進行驗簽和對稱解密獲得原文數(shù)據(jù); 確定所述云密碼服務(wù)器對應(yīng)的私鑰,利用該私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值。
5.根據(jù)權(quán)利要求1所述的數(shù)字簽名方法,其特征在于,所述加密證書包括:個人證書、機構(gòu)證書或設(shè)備證書。
6.一種數(shù)字簽名系統(tǒng),其特征在于,包括: 簽名請求模塊,用于根據(jù)應(yīng)用服務(wù)器的加密證書向云密碼服務(wù)器發(fā)起簽名請求; 簽名響應(yīng)模塊,用于通過所述云密碼服務(wù)器響應(yīng)所述簽名請求,獲取對稱密鑰的密文; 原文簽名模塊,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;數(shù)字簽名模塊,用于在對所述數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值; 簽名驗證模塊,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證。
7.根據(jù)權(quán)利要求6所述的數(shù)字簽名系統(tǒng),其特征在于,所述簽名響應(yīng)模塊進一步用于: 通過云密碼服務(wù)器驗證所述加密證書的有效性; 在確認所述加密證書有效后,隨機產(chǎn)生對稱密鑰; 根據(jù)所述加密證書對所述對稱密鑰進行加密,獲得對稱密鑰的密文。
8.根據(jù)權(quán)利要求6所述的數(shù)字簽名系統(tǒng),其特征在于,所述原文簽名模塊進一步用于: 利用所述應(yīng)用服務(wù)器本地的加密私鑰解密出所述對稱密鑰; 根據(jù)所述對稱密鑰對待簽名原文數(shù)據(jù)進行加密得到密文數(shù)據(jù); 利用所述應(yīng)用服務(wù)器的簽名私鑰對所述密文數(shù)據(jù)進行數(shù)字簽名獲得簽名信息。
9.根據(jù)權(quán)利要求6所述的數(shù)字簽名系統(tǒng),其特征在于,所述數(shù)字簽名模塊進一步用于: 根據(jù)所述加密證書驗證 所述簽名信息; 在驗證簽名通過后,根據(jù)所述 對稱密鑰對 所述數(shù)據(jù)報文進 行驗簽和對稱解密獲得原文數(shù)據(jù); 確定所述云密碼服務(wù)器對應(yīng)的私鑰,利用該私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值。
10.根據(jù)權(quán)利要求6所述的數(shù)字簽名系統(tǒng),其特征在于,所述加密證書包括:個人證書、機構(gòu)證書或設(shè)備證書。
11.一種數(shù)字簽名應(yīng)用服務(wù)器,其特征在于,包括: 簽名請求單元,用于根據(jù)本地的加密證書向云密碼服務(wù)器發(fā)起簽名請求; 原文簽名單元,用于根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到簽名信息,將密文和簽名信息組裝成數(shù)據(jù)報文;其中,所述密文為云密碼服務(wù)器響應(yīng)所述簽名請求后回傳的所述對稱密鑰的密文。 簽名驗證單元,用于根據(jù)所述原文數(shù)據(jù)和預(yù)先植入到應(yīng)用服務(wù)器中簽名公鑰證書對所述原文數(shù)據(jù)簽名值進行驗證;其中,所述原文數(shù)據(jù)簽名值為所述云密碼服務(wù)器利用自身產(chǎn)生的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名后回傳的簽名值。
12.—種數(shù)字簽名云密碼服務(wù)器,其特征在于,該云密碼服務(wù)器設(shè)于云端,包括: 簽名響應(yīng)單元,用于通過云密碼服務(wù)器響應(yīng)簽名請求,獲取對稱密鑰的密文回傳至執(zhí)行簽名的應(yīng)用服務(wù)器;其中,所述簽名請求為所述應(yīng)用服務(wù)器根據(jù)所持有的加密證書提交的簽名請求; 數(shù)字簽名單元,用于在對所述應(yīng)用服務(wù)器提交的數(shù)據(jù)報文進行驗簽和對稱解密后,利用所述云密碼服務(wù)器的私鑰對所述待簽名原文數(shù)據(jù)進行數(shù)字簽名,獲得原文數(shù)據(jù)簽名值,并回傳至應(yīng)用服務(wù)器;其中,所述數(shù)據(jù)報文為應(yīng)用服務(wù)器根據(jù)解密獲得的對稱密鑰對待簽名原文數(shù)據(jù)進行對稱加密獲得密文數(shù)據(jù),并對密文數(shù)據(jù)執(zhí)行數(shù)字簽名得到的簽名信息,以及密文組裝而成的數(shù)據(jù)報文。
【文檔編號】H04L29/06GK103490892SQ201310381873
【公開日】2014年1月1日 申請日期:2013年8月28日 優(yōu)先權(quán)日:2013年8月28日
【發(fā)明者】汪毅, 劉, 張永強, 廖衛(wèi)民 申請人:廣東數(shù)字證書認證中心有限公司