《城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范(征求意見稿) 第7部分 安全規(guī)范》由會員分享,可在線閱讀,更多相關(guān)《城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范(征求意見稿) 第7部分 安全規(guī)范(71頁珍藏版)》請在裝配圖網(wǎng)上搜索。
XXXXXXXXXXXX 發(fā)布
2xxx-xx-x實施
2xxx-xx-xx發(fā)布
城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范(征求意見稿)
第7部分:安全規(guī)范
The Application Standards of business and technology of City Public Transportation IC Card
Part VII:Safety specification
JT/T xxxxx—xxxx
JT
中華人民共和國XX標準
ICS xxxxxxx
X xx
備案號:
JT/T xxxxx—xxxx
目 次
目 錄 I
前 言 III
引 言 V
1 范圍 1
2 規(guī)范性引用文件 1
3 術(shù)語和定義 1
4 符號和縮略語 5
5 脫機數(shù)據(jù)認證 7
5.1 密鑰和證書 7
5.2 靜態(tài)數(shù)據(jù)認證(SDA) 8
5.3 動態(tài)數(shù)據(jù)認證(DDA) 14
6 應(yīng)用密文和發(fā)卡機構(gòu)認證 29
6.1 應(yīng)用密文產(chǎn)生 29
6.2 發(fā)卡機構(gòu)認證 30
6.3 密鑰管理 30
7 行業(yè)信息的保護 31
7.1 密鑰說明 31
7.2 密鑰的生成和管理 31
7.3 安全機制 31
8 安全報文 31
8.1 報文格式 31
8.2 報文完整性及其驗證 31
8.3 報文私密性 32
8.4 密鑰管理 32
9 卡片安全 32
9.1 共存應(yīng)用 32
9.2 密鑰的獨立性 32
9.3 卡片內(nèi)部安全體系 32
9.4 卡片中密鑰的種類 35
10 終端安全 36
10.1 終端數(shù)據(jù)安全性要求 36
10.2 終端設(shè)備安全性要求 37
10.3 終端密鑰管理要求 39
11 密鑰管理體系 40
11.1 認證中心公鑰管理 41
11.2 發(fā)卡機構(gòu)公鑰管理 45
11.3 交通運輸部、省級交通廳及發(fā)卡機構(gòu)對稱密鑰管理 45
12 個人化安全 47
12.1 安全綜述 47
12.2 初始化安全 47
12.3 密鑰定義 48
12.4 管理要求 49
12.5 安全模塊 54
12.6 風險審計 55
13 安全機制 55
13.1 對稱加密機制 55
13.2 非對稱加密機制 59
14 認可的算法 60
14.1 對稱加密算法 60
14.2 非對稱加密算法 60
14.3 哈希算法 61
參考文獻 62
前 言
《城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范》分為8個部分:
—— 第1部分:總則;
—— 第2部分:公共交通IC卡技術(shù)要求;
—— 第3部分:公共交通IC卡讀寫終端技術(shù)要求;
—— 第4部分:業(yè)務(wù)規(guī)則規(guī)范;
—— 第5部分:信息技術(shù)接口規(guī)范;
—— 第6部分:通訊報文接口規(guī)范;
—— 第7部分:安全規(guī)范(密鑰系統(tǒng));
—— 第8部分:檢測規(guī)范。
本部分為規(guī)范的第7部分。
本部分按照GB/T 1.1-2009給出的規(guī)則起草。
本部分由中華人民共和國交通運輸部提出。
本部分主要起草單位:。
本部分主要起草人:。
本部分為首次發(fā)布。
引 言
本部分為城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范的第7部分,與規(guī)范的第1部分、第2部分、第3部分、第4部分、第5部分、第6部分和第8部分一起構(gòu)成城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范。
V
JT/T xxxxx—xxxx
城市公共交通IC卡業(yè)務(wù)及技術(shù)應(yīng)用規(guī)范
第7部分:安全規(guī)范(密鑰系統(tǒng))
1 范圍
本部分描述了城市公共交通IC卡安全功能方面的要求以及為實現(xiàn)這些安全功能所涉及的安全機制和獲準使用的加密算法,包括:IC卡脫機數(shù)據(jù)認證方法,IC卡和發(fā)卡機構(gòu)之間的通訊安全,以及相關(guān)的對稱及非對稱密鑰的管理,具體內(nèi)容如下:
脫機數(shù)據(jù)認證;
應(yīng)用密文和發(fā)卡機構(gòu)認證;
行業(yè)信息的保護;
安全報文;
卡片安全;
終端安全;
對稱和非對稱密鑰管理體系。
個人化安全;
此外,還包括為實現(xiàn)這些安全功能所涉及的安全機制和獲準使用的加密算法的規(guī)范。
本部分適用于由機構(gòu)發(fā)行或受理的城市公共交通IC卡與安全有關(guān)的設(shè)備、卡片、終端機具及管理等。其使用對象主要是與城市公共交通IC卡應(yīng)用相關(guān)的卡片、終端及加密設(shè)備等的設(shè)計、制造、管理、發(fā)行以及應(yīng)用系統(tǒng)的研制、開發(fā)、集成和維護等相關(guān)部門(單位)。
2 規(guī)范性引用文件
下列文件中的條款通過本部分的引用而成為本部分的條款。凡是注日期的引用文件,其隨后所有的修改單(不包括勘誤的內(nèi)容)或修訂版均不適用于本部分,然而,鼓勵根據(jù)本部分達成協(xié)議的各方研究是否可使用這些文件的最新版本。凡是不注日期的引用文件,其最新版本適用于本部分。
GB/T 16649.5 識別卡 帶觸點的集成電路卡 第5部分:應(yīng)用標識符的編號系統(tǒng)和注冊程序(GB/T 16649.5-2002,ISO/IEC 7816-5:1994,NEQ)
GB/T 20547.2 銀行業(yè)務(wù) 安全加密設(shè)備(零售) 第2部分:金融交易中設(shè)備安全符合性檢測清單(GB/T 20547.2-2006,ISO 13491-2:2005,IDT)
ISO/IEC 7816-4:2005 識別卡 帶觸點的集成電路卡 第4部分:行業(yè)間交換用命令
ISO 8731-1 銀行業(yè)務(wù) 批準的報文鑒別算法 第1部分:DEA
ISO 8732 信息處理 64位塊加密算法的運算方法
ISO/IEC 9796-2 信息技術(shù) 安全技術(shù) 帶報文恢復的數(shù)字簽名方案 第2部分:基于整數(shù)因子分解的機制
ISO/IEC 9797-1 信息技術(shù) 安全技術(shù) 報文鑒別碼(MACs) 第1部分: 塊密碼機制
ISO/IEC 10116 信息技術(shù) 安全技術(shù) n位塊密碼算法的操作方式
ISO 13491-1 銀行業(yè)務(wù) 安全加密設(shè)備(零售) 第1部分:概念、要求和評估方法
3 術(shù)語和定義
下列術(shù)語和定義適用本部分。
3.1
提前回收 accelerated revocation
在已公布的密鑰失效日期到期前回收密鑰。
3.2
應(yīng)用 application
卡片和終端之間的應(yīng)用協(xié)議和相關(guān)的數(shù)據(jù)集。
3.3
非對稱加密技術(shù) asymmetric cryptographic technique
采用兩種相關(guān)變換的加密技術(shù):公開變換(由公鑰定義)和私有變換(由私鑰定義)。這兩種變換存在在獲得公開變換的情況下是不能夠通過計算得出私有變換的特性。
3.4
認證 authentication
確認一個實體所宣稱的身份的措施。
3.5
字節(jié) byte
由指明的8位數(shù)據(jù)b1到b8組成,從最高有效位(MSB,b8)到最低有效位(LSB,b1)。
3.6
卡片 card
支付系統(tǒng)定義的支付卡片。
3.7
證書 certificate
由發(fā)行證書的認證中心使用其私鑰對實體的公鑰、身份信息以及其它相關(guān)信息進行簽名,形成的不可偽造的數(shù)據(jù)。
3.8
認證中心 certification authority
證明公鑰和其它相關(guān)信息同其擁有者相關(guān)聯(lián)的可信的第三方機構(gòu)。
3.9
命令 command
終端向IC卡發(fā)出的一條報文,該報文啟動一個操作或請求一個響應(yīng)。
3.10
泄露 compromise
機密或安全被破壞。
3.11
串聯(lián) concatenation
通過把第二個元素的字節(jié)添加到第一個元素的結(jié)尾將兩個元素連接起來。每個元素中的字節(jié)在結(jié)果串中的順序和原來從IC卡發(fā)到終端時的順序相同,即高位字節(jié)在前。在每個字節(jié)中位按由高到低的順序排列。
3.12
密文 cryptogram
加密運算的結(jié)果。
3.13
加密算法 cryptographic algorithm
為了隱藏或顯現(xiàn)數(shù)據(jù)信息內(nèi)容的變換算法。
3.14
密鑰有效期 cryptoperiod
某個特定的密鑰被授權(quán)可以使用的時間段,或者某個密鑰在給定的系統(tǒng)中有效的時間段。
3.15
解密 decipherment
對應(yīng)加密過程的逆操作。
3.16
數(shù)字簽名 digital signature
對數(shù)據(jù)的一種非對稱加密變換。該變換可以使數(shù)據(jù)接收方確認數(shù)據(jù)的來源和完整性,保護數(shù)據(jù)發(fā)送方發(fā)出和接收方收到的數(shù)據(jù)不被第三方篡改,也保護數(shù)據(jù)發(fā)送方發(fā)出的數(shù)據(jù)不被接收方篡改。。
3.17
加密 encipherment
基于某種加密算法對數(shù)據(jù)做可逆的變換從而生成密文的過程。
3.18
=交易 transaction
由于持卡者和商戶之間的商品或服務(wù)交換行為而在持卡者、發(fā)卡機構(gòu)、商戶和收單機構(gòu)之間產(chǎn)生的信息交換、資金清算和結(jié)算行為。
3.19
哈希函數(shù) hash function
將位串映射為定長位串的函數(shù),它滿足以下兩個條件:
對于一個給定的輸出,不可能推導出與之相對應(yīng)的輸入數(shù)據(jù);
對于一個給定的輸入,不可能通過計算得到具有相同的輸出的另一個輸入。
另外,如果要求哈希函數(shù)具備防沖突功能,則還應(yīng)滿足以下條件:
不可能通過計算找到兩個不同的輸入具有相同的輸出。
3.20
哈希結(jié)果 hash result
哈希函數(shù)的輸出位串。
3.21
集成電路 integrated circuit(s)
具有處理和/或存儲功能的電子器件。
3.22
集成電路卡 integrated circuit(s) card
內(nèi)部封裝一個或多個集成電路用于執(zhí)行處理和存儲功能的卡片。
3.23
接口設(shè)備 interface device
終端上插入IC卡的部分,包括其中的機械和電氣部分。
3.24
密鑰 key
控制加密轉(zhuǎn)換操作的符號序列。
3.25
密鑰失效日期 key expiry date
用特定密鑰產(chǎn)生的簽名不再有效的最后期限。用此密鑰簽名的發(fā)卡機構(gòu)證書必須在此日期或此日期之前失效。在此日期后,此密鑰可以從終端刪除。
3.26
密鑰引入 key introduction
產(chǎn)生、分發(fā)和開始使用密鑰對的過程。
3.27
密鑰生命周期 key life cycle
密鑰管理的所有階段,包括計劃、生成、回收、銷毀和存檔。
3.28
密鑰更換 key replacement
回收一個密鑰,同時引入另外一個密鑰來代替它。
3.29
密鑰回收 key revocation
回收使用中的密鑰以及處理其使用后的遺留問題的密鑰管理過程。密鑰回收可以按計劃回收或提前回收。
3.30
密鑰回收日期 key revocation date
在此日期后,任何仍在使用的合法卡不會包含用此密鑰簽名的證書。因此,密鑰可以從終端上被刪除。對按計劃的密鑰回收,密鑰回收日期應(yīng)等同于密鑰失效日期。
3.31
邏輯泄露 logical compromise
由于密碼分析技術(shù)和/或計算能力的提高,對密鑰造成的泄露。
3.32
報文 message
由終端向卡或卡向終端發(fā)出的,不含傳輸控制字符的字節(jié)串。
3.33
報文鑒別碼 message authentication code
對交易數(shù)據(jù)及其相關(guān)參數(shù)進行運算后產(chǎn)生的代碼,主要用于驗證報文的完整性。
3.34
填充 padding
向數(shù)據(jù)串某一端添加附加位。
3.35
密碼鍵盤 PIN pad
用于輸入個人識別碼的一組數(shù)字和命令按鍵。
3.36
明文 plaintext
未被加密的信息。
3.37
物理泄露 physical compromise
由于沒有安全的保護,或者硬件安全模塊的被盜或被未經(jīng)授權(quán)的人存取等事實對密鑰造成的泄露。
3.38
計劃回收 planned revocation
按照公布的密鑰失效日期進行的密鑰回收。
3.39
潛在泄露 potential compromise
密碼分析技術(shù)和/或計算能力的提高達到了可能造成某個特定長度的密鑰的泄露的情況。。
3.40
私鑰 private key
一個實體的非對稱密鑰對中含有的供實體自身使用的密鑰,在數(shù)字簽名方案中,私鑰用于簽名。
3.41
公鑰 public key
在一個實體使用的非對稱密鑰對中可以公開的密鑰。在數(shù)字簽名方案中,公鑰用于驗證。
3.42
公鑰證書 public key certificate
由認證中心簽名的不可偽造的某個實體的公鑰信息。
3.43
保密密鑰 secret key
對稱加密技術(shù)中僅供指定實體所用的密鑰。
3.44
響應(yīng) response
IC卡處理完成收到的命令報文后,返回給終端的報文。
3.45
對稱加密技術(shù) symmetric cryptographic technique
發(fā)送方和接收方使用相同保密密鑰進行數(shù)據(jù)變換的加密技術(shù)。在不掌握保密密鑰的情況下,不可能推導出發(fā)送方或接收方的數(shù)據(jù)變換。
3.46
終端 terminal
在交易點安裝、用于與IC卡配合共同完成交易的設(shè)備。它應(yīng)包括接口設(shè)備,也可包括其它的部件和接口(如與主機的通訊)。
4 符號和縮略語
下列縮略語和符號適用于本部分。
AAC
應(yīng)用認證密文(Application Authentication Cryptogram)
AC
應(yīng)用密文(Application Cryptogram)
ADF
應(yīng)用定義文件(Application Definition File)
AFL
應(yīng)用文件定位器(Application File Locator)
AID
應(yīng)用標識符(Application Identifier)
AIP
應(yīng)用交互特征(Application Interchange Profile)
APDU
應(yīng)用協(xié)議數(shù)據(jù)單元(Application Protocol Data Unit)
ARC
授權(quán)響應(yīng)碼(Authorization Response Code)
ARPC
授權(quán)響應(yīng)密文(Authorization Response Cryptogram)
ARQC
授權(quán)請求密文(Authorization Request Cryptogram)
ATC
應(yīng)用交易計數(shù)器(Application Transaction Counter)
b
二進制(Binary)
C:=(A||B)
將m位數(shù)字B和n位數(shù)字A進行鏈接,定義為:C=2mA+B
CBC
密碼塊鏈接(Cipher Block Chaining)
CDOL
卡片風險管理數(shù)據(jù)對象列表(Card Rish Management Data Object List)
CLA
命令報文的類別字節(jié)(Class Byte of the Command Message)
cn
壓縮數(shù)字型(Compressed Numeric)
DDA
動態(tài)數(shù)據(jù)認證(Dynamic Data Authentication)
DDOL
動態(tài)數(shù)據(jù)認證數(shù)據(jù)對象列表(Dynamic Data Authentication Data Object List)
DES
數(shù)據(jù)加密標準(Data Encryption Standard)
ECB
電子密碼本(Electronic Code Book)
EF
基本文件(Elementary File)
FIPS
聯(lián)邦信息處理標準(Federal Information Processing Standard)
H:=Hash[MSG]
用160位的HASH函數(shù)對任意長度的報文MSG進行HASH運算。
IC
集成電路(Integrated Circuit)
ICC
集成電路卡(Integrated Circuit Card)
IEC
國際電工委員會(International Electrotechnical Commission)
IFD
接口設(shè)備(Interface Device)
INS
命令報文的指令字節(jié)(Instruction Byte of Command Message)
KS
過程密鑰(Session Key)
LDD
IC卡動態(tài)數(shù)據(jù)長度(Length of the ICC Dynamic Data)
MAC
報文鑒別碼(Message Authentication Code)
MMYY
月、年(Month,Year)
n
數(shù)字型(Numeric)
NCA
認證中心公鑰模長(Length of the Certification Authority Public Key Modulus)
NI
發(fā)卡機構(gòu)公鑰模長(Length of the Issuer Public Key Modulus)
NIC
IC卡公鑰模長(Length of the ICC Public Key Modulus)
P1
參數(shù)1(Parameter 1)
P2
參數(shù)2(Parameter 2)
PAN
主賬號(Primary Account Number)
PCA
認證中心公鑰(Certification Authority Public Key)
PI
發(fā)卡機構(gòu)公鑰(Issuer Public Key)
PIC
IC卡公鑰(ICC Public Key)
PIN
個人識別碼(Personal Identification Number)
RID
注冊的應(yīng)用提供商標識(Registered Application Provider Identifier)
RSA
Rivest、Sharmir和Adleman提出的一種非對稱密鑰算法
SCA
認證中心私鑰(Certification Authority Private Key)
SDA
靜態(tài)數(shù)據(jù)認證(Static Data Authentication)
SFI
短文件標識符(Short File Identifier)
SHA
安全哈希算法(Secure Hash Algorithm)
SI
發(fā)卡機構(gòu)私鑰(Issuer Private Key)
SIC
IC卡私鑰(ICC Private Key)
TC
交易證書(Transaction Certificate)
TLV
標簽、長度、值(Tag Length Value)
X:= Recover(PK)[Y]
用公鑰PK,通過非對稱可逆算法,對數(shù)據(jù)塊Y進行恢復
X:=ALG-1(K)[Y]
用密鑰K,通過64位或128位分組加密方法,對64位或128位數(shù)據(jù)塊Y進行解密
Y:=ALG(K)[X]
用密鑰K,通過64位或128位分組加密方法,對64位或128位數(shù)據(jù)塊X進行加密
Y:=Sign(SK)[X]
用私鑰SK,通過非對稱可逆算法,對數(shù)據(jù)塊X進行簽名
A=B
數(shù)值A(chǔ)等于數(shù)值B
A≡B mod n
整數(shù)A與B對于模n同余,即存在一個整數(shù)d,使得(A-B)=dn
A mod n
A整除n的余數(shù),即:唯一的整數(shù)r,0≤r
(NCA-36),那么發(fā)卡機構(gòu)公鑰模被分成兩部分,即一部分包含公鑰模中高位的NCA-36個字節(jié)(發(fā)卡機構(gòu)公鑰中最左邊的數(shù)字);另一部分包含剩下的低位NI-(NCA-36)個字節(jié)(發(fā)卡機構(gòu)公鑰的余項)。發(fā)卡機構(gòu)公鑰指數(shù)必須等于3或216+1。
所有靜態(tài)數(shù)據(jù)認證需要的信息在表5中詳細說明,并存放在IC卡中。除了RID可以從AID中獲得外,其它信息可以通過讀取記錄(READ RECORD)命令得到。如果缺少這些數(shù)據(jù)中的任意一項,靜態(tài)數(shù)據(jù)認證即告失敗。
表3 由認證中心簽名的發(fā)卡機構(gòu)公鑰數(shù)據(jù)(即哈希算法的輸入)
字段名
長度
描述
格式
證書格式
1
十六進制,值為‘02’
b
發(fā)卡機構(gòu)標識
4
主賬號最左面的3-8個數(shù)字。(在右邊補上十六進制數(shù)‘F’)
cn8
證書失效日期
2
MMYY,在此日期后,這張證書無效
n4
證書序列號
3
由認證中心分配給這張證書的唯一的二進制數(shù)
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
發(fā)卡機構(gòu)公鑰算法標識
1
標識使用在發(fā)卡機構(gòu)公鑰上的數(shù)字簽名算法
b
發(fā)卡機構(gòu)公鑰長度
1
標識發(fā)卡機構(gòu)公鑰模的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰指數(shù)長度
1
標識發(fā)卡機構(gòu)公鑰指數(shù)的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰數(shù)位或發(fā)卡機構(gòu)公鑰的最左邊部分
NCA–36
如果NI≤NCA–36,這個字段包含了在右邊補上了NCA–36–NI個值為‘BB’的字節(jié)的整個發(fā)卡機構(gòu)公鑰。
如果NI>NCA-36,這個字段包含了發(fā)卡機構(gòu)公鑰最高位的NCA–36個字節(jié)
b
發(fā)卡機構(gòu)公鑰余項
0或NI–NCA+36
這個字段只有在NI>NCA–36時才出現(xiàn)。它包含了發(fā)卡機構(gòu)公鑰最低位的NI–NCA+36個字節(jié)
b
發(fā)卡機構(gòu)公鑰指數(shù)
1或3
發(fā)卡機構(gòu)公鑰指數(shù)等于3或216+1
b
表4 由發(fā)卡機構(gòu)簽名的靜態(tài)應(yīng)用數(shù)據(jù)(即哈希算法的輸入)
字段名
長度
描述
格式
簽名數(shù)據(jù)格式
1
十六進制,值為‘03’
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
數(shù)據(jù)驗證代碼
2
由發(fā)卡機構(gòu)分配的代碼
b
填充字節(jié)
NI–26
填充字節(jié)由NI–26個值為‘BB’的字節(jié)組成3
b
需認證的靜態(tài)數(shù)據(jù)
變長
在表6中指明的需認證的靜態(tài)數(shù)據(jù)
-
認證過程的輸入由被AFL標識的記錄組成,其后跟有AIP[如果AIP被可選的靜態(tài)數(shù)據(jù)認證標簽列表(標簽“9F4A”)標識]。如果靜態(tài)數(shù)據(jù)認證標簽列表存在,則它必須僅包含標識AIP用的標簽“82”。
表5 靜態(tài)數(shù)據(jù)認證用到的數(shù)據(jù)對象
標簽
長度
值
格式
-
5
注冊的應(yīng)用提供商標識
b
‘8F’
1
認證中心公鑰索引
b
‘90’
NCA
發(fā)卡機構(gòu)公鑰證書
b
‘92’
NI–NCA+36
發(fā)卡機構(gòu)公鑰的余項(如果有)
b
‘9F32’
1或3
發(fā)卡機構(gòu)公鑰指數(shù)
b
‘93’
NI
簽名的靜態(tài)應(yīng)用數(shù)據(jù)
b
-
變長
在表6指明的需認證的靜態(tài)數(shù)據(jù)
-
表6 SDA中使用的卡片數(shù)據(jù)
數(shù)據(jù)元
描述
CA公鑰索引(PKI)
和發(fā)卡行公鑰證書一起由CA提供。指明了終端里用于認證發(fā)卡行公鑰證書的CA公鑰
發(fā)卡行公鑰證書
證書中包括了使用CA私鑰簽名的發(fā)卡行公鑰
發(fā)卡行公鑰指數(shù)
用于RSA算法中恢復簽名靜態(tài)應(yīng)用數(shù)據(jù)。值為3或65537
發(fā)卡行公鑰余項
發(fā)卡行公鑰沒有包含在發(fā)卡行公鑰證書中的部分(如果有)
AID中的注冊應(yīng)用標識部分(RID)
和CA公鑰索引一起用來標識終端中的公鑰
簽名的靜態(tài)應(yīng)用數(shù)據(jù)(SAD)
一個用來驗證卡片靜態(tài)數(shù)據(jù)的簽名。在卡片個人化階段,使用發(fā)卡行私鑰簽名的SAD保存在卡片中。推薦下列數(shù)據(jù)用來生成簽名:
l 應(yīng)用交互特征AIP(如果支持DDA)
l 應(yīng)用生效日期
l 應(yīng)用失效日期
l 應(yīng)用主賬號
l 應(yīng)用主賬號序列號
l 應(yīng)用用途控制AUC
l 持卡人驗證方法(CVM)列表
l IAC——缺省
l IAC——拒絕
l IAC——聯(lián)機
l 發(fā)卡行國家代碼(“5F28”)
如果應(yīng)用中簽名的數(shù)據(jù)不是唯一,卡片應(yīng)支持多個SAD。舉例來說,卡片給國內(nèi)和國際交易分別設(shè)置CVM列表,而CVM列表是簽名數(shù)據(jù)
如果發(fā)行后的卡片有修改簽名數(shù)據(jù)的能力,則卡片應(yīng)支持修改SAD的能力
SDA標簽列表
如果AIP也要簽名,SDA標簽列表包括AIP的標簽,如果支持DDA則建議將AIP做簽名。除了AIP不能有其它數(shù)據(jù)標簽
表7中是和SDA相關(guān)的卡片內(nèi)部數(shù)據(jù)。
表7 和SDA相關(guān)的卡片數(shù)據(jù)
數(shù)據(jù)元
描述
卡片驗證結(jié)果(CVR)
包括一個給后續(xù)交易參考的指示位,指示位在卡片行為分析時設(shè)置表明上次脫機拒絕交易的SDA失敗
SDA失敗指示位
如果SDA失敗并且交易脫機拒絕,在卡片行為分析過程中設(shè)置此位。根據(jù)發(fā)卡行認證的條件,在下一次聯(lián)機交易的交易結(jié)束步驟中,此指示位復位
5.2.2 認證中心公鑰獲取
終端讀取認證中心公鑰索引。使用這個索引和RID,終端必須確認并取得存放在終端的認證中心公鑰的模、指數(shù)和與密鑰相關(guān)的信息,以及相應(yīng)的將使用的算法。如果終端沒有存儲與這個索引及RID相關(guān)聯(lián)的密鑰,那么靜態(tài)數(shù)據(jù)認證失敗。
5.2.3 發(fā)卡機構(gòu)公鑰獲取
1) 如果發(fā)卡機構(gòu)公鑰證書的長度不同于在前面的過程中獲得的認證中心公鑰模長度,那么靜態(tài)數(shù)據(jù)認證失敗。
2) 為了獲得在表8中指明的恢復數(shù)據(jù),使用認證中心公鑰和相應(yīng)的算法按照13.2.1條中指明的恢復函數(shù)恢復發(fā)卡機構(gòu)公鑰證書。如果恢復數(shù)據(jù)的結(jié)尾不等于“BC”,那么靜態(tài)數(shù)據(jù)認證失敗。
表8 從發(fā)卡機構(gòu)公鑰證書恢復數(shù)據(jù)的格式
字段名
長度
描述
格式
恢復數(shù)據(jù)頭
1
十六進制,值為‘6A’
b
證書格式
1
十六進制,值為‘02’
b
發(fā)卡機構(gòu)標識
4
主賬號最左面的3-8個數(shù)字(在右邊補上十六進制數(shù)‘F’)
cn8
證書失效日期
2
MMYY,在此日期后,這張證書無效
n4
證書序列號
3
由認證中心分配給這張證書的,唯一的二進制數(shù)
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
發(fā)卡機構(gòu)公鑰算法標識
1
標識使用在發(fā)卡機構(gòu)公鑰上的數(shù)字簽名算法
b
發(fā)卡機構(gòu)公鑰長度
1
標識發(fā)卡機構(gòu)公鑰的模的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰指數(shù)長度
1
標識發(fā)卡機構(gòu)公鑰指數(shù)的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰或發(fā)卡機構(gòu)公鑰的最左邊字節(jié)
NCA-36
如果NI≤NCA–36,這個字段包含了在右邊補上了NCA–36–NI個值為‘BB’的字節(jié)的整個發(fā)卡機構(gòu)公鑰。
如果NI>NCA-36,這個字段包含了發(fā)卡機構(gòu)公鑰最高位的NCA–36個字節(jié)
b
哈希結(jié)果
20
發(fā)卡機構(gòu)公鑰以及相關(guān)信息的哈希值
b
恢復數(shù)據(jù)結(jié)尾
1
十六進制,值為‘BC’
b
3) 檢查恢復數(shù)據(jù)頭。如果它不是“6A”,那么靜態(tài)數(shù)據(jù)認證失敗。
4) 檢查證書格式。如果它不是“02”,那么靜態(tài)數(shù)據(jù)認證失敗。
5) 將表8中的第2個到第10個數(shù)據(jù)元(即從證書格式直到發(fā)卡機構(gòu)公鑰或發(fā)卡機構(gòu)公鑰的最左邊字節(jié))從左到右連接,再把發(fā)卡機構(gòu)公鑰的余項加在后面(如果有),最后是發(fā)卡機構(gòu)公鑰指數(shù)。
6) 使用指定的哈希算法(從哈希算法標識得到)對上一步的連接結(jié)果計算得到哈希結(jié)果。
7) 把上一步計算得到的哈希結(jié)果和恢復出的哈希結(jié)果相比較。如果它們不一樣,那么靜態(tài)數(shù)據(jù)認證失敗。
8) 檢驗發(fā)卡機構(gòu)標識是否匹配主賬號最左面的3-8個數(shù)字(允許發(fā)卡機構(gòu)標識可能在其后補“F”)。如果不一致,那么靜態(tài)數(shù)據(jù)認證失敗。
9) 檢驗證書失效日期中指定月的最后日期是否等于或遲于今天的日期。如果證書失效日期在今天的日期之前,那么證書已過期,靜態(tài)數(shù)據(jù)認證失敗。
10) 檢驗連接起來的RID、認證中心公鑰索引、證書序列號是否有效。如果無效,那么靜態(tài)數(shù)據(jù)認證失敗。
11) 如果發(fā)卡機構(gòu)公鑰算法標識無法識別,那么靜態(tài)數(shù)據(jù)認證失敗。
12) 如果以上所有的檢驗都通過,連接發(fā)卡機構(gòu)公鑰的最左邊字節(jié)和發(fā)卡機構(gòu)公鑰的余項(如果有)以得到發(fā)卡機構(gòu)公鑰模,以繼續(xù)下一步簽名的靜態(tài)應(yīng)用數(shù)據(jù)的檢驗。
5.2.4 簽名的靜態(tài)應(yīng)用數(shù)據(jù)驗證
1) 如果簽名靜態(tài)應(yīng)用數(shù)據(jù)的長度不等于發(fā)卡機構(gòu)公鑰模的長度,那么靜態(tài)數(shù)據(jù)認證失敗。
2) 為了獲得在表9中指明的恢復數(shù)據(jù),使用發(fā)卡機構(gòu)公鑰和相應(yīng)的算法并將13.2.1條中指明的恢復函數(shù)應(yīng)用到簽名的靜態(tài)應(yīng)用數(shù)據(jù)上。如果恢復數(shù)據(jù)的結(jié)尾不等于“BC”,那么靜態(tài)數(shù)據(jù)認證失敗。
表9 從簽名的靜態(tài)應(yīng)用數(shù)據(jù)恢復數(shù)據(jù)的格式
字段名
長度
描述
格式
恢復數(shù)據(jù)頭
1
十六進制,值為‘6A’
b
簽名數(shù)據(jù)格式
1
十六進制,值為‘03’
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
數(shù)據(jù)驗證代碼
2
由發(fā)卡機構(gòu)分配的代碼
b
填充字節(jié)
NI–26
填充字節(jié)由NI–26個值為‘BB’的字節(jié)組成
b
哈希結(jié)果
20
需認證的靜態(tài)應(yīng)用數(shù)據(jù)的哈希值
b
恢復數(shù)據(jù)結(jié)尾
1
十六進制,值為‘BC’
b
3) 檢查恢復數(shù)據(jù)頭。如果它不是“6A”,那么靜態(tài)數(shù)據(jù)認證失敗。
4) 檢查簽名數(shù)據(jù)格式。如果它不是“03”,那么靜態(tài)數(shù)據(jù)認證失敗。
5) 將表9中的第2個到第5個數(shù)據(jù)元(即從簽名數(shù)據(jù)格式直到填充字節(jié))從左到右連接,再把表6中指明的需認證的靜態(tài)數(shù)據(jù)加在后面。如果靜態(tài)數(shù)據(jù)認證標簽列表存在,并且其包含非“82”的標簽,那么靜態(tài)數(shù)據(jù)認證失敗。
6) 把指定的哈希算法(從哈希算法標識得到)應(yīng)用到上一步的連接結(jié)果從而得到哈希結(jié)果。
7) 把上一步計算得到的哈希結(jié)果和恢復出的哈希結(jié)果相比較。如果它們不一樣,那么靜態(tài)數(shù)據(jù)認證失敗。
8) 如果以上所有的步驟都成功,那么靜態(tài)數(shù)據(jù)認證成功。在表9中的恢復得到的數(shù)據(jù)驗證代碼應(yīng)被存放在標簽“9F45”中。
5.3 動態(tài)數(shù)據(jù)認證(DDA)
DDA的目的是確認存放在IC卡中和由IC卡生成的關(guān)鍵數(shù)據(jù)以及從終端收到的數(shù)據(jù)的合法性。DDA除了執(zhí)行同SDA類似的靜態(tài)數(shù)據(jù)認證過程,確保IC卡中的發(fā)卡機構(gòu)數(shù)據(jù)在個人化以后沒有被非法篡改,還能防止任何對這樣的卡片進行偽造的可能性。
動態(tài)數(shù)據(jù)認證有以下可選的兩種方式:
標準的動態(tài)數(shù)據(jù)認證,這種方式在卡片行為分析前執(zhí)行。在這種方式下,IC卡根據(jù)由IC卡動態(tài)數(shù)據(jù)所標識的存放在IC卡中的或由IC卡生成的數(shù)據(jù)以及由動態(tài)數(shù)據(jù)認證數(shù)據(jù)對象列表所標識的從終端收到的數(shù)據(jù)生成一個數(shù)字簽名;
復合動態(tài)數(shù)據(jù)認證/應(yīng)用密文生成,這種方式在GENERATE AC命令發(fā)出后執(zhí)行。在交易證書或授權(quán)請求密文的情況下,IC卡根據(jù)由IC卡動態(tài)數(shù)據(jù)所標識的存放在IC卡中的或由IC卡生成的數(shù)據(jù)得到一個數(shù)字簽名,這些數(shù)據(jù)包括交易證書或授權(quán)請求密文,以及由卡片風險管理數(shù)據(jù)對象列表(對第一條GENERATE AC命令是CDOL1,對第二條GENERATE AC命令是CDOL2)標識的由終端生成的不可預知數(shù)AIP指明IC卡支持的選項。
支持動態(tài)數(shù)據(jù)認證的IC卡必須包含下列數(shù)據(jù)元:
l 認證中心公鑰索引:該單字節(jié)數(shù)據(jù)元包含一個二進制數(shù)字,指明終端應(yīng)使用其保存的相應(yīng)的認證中心公鑰中的哪一個來驗證IC卡;
l 發(fā)卡機構(gòu)公鑰證書:該變長數(shù)據(jù)元由相應(yīng)的認證中心提供給發(fā)卡機構(gòu)。終端驗證這個數(shù)據(jù)元時,按5.3.3條描述的過程認證發(fā)卡機構(gòu)公鑰和其它的數(shù)據(jù);
l IC卡公鑰證書:該變長數(shù)據(jù)元由發(fā)卡機構(gòu)提供給IC卡。終端驗證這個數(shù)據(jù)元時,按5.3.4條描述的過程認證IC卡公鑰和其它的數(shù)據(jù);
l 發(fā)卡機構(gòu)公鑰的余項:一個變長數(shù)據(jù)元。5.3.1條有進一步的解釋;
l 發(fā)卡機構(gòu)公鑰指數(shù):一個由發(fā)卡機構(gòu)提供的變長數(shù)據(jù)元。5.3.1條有進一步的解釋;
l IC卡公鑰的余項:一個變長數(shù)據(jù)元。5.3.1條有進一步的解釋;
l IC卡公鑰指數(shù):一個由發(fā)卡機構(gòu)提供的變長數(shù)據(jù)元。5.3.1條有進一步的解釋;
l IC卡私鑰:一個存放在IC卡內(nèi)部的變長數(shù)據(jù)元,用來按5.3.5條和5.3.6條描述的過程生成簽名的動態(tài)應(yīng)用數(shù)據(jù)。
支持動態(tài)數(shù)據(jù)認證的IC卡必須生成下列數(shù)據(jù)元:
簽名的動態(tài)應(yīng)用數(shù)據(jù):一個由IC卡使用同IC卡公鑰證書所認證的IC卡公鑰相對應(yīng)的IC卡私鑰生成的變長數(shù)據(jù)元。它是一個數(shù)字簽名,包含了5.3.5條和5.3.6條描述的存放在IC卡中的或由IC卡生成的以及終端中的關(guān)鍵數(shù)據(jù)元。
為了支持動態(tài)數(shù)據(jù)認證,每一臺終端必須能夠為每個注冊的應(yīng)用提供商標識存儲6個認證中心公鑰,而且必須使同密鑰相關(guān)的密鑰信息能夠同每一個密鑰相關(guān)聯(lián)(以使終端能在將來支持多種算法,允許從一個算法過渡到另一個,見10.3條)。在給定RID和IC卡提供的認證中心公鑰索引的情況下,終端必須能夠定位這樣的公鑰以及和公鑰相關(guān)的信息。
動態(tài)數(shù)據(jù)認證必須使用一種在13.2.1條和14.2條中指明的可逆的算法。5.3.1條包含了對動態(tài)數(shù)據(jù)認證過程中涉及到的密鑰和證書的概述,5.3.2條到5.3.4條詳細說明了認證過程中的起始步驟,即:
l 由終端恢復認證中心公鑰;
l 由終端恢復發(fā)卡機構(gòu)公鑰;
l 由終端恢復IC卡公鑰。
最后,5.3.5條和5.3.6條詳細說明了兩種情況下動態(tài)簽名的生成和驗證過程。
圖2 DDA證書和公鑰體系結(jié)構(gòu)
5.3.1 密鑰和證書
為了支持動態(tài)數(shù)據(jù)認證,一張IC卡必須擁有它自己的唯一的公私鑰對,公私鑰對由一個私有的簽名密鑰和相對應(yīng)的公開的驗證密鑰組成。IC卡公鑰必須存放在IC卡上的公鑰證書中。
動態(tài)數(shù)據(jù)認證采用了一個三層的公鑰證書方案。每一個IC卡公鑰由它的發(fā)卡機構(gòu)認證,而認證中心認證發(fā)卡機構(gòu)公鑰。這表明為了驗證IC卡的簽名,終端需要先通過驗證兩個證書來恢復和驗證IC卡公鑰,然后用這個公鑰來驗證IC卡的動態(tài)簽名。
按13.2.1條中指明的簽名方案分別將認證中心私鑰SCA應(yīng)用到表10中指定的數(shù)據(jù)以及將發(fā)卡機構(gòu)私鑰SI應(yīng)用到表11中指定的數(shù)據(jù),以分別獲得發(fā)卡機構(gòu)公鑰證書和IC卡公鑰證書。
認證中心的公鑰有一個NCA個字節(jié)的公鑰模。認證中心公鑰指數(shù)必須等于3或216+1。
發(fā)卡機構(gòu)的公鑰有一個為NI個字節(jié)(NI≤NCA)的發(fā)卡機構(gòu)公鑰模。如果NI>(NCA-36),那么發(fā)卡機構(gòu)公鑰模被分成兩部分,即一部分包含模中最高的NCA-36個字節(jié)(發(fā)卡機構(gòu)公鑰中最左邊的數(shù)字);另一部分包含剩下的模中最低的NI-(NCA-36)個字節(jié)(發(fā)卡機構(gòu)公鑰余項)。發(fā)卡機構(gòu)公鑰指數(shù)必須等于3或216+1。
IC卡的公鑰有一個為NIC個字節(jié)(NIC≤NI≤NCA)的IC卡公鑰模。如果NIC>(NI-42),那么IC卡公鑰模被分成兩部分,即一部分包含模中最高的NI-42個字節(jié)(IC卡公鑰中最左邊的數(shù)字);另一部分包含剩下的模中最低的NIC-(NI-42)個字節(jié)(IC卡公鑰余項)。IC卡公鑰指數(shù)必須等于3或216+1。
如果卡片上的靜態(tài)應(yīng)用數(shù)據(jù)不是唯一的(比如卡片針對國際和國內(nèi)交易使用不同的CVM),卡片必須支持多IC卡公鑰證書,如果被簽名的靜態(tài)應(yīng)用數(shù)據(jù)在卡片發(fā)出后可能會被修改,卡片必須支持IC卡公鑰證書的更新。
為了完成動態(tài)數(shù)據(jù)認證,終端必須首先恢復和驗證IC卡公鑰(這一步叫做IC卡公鑰認證)。IC卡公鑰認證需要的所有信息在表12中詳細說明,并存放在IC卡中。除了RID可以從AID中獲得外,其它信息可以通過讀取記錄(READ RECORD)命令得到。如果缺少這些數(shù)據(jù)中的任意一項,那么動態(tài)數(shù)據(jù)認證失敗。
表10 由認證中心簽名的發(fā)卡機構(gòu)公鑰數(shù)據(jù)(即哈希算法的輸入)
字段名
長度
描述
格式
證書格式
1
十六進制,值為‘02’
b
發(fā)卡機構(gòu)識別號
4
主賬號最左面的3-8個數(shù)字。(在右邊補上十六進制數(shù)‘F’)
cn8
證書失效日期
2
MMYY,在此日期后,這張證書無效
n4
證書序列號
3
由認證中心分配給這張證書的唯一的二進制數(shù)
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
發(fā)卡機構(gòu)公鑰算法標識
1
標識使用發(fā)卡機構(gòu)公鑰的數(shù)字簽名算法
b
發(fā)卡機構(gòu)公鑰長度
1
標識發(fā)卡機構(gòu)公鑰模的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰指數(shù)長度
1
標識發(fā)卡機構(gòu)公鑰指數(shù)的字節(jié)長度
b
發(fā)卡機構(gòu)公鑰或發(fā)卡機構(gòu)公鑰的最左邊字節(jié)
NCA–36
如果NI≤NCA–36,這個字段包含了在右邊補上了NCA–36–NI個值為‘BB’的字節(jié)的整個發(fā)卡機構(gòu)公鑰。
如果NI>NCA-36,這個字段包含了發(fā)卡機構(gòu)公鑰最高位的NCA–36個字節(jié)
b
發(fā)卡機構(gòu)公鑰的余項
0或
NI–NCA+36
這個字段只有在NI>NCA–36時才出現(xiàn)。它包含了發(fā)卡機構(gòu)公鑰最低位的NI–NCA+36個字節(jié)
b
發(fā)卡機構(gòu)公鑰指數(shù)
1或3
發(fā)卡機構(gòu)公鑰指數(shù)等于3或216+1
b
表11 由發(fā)卡機構(gòu)簽名的IC卡公鑰數(shù)據(jù)(即哈希算法的輸入)
字段名
長度
描述
格式
證書格式
1
十六進制,值為‘04’
b
應(yīng)用主賬號
10
主賬號(在右邊補上十六進制數(shù)‘F’)
cn20
證書失效日期
2
MMYY,在此日期后,這張證書無效
n4
證書序列號
3
由發(fā)卡機構(gòu)分配給這張證書的唯一的二進制數(shù)
b
哈希算法標識
1
標識用于在數(shù)字簽名方案中產(chǎn)生哈希結(jié)果的哈希算法
b
IC卡公鑰算法標識
1
標識使用在IC卡公鑰上的數(shù)字簽名算法
b
IC卡公鑰長度
1
標識IC卡公鑰的模的字節(jié)長度
b
IC卡公鑰指數(shù)長度
1
標識IC卡公鑰指數(shù)的字節(jié)長度
b
IC卡公鑰或IC卡公鑰的最左邊字節(jié)
NI–42
如果NIC≤NI–42,這個字段包含了在右邊補上了NI–42–NIC個值為‘BB’的字節(jié)的整個IC卡公鑰。
如果NIC>NI–42,這個字段包含了IC卡公鑰最高位的NI–42個字節(jié)
b
IC卡公鑰的余項
0或
NIC–NI+42
這個字段只有在NIC>NI–42時才出現(xiàn)。它包含了IC卡公鑰最低位的NIC–NI+42個字節(jié)
b
IC卡公鑰指數(shù)
1或3
IC卡公鑰指數(shù)等于3或216+1
b
需認證的靜態(tài)數(shù)據(jù)
變長
在表6中詳細說明了需認證的靜態(tài)數(shù)據(jù)
b
認證過程的輸入由被AFL標識的記錄組成,其后跟有AIP[如果AIP被可選的靜態(tài)數(shù)據(jù)認證標簽列表(標簽“9F4A”)標識]。如果靜態(tài)數(shù)據(jù)認證標簽列表存在,它必須僅包含標識AIP用的標簽“82”。
表12 動態(tài)認證中的公鑰認證所需的數(shù)據(jù)對象
標簽
長度
值
格式
-
5
注冊的應(yīng)用提供商標識
b
‘8F’
1
認證中心公鑰索引
b
‘90’
NCA
發(fā)卡機構(gòu)公鑰證書
b
‘92’
NI–NCA+36
發(fā)卡機構(gòu)公鑰的余項(如果存在)
b
‘9F32’
1或3
發(fā)卡機構(gòu)公鑰指數(shù)
b
‘9F46’
NI
IC卡公鑰證書
b
‘9F48’
NIC–NI+42
IC卡公鑰的余項(如果存在)
b
‘9F47’
1或3
IC卡公鑰指數(shù)
b
鏈接地址:http://www.820124.com/p-2306194.html