|
SE050 Driver
API reference
|
Classes | |
| struct | VersionInfo |
Typedefs | |
| using | ObjectId = std::array< std::uint8_t, 4 > |
Enumerations | |
| enum class | MemoryType : std::uint8_t { Persistent = 0x01 , TransientReset = 0x02 , TransientDeselect = 0x03 } |
| enum class | EcCurve : std::uint8_t { NistP192 = 0x01 , NistP224 = 0x02 , NistP256 = 0x03 , NistP384 = 0x04 , NistP521 = 0x05 } |
| enum class | EcdsaAlgo : std::uint8_t { Sha1 = 0x11 , Sha224 = 0x25 , Sha256 = 0x21 , Sha384 = 0x22 , Sha512 = 0x26 } |
Functions | |
| Error | BuildGetVersion (std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildGetRandom (std::uint16_t random_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildGetFreeMemory (MemoryType memory_type, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildDeleteSecureObject (const ObjectId &object_id, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildCheckObjectExists (const ObjectId &object_id, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildGenerateEcKeyPair (const ObjectId &object_id, EcCurve curve, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildWriteBinary (const ObjectId &object_id, const std::uint8_t *data, std::size_t data_len, bool has_offset, std::uint16_t offset, bool has_file_length, std::uint16_t file_length, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildWriteAesKey (const ObjectId &object_id, const std::uint8_t *key, std::size_t key_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildCipherOneShot (const ObjectId &key_id, bool decrypt, const std::uint8_t *data, std::size_t data_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildReadObject (const ObjectId &object_id, bool has_offset, std::uint16_t offset, bool has_length, std::uint16_t length, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildEcdsaSign (const ObjectId &key_id, EcdsaAlgo algo, const std::uint8_t *digest, std::size_t digest_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | BuildEcdsaVerify (const ObjectId &key_id, EcdsaAlgo algo, const std::uint8_t *digest, std::size_t digest_len, const std::uint8_t *signature, std::size_t signature_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | ParseResponseTag1 (const std::uint8_t *rapdu, std::size_t rapdu_len, const std::uint8_t **value_out, std::size_t *value_len_out, apdu::StatusWords *sw_out) noexcept |
| Error | ParseVersionInfo (const std::uint8_t *rapdu, std::size_t rapdu_len, VersionInfo *out) noexcept |
| Error | ParseFreeMemory (const std::uint8_t *rapdu, std::size_t rapdu_len, std::uint16_t *free_bytes) noexcept |
| Error | ParseDataTag1 (const std::uint8_t *rapdu, std::size_t rapdu_len, std::uint8_t *out, std::size_t out_cap, std::size_t *out_len) noexcept |
| Error | ParseVerifyResult (const std::uint8_t *rapdu, std::size_t rapdu_len, bool *verified) noexcept |
| Error | ParseObjectExistsResult (const std::uint8_t *rapdu, std::size_t rapdu_len, bool *exists) noexcept |
Variables | |
| constexpr std::uint8_t | kClaNoSm = 0x80U |
| constexpr std::uint8_t | kInsWrite = 0x01U |
| constexpr std::uint8_t | kInsRead = 0x02U |
| constexpr std::uint8_t | kInsCrypto = 0x03U |
| constexpr std::uint8_t | kInsMgmt = 0x04U |
| constexpr std::uint8_t | kP1Default = 0x00U |
| constexpr std::uint8_t | kP1Aes = 0x03U |
| constexpr std::uint8_t | kP1Binary = 0x06U |
| constexpr std::uint8_t | kP1Signature = 0x0CU |
| constexpr std::uint8_t | kP1Cipher = 0x0EU |
| constexpr std::uint8_t | kP1Ec = 0x01U |
| constexpr std::uint8_t | kP1KeyPair = 0x60U |
| constexpr std::uint8_t | kP2Default = 0x00U |
| constexpr std::uint8_t | kP2Version = 0x20U |
| constexpr std::uint8_t | kP2Memory = 0x22U |
| constexpr std::uint8_t | kP2DeleteObject = 0x28U |
| constexpr std::uint8_t | kP2Random = 0x49U |
| constexpr std::uint8_t | kP2Exist = 0x27U |
| constexpr std::uint8_t | kP2Sign = 0x09U |
| constexpr std::uint8_t | kP2Verify = 0x0AU |
| constexpr std::uint8_t | kP2EncryptOneshot = 0x37U |
| constexpr std::uint8_t | kP2DecryptOneshot = 0x38U |
| constexpr std::uint8_t | kCipherAesEcbNopad = 0x0EU |
| constexpr std::uint8_t | kTag1 = 0x41U |
| constexpr std::uint8_t | kTag2 = 0x42U |
| constexpr std::uint8_t | kTag3 = 0x43U |
| constexpr std::uint8_t | kTag5 = 0x45U |
| constexpr std::uint8_t | kResultSuccess = 0x01U |
| using se050::cmd::ObjectId = typedef std::array<std::uint8_t, 4> |
|
strong |
|
strong |
|
strong |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |