LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
mifareplus_sprincard_sl1.hpp
Go to the documentation of this file.
1#pragma once
2
6
7namespace logicalaccess
8{
18class LLA_READERS_PCSC_API EncapsulateGuard
19{
20 public:
21 EncapsulateGuard(Commands *cmd, bool level_1);
23
24 private:
26 {
27 public:
28 ByteVector adaptCommand(const ByteVector &command) override;
29
30 ByteVector adaptAnswer(const ByteVector &answer) override;
31
33 };
34
38 std::shared_ptr<PCSCReaderCardAdapter> rca_;
39
41
42 std::shared_ptr<Adapter> adapter_;
43};
44
45
47{
48
49 public:
50 bool AESAuthenticateSL1(std::shared_ptr<AES128Key> key) override
51 {
52 EncapsulateGuard eg(this, true);
54 }
55};
56
57class LLA_READERS_PCSC_API MifarePlusSpringcardSL1Commands
59// public MifareSpringCardCommands
60{
61 public:
62 bool AESAuthenticate(std::shared_ptr<AES128Key> ptr, uint16_t keyslot) override;
63
64 bool AESAuthenticateSL1(std::shared_ptr<AES128Key> ptr) override;
65
66 bool switchLevel3(std::shared_ptr<AES128Key> key) override;
67
68 protected:
69 void authenticate(unsigned char blockno, unsigned char keyno,
70 MifareKeyType keytype) override;
71
73};
74}
The base commands class for all card commands.
Definition: commands.hpp:21
Definition: mifareplus_sprincard_sl1.hpp:26
bool level_1_
Definition: mifareplus_sprincard_sl1.hpp:32
Definition: mifareplus_sprincard_sl1.hpp:19
Commands * cmd_
Definition: mifareplus_sprincard_sl1.hpp:40
std::shared_ptr< PCSCReaderCardAdapter > rca_
Definition: mifareplus_sprincard_sl1.hpp:38
std::shared_ptr< Adapter > adapter_
Definition: mifareplus_sprincard_sl1.hpp:42
virtual bool AESAuthenticateSL1(std::shared_ptr< AES128Key > key)
Definition: mifareplussl1commands.cpp:41
Definition: mifareplussl1commands.hpp:98
Definition: mifareplus_sprincard_sl1.hpp:47
bool AESAuthenticateSL1(std::shared_ptr< AES128Key > key) override
Definition: mifareplus_sprincard_sl1.hpp:50
Definition: mifareplus_sprincard_sl1.hpp:60
MifareSpringCardCommands mscc_
Definition: mifareplus_sprincard_sl1.hpp:72
The Mifare commands class for SpringCard reader.
Definition: mifarespringcardcommands.hpp:25
A reader/card adapter base class. It provide an abstraction layer between the card and the reader to ...
Definition: readercardadapter.hpp:20
std::vector< uint8_t > ByteVector
Definition: lla_fwd.hpp:80
Mifare SpringCard card.
Definition: asn1.hpp:9
MifareKeyType
Mifare Key Type.
Definition: mifareaccessinfo.hpp:18