SE050 Driver
API reference
Loading...
Searching...
No Matches
Functions | Variables
se050::applet Namespace Reference

Functions

Error BuildSelectDefaultIot (std::uint8_t *out, std::size_t cap, std::size_t *out_len) noexcept
 Build SELECT (CLA=0x00, INS=0xA4, P1=0x04, P2=0x00) for kDefaultIoTAppletAid.
 
Error BuildSelectCardManager (std::uint8_t *out, std::size_t cap, std::size_t *out_len) noexcept
 Build SELECT for the Card Manager / ISD (kCardManagerAid).
 
Error BuildSelectApplication (const std::uint8_t *aid, std::uint8_t aid_len, std::uint8_t *out, std::size_t cap, std::size_t *out_len) noexcept
 Build SELECT for an arbitrary AID / DF name.
 

Variables

constexpr std::uint8_t kDefaultIoTAppletAid []
 NXP Plug & Trust SE05x IoT applet AID (16 bytes).
 
constexpr std::uint8_t kDefaultIoTAppletAidLen
 sizeof(kDefaultIoTAppletAid) as a std::uint8_t (fits short Lc).
 
constexpr std::uint8_t kCardManagerAid []
 GlobalPlatform Card Manager / ISD AID (8 bytes).
 
constexpr std::uint8_t kCardManagerAidLen
 

Function Documentation

◆ BuildSelectApplication()

Error se050::applet::BuildSelectApplication ( const std::uint8_t *  aid,
std::uint8_t  aid_len,
std::uint8_t *  out,
std::size_t  cap,
std::size_t *  out_len 
)
inlinenoexcept

Build SELECT for an arbitrary AID / DF name.

Parameters
aidApplication identifier bytes.
aid_lenLength of aid (must fit in short Lc, ≤ 255).

◆ BuildSelectCardManager()

Error se050::applet::BuildSelectCardManager ( std::uint8_t *  out,
std::size_t  cap,
std::size_t *  out_len 
)
inlinenoexcept

Build SELECT for the Card Manager / ISD (kCardManagerAid).

◆ BuildSelectDefaultIot()

Error se050::applet::BuildSelectDefaultIot ( std::uint8_t *  out,
std::size_t  cap,
std::size_t *  out_len 
)
inlinenoexcept

Build SELECT (CLA=0x00, INS=0xA4, P1=0x04, P2=0x00) for kDefaultIoTAppletAid.

Parameters
outSerialized C-APDU.
capCapacity of out (≥ 5 + kDefaultIoTAppletAidLen + 1 when Le present).
out_lenWritten length.

Variable Documentation

◆ kCardManagerAid

constexpr std::uint8_t se050::applet::kCardManagerAid[]
inlineconstexpr
Initial value:
= {
0xA0U, 0x00U, 0x00U, 0x01U, 0x51U, 0x00U, 0x00U, 0x00U}

GlobalPlatform Card Manager / ISD AID (8 bytes).

Used for platform SCP03 PUT KEY of ISD key version 0x0B. Not an IoT-applet object id.

◆ kCardManagerAidLen

constexpr std::uint8_t se050::applet::kCardManagerAidLen
inlineconstexpr
Initial value:
=
static_cast<std::uint8_t>(sizeof(kCardManagerAid) / sizeof(kCardManagerAid[0]))
constexpr std::uint8_t kCardManagerAid[]
GlobalPlatform Card Manager / ISD AID (8 bytes).
Definition se050_applet.hpp:40

◆ kDefaultIoTAppletAid

constexpr std::uint8_t se050::applet::kDefaultIoTAppletAid[]
inlineconstexpr
Initial value:
= {
0xA0U, 0x00U, 0x00U, 0x03U, 0x96U, 0x54U, 0x53U, 0x00U,
0x00U, 0x00U, 0x01U, 0x03U, 0x00U, 0x00U, 0x00U, 0x00U}

NXP Plug & Trust SE05x IoT applet AID (16 bytes).

Matches SE05X_APPLET_AID / SE050C2 silicon. The older 13-byte A0000003960403030300000000 variant is not this part.

◆ kDefaultIoTAppletAidLen

constexpr std::uint8_t se050::applet::kDefaultIoTAppletAidLen
inlineconstexpr
Initial value:
=
static_cast<std::uint8_t>(sizeof(kDefaultIoTAppletAid) / sizeof(kDefaultIoTAppletAid[0]))
constexpr std::uint8_t kDefaultIoTAppletAid[]
NXP Plug & Trust SE05x IoT applet AID (16 bytes).
Definition se050_applet.hpp:27

sizeof(kDefaultIoTAppletAid) as a std::uint8_t (fits short Lc).