徐祺+崔久強



摘要:針對傳統(tǒng)電子簽名建設成本高、維護成本高、資源利用率低等缺點,對云計算環(huán)境下的電子簽名服務模式進行了研究,設計了云模式電子簽名系統(tǒng)架構,詳細研究了基于USB-key客戶端私鑰簽名模式、基于服務端私鑰托管的簽名模式和基于私鑰分割的簽名模式的業(yè)務流程,分析了三種簽名模式的優(yōu)缺點和應用場景,最后說明未來電子簽名資源的“云化”發(fā)展將成主流趨勢。
關鍵詞:云計算;電子簽名;服務模式
引言
隨著信息技術的快速發(fā)展和信息化應用的深入普及,信息安全問題也不斷涌現(xiàn)。基于PKI的密碼體系是解決信息安全問題的主要手段,電子簽名是密碼體系的主要內容之一。電子簽名技術能夠解決網絡交易中用戶的身份認證、交易數(shù)據(jù)的完整性鑒別、用戶交易行為的不可抵賴性等問題,我國于2005年4月1日起正式實施的《電子簽名法》為電子簽名提供了法律基礎和保障。在《電子簽名法》中明確規(guī)定:本法所稱電子簽名,是指數(shù)據(jù)電文中以電子形式所含、所附用于識別簽名人身份并表明簽名人認可其中內容的數(shù)據(jù);本法所稱數(shù)據(jù)電文,是指以電子、光學、磁或者類似手段生成、發(fā)送、接收或者儲存的信息。當前,以電子簽名為技術的電子簽名服務在電子政務、電子商務和社會公共服務等領域得到了廣泛應用。
1傳統(tǒng)電子簽名服務
傳統(tǒng)的電子簽名大多數(shù)采用C/S的系統(tǒng)架構,具體如圖1所示,包括電子簽名服務端和電子簽名客戶端兩部分,通過電子簽名、密碼信封、電子簽章、可信時間戳等技術向用戶和應用提供可靠電子簽名服務。
電子簽名客戶端包括瀏覽器和應用客戶端,通過SDK的方式調用。電子簽名服務端包括簽名驗簽服務器、電子簽章服務器和時間戳服務器等,向用戶提供簽名驗簽名服務、電子簽章服務和可信時間戳服務,當在應用系統(tǒng)中需要對交易數(shù)據(jù)進行確認時,業(yè)務應用可以通過SDK安全中間件來調用,用以解決傳輸數(shù)據(jù)的完整性鑒別、用戶交易行為的不可抵賴性等問題。但隨著應用業(yè)務和交易數(shù)據(jù)的不斷增加,原有的電子簽名模式也逐漸不能適應新的業(yè)務需要,具體如下:
1)建設成本高。目前通常是通過負載或集群的方式提高服務性能,需要增加大量的硬件設備,導致硬件投入、能源消耗和管理費用不斷增加。
2)維護成本高。目前電子簽名大多與應用系統(tǒng)之間是緊耦合,對原有業(yè)務系統(tǒng)的網絡部署、系統(tǒng)集成帶來較大的改動,需要專業(yè)的人員進行專業(yè)維護。
3)資源利用率低。傳統(tǒng)的電子簽名服務通過重復部署硬件設備來提高性能,不能實現(xiàn)硬件資源的自動調配和自適應擴展,導致資料利用率不高。
2云計算環(huán)境下電子簽名服務
在云計算環(huán)境下傳統(tǒng)的電子簽名服務模式已經不能適應,需要根據(jù)云計算自身的特點和應用場景,對電子簽名服務進行研究和設計,將電子簽名作為一種云服務提供給用戶。
2.1云模式電子簽名系統(tǒng)架構
結合云計算環(huán)境的網絡部署和業(yè)務應用情況,云計算環(huán)境下電子簽名實現(xiàn)模型如圖2所示,包括資源層、管理層和服務層。
各層次的主要內容及關系具體如下:
1)資源層。該層包括物理資源層和資源池層,向上層提供邏輯計算和資源存儲。物理資源層包括提供電子簽名服務的物理設備,包括簽名驗簽服務器、電子簽章服務器和時間戳服務器等安全產品。資源池層是將物理資源進行虛擬化整合形成虛擬化資源池,通過Xen、KVM或Docker等虛擬化技術對硬件設備進行虛擬化,形成電子簽名服務池、電子簽章服務池、時間戳服務池等,具有動態(tài)分配和自動調整功能。
2)管理層。管理層位于資源層與服務層之間,是云模式環(huán)境下電子簽名的核心層,由業(yè)務管理、資源配置和監(jiān)控審計等功能模塊組成,實現(xiàn)云計算環(huán)境下的電子簽名基礎設施的資源管理,并通過資源調度完成對虛擬資源能力的動態(tài)分配,保障電子簽名資源能夠為業(yè)務應用提供服務。
3)服務層。服務層與具體業(yè)務應用對接,實現(xiàn)電子簽名的具體業(yè)務應用,包括服務接口、注冊管理和訪問控制等模塊。
在云計算環(huán)境下電子簽名模型的框架下,對用戶的簽名模式進行研究,包括基于USB-key客戶端私鑰簽名模式、基于服務端私鑰托管的簽名模式和基于私鑰分割的簽名模式。
2.2基于USB-key客戶端私鑰簽名模式
常規(guī)的電子簽名模式是基于USB-key客戶端私鑰簽名,該方式在USB-key介質芯片內完成數(shù)據(jù)加密解密、簽名驗證及身份認證的整個過程。目前常用的USB-Key是在其CPU內置加密算法的加密型USB-Key,利用內置的加密算法對用戶的身份進行認證和數(shù)字簽名。USB-key是智能卡和讀卡器的結合體,它采用USB接口的連接方式,即插即用,體積也很小,與智能卡相比速度更快,使用更加簡單方便。USB-key內部有一個安全存儲區(qū)域,專門用來存放用戶的數(shù)字證書和私鑰,用戶只能通過廠商編程接口訪問內部數(shù)據(jù),這樣就保證了保存在USB-key中的數(shù)字證書無法被復制。而且,每一個USB-key都帶有PIN碼保護,用戶必須同時擁有USB-key和PIN碼才可以使用數(shù)字證書。
基于USB-key的數(shù)字簽名過程是:用戶通過USB-key產生密鑰對,再向電子認證服務機構申請數(shù)字證書,將從電子認證服務機構處申請到的數(shù)字證書保存在USB-key中,CSP可以通過命令從USB-key中讀取證書,但是任何命令都無法讀出用戶的私鑰。在數(shù)字簽名時,CSP向USB-key發(fā)送一個簽名命令即可,USB-key內部便會自動進行簽名運算,并將簽名結果送出,這就保證了所有的運算都在USB-key內部進行,私鑰永不出USB-key,可不限定簽名次數(shù),適用于對電子簽名業(yè)務較多的場景。
2.3基于服務端私鑰托管的簽名模式
從以上分析可知,基于USB-key客戶端私鑰簽名模式的優(yōu)點在于私鑰始終保存在用戶的USB-key中,為用戶安全的簽署電子文件提供了保障。但是由于USB-key具有較高的成本,若用戶只使用一次或少數(shù)的簽名而購買USB-key從成本角度而言不便于應用推廣,因此若用戶僅使用一次性簽名或少數(shù)次簽名可采用基于服務端私鑰托管的簽名模式。
基于服務端私鑰托管的簽名模式是代理簽名模式的一種演變形式。代理簽名模式包括兩個角色,原始簽名人和代理簽名人,原始簽名人可以將他的數(shù)字簽名權力委托給代理簽名人,代理簽名人代表原始簽名人生成的數(shù)字簽名,稱為代理簽名。
基于服務端私鑰托管的簽名模式中的原始簽名人是用戶自己,代理簽名人是服務端簽名驗簽服務器、代理簽名是服務端簽名驗簽服務器自身產生的私鑰進行的數(shù)字簽名,具體流程如圖3所示:
(1)用戶對某一業(yè)務應用系統(tǒng)交易數(shù)據(jù)進行一次性電子簽名。
(2)待簽名業(yè)務應用系統(tǒng)對用戶進行身份認證(如人臉識別、口令認證等身份認證手段),通過認證后將用戶認證信息及簽名請求發(fā)送至簽名驗簽服務端。
(3)簽名驗簽服務端隨機生成一對簽名密鑰對,將簽名公鑰與用戶身份信息進行綁定,并發(fā)送再次確認消息(如短信、令牌信息等)給用戶,以確認是由用戶自身發(fā)出的對該筆業(yè)務的電子簽名。
(4)用戶手段收到簽名驗簽服務端發(fā)來的確認信息后給予確認。
(5)簽名驗簽服務端收到確認消息后利用該用戶對應的私鑰對該筆交易數(shù)據(jù)進行電子簽名。
基于服務端私鑰托管的簽名模式優(yōu)點是節(jié)省用戶成本,簽名速度快,缺點是私鑰托管至服務端安全性降低,導致私鑰安全可控性存在漏洞,但該模式能夠確保用戶私鑰只能用戶安全運算,無法導出算法卡被復制復用;私鑰使用過一次后即立即進行銷毀,防止用戶私鑰保護碼使用后泄露導致的安全風險,每筆業(yè)務均對應唯一的私鑰,采用此種模式時服務端簽名驗簽服務器需由可信的第三方提供運營服務。同時為了保障私鑰的安全性,確保電子簽名的行為是由用戶主動發(fā)起的,防止行為的不可抵賴性,在服務端還需要增加簽名審計模塊和策略配置模塊,簽名審計模塊實現(xiàn)對用戶電子簽名的司法舉證,策略配置模塊用來提供用戶確認簽名行為的通訊機制,如使用短信、令牌信息或指紋等生物特征信息。
2.4基于私鑰分割的簽名模式
密鑰分解是近代密碼學討論的一個重要問題,旨在解決如何將密鑰合理劃分成幾個子密鑰,分配給參與保密工作的每個人,使得只有其中達到指定個數(shù)的任意幾個人出示其所持子密鑰才能將原密鑰恢復,從而解密出明文。文件安全分割則是指將一個文件分割成n個子文件,規(guī)定必須完全具備其中任意m(1≤m≤n)個子文件才能將原文件恢復,而從其中任意不足m個子文件都不能恢復原文件。這樣就保證了當其中任意n-m個子文件損壞時仍能將原文件恢復,而其中任意不足m個子文件泄密時也不足以使原文件暴露。
基于私鑰分割的簽名模式是在密鑰分解的基礎上而來的,在云計算環(huán)境下,簽名驗簽服務器是分布式部署在網絡中,用戶的簽名密鑰可由多臺虛擬簽名驗簽服務器提供,根據(jù)密鑰分解的原理,將用戶簽名密鑰分割成n個子簽名密鑰,規(guī)定必須完全具備其中任意m(1≤m≤n)個子簽名密鑰才能將原密鑰恢復,而從其中任意不足m個子簽名密鑰都不能恢復原簽名密鑰。
(1)用戶對某一業(yè)務應用系統(tǒng)交易數(shù)據(jù)進行電子簽名業(yè)務。
(2)待簽名業(yè)務應用系統(tǒng)對用戶進行身份認證(如人臉識別、口令認證等身份認證手段),通過認證后將用戶認證信息及簽名請求發(fā)送至簽名驗簽服務集群。
(3)簽名驗簽服務集群隨機生成一對簽名密鑰對,并將私鑰按照密鑰分解的方式進行存儲,將簽名公鑰與用戶身份信息進行綁定,并發(fā)送再次確認消息(如短信、令牌信息等)給用戶,以確認是由用戶自身發(fā)出的對該筆業(yè)務的電子簽名。
(4)用戶手段收到簽名驗簽服務端發(fā)來的確認信息后給予確認。
(5)簽名驗簽服務集群收到確認消息后查找用戶對應的子私鑰,并按照密鑰分解的理論,將任意m(1≤m≤n)個子簽名密鑰根據(jù)算法將原密鑰恢復,再利用該密鑰對交易數(shù)據(jù)進行電子簽名。
基于私鑰分割的簽名模式是基于USB-key客戶端私鑰簽名模式和基于服務端私鑰托管的簽名模式折中方案,用戶可不用具備客戶端的USB-key介質,也能夠實現(xiàn)電子簽名服務,即節(jié)約了經濟成本又實現(xiàn)多簽名服務,同時保障了用戶私鑰存在單一簽名驗簽服務設備上的安全性。同時為了保障私鑰的安全性,確保電子簽名的行為是由用戶主動發(fā)起的,防止行為的不可抵賴性,在服務端也需要增加簽名審計模塊和策略配置模塊。
3結論
云計算具有計算能力強、按需提供服務、高可靠性和IT基礎設施投入低等優(yōu)點,對企業(yè)商業(yè)模式創(chuàng)新、技術創(chuàng)新和應用創(chuàng)新上都帶來了很大的機遇,越來越受到政府、學術界和產業(yè)界等各領域的重視。本文分析了云計算環(huán)境下基于USB-key客戶端私鑰簽名模式、基于服務端私鑰托管的簽名模式和基于私鑰分割的簽名模式,三種簽名模式的優(yōu)缺點如表1所示。云計算環(huán)境下的電子簽名服務模式是通過動態(tài)分配電子簽名服務、電子簽章服務和可信時間戳服務等,向最終用戶提供隨時可用、安全可靠的電子簽名云服務。在該模式下,電子簽名具有按需使用、隨時使用,電子簽名資源能夠動態(tài)調整、自動擴展,電子簽名設備能夠資源共享、集約管理,電子簽名管理能夠動態(tài)管理、遠程監(jiān)控等諸多優(yōu)點,為云計算環(huán)境下的電子政務、電子商務、社會公共服務和企業(yè)內部應用提供電子認證服務基礎,實現(xiàn)云計算環(huán)境下用戶身份認證、授權管理和責任認定等功能,為我國電子認證服務產業(yè)向云計算模式跨越提供技術參考和服務咨詢,也為我國云計算產業(yè)的跨越式發(fā)展提供電子認證安全服務支撐。