人力資源社會(huì)保障電子認(rèn)證體系規(guī)范第4部分:數(shù)字證書應(yīng)用接口規(guī)范(LD-T02.4-2022)_第1頁
人力資源社會(huì)保障電子認(rèn)證體系規(guī)范第4部分:數(shù)字證書應(yīng)用接口規(guī)范(LD-T02.4-2022)_第2頁
人力資源社會(huì)保障電子認(rèn)證體系規(guī)范第4部分:數(shù)字證書應(yīng)用接口規(guī)范(LD-T02.4-2022)_第3頁
人力資源社會(huì)保障電子認(rèn)證體系規(guī)范第4部分:數(shù)字證書應(yīng)用接口規(guī)范(LD-T02.4-2022)_第4頁
人力資源社會(huì)保障電子認(rèn)證體系規(guī)范第4部分:數(shù)字證書應(yīng)用接口規(guī)范(LD-T02.4-2022)_第5頁
已閱讀5頁,還剩114頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

LD/T02.4-2022

人力資源社會(huì)保障電子認(rèn)證體系規(guī)范

第4部分:數(shù)字證書應(yīng)用接口規(guī)范

1范圍

本文件給出了數(shù)字證書的應(yīng)用領(lǐng)域,規(guī)定了數(shù)字證書應(yīng)用技術(shù)框架和典型應(yīng)用流程。

本文件適用于指導(dǎo)人力資源社會(huì)保障應(yīng)用系統(tǒng)實(shí)現(xiàn)基于電子認(rèn)證體系的安全功能,有助于各級人

力資源社會(huì)保障部門采用統(tǒng)一的數(shù)字證書應(yīng)用開發(fā)接口。

2規(guī)范性引用文件

下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文

件僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用

于本文件。

GB/T35275-2017信息安全技術(shù)SM2密碼算法加密簽名消息語法規(guī)范

GB/T35276-2017信息安全技術(shù)SM2密碼算法使用規(guī)范

GB/T35291-2017信息安全技術(shù)智能密碼鑰匙應(yīng)用接口規(guī)范

GB/T36322-2018信息安全技術(shù)密碼設(shè)備應(yīng)用接口規(guī)范

GB/T38540-2020信息安全技術(shù)安全電子簽章密碼技術(shù)規(guī)范

GB/T38629-2020信息安全技術(shù)簽名驗(yàn)簽服務(wù)器技術(shù)規(guī)范

GM/T0020-2012證書應(yīng)用綜合服務(wù)接口規(guī)范

GM_T0025-2014SSLVPN網(wǎng)關(guān)產(chǎn)品規(guī)范

GM/T0026-2014安全認(rèn)證網(wǎng)關(guān)產(chǎn)品規(guī)范

GM/T0033-2014時(shí)間戳接口規(guī)范

LD/T01-2022(所有部分)人力資源社會(huì)保障電子印章體系規(guī)范

LD/T32社會(huì)保障卡規(guī)范

LD/T33社會(huì)保障卡讀寫終端規(guī)范

PKCS#7CryptographicMessageSyntax加密消息的語法標(biāo)準(zhǔn)

PKCS#10(V1.7)CertificationRequestSyntaxStandard認(rèn)證請求語法標(biāo)準(zhǔn)

3術(shù)語和定義

GB/T35291、GB/T0020界定的以及下列術(shù)語和定義適用于本文件。

3.1

容器container

密碼設(shè)備中用于保存密鑰所劃分的唯一性存儲(chǔ)空間。

[來源:GB/T35291-2017,3.1]

1

LD/T02.4-2022

3.2

BSTRbatchstirredtankreactor

在定義客戶端服務(wù)接口時(shí),本規(guī)范以ActiveX控件為例進(jìn)行描述,其中BSTR代表函數(shù)返回值或參

數(shù)類型為OLECHAR字符串類型,不同的開發(fā)語言應(yīng)采取對應(yīng)的類型定義﹐如:char*、CString、

java.lang.String等。

[來源:GM/T0020-2012,6.2]

4縮略語

下列縮略語適用于本文件:

API:應(yīng)用程序接口,簡稱應(yīng)用接口(ApplicationProgramInterface)

CA:證書認(rèn)證機(jī)構(gòu)(CertificationAuthority)

CRL:證書撤銷列表(CertificateRevocationList)

CSP:加密服務(wù)提供者(CryptographicServiceProvider)

KMC:密鑰管理中心(KeyManagementCenter)

LDAP:輕量級目錄訪問協(xié)議(LightweightDirectoryAccessProtocol)

OID:對象標(biāo)識(shí)符(ObjectIdentifier)

HTTP:超文本傳輸協(xié)議(HypertextTransferProtocol)

PKCS:公鑰密碼標(biāo)準(zhǔn)(thePublic-KeyCryptographyStandard)

RA:證書注冊機(jī)構(gòu)(RegistrationAuthority)

5應(yīng)用領(lǐng)域

人力資源社會(huì)保障數(shù)字證書的應(yīng)用領(lǐng)域包括全國性、區(qū)域性的各類應(yīng)用系統(tǒng),按照業(yè)務(wù)類別劃分

為以下四類:

a)就業(yè)創(chuàng)業(yè)類:就業(yè)創(chuàng)業(yè)、失業(yè)監(jiān)測等業(yè)務(wù)系統(tǒng);

b)社會(huì)保障類:養(yǎng)老、工傷等社會(huì)保險(xiǎn)業(yè)務(wù)系統(tǒng)、社會(huì)保障卡持卡庫等業(yè)務(wù)系統(tǒng)、社會(huì)保險(xiǎn)公

共服務(wù)平臺(tái);

c)人才人事類:事業(yè)單位人事管理、專業(yè)技術(shù)人員管理、人力資源市場、職業(yè)資格管理、職業(yè)

技能培訓(xùn)等業(yè)務(wù)系統(tǒng);

d)勞動(dòng)關(guān)系類:勞動(dòng)用工備案、調(diào)解仲裁、勞動(dòng)監(jiān)察等業(yè)務(wù)系統(tǒng)。

6數(shù)字證書應(yīng)用技術(shù)體系

6.1總體技術(shù)框架

人力資源社會(huì)保障數(shù)字證書應(yīng)用技術(shù)框架由密碼設(shè)備、基礎(chǔ)應(yīng)用接口、高級應(yīng)用接口組成,如圖

1所示。

2

LD/T02.4-2022

圖1人力資源社會(huì)保障數(shù)字證書應(yīng)用總體技術(shù)框架

6.2密碼設(shè)備

密碼設(shè)備由應(yīng)用密碼機(jī)、簽名驗(yàn)簽服務(wù)器、應(yīng)用安全網(wǎng)關(guān)、電子印章系統(tǒng)、時(shí)間戳系統(tǒng)、責(zé)任認(rèn)

定系統(tǒng)、證書載體等密碼產(chǎn)品組成,密碼產(chǎn)品通過基礎(chǔ)應(yīng)用接口向上層應(yīng)用提供基礎(chǔ)的、全面的密碼

服務(wù)。

應(yīng)用密碼機(jī)、簽名驗(yàn)簽服務(wù)器、應(yīng)用安全網(wǎng)關(guān)、時(shí)間戳服務(wù)器等必須采用支持SM1、SM2、

SM3、SM4密碼算法的、經(jīng)國家密碼管理部門批準(zhǔn)使用的密碼設(shè)備,具有國家密碼管理部門認(rèn)證的產(chǎn)

品認(rèn)證證書。

數(shù)字證書載體主要指用于存儲(chǔ)密鑰和數(shù)字證書并具有密碼運(yùn)算功能的載體,目前人力資源社會(huì)保

障電子認(rèn)證系統(tǒng)所采用的數(shù)字證書載體包括智能密碼鑰匙和第三代社會(huì)保障卡兩類,為應(yīng)用系統(tǒng)的客

戶端提供密碼服務(wù)。必須采用支持SM1、SM2、SM3、SM4密碼算法的、經(jīng)國家密碼管理部門批準(zhǔn)使

用的密碼設(shè)備,具有國家密碼管理部門認(rèn)證的產(chǎn)品認(rèn)證證書。

數(shù)字證書載體的各項(xiàng)技術(shù)參數(shù)應(yīng)符合LD/T02.5規(guī)定的要求。

6.3基礎(chǔ)應(yīng)用接口

基礎(chǔ)應(yīng)用接口位于密碼設(shè)備之上,密碼設(shè)備通過基礎(chǔ)應(yīng)用接口向上層的高級應(yīng)用接口層提供密鑰

生成、密碼運(yùn)算等基礎(chǔ)密碼服務(wù)?;A(chǔ)應(yīng)用接口分為服務(wù)器端密碼設(shè)備接口和證書載體接口兩類,其

中,數(shù)字證書載體接口包括智能密碼鑰匙接口和第三代社會(huì)保障卡讀寫終端接口。

6.3.1密碼設(shè)備應(yīng)用接口

密碼設(shè)備應(yīng)用接口應(yīng)支持包括國產(chǎn)操作系統(tǒng)在內(nèi)的主流操作系統(tǒng),例如Windows、Linux、Unix

等主流操作系統(tǒng)。

3

LD/T02.4-2022

應(yīng)用密碼機(jī)接口應(yīng)符合GB/T36322-2018規(guī)定的要求。

簽名驗(yàn)簽服務(wù)器接口應(yīng)符合GB/T38629-2020規(guī)定的要求。

應(yīng)用安全網(wǎng)關(guān)接口應(yīng)符合GM/T0026-2014、GM/T0025-2014規(guī)定的要求。

電子印章系統(tǒng)接口應(yīng)符合GB/T38540-2020以及LD/T01-2022規(guī)定的要求。

時(shí)間戳系統(tǒng)接口應(yīng)符合GM/T0033-2014規(guī)定的要求。

6.3.2證書載體接口

智能密碼鑰匙接口應(yīng)符合GB/T35291-2017和LD/T02.5規(guī)定的要求,支持國產(chǎn)操作系統(tǒng)及

Windows、Linux等主流操作系統(tǒng),支持國產(chǎn)瀏覽器以及IE、火狐、Chrome等主流瀏覽器及相應(yīng)版

本。

第三代社會(huì)保障卡接口應(yīng)符合LD/T32規(guī)定的要求。

6.4高級應(yīng)用接口

高級應(yīng)用接口是位于基礎(chǔ)應(yīng)用接口之上,為應(yīng)用系統(tǒng)提供身份認(rèn)證、數(shù)字簽名、數(shù)據(jù)加解密、時(shí)

間戳、電子印章、責(zé)任認(rèn)定等安全保障服務(wù),該接口可直接被應(yīng)用系統(tǒng)調(diào)用,將應(yīng)用系統(tǒng)的密碼服務(wù)

請求轉(zhuǎn)向基礎(chǔ)應(yīng)用接口,通過基礎(chǔ)應(yīng)用接口調(diào)用相應(yīng)的密碼設(shè)備實(shí)現(xiàn)具體的密碼運(yùn)算和密鑰操作。高

級應(yīng)用接口包括客戶端應(yīng)用接口和服務(wù)器端應(yīng)用接口兩大部分。

客戶端應(yīng)用接口根據(jù)數(shù)字證書載體類型形態(tài)分為兩類:數(shù)字證書載體為智能密碼鑰匙時(shí),客戶端

應(yīng)提供跨瀏覽器支持組件、ActiveX控件、動(dòng)態(tài)鏈接庫、JAR等開發(fā)包,客戶端應(yīng)用接口符合GM/T

0020-2012中7.1規(guī)定的要求,見附錄B.1;證書載體為第三代社會(huì)保障卡時(shí),客戶端應(yīng)提供ActiveX

控件或DLL動(dòng)態(tài)連接庫,客戶端應(yīng)用接口符合LD/T33規(guī)定的要求。本文件主要規(guī)范智能密碼鑰匙形

態(tài)的客戶端應(yīng)用接口(客戶端控件接口)。

服務(wù)器端應(yīng)用接口根據(jù)功能及接口形態(tài)的不同,分為COM組件接口、Java組件接口和密碼應(yīng)用

服務(wù)接口。應(yīng)用系統(tǒng)服務(wù)器端直接調(diào)用密碼設(shè)備時(shí),通過COM組件接口和Java組件接口實(shí)現(xiàn),其主

要功能包括:身份認(rèn)證、數(shù)字簽名、數(shù)據(jù)加解密等,COM組件接口符合GM/T0020-2012中7.2規(guī)定

的要求,見附錄B.2.1,Java組件接口符合GM/T0020-2012中7.3規(guī)定的要求,見附錄B.2.2。應(yīng)用系

統(tǒng)服務(wù)器端調(diào)用密碼應(yīng)用服務(wù)平臺(tái)時(shí),通過密碼應(yīng)用服務(wù)接口實(shí)現(xiàn),該接口的主要功能包括:身份認(rèn)

證、數(shù)字簽名、數(shù)據(jù)加解密、時(shí)間戳、電子印章、責(zé)任認(rèn)定等,密碼應(yīng)用服務(wù)接口形態(tài)為HTTP

restful,見附錄B.2.3。

6.5應(yīng)用接口技術(shù)要求

6.5.1密碼算法

密碼設(shè)備和密碼服務(wù)接口應(yīng)提供符合國家密碼管理部門規(guī)定的密碼算法和接口規(guī)范,并根據(jù)國家

密碼管理部門批準(zhǔn)的算法及時(shí)調(diào)整,以適應(yīng)國家最新技術(shù)標(biāo)準(zhǔn)要求。密碼算法及算法類型如表1所

示。

a)對稱密碼算法:SM1、SM4等;

b)公鑰密碼算法:SM2算法,兼容RSA算法但不推薦使用;

c)HASH算法:SM3、SHA256等。

表1密碼算法

算法名稱算法類型Oid

SM1算法我國分組密碼算法0197.1.102

SM4算法我國分組密碼算法0197.1.104

SM2橢圓曲線密碼算法我國非對稱密碼算法0197.1.301

4

LD/T02.4-2022

算法名稱算法類型Oid

SM2橢圓曲線簽名算法我國非對稱密碼算法0197.1.301.1

SM2橢圓曲線密鑰交換協(xié)議我國非對稱密碼算法0197.1.301.2

SM2橢圓曲線加密算法我國非對稱密碼算法0197.1.301.3

RSA算法國外非對密碼密算法1.2.840.1135

SM3雜湊算法我國雜湊密碼算法0197.1.401

SHA-256雜湊算法國外雜湊密碼算法2.16.8.4.2.1

SM3withSM2我國數(shù)字簽名算法0197.1.501

SM3withRSA國外數(shù)字簽名算法0197.1.504

SHA1withRSA國外數(shù)字簽名算法1.2.840.1135

SHA256withRSA國外數(shù)字簽名算法1.2.840.11351

6.5.2應(yīng)用接口運(yùn)行環(huán)境

密碼服務(wù)接口應(yīng)支持在以下環(huán)境中可靠運(yùn)行:

a)客戶端支持國產(chǎn)Linux桌面操作系統(tǒng)及WindowsXP、Windows7、Windows8、Windows10等

主流操作系統(tǒng);

b)服務(wù)器端支持國產(chǎn)Linux操作系統(tǒng)及Windows2012(或更高版本)、Linux、Unix等所有主流

操作系統(tǒng);

c)服務(wù)器端支持硬件密碼機(jī)或加密卡,客戶端證書載體支持智能密碼鑰匙、智能IC卡(第三

代社會(huì)保障卡)等設(shè)備;

d)應(yīng)用系統(tǒng)支持C/S和B/S的系統(tǒng)結(jié)構(gòu)。

6.5.3數(shù)據(jù)結(jié)構(gòu)

本文件對應(yīng)的接口處理的數(shù)據(jù)分為兩種類型:

a)數(shù)據(jù)類型A:當(dāng)公鑰算法為SM2時(shí),數(shù)據(jù)的結(jié)構(gòu)符合GB/T35276-2017規(guī)定的要求;當(dāng)公鑰

算法為RSA時(shí),數(shù)據(jù)的結(jié)構(gòu)應(yīng)符合PKCS#1;

b)數(shù)據(jù)類型B:當(dāng)公鑰算法為SM2時(shí),消息的結(jié)構(gòu)符合GB/T35275-2017規(guī)定的要求;當(dāng)公鑰

算法為RSA時(shí),消息的結(jié)構(gòu)應(yīng)符合PKCS#7。

7數(shù)字證書典型應(yīng)用流程

7.1概述

數(shù)字證書典型應(yīng)用流程主要包括以下幾類:

a)數(shù)字證書登錄認(rèn)證;

b)單向數(shù)字簽名與驗(yàn)簽;

c)雙向數(shù)字簽名與驗(yàn)簽;

d)加密與解密;

e)加密簽名與解密驗(yàn)簽。

另外,數(shù)字證書應(yīng)用場景相關(guān)示例見附錄A。

7.2數(shù)字證書登錄認(rèn)證

基于數(shù)字證書的登錄認(rèn)證是指用戶通過數(shù)字證書方式安全登錄人力資源社會(huì)保障業(yè)務(wù)系統(tǒng)的過

程。

在應(yīng)用過程中,用戶應(yīng)在業(yè)務(wù)系統(tǒng)中進(jìn)行注冊,同時(shí)需要將業(yè)務(wù)系統(tǒng)中的注冊用戶與用戶數(shù)字證

5

LD/T02.4-2022

書進(jìn)行關(guān)聯(lián)。用戶使用數(shù)字證書登錄前,應(yīng)安裝數(shù)字證書客戶端軟件,準(zhǔn)備好證書運(yùn)行環(huán)境。

數(shù)字證書登錄認(rèn)證流程如圖2所示。

客戶端證書登錄頁面服務(wù)器端處理程序

用戶插入智能密碼鑰

隨機(jī)數(shù)

匙,讀取本機(jī)證書列產(chǎn)生隨機(jī)數(shù)并保存

表,展現(xiàn)證書登錄框

用戶輸入證書口令,

開始“登錄”

驗(yàn)證證書口令

驗(yàn)證服務(wù)器證書及簽名

驗(yàn)證客戶端證書與簽名

用所選用戶證書對應(yīng)的

私鑰對隨機(jī)數(shù)簽名解析用戶證書

用戶證書+簽名

按照約定數(shù)據(jù)格式,根據(jù)證書的實(shí)體唯一標(biāo)識(shí)

提交到服務(wù)器端找到系統(tǒng)用戶并授權(quán)

圖2數(shù)字證書登錄認(rèn)證流程圖

數(shù)字證書登錄認(rèn)證流程:

a)用戶將證書載體(智能密碼鑰匙)插入計(jì)算機(jī),瀏覽證書登錄首頁。

b)服務(wù)器端處理程序產(chǎn)生一個(gè)隨機(jī)數(shù),通過密碼設(shè)備簽名,并將設(shè)備證書、隨機(jī)數(shù)及其電子簽名值

下載到客戶端。登錄頁面獲取本機(jī)注冊的數(shù)字證書,展現(xiàn)給用戶一個(gè)證書登錄框。

c)用戶選擇數(shù)字證書,輸入證書保護(hù)密碼(即智能密碼鑰匙的用戶口令),點(diǎn)擊“登錄”按鈕。此

時(shí),客戶端程序(如JavaScript)應(yīng)調(diào)用證書高級應(yīng)用接口(ActiveX控件)對證書密碼進(jìn)行校

驗(yàn)。以ActiveX控件為例,分別調(diào)用SOF_GetDeviceInstance和SOF_Login()函數(shù)。

d)登錄成功后,使用證書載體(智能密碼鑰匙)對隨機(jī)數(shù)進(jìn)行簽名。以ActiveX控件為例,調(diào)用

SOF_SignData()函數(shù)。

e)簽名成功后,按照約定的數(shù)據(jù)格式將數(shù)據(jù)提交給服務(wù)器。數(shù)據(jù)格式中至少應(yīng)包括用戶證書和證書

載體對隨機(jī)數(shù)的簽名。

f)服務(wù)器接收到客戶端提交的登錄請求后,應(yīng)調(diào)用證書應(yīng)用接口或密碼應(yīng)用服務(wù)接口驗(yàn)證客戶端證

書及其簽名的有效性,包括以下幾個(gè)方面:

1)用戶證書是否在有效期內(nèi);

2)用戶證書是否為服務(wù)器端配置的CA證書所簽發(fā);

3)用戶證書是否已被注銷;

4)驗(yàn)證用戶證書對隨機(jī)數(shù)簽名的有效性。

以Java組件為例,分別調(diào)用SOF_validateCert()和SOF_VerifySignedData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,分別調(diào)用B.證書驗(yàn)證接口和B.RAW方式驗(yàn)簽接

口。

g)服務(wù)器端調(diào)用證書應(yīng)用高級接口,解析用戶證書信息,獲取證書的實(shí)體唯一標(biāo)識(shí)。

h)服務(wù)器程序根據(jù)證書的實(shí)體唯一標(biāo)識(shí),在系統(tǒng)中找到對應(yīng)的用戶進(jìn)行相應(yīng)授權(quán)。

7.3單向數(shù)字簽名與驗(yàn)簽

單向數(shù)字簽名與驗(yàn)簽是指客戶端對業(yè)務(wù)數(shù)據(jù)進(jìn)行數(shù)字簽名,服務(wù)器驗(yàn)證后進(jìn)行業(yè)務(wù)處理的過程,

6

LD/T02.4-2022

從而實(shí)現(xiàn)客戶端向服務(wù)器端提交數(shù)據(jù)的完整性和用戶業(yè)務(wù)操作的不可抵賴性。

單向數(shù)字簽名和驗(yàn)簽流程如圖3所示。

客戶端頁面服務(wù)器端處理程序

用戶登錄,選擇操作菜單,

填寫表單數(shù)據(jù),確認(rèn)提交

填寫業(yè)務(wù)表單數(shù)據(jù)

組合業(yè)務(wù)數(shù)據(jù),

形成原始數(shù)據(jù)

使用客戶證書

使用登錄證書對應(yīng)的私驗(yàn)證簽名

鑰對原始數(shù)據(jù)進(jìn)行簽名

處理業(yè)務(wù)數(shù)據(jù),

業(yè)務(wù)數(shù)據(jù)+簽名

按照約定數(shù)據(jù)格式,保存業(yè)務(wù)數(shù)據(jù)和簽名

提交到服務(wù)器端

圖3單向數(shù)字簽名與驗(yàn)簽流程圖

單向數(shù)字證書簽名與驗(yàn)簽流程:

a)用戶使用數(shù)字證書登錄系統(tǒng),選擇操作菜單,根據(jù)提示填寫表單數(shù)據(jù),提交業(yè)務(wù)數(shù)據(jù)。

b)客戶端組合業(yè)務(wù)數(shù)據(jù),形成原始數(shù)據(jù)。

c)客戶端調(diào)用證書高級應(yīng)用接口(ActiveX控件),使用用戶數(shù)字證書對應(yīng)的私鑰對原始數(shù)據(jù)進(jìn)

行數(shù)字簽名,數(shù)字簽名時(shí)應(yīng)采用簽名密鑰,驗(yàn)證時(shí)采用簽名證書。以ActiveX控件為例,分

別調(diào)用SOF_GetDeviceInstance()、SOF_Login()、SOF_SignData()和SOF_GetCertInfo()函數(shù)。

d)按照約定格式,將原始數(shù)據(jù)和數(shù)字簽名提交到服務(wù)器端。

e)服務(wù)器端接收到客戶端的數(shù)據(jù)后,應(yīng)調(diào)用證書應(yīng)用接口或密碼應(yīng)用服務(wù)接口驗(yàn)證客戶端對業(yè)

務(wù)數(shù)據(jù)的簽名。

以Java組件為例,調(diào)用SOF_verifySignedData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,調(diào)用B.RAW方式驗(yàn)簽接口。

f)驗(yàn)證簽名通過后,服務(wù)端程序處理業(yè)務(wù)數(shù)據(jù),并保存業(yè)務(wù)數(shù)據(jù)和簽名。

7.4雙向數(shù)字簽名與驗(yàn)簽

雙向數(shù)字簽名與驗(yàn)簽是指客戶端和服務(wù)器端雙方分別對業(yè)務(wù)數(shù)據(jù)進(jìn)行數(shù)字簽名和驗(yàn)證,從而實(shí)現(xiàn)

客戶端和服務(wù)器端雙向數(shù)據(jù)傳輸?shù)臄?shù)據(jù)完整性和雙方業(yè)務(wù)操作的不可抵賴性。

雙向數(shù)字簽名和驗(yàn)簽流程如圖4所示。

7

LD/T02.4-2022

客戶端頁面服務(wù)器端處理程序

用戶登錄,

選擇操作菜單填寫業(yè)務(wù)表單數(shù)據(jù),

確認(rèn)提交

驗(yàn)證用戶證書與簽名

組合業(yè)務(wù)數(shù)據(jù)

形成原始數(shù)據(jù)

業(yè)務(wù)數(shù)據(jù)處理

使用用戶證書對應(yīng)的私

鑰對原始數(shù)據(jù)進(jìn)行簽名使用服務(wù)器證書對業(yè)務(wù)處理

的結(jié)果進(jìn)行數(shù)字簽名

業(yè)務(wù)數(shù)據(jù)+簽名

按照約定數(shù)據(jù)格式,

提交到服務(wù)器端保存業(yè)務(wù)數(shù)據(jù)和雙方簽名,

返回回執(zhí)到客戶端

客戶端網(wǎng)頁展現(xiàn)回執(zhí)

用戶下載回執(zhí)

回執(zhí)下載鏈接

圖4雙向數(shù)字簽名與驗(yàn)簽流程圖

雙向的數(shù)字簽名和驗(yàn)簽的流程:

a)用戶使用數(shù)字證書登錄系統(tǒng),選擇操作菜單,根據(jù)提示填寫表單數(shù)據(jù),提交業(yè)務(wù)數(shù)據(jù)。

b)客戶端組合業(yè)務(wù)數(shù)據(jù),形成原始數(shù)據(jù)。

c)客戶端調(diào)用證書高級應(yīng)用接口(ActiveX控件),使用用戶數(shù)字證書對應(yīng)的私鑰對原始數(shù)據(jù)進(jìn)

行數(shù)字簽名,數(shù)字簽名時(shí)應(yīng)采用簽名密鑰,驗(yàn)證時(shí)采用簽名證書。以ActiveX控件為例,分

別調(diào)用SOF_GetDeviceInstance()、SOF_Login()、SOF_SignData()和SOF_GetCertInfo()函數(shù)。

d)按照約定格式,將原始數(shù)據(jù)和數(shù)字簽名提交到服務(wù)器端。

e)驗(yàn)證簽名通過后,服務(wù)端程序處理業(yè)務(wù)數(shù)據(jù),并保存業(yè)務(wù)數(shù)據(jù)和簽名。

f)服務(wù)端程序處理成功后,使用設(shè)備證書對應(yīng)的私鑰對業(yè)務(wù)操作的結(jié)果進(jìn)行數(shù)字簽名(設(shè)備證

書對應(yīng)的私鑰一定從密碼設(shè)備中生成)。

以Java組件為例,調(diào)用SOF_signData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,調(diào)用B.RAW簽名接口。

g)服務(wù)端程序保存原始數(shù)據(jù)、客戶端簽名、服務(wù)器端的數(shù)字簽名,作為操作證據(jù)安全存儲(chǔ)在服

務(wù)器端,返回回執(zhí)到客戶端供用戶下載。

h)用戶下載回執(zhí)文件并保存。

7.5加密與解密

加密與解密是指業(yè)務(wù)數(shù)據(jù)的加密與解密,實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)的保密性。人力資源社會(huì)保障業(yè)務(wù)系統(tǒng)中

數(shù)據(jù)加密與解密的方式包括:

a)使用標(biāo)準(zhǔn)SSL協(xié)議對業(yè)務(wù)數(shù)據(jù)加密與解密;

b)使用數(shù)字信封對業(yè)務(wù)數(shù)據(jù)進(jìn)行加密與解密。

業(yè)務(wù)系統(tǒng)服務(wù)器端不需要保存密文,可選擇標(biāo)準(zhǔn)SSL協(xié)議進(jìn)行加密和解密。服務(wù)器端需要保存密

文,應(yīng)通過高級證書應(yīng)用接口實(shí)現(xiàn)基于數(shù)字信封方式的加密與解密,如圖5所示。

8

LD/T02.4-2022

圖5加密與解密流程圖

加密與解密的流程:

a)用戶使用數(shù)字證書登錄系統(tǒng)后,選擇操作菜單,根據(jù)提示填寫表單數(shù)據(jù),提交業(yè)務(wù)數(shù)據(jù)。

b)客戶端組合業(yè)務(wù)數(shù)據(jù),形成原始數(shù)據(jù)。

c)客戶端調(diào)用高級證書應(yīng)用接口(控件),使用服務(wù)器端設(shè)備證書對原始數(shù)據(jù)進(jìn)行加密,形成密

文數(shù)字信封數(shù)據(jù)。以ActiveX控件為例,調(diào)用SOF_EncryptData()函數(shù)。

d)按照約定格式,將密文數(shù)字信封數(shù)據(jù)提交到服務(wù)器端。

e)服務(wù)端程序接收到密文數(shù)字信封的業(yè)務(wù)數(shù)據(jù)后,使用服務(wù)器設(shè)備證書對應(yīng)的密碼設(shè)備解密,形

成明文格式的業(yè)務(wù)數(shù)據(jù)。

以Java組件為例,調(diào)用SOF_decryptData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,調(diào)用B.1數(shù)據(jù)解密接口。

f)服務(wù)端程序?qū)⒚芪臄?shù)字信封數(shù)據(jù)解密后,進(jìn)行相應(yīng)的業(yè)務(wù)處理,是否保存密文數(shù)字信封數(shù)據(jù)根

據(jù)應(yīng)用需求而定。

7.6加密簽名與解密驗(yàn)簽

加密簽名與解密驗(yàn)簽是指在客戶端對業(yè)務(wù)數(shù)據(jù)進(jìn)行加密和簽名,服務(wù)器端在業(yè)務(wù)處理前對密文進(jìn)

行解密和驗(yàn)證簽名的過程,從而實(shí)現(xiàn)數(shù)據(jù)保密性、完整性和操作的不可否認(rèn)性。

加密簽名與解密驗(yàn)簽流程如圖6所示。

9

LD/T02.4-2022

圖6加密簽名與解密驗(yàn)簽流程圖

加密簽名與解密驗(yàn)簽的流程:

a)用戶使用數(shù)字證書登錄系統(tǒng)后,選擇操作,根據(jù)提示填寫表單數(shù)據(jù),提交業(yè)務(wù)數(shù)據(jù)。

b)客戶端組合業(yè)務(wù)數(shù)據(jù),形成原始數(shù)據(jù)。

c)客戶端調(diào)用高級證書應(yīng)用接口(控件),使用用戶證書對原始數(shù)據(jù)進(jìn)行數(shù)字簽名,數(shù)字簽名時(shí)

應(yīng)采用發(fā)送方的簽名密鑰,驗(yàn)證時(shí)采用發(fā)送方簽名證書。以ActiveX控件為例,分別調(diào)用

SOF_GetDeviceInstance()、SOF_Login()、SOF_SignData()和SOF_GetCertInfo()函數(shù)。

d)客戶端調(diào)用高級證書應(yīng)用接口(控件),使用設(shè)備證書對原始數(shù)據(jù)進(jìn)行加密,形成密文數(shù)據(jù)。

以ActiveX控件為例,調(diào)用SOF_EncryptData()函數(shù)。

e)按照約定格式,將帶簽名的密文數(shù)字信封數(shù)據(jù)提交到服務(wù)器端。

f)服務(wù)端程序接收到帶簽名的密文數(shù)字信封數(shù)據(jù)后,使用服務(wù)器端設(shè)備證書對應(yīng)的密碼設(shè)備解

密。以Java組件為例,調(diào)用SOF_decryptData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,調(diào)用B.1數(shù)據(jù)解密接口。

g)服務(wù)端程序?qū)⒚芪臄?shù)字信封數(shù)據(jù)解密后,使用用戶證書驗(yàn)證數(shù)字簽名,進(jìn)行相應(yīng)的業(yè)務(wù)處理。

以Java組件為例,調(diào)用SOF_verifySignedData()函數(shù)。

以密碼應(yīng)用服務(wù)接口為例,調(diào)用BRAW方式驗(yàn)簽接口。

h)保存原始業(yè)務(wù)數(shù)據(jù)和客戶端簽名,作為操作證據(jù)安全存儲(chǔ)在服務(wù)器端。

10

LD/T02.4-2022

附錄A

(資料性)

數(shù)字證書應(yīng)用場景

隨著政策環(huán)境和業(yè)務(wù)需求的變化,人力資源社會(huì)保障業(yè)務(wù)系統(tǒng)會(huì)隨之變化,因此本文件并不針對

具體的業(yè)務(wù)系統(tǒng)進(jìn)行詳細(xì)分類和需求分析,而是從證書應(yīng)用功能角度分析證書應(yīng)用的安全需求。

A.1COM組件接口和Java組件接口調(diào)用

A.1.1應(yīng)用集成部署模型

數(shù)字證書應(yīng)用軟件分為客戶端和服務(wù)器端兩個(gè)模塊,應(yīng)用系統(tǒng)服務(wù)器端通過調(diào)用COM組件接口和

Java組件接口實(shí)現(xiàn)身份認(rèn)證、數(shù)字簽名、數(shù)據(jù)加解密等基本功能。典型的數(shù)字證書應(yīng)用集成部署模型

如圖A.1所示。

人力資源社會(huì)保障電子認(rèn)證系統(tǒng)

證書查詢驗(yàn)證

證書簽發(fā)管理系統(tǒng)

CRL發(fā)布服務(wù)系統(tǒng)

證書注冊管理系統(tǒng)

CRL同步

用戶證書簽發(fā)設(shè)備證書簽發(fā)

用戶

應(yīng)用服務(wù)器

證書登錄認(rèn)證密碼機(jī)

及證書應(yīng)用

1、客戶端控件1、服務(wù)器端認(rèn)證軟件包

2、證書載體驅(qū)動(dòng)程序(C動(dòng)態(tài)庫或JAR包)

3、證書載體(智能密碼鑰匙)2、CRL同步程序和CRL文件

3、CA證書和設(shè)備證書

圖A.1證書應(yīng)用集成部署模型

根據(jù)圖A.1所示,基于數(shù)字證書的應(yīng)用系統(tǒng)涉及三個(gè)方面:人力資源保障電子認(rèn)證系統(tǒng)、應(yīng)用服務(wù)

器和客戶端控件及證書載體等。

人力資源社會(huì)保障電子認(rèn)證系統(tǒng)負(fù)責(zé)為用戶簽發(fā)用戶數(shù)字證書,為應(yīng)用服務(wù)器簽發(fā)設(shè)備證書,并

通過證書查驗(yàn)服務(wù)系統(tǒng)向應(yīng)用服務(wù)器同步CRL文件。

應(yīng)用服務(wù)器端需要部署的內(nèi)容包括:

a)服務(wù)器認(rèn)證軟件包:進(jìn)行加密解密、數(shù)字簽名驗(yàn)簽的軟件接口。軟件包為C語言的動(dòng)態(tài)庫文件

或Java語言的Jar包;

b)CRL同步程序:定時(shí)從證書查驗(yàn)服務(wù)系統(tǒng)下載CRL文件的服務(wù)程序;

11

LD/T02.4-2022

c)CRL文件:CA系統(tǒng)發(fā)布的黑名單文件;

d)CA證書:行業(yè)CA證書和業(yè)務(wù)CA證書;

e)設(shè)備證書:代表服務(wù)器身份的數(shù)字證書,私鑰由密碼機(jī)產(chǎn)生;

f)密碼機(jī):存儲(chǔ)服務(wù)器設(shè)備證書對應(yīng)密鑰的密碼設(shè)備。

客戶端用戶需要安裝證書應(yīng)用軟件客戶端控件及證書載體的驅(qū)動(dòng)程序。在日常登錄和使用時(shí)應(yīng)將

證書載體(智能密碼鑰匙)插入客戶端的電腦中。

客戶端和服務(wù)器端通過雙方的數(shù)字證書進(jìn)行雙向身份認(rèn)證,在數(shù)據(jù)傳輸過程中,雙方可通過數(shù)字

證書進(jìn)行簽名、驗(yàn)證、加密、解密等安全操作,實(shí)現(xiàn)數(shù)據(jù)完整性、操作的不可抵賴性和數(shù)據(jù)保密性。

A.1.2數(shù)字證書應(yīng)用示例

A.1.2.1數(shù)字證書初始化綁定

用戶首先應(yīng)按照“證書申請流程”完成能夠代表自己身份的數(shù)字證書申請,以及業(yè)務(wù)系統(tǒng)的用戶

注冊。在登錄業(yè)務(wù)系統(tǒng)前,首先應(yīng)完成數(shù)字證書的綁定,即將數(shù)字證書的唯一標(biāo)識(shí)與該用戶在系統(tǒng)中

的賬戶(或用戶名)進(jìn)行綁定,實(shí)現(xiàn)數(shù)字證書與系統(tǒng)用戶及其權(quán)限的一一對應(yīng)。證書綁定成功后,應(yīng)

及時(shí)修改數(shù)字證書的pin碼。

數(shù)字證書綁定的操作流程如圖A.2所示。

圖A.2數(shù)字證書綁定流程圖

12

LD/T02.4-2022

A.1.2.2數(shù)字證書身份認(rèn)證

證書用戶完成數(shù)字證書綁定后,即可使用數(shù)字證書登錄業(yè)務(wù)系統(tǒng),數(shù)字證書登錄認(rèn)證處理流程如

下:

a)用戶將數(shù)字證書載體(智能密碼鑰匙)插入計(jì)算機(jī)后,輸入業(yè)務(wù)系統(tǒng)URL地址,訪問系統(tǒng);

b)服務(wù)器端程序調(diào)用認(rèn)證軟件包產(chǎn)生一個(gè)隨機(jī)數(shù),并保存在會(huì)話(Session)中;

c)服務(wù)器端將隨機(jī)數(shù)傳遞給客戶端;

d)用戶輸入證書pin碼,由數(shù)字證書載體(智能密碼鑰匙)驗(yàn)證證書pin碼的正確性;

e)驗(yàn)證證書pin成功后,使用智能密碼鑰匙對隨機(jī)數(shù)簽名;

f)客戶端將用戶證書和簽名值提交到服務(wù)器端;

g)服務(wù)器端程序接收到上述數(shù)據(jù)后,驗(yàn)證用戶證書和簽名值的有效性。其中,驗(yàn)證證書的有效性

包括:證書有效期、信任源以及是否被吊銷;

h)解析證書中的唯一標(biāo)識(shí),根據(jù)唯一標(biāo)識(shí)獲取用戶權(quán)限,顯示用戶權(quán)限對應(yīng)的操作頁面。

數(shù)字證書身份認(rèn)證處理流程如圖A.3所示。

圖A.3數(shù)字證書身份認(rèn)證流程圖

13

LD/T02.4-2022

A.1.2.3簽名驗(yàn)簽示例1:金保工程異地業(yè)務(wù)系統(tǒng)

以金保工程異地業(yè)務(wù)系統(tǒng)為例,介紹在業(yè)務(wù)系統(tǒng)中如何利用數(shù)字證書實(shí)現(xiàn)身份認(rèn)證和對傳輸?shù)闹?/p>

要業(yè)務(wù)數(shù)據(jù)的簽名保護(hù),從而實(shí)現(xiàn)數(shù)據(jù)完整性和不可抵賴性。

異地業(yè)務(wù)系統(tǒng)主要是實(shí)現(xiàn)異地社會(huì)保險(xiǎn)關(guān)系轉(zhuǎn)移信息交換的業(yè)務(wù)系統(tǒng),異地社會(huì)保險(xiǎn)關(guān)系轉(zhuǎn)移的

主要業(yè)務(wù)操作流程如下:

a)A地的參保人員首先登錄到本地的異地轉(zhuǎn)移系統(tǒng),申請保險(xiǎn)關(guān)系轉(zhuǎn)移業(yè)務(wù),并向異地系統(tǒng)上傳

申請接收函信息;

b)B地異地系統(tǒng)查詢下載接收函信息,進(jìn)行辦理轉(zhuǎn)出操作,并向異地系統(tǒng)上傳分險(xiǎn)種的轉(zhuǎn)移單;

c)A地異地系統(tǒng)查詢轉(zhuǎn)移單,并下載辦理轉(zhuǎn)入,完成后上傳轉(zhuǎn)移單,操作完畢。

以A地辦理轉(zhuǎn)入業(yè)務(wù)申請為例,簽名驗(yàn)簽處理流程如下:

a)用戶將數(shù)字證書載體(智能密碼鑰匙)插入計(jì)算機(jī),登錄到異地業(yè)務(wù)系統(tǒng);

b)編輯、輸入、上傳接收函文件;

c)使用智能密碼鑰匙對接收函文件進(jìn)行簽名;

d)提交接收函文件、簽名及簽名證書;

e)服務(wù)器端程序驗(yàn)證簽名有效性,對接收函驗(yàn)證簽名;

f)驗(yàn)證成功后,保存當(dāng)前的接收函,業(yè)務(wù)處理結(jié)束。

異地業(yè)務(wù)系統(tǒng)證書簽名驗(yàn)簽業(yè)務(wù)處理流程如圖A.4所示。

圖A.4金保工程異地業(yè)務(wù)系統(tǒng)證書簽名驗(yàn)簽流程圖

A.1.2.4簽名驗(yàn)簽示例2:金保工程傳輸總線系統(tǒng)

金保工程傳輸總線系統(tǒng)通過建立數(shù)據(jù)總線通道,利用數(shù)字簽名技術(shù)實(shí)現(xiàn)部門間數(shù)據(jù)的安全上傳和

下發(fā),主要應(yīng)用在金保工程聯(lián)網(wǎng)軟件系統(tǒng)數(shù)據(jù)報(bào)表的上傳和下發(fā)。

金保工程傳輸總線系統(tǒng)中數(shù)字證書簽名驗(yàn)簽處理流程如下:

14

LD/T02.4-2022

a)下級應(yīng)用系統(tǒng)(如:地市聯(lián)網(wǎng)軟件系統(tǒng))需要上傳數(shù)據(jù)報(bào)表到上級部門時(shí),操作聯(lián)網(wǎng)軟件的

業(yè)務(wù)人員將數(shù)據(jù)上傳到本地總線服務(wù)器上;

b)本地總線服務(wù)器定時(shí)輪詢目錄中需要上傳的報(bào)表文件。當(dāng)檢測到上報(bào)文件后,產(chǎn)生隨機(jī)數(shù)A,

然后向目的地總線服務(wù)器發(fā)出服務(wù)請求;

c)目的地總線服務(wù)器接收到請求后,產(chǎn)生隨機(jī)數(shù)B,使用目的地總線服務(wù)器的設(shè)備證書對隨機(jī)數(shù)

A和隨機(jī)數(shù)B簽名,并將隨機(jī)數(shù)B和簽名值返回給本地總線服務(wù)器;

d)本地總線服務(wù)器驗(yàn)證目的地總線服務(wù)器的證書和簽名后,將隨機(jī)數(shù)B和需傳輸?shù)臉I(yè)務(wù)數(shù)據(jù)進(jìn)行

組合,使用本地總線服務(wù)器的設(shè)備證書對組合數(shù)據(jù)進(jìn)行簽名,將業(yè)務(wù)數(shù)據(jù)和簽名值發(fā)送到目

的地總線服務(wù)器;

e)目的地總線服務(wù)器驗(yàn)證本地總線服務(wù)器的設(shè)備證書及簽名后,保存本地總線服務(wù)器傳輸?shù)臉I(yè)

務(wù)數(shù)據(jù),并返回成功信息;

f)至此,從本地總線服務(wù)器到目的地總線服務(wù)器數(shù)據(jù)文件傳輸結(jié)束。

傳輸總線系統(tǒng)數(shù)字證書簽名驗(yàn)簽業(yè)務(wù)處理流程如圖A.5所示。

15

LD/T02.4-2022

圖A.5金保工程傳輸總線系統(tǒng)證書簽名驗(yàn)簽流程圖

A.2密碼應(yīng)用服務(wù)接口調(diào)用

A.2.1應(yīng)用集成部署模型

應(yīng)用系統(tǒng)通過調(diào)用密碼應(yīng)用服務(wù)接口實(shí)現(xiàn)身份認(rèn)證、數(shù)據(jù)加解密、數(shù)字簽名、時(shí)間戳、電子印

章、責(zé)任認(rèn)定等服務(wù)功能。典型的應(yīng)用集成部署模型如圖A.6所示。

16

LD/T02.4-2022

圖A.6證書應(yīng)用集成部署模型

根據(jù)圖A.6所示,基于證書的應(yīng)用系統(tǒng)涉及三個(gè)方面:人力資源社會(huì)保障電子認(rèn)證系統(tǒng)、應(yīng)用服務(wù)

器和客戶端認(rèn)證類軟件及證書載體等。

人力資源社會(huì)保障電子認(rèn)證系統(tǒng)負(fù)責(zé)為用戶簽發(fā)用戶數(shù)字證書。

應(yīng)用服務(wù)器端通過密碼應(yīng)用服務(wù)接口調(diào)用密碼應(yīng)用服務(wù)平臺(tái)實(shí)現(xiàn)身份認(rèn)證、簽名、驗(yàn)簽等操作。

客戶端用戶需要安裝證書應(yīng)用軟件客戶端控件及證書載體的驅(qū)動(dòng)程序。在日常登錄和使用時(shí)應(yīng)將證書

載體(智能密碼鑰匙)插入客戶端的電腦中。

客戶端和服務(wù)器端通過雙方的數(shù)字證書進(jìn)行雙向身份認(rèn)證,在數(shù)據(jù)傳輸過程中,雙方可通過數(shù)字

證書進(jìn)行簽名、驗(yàn)證、加密、解密等安全操作,實(shí)現(xiàn)數(shù)據(jù)完整性、操作的不可抵賴性和數(shù)據(jù)保密性。

密碼應(yīng)用服務(wù)接口調(diào)用流程說明:

1.應(yīng)用接入

所有調(diào)用密碼應(yīng)用服務(wù)接口的應(yīng)用系統(tǒng),需要在密碼應(yīng)用服務(wù)平臺(tái)申請接入;密碼應(yīng)用服務(wù)平臺(tái)

審核通過后根據(jù)接入申請為其分配資源權(quán)限,以及下述信息:

“syscode”:系統(tǒng)代碼;

“sysauthcode”:系統(tǒng)授權(quán)碼,由應(yīng)用負(fù)責(zé)其安全存儲(chǔ),用于通訊認(rèn)證過程中的hmac計(jì)算;

“secretcode”:一個(gè)計(jì)算密鑰,二進(jìn)制數(shù)據(jù),長度為32字節(jié)。

2.應(yīng)用系統(tǒng)拿到上述信息后,根據(jù)message_header的要求組織header頭信息,每次調(diào)用的業(yè)務(wù)均

需要帶有上面的校驗(yàn)信息。

17

LD/T02.4-2022

3.完成業(yè)務(wù)流程處理后,根據(jù)附錄B.2.2.1報(bào)文結(jié)構(gòu)要求對message_header組織響應(yīng)header頭信

息,最終返回給服務(wù)調(diào)用方。

4.所有應(yīng)用系統(tǒng)應(yīng)安全保存sysauthcode和secretcode,不得泄露。

A.2.2數(shù)字證書身份認(rèn)證應(yīng)用示例

用戶在登錄業(yè)務(wù)系統(tǒng)前,首先應(yīng)完成數(shù)字證書的綁定,即將數(shù)字證書的唯一標(biāo)識(shí)與該用戶在系統(tǒng)

中的賬戶(或用戶名)進(jìn)行綁定,實(shí)現(xiàn)數(shù)字證書與系統(tǒng)用戶及其權(quán)限的一一對應(yīng)。數(shù)字證書綁定的操

作流程見A.1.2.1。

證書用戶完成數(shù)字證書綁定后,即可使用數(shù)字證書登錄業(yè)務(wù)系統(tǒng),證書登錄認(rèn)證處理流程如下:

a)用戶將數(shù)字證書載體(智能密碼鑰匙)插入計(jì)算機(jī)后,輸入業(yè)務(wù)系統(tǒng)URL地址,訪問系統(tǒng);

b)服務(wù)器端程序調(diào)用B.隨機(jī)數(shù)獲取接口,產(chǎn)生一個(gè)隨機(jī)數(shù),并保存在會(huì)話(Session)中;

c)服務(wù)器端將隨機(jī)數(shù)傳遞給客戶端;

d)用戶輸入證書pin碼,由數(shù)字證書載體(智能密碼鑰匙)驗(yàn)證證書pin碼的正確性;

e)驗(yàn)證證書pin成功后,使用智能密碼鑰匙對隨機(jī)數(shù)簽名;

f)客戶端將用戶證書和簽名值提交到服務(wù)器端;

g)服務(wù)器端程序接收到上述數(shù)據(jù)后,通過密碼應(yīng)用服務(wù)接口調(diào)用密碼應(yīng)用服務(wù)平臺(tái)驗(yàn)證用戶證書

和簽名值的有效性。其中,驗(yàn)證證書的有效性包括:證書有效期、信任源以及是否被吊銷;

h)解析證書中的唯一標(biāo)識(shí),根據(jù)唯一標(biāo)識(shí)獲取用戶權(quán)限,顯示用戶權(quán)限對應(yīng)的操作頁面。

數(shù)字證書身份認(rèn)證處理流程如圖A.7所示。

18

LD/T02.4-2022

圖A.7數(shù)字證書身份認(rèn)證流程圖

19

LD/T02.4-2022

附錄B

(規(guī)范性)

數(shù)字證書客戶端與服務(wù)端應(yīng)用接口技術(shù)要求

B.1客戶端應(yīng)用接口

a)獲取接口版本信息SOF_GetVersion

原型:BSTRSOF_GetVersion()

描述:獲取控件的版本號(hào)。

參數(shù):無

返回非空成功

值:空失敗

b)設(shè)置簽名算法SOF_SetSignMethod

原型:longSOF_SetSignMethod(longSignMethod)

描述:設(shè)置接口在簽名運(yùn)算時(shí)使用的簽名算法,如SM3、SHA1算法等。

參數(shù):SignMethod[in]簽名算法標(biāo)識(shí)

返回值:0成功

其他失敗,詳見附錄C

c)獲得當(dāng)前簽名算法SOF_GetSignMethod

原型:longSOF_GetSignMethod()

描述:獲得控件簽名使用的簽名算法。

參數(shù):無

返回值:非0當(dāng)前接口使用的簽名算法的預(yù)定義值

0沒有設(shè)置簽名算法

d)設(shè)置加密算法SOF_SetEncryptMethod

原型:longSOF_SetEncryptMethod(longEncryptMethod)

描述:設(shè)置組件進(jìn)行數(shù)據(jù)加解密時(shí)使用的對稱算法,SM1、SM4算法等。

參數(shù):EncryptMethod[in]對稱加解密算法標(biāo)識(shí)

返回值:0成功

其他失敗,詳見附錄C

e)獲得加密算法SOF_GetEncryptMethod

原型:longSOF_GetEncryptMethod()

描述:獲得控件使用的對稱加解密算法。

參數(shù):無

返回值:非0當(dāng)前控件使用的加密算法的預(yù)定義值

0沒有設(shè)置加密算法

f)獲得證書列表SOF_GetUserList

原型:BSTRSOF_GetUserList()

描述:取得當(dāng)前已安裝證書的用戶列表。

參數(shù):無

返回值:非空用戶列表字符串?dāng)?shù)據(jù)格式為:用戶名

1||ContainerName1&&&用戶名2||

ContainerNam21&&&…

空失敗

備注:根據(jù)證書應(yīng)用的策略不同得到不同的證書列表。在證書列表中,用戶名代

表證書的CN項(xiàng)內(nèi)容;ContainerName代表證書和密鑰對應(yīng)的容器名,也

20

LD/T02.4-2022

可以是代表證書實(shí)體身份的唯一的號(hào)碼,通過ContainerName可以找到唯

一的加密證書、簽名證書,并使用對應(yīng)的密鑰。

g)導(dǎo)出用戶簽名證書SOF_ExportUserCert

原型:BSTRSOF_ExportUserCert(BSTRContainerName)

描述:根據(jù)證書容器名,獲取base64編碼的證書字符串。

參數(shù):ContainerName[in]證書容器名

返回值:非空Base64編碼的證書字符串

空失敗

備注:默認(rèn)導(dǎo)出簽名證書,無簽名證書時(shí)導(dǎo)出加密證書。

h)校驗(yàn)證書口令SOF_Login

原型:BOOLSOF_Login(BSTRContainerName,BSTRPassWd)

描述:校驗(yàn)設(shè)備的用戶認(rèn)證口令,進(jìn)行用戶認(rèn)證。

參數(shù):ContainerName[in]證書容器名

PassWd[in]設(shè)備的用戶認(rèn)證口令

返回值:TRUE成功

FALSE失敗

i)獲取用戶認(rèn)證口令剩余重試次數(shù)SOF_GetPinRetryCount

原型:longSOF_GetPinRetryCount(BSTRContainerName)

描述:獲取用戶認(rèn)證口令的剩余密碼重試次數(shù)。

參數(shù):ContainerName[in]證書容器名

返回值:剩余口令重試次數(shù),當(dāng)重試次數(shù)小于或等于0時(shí)表示證書介質(zhì)口令已被鎖

j)修改證書口令SOF_ChangePassWd

原型:BOOLSOF_ChangePassWd(BSTRContainerName,BSTROldPassWd,

BSTRNewPassWd)

描述:修改設(shè)備的用戶認(rèn)證口令。

參數(shù):ContainerName[in]證書容器名

OldPassWd[in]舊口令

NewPassWd[in]新口令

返回值:TRUE成功

FALSE失敗

k)導(dǎo)出用戶加密證書SOF_ExportExChangeUserCert

原型:BSTRSOF_ExportExChangeUserCert(BSTRContainerName)

描述:根據(jù)證書容器名,獲取base64編碼的加密(交換)證書字符串。

參數(shù):ContainerName[in]證書容器名

返回值:非空Base64編碼的證書字符串

空失敗

l)獲得證書信息SOF_GetCertInfo

原型:BSTRSOF_GetCertInfo(BSTRBase64EncodeCert,shortType)

描述:獲取證書內(nèi)指定類型的信息。

參數(shù):base64EncodeCert[in]Base64編碼的證書

Type[in]獲取信息的類型

返回值:非空證書內(nèi)指定類型的信息

空失敗

m)獲得證書擴(kuò)展信息SOF_GetCertInfoByOid

原型:BSTRSOF_GetCertInfoByOid(BSTRBase64EncodeCert,BSTROid)

描述:根據(jù)OID獲取證書私有擴(kuò)展項(xiàng)信息。

參數(shù):base64EncodeCert[in]Base64編碼的證書

Oid[in]私有擴(kuò)展對象ID

21

LD/T02.4-2022

返回值:非空私有擴(kuò)展對象OID對應(yīng)的信息

空失敗

n)獲得設(shè)備信息SOF_GetDeviceInfo

原型:BSTRSOF_GetDeviceInfo(BSTRContainerName,longType)

描述:根據(jù)容器和類型代碼獲得設(shè)備信息。

參數(shù):ContainerName[in]證書容器名

Type[in]信息類別

返回值:非空Type對應(yīng)的設(shè)備信息

空失敗

o)驗(yàn)證證書有效性SOF_ValidateCert

原型:longSOF_ValidateCert(BSTRBase64EncodeCert)

描述:驗(yàn)證證書有效性。

參數(shù):base64EncodeCert[in]Base64編碼的證書

返回值:0驗(yàn)證成功

其他-1證書不被信任

-2超過有效期范圍

-3證書已作廢

-4證書已凍結(jié)

-5證書未生效

-6其他錯(cuò)誤

備注:基本的證書驗(yàn)證策略應(yīng)包括:

a)驗(yàn)證CA信任列表,各層都要進(jìn)行簽名和有效期驗(yàn)證;

b)各層證書的有效期;

c)各層證書的吊銷狀態(tài)。在特殊情況下(如:網(wǎng)絡(luò)條件不允許),證書的吊

銷狀態(tài)可采取靈活方式,由應(yīng)用系統(tǒng)各層內(nèi)部維護(hù)一個(gè)吊銷列表,在證書登錄

認(rèn)證時(shí)應(yīng)用該吊銷列表。驗(yàn)證證書有效性也可采取代理驗(yàn)證方式。

p)數(shù)字簽名SOF_SignData

原型:BSTRSOF_SignData(BSTRContainerName,BSTRInData)

描述:對字符串?dāng)?shù)據(jù)進(jìn)行數(shù)字簽名,簽名結(jié)果為數(shù)據(jù)類型A

參數(shù):ContainerName[in]證書容器名

InData[in]簽名原文

返回值:非空Base64編碼的簽名結(jié)果

空失敗

q)驗(yàn)證簽名SOF_VerifySignedData

原型:BOOLVerifySignedData(BSTRBase64EncodeCert,BSTRInData,

BSTRSignValue)

描述:驗(yàn)證數(shù)字簽名,簽名值為數(shù)據(jù)類型A。

參數(shù):b

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論