PBOC/EMV之CDA(復(fù)合數(shù)據(jù)認證)
文章出處:http://m.overnightmodel.com 作者: 人氣: 發(fā)表時間:2012年05月27日
CDA其實是DDA的衍生方法. 所以它和DDA有很多相同的地方. 先簡要說明一下CDA的幾個要點:
1 它也執(zhí)行SDA,這個和DDA是一致的.
2 它也執(zhí)行DDA,更先進的技術(shù)總是向下兼容的.
3 它也用到簽名的動態(tài)應(yīng)用數(shù)據(jù), 不過這個數(shù)據(jù)不是內(nèi)部認證請求的,而是在GAC時終端請求的. 而且這個數(shù)據(jù)的組成除了一些和DDA相似的組成(DOL數(shù)據(jù)),還包括密文數(shù)據(jù)(TC或ARQC).
4 既然簽名的動態(tài)數(shù)據(jù)多了卡片的密文數(shù)據(jù),那最后的驗證階段也比DDA多了一些步驟,CDA還需要比較應(yīng)用密文.
下面是詳細的步驟:
第一步,取IC卡公鑰:這個和DDA的方法是一樣的,不再說明.
第二步,取簽名的動態(tài)數(shù)據(jù):通過GAC返回,當IC卡返回非AAC類型的密文時, 如果終端請求CDA,IC卡會返回這個簽名的數(shù)據(jù).這個簽名數(shù)據(jù)的產(chǎn)生也比DDA稍復(fù)雜一些,其實是原理是一樣的,只不過需要參與簽名的數(shù)據(jù)項增加了,也即用于產(chǎn)生哈希結(jié)果的數(shù)據(jù)項增加了. 如果是在第一次GAC產(chǎn)生CDA簽名,那么參與運算的數(shù)據(jù)項包括PDOL中的數(shù)據(jù),CDOL1的數(shù)據(jù)以及其它(比如數(shù)據(jù)頭,長度等), 如果是在第二次GAC產(chǎn)生CDA簽名,那么還要加上CDOL2中指定的數(shù)據(jù)項.
第三步,驗證數(shù)據(jù):前面說到了,最后一步數(shù)據(jù)的驗證較DDA是多了一個應(yīng)用密文的比較, 終端首先將將恢復(fù)的密文數(shù)據(jù)和GAC返回的密文數(shù)據(jù)比較. 如果不等,CDA就失敗.
剩下的步驟和DDA是一樣的.
既然CDA和DDA有很多機同的地方,那么它存在的意義在哪呢? 我說說自己的理解.
CDA和DDA的區(qū)別, 核心就在于CDA對卡片行為分析產(chǎn)生的應(yīng)用密文做了一層加密保護,確保密文是來自于合法的卡片. 這個有點像我們在ATM上取錢時,輸入的密碼,經(jīng)過加密后再傳到銀行的服務(wù)器. 銀行的服務(wù)器解密后再驗證密碼的正確性.這樣更安全了.
另外一點,CDA參與哈希運算的數(shù)據(jù)項增加了, 就表示這種認證機制更加嚴格了, 比如我就遇到過因為終端國家代碼的值設(shè)置錯誤導(dǎo)致CDA失敗的情況.
根據(jù)信息安全行業(yè)發(fā)展的規(guī)律來推測, CDA應(yīng)該會慢慢淘汰SDA和DDA成為主流甚至是強制要求. 當然以后也可能會產(chǎn)生新的更加安全的數(shù)據(jù)認證機制.