
一、需求描述
大型醫(yī)院(三甲醫(yī)院)對為其提供醫(yī)療器械和藥品等供貨商通常有6個月左右的賬期,考慮到三甲醫(yī)院的運營狀態(tài)和付款能力,銀行可以將醫(yī)院開出的應(yīng)付賬單作為醫(yī)院耗材供應(yīng)商貸款具備償還能力的憑證。本平臺用于醫(yī)院、供應(yīng)商、銀行之間的對接,為耗材供應(yīng)商向銀行貸款和銀行放款風險評估作為參考,主要解決此憑證(應(yīng)付賬單)的身份認證、機密性保護、有效性和不可篡改性的驗證功能。
(1) 醫(yī)院通過MIS或者手工導出應(yīng)付賬單,操作員-財務(wù)-主管院長簽名認證;
(2) 醫(yī)院的應(yīng)付賬單通過系統(tǒng),可發(fā)送給相應(yīng)銀行,同時每份單據(jù)在系統(tǒng)有存檔(醫(yī)院和銀行可具備N對N的機制,提供給供貨商更多貸款選擇);
(3) 供貨商可根據(jù)單據(jù),向銀行協(xié)商貸款;
(4) 醫(yī)院的應(yīng)付賬單在簽名審批后在傳輸過程中,具備身份認證功能,數(shù)據(jù)機密性、不可篡改性需要保證,同時憑證具備可驗證性。
二、系統(tǒng)方案
本方案用來處理醫(yī)院生成的憑據(jù),由醫(yī)院產(chǎn)生,銀行使用,平臺運營者有存檔,客戶可查詢。該系統(tǒng)需要具備數(shù)字簽名技術(shù)、身份認證、加密、完整性認證等功能。系統(tǒng)在WORD、EXCEL文件格式上實現(xiàn)電子簽名,移動終端上的安全芯片進行身份認證,可將簽章和文件綁定在一起;系統(tǒng)通過密碼驗證、簽名驗證、數(shù)字證書確保文檔有效性、性和不可抵賴性。
1、數(shù)字簽名基本原理
數(shù)字簽名基于對稱加密算法、非對稱加密算法以及單向散列算法(Hash函數(shù)),其原理如下:
(1) 醫(yī)院先預(yù)設(shè)一個對稱密鑰并生成賬單明文;
(2) 醫(yī)院用Hash函數(shù)對賬單明文進行摘要,并用自己的私鑰加密該摘要以及預(yù)設(shè)的對稱密鑰;
(3) 醫(yī)院使用預(yù)設(shè)的對稱密鑰對賬單明文進行加密,得到賬單密文;
(4) 醫(yī)院將賬單密文、私鑰加密后的摘要和對稱密鑰進行綁定發(fā)送給銀行;
(5) 銀行用醫(yī)院提供的公鑰解密接收到的加密摘要和對稱密鑰,并得到摘要和對稱密鑰;
(6) 銀行使用對稱密鑰對接收到的賬單密文解密得到賬單明文;
(7) 銀行對賬單明文用同一Hash函數(shù)進行摘要;
(8) 銀行需要對兩次所得的摘要進行對比,如果相同,即可通過驗證。
2、 CA數(shù)字證書認證
CA數(shù)字證書受理系統(tǒng)有兩種選擇:自建CA數(shù)字證書系統(tǒng)和采用基于權(quán)威第三方CA數(shù)字證書受理系統(tǒng)。兩者優(yōu)缺點如下表所示:
從表中可以得知:
? 若用戶數(shù)量不多且需要在較短的時間內(nèi)完成項目,可選擇第三方CA數(shù)字認證服務(wù)。
? 若用戶數(shù)量眾多、有充分項目時間、對長期的成本來算,自建CA數(shù)字認證受理系統(tǒng)較好
1)使用第三方CA數(shù)字證書受理系統(tǒng)如圖2
2)自建CA證書受理業(yè)務(wù)流程如圖3
3、系統(tǒng)總體架構(gòu)
系統(tǒng)的總體架構(gòu)如圖4所示,主要由業(yè)務(wù)系統(tǒng)、數(shù)字簽名認證系統(tǒng)、CA數(shù)字證書受理系統(tǒng)三大部分組成。
利用CA證書驗證簽名數(shù)據(jù)時,都遵循相同的驗證流程,一個完整的驗證過程由以下幾步:
(1) 將接收的數(shù)據(jù)分為原始數(shù)據(jù)流、簽名數(shù)據(jù)和用戶證書三部分;
(2) 用CA根證書驗證用戶證書的簽名完整性;
(3) 檢查用戶證書是否有效(當前時間在證書的有效期內(nèi)為有效);
(4) 檢查用戶證書是否作廢 (OCSP方式或證書撤銷列表CRL方式);
(5) 驗證用戶證書結(jié)構(gòu)中的證書用途;
(6) 用戶證書驗證原始數(shù)據(jù)的簽名完整性。
如果上述各項均驗證通過,則接受該數(shù)據(jù);只要有一項未通過,則驗證失敗。
三、 硬件方案
1. 證書下載到專用的安全存儲卡內(nèi),安全存儲卡內(nèi)置SE單元,此SE芯片可裝載證書,內(nèi)嵌的用于安全應(yīng)用的32位ARM核,可利用RSA 1024/2048完成簽名和密鑰對生成等功能,同時支持AES/DES/3DES等分組加密功能,可生成數(shù)據(jù)摘要。此安全芯片可以有效防止溫度、電壓、頻率攻擊。上述操作均在安全存儲卡內(nèi)安全芯片完成,有效避免了基帶處理器的運行敏感程序帶來的風險。
2. 可通過醫(yī)院發(fā)放此專用安全存儲卡來進行授權(quán),進行憑據(jù)的生成、簽名、審批、發(fā)送等操作。上述過程可通過手機APP完成,也可通過PAD插安全存儲卡進行,也可設(shè)計專門的硬件,只需留下ISO7816接口和卡槽即可。后續(xù)設(shè)計中,如果能結(jié)合指紋來設(shè)計授權(quán)訪問,則安全性有更高的保障。
3. 銀行端可類似的利用PAD+安全存儲卡的方式來進行,數(shù)據(jù)的解密、簽名認證、數(shù)據(jù)完整性檢查等功能。醫(yī)院端數(shù)據(jù)進行加密+簽名摘要,即打包數(shù)據(jù)這個在銀行端是無法生成,可能的風險在于憑據(jù)解密后數(shù)據(jù)的篡改,因此為保障銀行端的人為的數(shù)據(jù)完整性,可增加層級審批,即不止一個人可看到醫(yī)院的數(shù)據(jù),并進行審批。