LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Enumerations
iso7816commands.hpp File Reference

ISO7816 commands. See http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-4.aspx. More...

#include <logicalaccess/key.hpp>
#include <logicalaccess/plugins/cards/iso7816/iso7816location.hpp>
#include <logicalaccess/cards/commands.hpp>
#include <logicalaccess/tlv.hpp>

Go to the source code of this file.

Classes

class  logicalaccess::ISO7816Commands
 The ISO7816 commands class. More...
 

Namespaces

namespace  logicalaccess
 

Macros

#define CMD_ISO7816   "ISO7816"
 
#define ISO7816_DATA_OBJECT_SELECTED   0x3FFF
 
#define ISO7816_DATA_OBJECT_EXTENDED_HEADERLIST   0x4D
 
#define ISO7816_DATA_OBJECT_HEADERLIST   0x5C
 
#define ISO7816_DATA_OBJECT_TAGLIST   0x5D
 
#define ISO7816_DATA_OBJECT_APPLICATION_TEMPLATE   0x61
 
#define ISO7816_DATA_OBJECT_DYNAMIC_AUTHENTICATION_DATA   0x7C
 
#define ISO7816_DATA_OBJECT_WITNESS   0x80
 
#define ISO7816_DATA_OBJECT_CHALLENGE   0x81
 
#define ISO7816_DATA_OBJECT_RESPONSE   0x82
 
#define IS7816O_DATA_OBJECT_COMMITTED   0x83
 
#define ISO7816_DATA_OBJECT_AUTHCODE   0x84
 
#define ISO7816_DATA_OBJECT_CRYPTOGRAM   0x85
 
#define ISO7816_DATA_OBJECT_CRYPTOGRAPHIC_CHECKSUM   0x8E
 
#define ISO7816_DATA_OBJECT_PROTECTED_NE   0x97
 
#define ISO7816_DATA_OBJECT_PROCESSING_STATUS   0x99
 
#define ISO7816_DATA_OBJECT_IDENTIFICATION_DATA_TEMPLATE   0xA0
 

Enumerations

enum  logicalaccess::ISOSelectFileP1 {
  logicalaccess::P1_SELECT_MF_DF_EF = 0x00 , logicalaccess::P1_SELECT_CHILD_DF = 0x01 , logicalaccess::P1_SELECT_EF_UNDER_CURRENT_DF = 0x02 , logicalaccess::P1_SELECT_PARENT_DF_OF_CURRENT_DF = 0x03 ,
  logicalaccess::P1_SELECT_BY_DFNAME = 0x04 , logicalaccess::P1_SELECT_PATH_FROM_MF = 0x08 , logicalaccess::P1_SELECT_PATH_FROM_CURRENT_DF = 0x09
}
 The P1 of Select File command. More...
 
enum  logicalaccess::ISOSelectFileP2 {
  logicalaccess::P2_FIRST_RECORD = 0x00 , logicalaccess::P2_LAST_RECORD = 0x01 , logicalaccess::P2_NEXT_RECORD = 0x02 , logicalaccess::P2_PREVIOUS_RECORD = 0x03 ,
  logicalaccess::P2_RETURN_FCP = 0x04 , logicalaccess::P2_RETURN_FMD = 0x08 , logicalaccess::P2_RETURN_NO_FCI = 0x0C
}
 The P2 of Select File command. More...
 
enum  logicalaccess::ISORemoveApplicationP1 {
  logicalaccess::P1_STATE_CREATION_TO_APPLICATION_REMOVED = 0x01 , logicalaccess::P1_STATE_INITIALIZATION_TO_CREATION = 0x02 , logicalaccess::P1_STATE_INITIALIZATION_TO_APPLICATION_REMOVED = 0x03 , logicalaccess::P1_STATE_OPERATIONAL_TO_CREATION = 0x04 ,
  logicalaccess::P1_STATE_OPERATIONAL_OR_INITIALIZATION_TO_CREATION = 0x06 , logicalaccess::P1_STATE_OPERATIONAL_TO_APPLICATION_REMOVED = 0x07
}
 The P1 of Remove Application command. More...
 
enum  logicalaccess::ISOApplicationManagementRequestP1 {
  logicalaccess::P1_STATE_NONEXISTENT_TO_CREATION = 0x02 , logicalaccess::P1_STATE_CREATION_TO_INITIALIZATION = 0x04 , logicalaccess::P1_STATE_NONEXISTENT_TO_INITIALIZATION = 0x06 , logicalaccess::P1_STATE_INITIALIZATION_TO_OPERATIONAL = 0x08 ,
  logicalaccess::P1_STATE_CREATION_TO_OPERATIONAL = 0x0C , logicalaccess::P1_STATE_NONEXISTENT_TO_OPERATIONAL = 0x0E
}
 The P1 of Application Management Request command. More...
 
enum  logicalaccess::ISORecords { logicalaccess::ISO_RECORD_ONERECORD = 0x04 , logicalaccess::ISO_RECORD_ALLRECORDS = 0x05 }
 The ISO record transmission mode. More...
 

Detailed Description

ISO7816 commands. See http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-4.aspx.

Author
Maxime C. maxim.nosp@m.e-de.nosp@m.v@isl.nosp@m.og.c.nosp@m.om

Macro Definition Documentation

◆ CMD_ISO7816

#define CMD_ISO7816   "ISO7816"

◆ IS7816O_DATA_OBJECT_COMMITTED

#define IS7816O_DATA_OBJECT_COMMITTED   0x83

◆ ISO7816_DATA_OBJECT_APPLICATION_TEMPLATE

#define ISO7816_DATA_OBJECT_APPLICATION_TEMPLATE   0x61

◆ ISO7816_DATA_OBJECT_AUTHCODE

#define ISO7816_DATA_OBJECT_AUTHCODE   0x84

◆ ISO7816_DATA_OBJECT_CHALLENGE

#define ISO7816_DATA_OBJECT_CHALLENGE   0x81

◆ ISO7816_DATA_OBJECT_CRYPTOGRAM

#define ISO7816_DATA_OBJECT_CRYPTOGRAM   0x85

◆ ISO7816_DATA_OBJECT_CRYPTOGRAPHIC_CHECKSUM

#define ISO7816_DATA_OBJECT_CRYPTOGRAPHIC_CHECKSUM   0x8E

◆ ISO7816_DATA_OBJECT_DYNAMIC_AUTHENTICATION_DATA

#define ISO7816_DATA_OBJECT_DYNAMIC_AUTHENTICATION_DATA   0x7C

◆ ISO7816_DATA_OBJECT_EXTENDED_HEADERLIST

#define ISO7816_DATA_OBJECT_EXTENDED_HEADERLIST   0x4D

◆ ISO7816_DATA_OBJECT_HEADERLIST

#define ISO7816_DATA_OBJECT_HEADERLIST   0x5C

◆ ISO7816_DATA_OBJECT_IDENTIFICATION_DATA_TEMPLATE

#define ISO7816_DATA_OBJECT_IDENTIFICATION_DATA_TEMPLATE   0xA0

◆ ISO7816_DATA_OBJECT_PROCESSING_STATUS

#define ISO7816_DATA_OBJECT_PROCESSING_STATUS   0x99

◆ ISO7816_DATA_OBJECT_PROTECTED_NE

#define ISO7816_DATA_OBJECT_PROTECTED_NE   0x97

◆ ISO7816_DATA_OBJECT_RESPONSE

#define ISO7816_DATA_OBJECT_RESPONSE   0x82

◆ ISO7816_DATA_OBJECT_SELECTED

#define ISO7816_DATA_OBJECT_SELECTED   0x3FFF

◆ ISO7816_DATA_OBJECT_TAGLIST

#define ISO7816_DATA_OBJECT_TAGLIST   0x5D

◆ ISO7816_DATA_OBJECT_WITNESS

#define ISO7816_DATA_OBJECT_WITNESS   0x80