modules/woz_aliro_stack/src/protocol/nfc_auth.h
openaliro/openaliro
Module

nfc_auth.h

Aliro 1.0 expedited authentication APDU codecs.

modules/woz_aliro_stack/src/protocol/nfc_auth.h3 documented symbols

Overview

Aliro 1.0 expedited authentication APDU codecs.

used by nfc_auth.c session.cpp

API

Cstruct woz_aliro_auth0_command

modules/woz_aliro_stack/src/protocol/nfc_auth.h:32

Parsed NFC AUTH0 command: authentication policy and protocol version from the reader, reader ephemeral public key, transaction ID, reader ID, and optional vendor extension.

Cstruct woz_aliro_auth0_response

modules/woz_aliro_stack/src/protocol/nfc_auth.h:47

Parsed NFC AUTH0 response: credential ephemeral public key (65 bytes), cryptogram (variable length), and optional vendor extension.

Cstruct woz_aliro_auth1_response

modules/woz_aliro_stack/src/protocol/nfc_auth.h:60

Parsed NFC AUTH1 response: credential public key (65 bytes), signature (variable length), signaling bitmap, and two signed timestamps (credential and revocation, each 20 bytes if present).

##define WOZ_ALIRO_PUBLIC_KEY_SIZE 65

modules/woz_aliro_stack/src/protocol/nfc_auth.h:11

##define WOZ_ALIRO_SIGNATURE_SIZE 64

modules/woz_aliro_stack/src/protocol/nfc_auth.h:12

##define WOZ_ALIRO_TRANSACTION_ID_SIZE 16

modules/woz_aliro_stack/src/protocol/nfc_auth.h:13

##define WOZ_ALIRO_READER_ID_SIZE 32

modules/woz_aliro_stack/src/protocol/nfc_auth.h:14

##define WOZ_ALIRO_AUTH0_STANDARD_COMMAND_SIZE 135

modules/woz_aliro_stack/src/protocol/nfc_auth.h:15

##define WOZ_ALIRO_AUTH1_COMMAND_SIZE 75

modules/woz_aliro_stack/src/protocol/nfc_auth.h:16

##define WOZ_ALIRO_AUTH_DATA_SIZE 126

modules/woz_aliro_stack/src/protocol/nfc_auth.h:17

Cenum woz_aliro_auth_result

modules/woz_aliro_stack/src/protocol/nfc_auth.h:19

Fint woz_aliro_build_auth0_command(const struct woz_aliro_auth0_command *params, uint8_t *output, size_t output_capacity, size_t *output_length)

modules/woz_aliro_stack/src/protocol/nfc_auth.h:68

Fint woz_aliro_parse_auth0_response(const uint8_t *response, size_t response_length, int fast_requested, struct woz_aliro_auth0_response *result)

modules/woz_aliro_stack/src/protocol/nfc_auth.h:71

Fint woz_aliro_build_authentication_data(const uint8_t reader_identifier[WOZ_ALIRO_READER_ID_SIZE], const uint8_t credential_ephemeral_public_key[WOZ_ALIRO_PUBLIC_KEY_SIZE], const uint8_t reader_ephemeral_public_key[WOZ_ALIRO_PUBLIC_KEY_SIZE], const uint8_t transaction_identifier[WOZ_ALIRO_TRANSACTION_ID_SIZE], uint32_t usage, uint8_t output[WOZ_ALIRO_AUTH_DATA_SIZE])

modules/woz_aliro_stack/src/protocol/nfc_auth.h:74

Fint woz_aliro_build_auth1_command(uint8_t command_parameters, const uint8_t signature[WOZ_ALIRO_SIGNATURE_SIZE], uint8_t *output, size_t output_capacity, size_t *output_length)

modules/woz_aliro_stack/src/protocol/nfc_auth.h:81

Fint woz_aliro_build_auth1_command_ex(uint8_t command_parameters, const uint8_t signature[WOZ_ALIRO_SIGNATURE_SIZE], const uint8_t *reader_certificate, size_t reader_certificate_length, uint8_t *output, size_t output_capacity, size_t *output_length)

modules/woz_aliro_stack/src/protocol/nfc_auth.h:85

Fint woz_aliro_parse_auth1_plaintext(const uint8_t *plaintext, size_t plaintext_length, int public_key_requested, struct woz_aliro_auth1_response *result)

modules/woz_aliro_stack/src/protocol/nfc_auth.h:91