-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathemvtags.go
391 lines (390 loc) · 15.9 KB
/
emvtags.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
package bertlv
var emvTags = map[string]string{
"06": "Object Identifier (OID)",
"41": "Country code and national data",
"42": "Issuer Identification Number (IIN)",
"43": "Card service data",
"44": "Initial access data",
"45": "Card issuer`s data",
"46": "Pre-issuing data",
"47": "Card capabilities",
"48": "Status information",
"4D": "Extended header list",
"4F": "Application Identifier (ADF Name)",
"50": "Application Label",
"51": "Path",
"52": "Command to perform",
"53": "Discretionary data, discretionary template",
"56": "Track 1 Data",
"57": "Track 2 Equivalent Data",
"58": "Track 3 Equivalent Data",
"59": "Card expiration date",
"5A": "Application Primary Account Number (PAN)",
"5B": "Name of an individual",
"5C": "Tag list",
"5D": "Deleted (see 9D)",
"5E": "Proprietary login data",
"5F20": "Cardholder Name",
"5F21": "Track 1, identical to the data coded",
"5F22": "Track 2, identical to the data coded",
"5F23": "Track 3, identical to the data coded",
"5F24": "Application Expiration Date",
"5F25": "Application Effective Date",
"5F26": "Date, Card Effective",
"5F27": "Interchange control",
"5F28": "Issuer Country Code",
"5F29": "Interchange profile",
"5F2A": "Transaction Currency Code",
"5F2B": "Date of birth",
"5F2C": "Cardholder nationality",
"5F2D": "Language Preference",
"5F2E": "Cardholder biometric data",
"5F2F": "PIN usage policy",
"5F30": "Service Code",
"5F32": "Transaction counter",
"5F33": "Date, Transaction",
"5F34": "Application Primary Account Number (PAN) Sequence Number (PSN)",
"5F35": "Sex (ISO 5218)",
"5F36": "Transaction Currency Exponent",
"5F37": "Static internal authentication (one-step)",
"5F38": "Static internal authentication - first associated data",
"5F39": "Static internal authentication - second associated data",
"5F3A": "Dynamic internal authentication",
"5F3B": "Dynamic external authentication",
"5F3C": "Transaction Reference Currency Code",
"5F3D": "Transaction Reference Currency Exponent",
"5F40": "Cardholder portrait image",
"5F41": "Element list",
"5F42": "Address",
"5F43": "Cardholder handwritten signature image",
"5F44": "Application image",
"5F45": "Display message",
"5F46": "Timer",
"5F47": "Message reference",
"5F48": "Cardholder private key",
"5F49": "Cardholder public key",
"5F4A": "Public key of certification authority",
"5F4B": "Deprecated (see note 2 below)",
"5F4C": "Certificate holder authorization",
"5F4D": "Integrated circuit manufacturer identifier",
"5F4E": "Certificate content",
"5F50": "Issuer Uniform resource locator (URL)",
"5F53": "International Bank Account Number (IBAN)",
"5F54": "Bank Identifier Code (BIC)",
"5F55": "Issuer Country Code (alpha2 format)",
"5F56": "Issuer Country Code (alpha3 format)",
"5F57": "Account Type",
"60": "Template, Dynamic Authentication",
"61": "Application Template",
"62": "File Control Parameters (FCP) Template",
"63": "Wrapper",
"64": "Template, File Management Data (FMD)",
"65": "Cardholder related data",
"66": "Template, Card data",
"67": "Template, Authentication data",
"68": "Special user requirements",
"6A": "Template, Login",
"6B": "Template, Qualified name",
"6C": "Template, Cardholder image",
"6D": "Template, Application image",
"6E": "Application related data",
"6F": "File Control Information (FCI) Template",
"70": "READ RECORD Response Message Template",
"71": "Issuer Script Template 1",
"72": "Issuer Script Template 2",
"73": "Directory Discretionary Template",
"77": "Response Message Template Format 2",
"78": "Compatible Tag Allocation Authority",
"79": "Coexistent Tag Allocation Authority",
"7A": "Template, Security Support (SS)",
"7B": "Template, Security Environment (SE)",
"7D": "Template, Secure Messaging (SM)",
"7E": "Template, Nesting Interindustry data objects",
"7F20": "Display control template",
"7F21": "Cardholder certificate",
"7F2E": "Biometric data template",
"7F49": "Template, Cardholder public key",
"7F4C": "Template, Certificate Holder Authorization",
"7F4E": "Certificate Body",
"7F60": "Template, Biometric information",
"80": "Response Message Template Format 1",
"81": "Amount, Authorised (Binary)",
"82": "Application Interchange Profile (AIP)",
"83": "Command Template",
"84": "Dedicated File (DF) Name",
"86": "Issuer Script Command",
"87": "Application Priority Indicator",
"88": "Short File Identifier (SFI)",
"89": "Authorisation Code",
"8A": "Authorisation Response Code (ARC)",
"8C": "Card Risk Management Data Object List 1 (CDOL1)",
"8D": "Card Risk Management Data Object List 2 (CDOL2)",
"8E": "Cardholder Verification Method (CVM) List",
"8F": "Certification Authority Public Key Index (PKI)",
"90": "Issuer Public Key Certificate",
"91": "Issuer Authentication Data",
"92": "Issuer Public Key Remainder",
"93": "Signed Static Application Data (SAD)",
"94": "Application File Locator (AFL)",
"95": "Terminal Verification Results (TVR)",
"97": "Transaction Certificate Data Object List (TDOL)",
"98": "Transaction Certificate (TC) Hash Value",
"99": "Transaction Personal Identification Number (PIN) Data",
"9A": "Transaction Date",
"9B": "Transaction Status Information (TSI)",
"9C": "Transaction Type",
"9D": "Directory Definition File (DDF) Name",
"9F01": "Acquirer Identifier",
"9F02": "Amount, Authorised (Numeric)",
"9F03": "Amount, Other (Numeric)",
"9F04": "Amount, Other (Binary)",
"9F05": "Application Discretionary Data",
"9F06": "Application Identifier (AID), Terminal",
"9F07": "Application Usage Control (AUC)",
"9F08": "Application Version Number",
"9F09": "Application Version Number",
"9F0B": "Cardholder Name - Extended",
"9F0D": "Issuer Action Code - Default",
"9F0E": "Issuer Action Code - Denial",
"9F0F": "Issuer Action Code - Online",
"9F10": "Issuer Application Data (IAD)",
"9F11": "Issuer Code Table Index",
"9F12": "Application Preferred Name",
"9F13": "Last Online Application Transaction Counter (ATC) Register",
"9F14": "Lower Consecutive Offline Limit (LCOL)",
"9F15": "Merchant Category Code (MCC)",
"9F16": "Merchant Identifier",
"9F17": "Personal Identification Number (PIN) Try Counter",
"9F18": "Issuer Script Identifier",
"9F19": "Deleted (see 9F49)",
"9F1A": "Terminal Country Code",
"9F1B": "Terminal Floor Limit",
"9F1C": "Terminal Identification",
"9F1D": "Terminal Risk Management Data",
"9F1E": "Interface Device (IFD) Serial Number",
"9F1F": "Track 1 Discretionary Data",
"9F20": "Track 2 Discretionary Data",
"9F21": "Transaction Time",
"9F22": "Certification Authority Public Key Index (PKI)",
"9F23": "Upper Consecutive Offline Limit (UCOL)",
"9F24": "Payment Account Reference (PAR) generated or linked directly to the provision request in the token vault",
"9F26": "Application Cryptogram (AC)",
"9F27": "Cryptogram Information Data (CID)",
"9F29": "Extended Selection",
"9F2A": "Kernel Identifier",
"9F2D": "Integrated Circuit Card (ICC) PIN Encipherment Public Key Certificate",
"9F2E": "Integrated Circuit Card (ICC) PIN Encipherment Public Key Exponent",
"9F2F": "Integrated Circuit Card (ICC) PIN Encipherment Public Key Remainder",
"9F32": "Issuer Public Key Exponent",
"9F33": "Terminal Capabilities",
"9F34": "Cardholder Verification Method (CVM) Results",
"9F35": "Terminal Type",
"9F36": "Application Transaction Counter (ATC)",
"9F37": "Unpredictable Number (UN)",
"9F38": "Processing Options Data Object List (PDOL)",
"9F39": "Point-of-Service (POS) Entry Mode",
"9F3A": "Amount, Reference Currency (Binary)",
"9F3B": "Currency Code, Application Reference",
"9F3C": "Currency Code, Transaction Reference",
"9F3D": "Currency Exponent, Transaction Reference",
"9F40": "Additional Terminal Capabilities (ATC)",
"9F41": "Transaction Sequence Counter",
"9F42": "Currency Code, Application",
"9F43": "Currency Exponent, Application Reference",
"9F44": "Currency Exponent, Application",
"9F45": "Data Authentication Code",
"9F46": "Integrated Circuit Card (ICC) Public Key Certificate",
"9F47": "Integrated Circuit Card (ICC) Public Key Exponent",
"9F48": "Integrated Circuit Card (ICC) Public Key Remainder",
"9F49": "Dynamic Data Authentication Data Object List (DDOL)",
"9F4A": "Static Data Authentication Tag List (SDA)",
"9F4B": "Signed Dynamic Application Data (SDAD)",
"9F4C": "ICC Dynamic Number",
"9F4D": "Log Entry",
"9F4E": "Merchant Name and Location",
"9F4F": "Log Format",
"9F50": "Offline Accumulator Balance",
"9F51": "Application Currency Code",
"9F52": "Application Default Action (ADA)",
"9F53": "Consecutive Transaction Counter International Limit (CTCIL)",
"9F54": "Cumulative Total Transaction Amount Limit (CTTAL)",
"9F55": "Geographic Indicator",
"9F56": "Issuer Authentication Indicator",
"9F57": "Issuer Country Code",
"9F58": "Consecutive Transaction Counter Limit (CTCL)",
"9F59": "Consecutive Transaction Counter Upper Limit (CTCUL)",
"9F5A": "Application Program Identifier (Program ID)",
"9F5B": "Issuer Script Results",
"9F5C": "Cumulative Total Transaction Amount Upper Limit (CTTAUL)",
"9F5D": "Available Offline Spending Amount (AOSA)",
"9F5E": "Consecutive Transaction International Upper Limit (CTIUL)",
"9F5F": "Offline Balance",
"9F60": "CVC3 (Track1)",
"9F61": "CVC3 (Track2)",
"9F62": "PCVC3 (Track1)",
"9F63": "Offline Counter Initial Value",
"9F64": "NATC (Track1)",
"9F65": "PCVC3 (Track2)",
"9F66": "Terminal Transaction Qualifiers (TTQ)",
"9F67": "MSD Offset",
"9F68": "Card Additional Processes",
"9F69": "Card Authentication Related Data",
"9F6A": "Unpredictable Number (Numeric)",
"9F6B": "Card CVM Limit",
"9F6C": "Card Transaction Qualifiers (CTQ)",
"9F6D": "VLP Reset Threshold",
"9F6E": "Third Party Data",
"9F6F": "DS Slot Management Control",
"9F70": "Protected Data Envelope 1",
"9F71": "Protected Data Envelope 2",
"9F72": "Protected Data Envelope 3",
"9F73": "Protected Data Envelope 4",
"9F74": "Protected Data Envelope 5",
"9F75": "Unprotected Data Envelope 1",
"9F76": "Unprotected Data Envelope 2",
"9F77": "Unprotected Data Envelope 3",
"9F78": "Unprotected Data Envelope 4",
"9F79": "Unprotected Data Envelope 5",
"9F7A": "VLP Terminal Support Indicator",
"9F7B": "VLP Terminal Transaction Limit",
"9F7C": "Customer Exclusive Data (CED)",
"9F7D": "DS Summary 1",
"9F7E": "Mobile Support Indicator",
"9F7F": "DS Unpredictable Number",
"A5": "File Control Information (FCI) Proprietary Template",
"BF0C": "File Control Information (FCI) Issuer Discretionary Data",
"BF50": "Visa Fleet - CDO",
"BF60": "Integrated Data Storage Record Update Template",
"C3": "Card issuer action code -decline",
"C4": "Card issuer action code -default",
"C5": "Card issuer action code online",
"C6": "PIN Try Limit",
"C7": "CDOL 1 Related Data Length",
"C8": "Card risk management country code",
"C9": "Card risk management currency code",
"CA": "Lower cumulative offline transaction amount",
"CB": "Upper cumulative offline transaction amount",
"CD": "Card Issuer Action Code (PayPass) - Default",
"CE": "Card Issuer Action Code (PayPass) - Online",
"CF": "Card Issuer Action Code (PayPass) - Decline",
"D1": "Currency conversion table",
"D2": "Integrated Data Storage Directory (IDSD)",
"D3": "Additional check table",
"D5": "Application Control",
"D6": "Default ARPC response code",
"D7": "Application Control (PayPass)",
"D8": "AIP (PayPass)",
"D9": "AFL (PayPass)",
"DA": "Static CVC3-TRACK1",
"DB": "Static CVC3-TRACK2",
"DC": "IVCVC3-TRACK1",
"DD": "IVCVC3-TRACK2",
"DF01": "Encrypted PIN Block in Tag 9F62 - ISO 95641 Format 0",
"DF02": "PEK Version Number",
"DF03": "PIN Try Limit",
"DF04": "PIN Try Counter (VSDC Application)",
"DF05": "AIP - For VISA Contactless",
"DF06": "Products permitted",
"DF07": "Offline checks mandated",
"DF08": "UDKmac",
"DF09": "UDKenc",
"DF0B": "Retries Permitted Limit",
"DF0C": "Script Message Update",
"DF0D": "Fleet Issuer Action Code - Default",
"DF0E": "Fleet Issuer Action Code - Denial",
"DF0F": "Fleet Issuer Action Code - Online",
"DF12": "Vehicle Registration Number",
"DF13": "DDA Public Modulus",
"DF14": "Driver Name",
"DF15": "Driver ID",
"DF16": "Max Fill Volume",
"DF17": "DDA Public Modulus Length",
"DF18": "Mileage",
"DF20": "Issuer Proprietary Bitmap (IPB)",
"DF21": "Internet Authentication Flag (IAF)",
"DF22": "Encrypted PEK - RFU",
"DF23": "PEK Key Check Value - RFU",
"DF24": "MDK - Key derivation Index",
"DF25": "VISA DPA - MDK - Key derivation Index",
"DF26": "Encrypted PIN Block - ISO 9564-1 Format 1 PIN Block (Thales P3 Format 05)",
"DF40": "qVSDC AIP",
"DF41": "VSDC AIP",
"DF42": "UDKac",
"DF43": "UDKmac",
"DF44": "UDKenc",
"DF47": "UDKcvc",
"DF48": "UDKac KCV",
"DF49": "UDKmac KCV",
"DF4A": "UDKenc KCV",
"DF4B": "POS Cardholder Interaction Information",
"DF51": "Grand Parent AC",
"DF52": "Parent AC",
"DF53": "Grand Parent MAC",
"DF54": "Parent MAC",
"DF55": "Grand Parent ENC",
"DF56": "Parent ENC/Terminal Action Code - Default",
"DF57": "Terminal Action Code - Decline",
"DF60": "DS Input (Card)",
"DF61": "DDA Component Q",
"DF62": "DS ODS Info",
"DF63": "DS ODS Term",
"DF64": "DDA Component Q Minus 1 Mod P",
"DF65": "DDA Private Exponent",
"DF6B": "Paypass Contactless",
"DF79": "Dynamic Data Authentication Keys",
"DF8101": "DS Summary 2",
"DF8102": "DS Summary 3",
"DF8104": "Balance Read Before Gen AC",
"DF8105": "Balance Read After Gen AC",
"DF8106": "Data Needed",
"DF8107": "CDOL1 Related Data",
"DF8108": "DS AC Type",
"DF8109": "DS Input (Term)",
"DF810A": "DS ODS Info For Reader",
"DF810B": "DS Summary Status",
"DF810C": "Kernel ID",
"DF810D": "DSVN Term",
"DF810E": "Post-Gen AC Put Data Status",
"DF810F": "Pre-Gen AC Put Data Status",
"DF8110": "Proceed To First Write Flag",
"DF8111": "PDOL Related Data",
"DF8112": "Tags To Read",
"DF8113": "DRDOL Related Data",
"DF8114": "Reference Control Parameter",
"DF8115": "Error Indication",
"DF8116": "User Interface Request Data",
"DF8117": "Card Data Input Capability",
"DF8118": "CVM Capability - CVM Required",
"DF8119": "CVM Capability - No CVM Required",
"DF811A": "Default UDOL",
"DF811B": "Kernel Configuration",
"DF811C": "Max Lifetime of Torn Transaction Log Record",
"DF811D": "Max Number of Torn Transaction Log Records",
"DF811E": "Mag-stripe CVM Capability - CVM Required",
"DF811F": "Security Capability",
"DF8120": "Terminal Action Code - Default",
"DF8121": "Terminal Action Code - Denial",
"DF8122": "Terminal Action Code - Online",
"DF8123": "Reader Contactless Floor Limit",
"DF8124": "Reader Contactless Transaction Limit (No On-device CVM)",
"DF8125": "Reader Contactless Transaction Limit (On-device CVM)",
"DF8126": "Reader CVM Required Limit",
"DF8127": "Time Out Value",
"DF8128": "IDS Status",
"DF8129": "Outcome Parameter Set",
"DF812A": "DD Card (Track1)",
"DF812B": "DD Card (Track2)",
"DF812C": "Mag-stripe CVM Capability - No CVM Required",
"DF812D": "Message Hold Time",
"DF8130": "Hold Time Value",
"DF8131": "Phone Message Table",
"FF60": "Visa International",
"FF62": "Visa Magnetic Stripe",
"FF63": "Visa Quick VSDC",
"FF8101": "Torn Record",
"FF8102": "Tags To Write Before Gen AC",
"FF8103": "Tags To Write After Gen AC",
"FF8104": "Data To Send",
"FF8105": "Data Record",
"FF8106": "Discretionary Data",
}