LibLogicalAccess
2.5.0
An Open Source RFID Library
|
#include <cardprobe.hpp>
Public Member Functions | |
virtual | ~CardProbe ()=default |
CardProbe (ReaderUnit *ru) | |
CardProbe (const CardProbe &)=delete | |
virtual std::string | guessCardType () |
virtual bool | is_desfire (ByteVector *uid=nullptr)=0 |
virtual bool | is_desfire_ev1 (ByteVector *uid=nullptr)=0 |
virtual bool | is_desfire_ev2 (ByteVector *uid=nullptr)=0 |
virtual bool | is_desfire_ev3 (ByteVector *uid=nullptr)=0 |
virtual bool | is_mifare_ultralight_c ()=0 |
virtual bool | maybe_mifare_classic ()=0 |
virtual bool | has_desfire_random_uid (ByteVector *uid)=0 |
Protected Attributes | |
ReaderUnit * | reader_unit_ |
An object whose responsibility is to detect the type of card by sending command to it and analysing response.
The probe makes use of a ReaderUnit to create temporary chips and send them commands.
The probing infrastructure is not very robust because hardware behaviour if not properly defined. This class may be reimplemented for some reader unit that behave differently.
|
virtualdefault |
|
explicit |
|
delete |
|
virtual |
|
pure virtual |
Is random UID enabled for a DESFire card.
uid | The UID in case random UID is DISABLED. Otherwise *uid wont be set. |
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Test if the card is DESFire by sending the getversion command.
The optional *uid
vector will be populate with the uid retrieve from the getversion command, unless the command failed.
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Test if the card is DESFire EV1 by sending the getversion command.
The optional *uid
vector will be populate with the uid retrieve from the getversion command, unless the command failed.
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Test if the card is DESFire EV2 by sending the getversion command.
The optional *uid
vector will be populate with the uid retrieve from the getversion command, unless the command failed.
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Test if the card is DESFire EV2 by sending the getversion command.
The optional *uid
vector will be populate with the uid retrieve from the getversion command, unless the command failed.
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Test if the card is Mifare Ultralight C by sending the authenticate command.
Implemented in logicalaccess::PCSCCardProbe.
|
pure virtual |
Could the card be a Mifare Classic ?
This is less precise that the is_desfire*() function.
Implemented in logicalaccess::CL1356CardProbe, logicalaccess::PCSCCardProbe, and logicalaccess::SpringCardProbe.
|
protected |