LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
Public Member Functions | List of all members
logicalaccess::SAMAV1ISO7816Commands Class Reference

The SAMAV1ISO7816 commands class. More...

#include <samav1iso7816commands.hpp>

Inheritance diagram for logicalaccess::SAMAV1ISO7816Commands:
logicalaccess::SAMISO7816Commands< KeyEntryAV1Information, SETAV1 > logicalaccess::SAMCommands< T, S > logicalaccess::Commands logicalaccess::ICommands

Public Member Functions

 SAMAV1ISO7816Commands ()
 Constructor.
 
 SAMAV1ISO7816Commands (std::string)
 
virtual ~SAMAV1ISO7816Commands ()
 Destructor.
 
std::shared_ptr< SAMKeyEntry< KeyEntryAV1Information, SETAV1 > > getKeyEntry (unsigned char keyno) override
 
std::shared_ptr< SAMKucEntrygetKUCEntry (unsigned char kucno) override
 
void changeKUCEntry (unsigned char kucno, std::shared_ptr< SAMKucEntry > keyentry, std::shared_ptr< DESFireKey > key) override
 
void changeKeyEntry (unsigned char keyno, std::shared_ptr< SAMKeyEntry< KeyEntryAV1Information, SETAV1 > > keyentry, std::shared_ptr< DESFireKey > key) override
 
void authenticateHost (std::shared_ptr< DESFireKey > key, unsigned char keyno) override
 
void authenticateHost_AES_3K3DES (std::shared_ptr< DESFireKey > key, unsigned char keyno)
 
void authenticateHostDES (std::shared_ptr< DESFireKey > key, unsigned char keyno)
 
- Public Member Functions inherited from logicalaccess::SAMISO7816Commands< KeyEntryAV1Information, SETAV1 >
 SAMISO7816Commands ()
 Constructor.
 
 SAMISO7816Commands (std::string ct)
 
virtual ~SAMISO7816Commands ()
 Destructor.
 
std::shared_ptr< ISO7816ReaderCardAdaptergetISO7816ReaderCardAdapter ()
 
ByteVector transmit (ByteVector cmd, bool=true, bool=true) override
 
SAMVersion getVersion () override
 
ByteVector decipherData (ByteVector data, bool islastdata) override
 
ByteVector encipherData (ByteVector data, bool islastdata) override
 
void disableKeyEntry (unsigned char keyno) override
 
ByteVector dumpSessionKey () override
 
void loadInitVector (ByteVector iv) override
 
std::string getSAMTypeFromSAM () override
 
virtual std::shared_ptr< SAMDESfireCryptogetCrypto ()
 
virtual void setCrypto (std::shared_ptr< SAMDESfireCrypto > t)
 
void lockUnlock (std::shared_ptr< DESFireKey > masterKey, SAMLockUnlock state, unsigned char keyno, unsigned char unlockkeyno, unsigned char unlockkeyversion) override
 
void selectApplication (ByteVector aid) override
 
ByteVector changeKeyPICC (const ChangeKeyInfo &info, const ChangeKeyDiversification &diversifycation) override
 
- Public Member Functions inherited from logicalaccess::SAMCommands< T, S >
 SAMCommands ()
 
 SAMCommands (std::string ct)
 
virtual SAMVersion getVersion ()=0
 
virtual std::shared_ptr< SAMKeyEntry< T, S > > getKeyEntry (unsigned char keyno)=0
 
virtual std::shared_ptr< SAMKucEntrygetKUCEntry (unsigned char keyno)=0
 
virtual void changeKeyEntry (unsigned char keyno, std::shared_ptr< SAMKeyEntry< T, S > > keyentry, std::shared_ptr< DESFireKey > key)=0
 
virtual void changeKUCEntry (unsigned char keyno, std::shared_ptr< SAMKucEntry > keyentry, std::shared_ptr< DESFireKey > key)=0
 
virtual void authenticateHost (std::shared_ptr< DESFireKey > key, unsigned char keyno)=0
 
virtual std::string getSAMTypeFromSAM ()=0
 
virtual void disableKeyEntry (unsigned char keyno)=0
 
virtual void selectApplication (ByteVector aid)=0
 
virtual ByteVector dumpSessionKey ()=0
 
virtual void loadInitVector (ByteVector iv)=0
 
virtual ByteVector decipherData (ByteVector data, bool islastdata)=0
 
virtual ByteVector encipherData (ByteVector data, bool islastdata)=0
 
virtual ByteVector changeKeyPICC (const ChangeKeyInfo &info, const ChangeKeyDiversification &diversifycation)=0
 
virtual void lockUnlock (std::shared_ptr< DESFireKey > masterKey, SAMLockUnlock state, unsigned char keyno, unsigned char unlockkeyno, unsigned char unlockkeyversion)=0
 
virtual ByteVector transmit (ByteVector cmd, bool first=true, bool last=true)=0
 
- Public Member Functions inherited from logicalaccess::Commands
 Commands ()=delete
 Constructor.
 
virtual ~Commands ()
 
std::shared_ptr< ChipgetChip () const override
 Get the chip.
 
virtual void setChip (std::shared_ptr< Chip > chip)
 Set the chip.
 
std::shared_ptr< ReaderCardAdaptergetReaderCardAdapter () const override
 Get the reader/card adapter.
 
virtual void setReaderCardAdapter (std::shared_ptr< ReaderCardAdapter > adapter)
 Set the reader/card adapter.
 
virtual const std::string & getCmdType () const
 Get the cmd name.
 
virtual void setCmdType (const std::string &command_type)
 Set the cmd name.
 
- Public Member Functions inherited from logicalaccess::ICommands
virtual ~ICommands ()=default
 
virtual std::shared_ptr< ChipgetChip () const =0
 Get the chip.
 
virtual std::shared_ptr< ReaderCardAdaptergetReaderCardAdapter () const =0
 Get the reader/card adapter.
 

Additional Inherited Members

- Protected Member Functions inherited from logicalaccess::SAMISO7816Commands< KeyEntryAV1Information, SETAV1 >
void generateAuthEncKey (ByteVector keycipher, ByteVector rnd1, ByteVector rnd2)
 
- Protected Member Functions inherited from logicalaccess::Commands
 Commands (std::string commandtype)
 Constructor.
 
- Static Protected Member Functions inherited from logicalaccess::SAMISO7816Commands< KeyEntryAV1Information, SETAV1 >
static void truncateMacBuffer (ByteVector &data)
 
- Protected Attributes inherited from logicalaccess::SAMISO7816Commands< KeyEntryAV1Information, SETAV1 >
std::shared_ptr< SAMDESfireCryptod_crypto
 
unsigned char d_cla
 
ByteVector d_authKey
 
ByteVector d_sessionKey
 
ByteVector d_LastSessionIV
 
- Protected Attributes inherited from logicalaccess::Commands
std::shared_ptr< ReaderCardAdapterd_readerCardAdapter
 The reader/card adapter.
 
std::weak_ptr< Chipd_chip
 The chip.
 
std::string d_commandtype
 The command type.
 

Detailed Description

The SAMAV1ISO7816 commands class.

Constructor & Destructor Documentation

◆ SAMAV1ISO7816Commands() [1/2]

logicalaccess::SAMAV1ISO7816Commands::SAMAV1ISO7816Commands ( )

Constructor.

◆ SAMAV1ISO7816Commands() [2/2]

logicalaccess::SAMAV1ISO7816Commands::SAMAV1ISO7816Commands ( std::string  ct)
explicit

◆ ~SAMAV1ISO7816Commands()

logicalaccess::SAMAV1ISO7816Commands::~SAMAV1ISO7816Commands ( )
virtual

Destructor.

Member Function Documentation

◆ authenticateHost()

void logicalaccess::SAMAV1ISO7816Commands::authenticateHost ( std::shared_ptr< DESFireKey key,
unsigned char  keyno 
)
overridevirtual

◆ authenticateHost_AES_3K3DES()

void logicalaccess::SAMAV1ISO7816Commands::authenticateHost_AES_3K3DES ( std::shared_ptr< DESFireKey key,
unsigned char  keyno 
)

◆ authenticateHostDES()

void logicalaccess::SAMAV1ISO7816Commands::authenticateHostDES ( std::shared_ptr< DESFireKey key,
unsigned char  keyno 
)

◆ changeKeyEntry()

void logicalaccess::SAMAV1ISO7816Commands::changeKeyEntry ( unsigned char  keyno,
std::shared_ptr< SAMKeyEntry< KeyEntryAV1Information, SETAV1 > >  keyentry,
std::shared_ptr< DESFireKey key 
)
override

◆ changeKUCEntry()

void logicalaccess::SAMAV1ISO7816Commands::changeKUCEntry ( unsigned char  kucno,
std::shared_ptr< SAMKucEntry keyentry,
std::shared_ptr< DESFireKey key 
)
overridevirtual

◆ getKeyEntry()

std::shared_ptr< SAMKeyEntry< KeyEntryAV1Information, SETAV1 > > logicalaccess::SAMAV1ISO7816Commands::getKeyEntry ( unsigned char  keyno)
overridevirtual

◆ getKUCEntry()

std::shared_ptr< SAMKucEntry > logicalaccess::SAMAV1ISO7816Commands::getKUCEntry ( unsigned char  kucno)
overridevirtual

The documentation for this class was generated from the following files: