簡體   English   中英

MSR DUKPT的MAC變種?

[英]MAC variant of MSR DUKPT?

目前我正在進行ChipCard EMV設備解密。 下面是我使用事務后的相關數據(TLV格式為Tag Length Value):

<DFDF54> --- It means KSN
0A
950003000005282005B4 


<DFDF59>---- per instruction, it is called Encrypted Data Primative
82      ---- length of value in hex, when more than 255 degits, use 82
00D815F35E7846BF4F34E56D7A42E9D24A59CDDF8C3D565CD3D42A341D4AD84B0B7DBFC02DE72A57770D4F795FAB2CE3A1F253F22E0A8BA8E36FA3EA38EE8C95FEBA3767CDE0D3FBB6741A47BE6734046B8CBFB6044C6EE5F98C9DABCD47BC3FD371F777E7E1DCFA16EE5718FKLIOE51A749C7ECC736CB7780AC39DE062DAACC318219E9AAA26E3C2CE28B82C8D22178DA9CCAE6BBA20AC79AB985FF13611FE80E26C34D27E674C63CAC1933E3F9B1BE319A5D12D16561C334F931A5E619243AF398D9636B0A8DC2ED5C6D1C7C795C00D083C08953BC8679C60

我知道這個設備的BDK是0123456789ABCDEFFEDCBA9876543210 根據解密指令,它提到DFDF59包含以下標記:

FC<len>/* container for encrypted generic data */
    F2<len>/*container for Batch Data*/
           ... /*Batch Data tags*/
    F3<len>/*container for Reversal Data, if any*/
           ... /*Reversal Data tags*/

根據指令,它提到了“ MSR DUKPT的MAC變體 ”,其中MAC代表消息認證碼,“ 通過TLV格式解析數據。對於加密數據標簽,使用TDES_Decrypt_CBC對其進行解密 ”。

我嘗試使用KES,BDK和加密數據DFDF59來使用3DES DUKPT。 它不會起作用。 解密領域的任何人都可以給我一些建議嗎? 我們的供應商非常不願意分享他們的知識......

我不知道MAC在解密方面是如何真正發揮作用的......我認為MAC只是一個完整性檢查....我正在使用從KSN和BDK生成的3DES DUKPT的會話密鑰。 這適用於此設備中的其他解密,但不解決DFDF59(芯片卡EMV解密)....這就是為什么我開始懷疑我是否使用正確的會話密鑰....隨意只是把想法扔出去。 謝謝!

如果仔細觀察DUKPT內部,它會從當前的未來密鑰和加密計數器中生成一個事務密鑰。 特定KSN的這個“事務密鑰”有幾種變體(實際上只是xor掩碼,您可以將其放在事務密鑰上,以區分PIN,MAC req,MAC rsp,數據加密請求和rsp使用)。 這些變體意味着您使用不同的密鑰生成PIN和不同的密鑰來加密數據(這樣您就無法在任意時選擇數據緩沖區時解密/攻擊PINblock)。 使用MAC變量僅表示對於加密操作,您將使用DUKPT事務密鑰的某個掩碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM