Cryptnox Docs

Get Manufacturer Certificate

This command reads the Cryptnox card X509 certificate. This command should be used after each SELECT and before the OPEN SECURE CHANNEL command in order to :

  • Read Card SN, eventually to get the right pairing key associated – Read the card public key, to further check the ECDH card public key authenticity – Check if the card is genuine against Cryptnox public key
def get_manufacturer_certificate(): card.get_manufacturer_certificate() For example, get_manufacturer_certificate()

Application Protocol Data Unit (APDU) Components

The following table outlines the components of the Application Protocol Data Unit (APDU).

Field

Description

Value

CLA

This field specifies the class of the instruction.

0x80

INS

This field specifies the particular command or operation that the smart card or secure element should execute.

0xF7

P1

First parameter of the instruction that specifies the details about the operation being requested.

0x00

P2

First parameter of the instruction that specifies additional details about the operation being requested.

page (starts at 0)

Data

Key data

None

The answer is limited to 255 bytes :

Condition

Data Value

P2 = 0

The first 253 bytes of the Cryptnox certificate, prepended with 2 bytes

of its length

P2 > 0

The remaining parts of the Cryptnox certificate, paginated by 255 bytes.

Response

The Cryptnox certificate, prepended with 2 bytes big endian of its length, cut in 255B pages.