歡迎您訪問鄭州興邦電子股份有限公司官方網站!
    阿里巴巴誠信通企業
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

    PBOC/EMV之持卡人驗證

    文章出處:http://www.xujuanpiju.com 作者: 人氣: 發表時間:2012年05月27日

    [文章內容簡介]:盡管PBOC基本是中文版的EMV,但還是需要根據國情做一些適當的差異化處理.這一點在持卡人認證方面有很明顯的體現.EMV支持脫機密文PIN,PBOC不支持.但PBOC支持身份證件驗證,EMV不支持.身份證件驗證是根據國情增加的,誰讓咱們國家證多呀.

    盡管PBOC基本是中文版的EMV, 但還是需要根據國情做一些適當的差異化處理. 這一點在持卡人認證方面有很明顯的體現.EMV支持脫機密文PIN,PBOC不支持. 但PBOC支持身份證件驗證,EMV不支持. 身份證件驗證是根據國情增加的,誰讓咱們國家證多呀.

    持卡人認證并不是必備的EMV流程, 終端是否應該執行持卡人認證, 決定因素在兩點. 一是AIP表明是否支持, 二是在讀數據階段,卡片是否返回CVM list.

    PBOC 支持的CVM如下:

    [plain] 
    1. 脫機明文PIN驗證;
    2. 聯機PIN驗證;
    3. 簽名;
    4. CVM失敗;
    5. 無需CVM;
    6. 簽名與脫機明文PIN驗證組合;
    7. 身份證件驗證。

    EMV 支持的CVM如下:

    [plain] 
    1. 脫機明文PIN驗證;
    2. 聯機PIN驗證;
    3. 簽名;
    4. CVM失敗;
    5. 無需CVM;
    6. 簽名與脫機明文PIN驗證組合;
    7. 脫機密文PIN驗證。

    持卡人認證在EMV中叫CVM(cardholder verification method), 在一筆交易中,CVM可以有多個, 所以就有了CVM List的概念.

    一個CVM包括以下幾項內容:

    金額X

    金額Y

    CVM 代碼 指出如果這個CVM 失敗,是執行下一CVM 還是認為CVM 失敗

    CVM 類型 (就是上面列出的那些方法)

    CVM 條件 表示在什么條件是才用該方法,有以下幾個:

    [plain]
    1. 0 總是執行
    2. 1 如果是現金或返現交易
    3. 2 如果不是現金或返現交易
    4. 3 如果終端支持此CVM
    5. 4 如果交易金額小于金額X
    6. 5 如果交易金額大于金額X
    7. 6 如果交易金額小于金額Y
    8. 7 如果交易金額大于金額Y

    說著太抽象,舉個例子:

    [plain]
    1. * Tag 8E Cardholder Verification Method (CVM) List
    2. *- Len 0A
    3. *- Value 00 00 00 00 00 00 00 00 04 00

    CVM list的tag是8E, 長度是10個字節. 前四個字節是金額X, 再往后四個字節是金額Y,

    04 同時表示如果此CVM失敗,則持卡人驗證失敗,而且驗證方法為脫機加密PIN.

    最后一個字節00表示”總是”,即這個方法是總是要執行的.

    當然CVM list的長度并不局限于10個字節, 它的長度準備的應該表示為8+2*n(n為正整數). 終端應該按照順序讀取CVM list,并使用滿足條件的第一個方法,如果某個方法不可用,應繼續遍歷其它方法, 如果所有方法都不可用,則持卡人驗證失敗.

    在所有的持卡人驗證方法中, 脫機加密PIN應該是最復雜的一個, 這里詳細介紹一下它的原理及流程.

    脫機加密PIN,簡單來說, 原理如下:

    終端從卡片中獲取PIN加密公鑰證書(可在read data階段讀取),從證書中恢復PIN加密公鑰. 當用戶輸完PIN時, 終端用此公鑰加密該PIN,然后能過指令把加密數據傳給卡片,卡片收到數據后,先用存在自身的PIN加密私鑰解密,然后再驗證該PIN的正確性.

    詳細的步驟如下:

    [plain] 
    1. 1 終端把用戶輸入的明文PIN按照一定的格式補位對齊, 然后用get challenge命令從卡片中取一個8字節的隨機數.
    2. 2 終端自己產生一組長度為N-17的隨機數(N為PIN加密公鑰的長度), 然后把補位后的PIN,卡片中取的隨機數以及終端產生的隨機數拼接在一起, 與PIN加密公鑰做RSA運算.
    3. 3 把上一步運算的結果通過verify命令發給IC卡.
    4. 4 卡片用PIN加密私鑰解密數據, 首先檢查解出來的8字節隨機數是否與自己產生的一致,然后卡片檢查恢復的數據頭字節是否有效, 最后一步是驗證PIN是否合法. 只有所有的條件都滿足,脫機加密PIN才算成功.

    本文關鍵詞:PBOC,EMV,持卡人驗證
    回到頂部