eID middleware | ![]() |
#include <eidlib.h>
Public Member Functions | |
virtual PTEIDSDK_API | ~PTEID_SmartCard ()=0 |
Destructor. | |
PTEIDSDK_API void | selectApplication (const PTEID_ByteArray &applicationId) |
Select an application from the card. | |
virtual PTEIDSDK_API PTEID_ByteArray | sendAPDU (const PTEID_ByteArray &cmd, PTEID_Pin *pin=NULL, const char *csPinCode="") |
Send an APDU command to the card and get the result. | |
virtual PTEIDSDK_API long | readFile (const char *fileID, PTEID_ByteArray &in, PTEID_Pin *pin=NULL, const char *csPinCode="") |
Read a File from the card. | |
virtual PTEIDSDK_API bool | writeFile (const char *fileID, const PTEID_ByteArray &out, PTEID_Pin *pin=NULL, const char *csPinCode="") |
Write a file to the card. | |
virtual PTEIDSDK_API unsigned long | pinCount () |
Return the number of pin on the card. | |
virtual PTEIDSDK_API PTEID_Pins & | getPins () |
Return an object to access all the pins on the card. | |
virtual PTEIDSDK_API unsigned long | certificateCount () |
Return the number of certificate on the card. | |
virtual PTEIDSDK_API PTEID_Certificates & | getCertificates () |
Return an object to access all the certificates on the card. | |
virtual PTEIDSDK_API const PTEID_ByteArray & | getChallenge (bool bForceNewInit=false) |
Return the challenge. | |
virtual PTEIDSDK_API const PTEID_ByteArray & | getChallengeResponse () |
Return the response to the challenge. | |
virtual PTEIDSDK_API bool | verifyChallengeResponse (const PTEID_ByteArray &challenge, const PTEID_ByteArray &response) const |
Return true if the response of the card to the given challenge is the same as the response expected. | |
Protected Member Functions | |
PTEID_SmartCard (const SDK_Context *context, APL_Card *impl) | |
For internal use : Constructor. |
virtual PTEIDSDK_API eIDMW::PTEID_SmartCard::~PTEID_SmartCard | ( | ) | [pure virtual] |
Destructor.
eIDMW::PTEID_SmartCard::PTEID_SmartCard | ( | const SDK_Context * | context, | |
APL_Card * | impl | |||
) | [protected] |
For internal use : Constructor.
virtual PTEIDSDK_API unsigned long eIDMW::PTEID_SmartCard::certificateCount | ( | ) | [virtual] |
Return the number of certificate on the card.
virtual PTEIDSDK_API PTEID_Certificates& eIDMW::PTEID_SmartCard::getCertificates | ( | ) | [virtual] |
Return an object to access all the certificates on the card.
virtual PTEIDSDK_API const PTEID_ByteArray& eIDMW::PTEID_SmartCard::getChallenge | ( | bool | bForceNewInit = false |
) | [virtual] |
Return the challenge.
bForceNewInit | force a new initialization of the couple challenge/response |
virtual PTEIDSDK_API const PTEID_ByteArray& eIDMW::PTEID_SmartCard::getChallengeResponse | ( | ) | [virtual] |
Return the response to the challenge.
virtual PTEIDSDK_API PTEID_Pins& eIDMW::PTEID_SmartCard::getPins | ( | ) | [virtual] |
Return an object to access all the pins on the card.
virtual PTEIDSDK_API unsigned long eIDMW::PTEID_SmartCard::pinCount | ( | ) | [virtual] |
Return the number of pin on the card.
virtual PTEIDSDK_API long eIDMW::PTEID_SmartCard::readFile | ( | const char * | fileID, | |
PTEID_ByteArray & | in, | |||
PTEID_Pin * | pin = NULL , |
|||
const char * | csPinCode = "" | |||
) | [virtual] |
Read a File from the card.
If no pin is passed and a pin is needed by the card, the pin code will be asked anyway.
fileID | is the path of the file | |
in | return the file | |
pin | is the pin to ask for reading | |
csPinCode | is the code of the pin (it will be asked if needed and not set) |
PTEIDSDK_API void eIDMW::PTEID_SmartCard::selectApplication | ( | const PTEID_ByteArray & | applicationId | ) |
Select an application from the card.
virtual PTEIDSDK_API PTEID_ByteArray eIDMW::PTEID_SmartCard::sendAPDU | ( | const PTEID_ByteArray & | cmd, | |
PTEID_Pin * | pin = NULL , |
|||
const char * | csPinCode = "" | |||
) | [virtual] |
Send an APDU command to the card and get the result.
cmd | is the apdu command | |
pin | is the pin to ask for writing | |
csPinCode | is the code of the pin (it will be asked if needed and not set) |
virtual PTEIDSDK_API bool eIDMW::PTEID_SmartCard::verifyChallengeResponse | ( | const PTEID_ByteArray & | challenge, | |
const PTEID_ByteArray & | response | |||
) | const [virtual] |
Return true if the response of the card to the given challenge is the same as the response expected.
For virtual card (from file), always return false.
challenge | is the challenge to check | |
response | is the response expected from the card |
virtual PTEIDSDK_API bool eIDMW::PTEID_SmartCard::writeFile | ( | const char * | fileID, | |
const PTEID_ByteArray & | out, | |||
PTEID_Pin * | pin = NULL , |
|||
const char * | csPinCode = "" | |||
) | [virtual] |
Write a file to the card.
Throw PTEID_ExCmdNotAllowed exception you're not allowed to write the file.
If no pin is passed and a pin is needed by the card, the pin code will be asked anyway.
fileID | is the path of the file | |
out | contents the bytes to write | |
pin | is the pin to ask for writing | |
csPinCode | is the code of the pin (it will be asked if needed and not set) |