2016-05-23 42 views
0

我正在使用我卡住的AID列表從VISA(例如PAN,失效日期...)信用卡中獲取有用數據。無法識別智能卡上的AFL

我已經能夠手動訪問所有數據。使用一個教程:http://www.openscdp.org/scripts/tutorial/emv/reademv.html

>>00 A4 04 00 07 A0 00 00 00 03 10 10 00 

在ASCII:

<<o<EM>„<BEL> <0><0><0><ETX><DLE><DLE>¥<SO>P<EOT>VISA¿<FF><ENQ>ŸM<STX><VT><LF><0> 

在十六進制:

<<6F 19 84 07 A0 00 00 00 03 10 10 A5 0E 50 04 56 49 53 41 BF 0C 05 9F 4D 02 0B 0A 90 00 

之後,我用:

>>33 00 B2 01 0C 00 //sfi1, rec1 
... 
... 
>>33 00 B2 10 FC 00 //sfi31, rec16 

我繼續教程並瞭解到獲取數據的正確方法是使用GPO(獲取處理選項)命令。並嘗試下一步:

>>80 A8 00 00 0D 83 0B 00 00 00 00 00 00 00 00 00 00 00 00 // pdo = 83 0B 00 00 00 00 00 00 00 00 00 00 00 which suposse to be the correct one for VISA. 
<< 69 85 

所以使用條件不滿意。

>> 80 A8 00 00 02 83 00 00 //pdo= 83 00 that should work with every non visa card 
<< 80 0E 3C 00 08 01 01 00 10 01 04 00 18 01 03 01 90 00 

如果這種反應是正確的,它看起來相當不錯,我作爲它開始了80和90 00結尾,我無法確定AFL我認爲這將使我能夠確定的PAN,有效期限...有人可以幫助我嗎?

回答

4

你所收到的選擇命令(00 A4 0400 07 A0000000031010 00)進行解碼,以

 
6F 19 (File Control Information (FCI) Template) 
    84 07 (Dedicated File (DF) Name) 
     A0000000031010 
    A5 0E (File Control Information (FCI) Proprietary Template) 
     50 04 (Application Label) 
      56495341 ("VISA") 
     BF0C 05 (File Control Information (FCI) Issuer Discretionary Data) 
      9F4D 02 (Log Entry) 
       0B0A (SFI = 11; # of records = 10) 

這FCI不包括任何PDOL(處理選項數據列表)的FCI。因此,您需要爲PDOL假設一個默認值(這是您卡類型的空列表)。因此,在GET PROCESSING OPTIONS指令的PDOL相關數據字段必須是空的:

 
83 00 

在哪裏0×83是用於PDOL相關數據和0×00的標記是零個字節的長度。

因此,正確的GPO命令(因爲你已經發現了):

 
80 A8 0000 02 8300 00 

你有

 
800E3C00080101001001040018010301 9000 

這解碼爲

 
80 0E (Response Message Template Format 1) 
    3C00 (Application Interchange Profile) 
    08010100 10010400 18010301 (Application File Locator) 

因此,響應應用程序文件定位器包含以下三項:

  • 08010100:SFI = 1,第一條記錄= 1,最後的記錄= 1,參與脫機數據認證的記錄= 0
  • 10010400:SFI = 2,第一記錄= 1,最後的記錄= 4,參與記錄脫機數據認證= 0
  • 18010301:SFI = 3,第一個記錄= 1,最後一個記錄= 3,參與脫機數據認證的記錄= 1

因此,您可以讀取與讀記錄命令的記錄:

 
00 B2 010C 00 
00 B2 0114 00 
00 B2 0214 00 
00 B2 0314 00 
00 B2 0414 00 
00 B2 011C 00 
00 B2 021C 00 
00 B2 031C 00