OpenPACE
Data Fields
ta_ctx Struct Reference

Context for the Terminal Authentication protocol. More...

#include <eac.h>

Data Fields

unsigned char version
 (currently unused) Version of the TA protocol, MUST be 1 or 2
 
int protocol
 Identifier of the protocol's OID specifying the exact TA parameters to use.
 
ENGINE * key_engine
 (currently unused) engine for signing and signature verification
 
EVP_PKEY * priv_key
 TA private key used for signing the challenge.
 
EVP_PKEY * pub_key
 TA public key used for signing the challenge.
 
BUF_MEM * pk_pcd
 PCD's public key extracted from it's CV certificate.
 
BUF_MEM * nonce
 PICC's challenge.
 
CVC_CERTtrust_anchor
 Trust anchor for CV certificate validation.
 
CVC_CERTcurrent_cert
 Most recent verified CV certificate in a certificate chain.
 
CVC_CERTnew_trust_anchor
 When a complete CV certificate chain has been verified, this will be the new trust anchor.
 
int flags
 Flags to control some of the behaviour of the CA.
 
CVC_lookup_cvca_cert lookup_cvca_cert
 Lookup the CVCA trust anchor.
 

Detailed Description

Context for the Terminal Authentication protocol.

Definition at line 247 of file eac.h.

Field Documentation

◆ current_cert

CVC_CERT* ta_ctx::current_cert

Most recent verified CV certificate in a certificate chain.

Definition at line 280 of file eac.h.

◆ flags

int ta_ctx::flags

Flags to control some of the behaviour of the CA.

Accepts the following values:

  • TA_FLAG_SKIP_TIMECHECK

Definition at line 288 of file eac.h.

◆ key_engine

ENGINE* ta_ctx::key_engine

(currently unused) engine for signing and signature verification

Definition at line 268 of file eac.h.

◆ lookup_cvca_cert

CVC_lookup_cvca_cert ta_ctx::lookup_cvca_cert

Lookup the CVCA trust anchor.

This function is called when a CV certificate is imported although the terminal authentication was not initialized with a trust anchor.

See also
TA_STEP2_import_certificate()

Definition at line 297 of file eac.h.

◆ new_trust_anchor

CVC_CERT* ta_ctx::new_trust_anchor

When a complete CV certificate chain has been verified, this will be the new trust anchor.

Definition at line 282 of file eac.h.

◆ nonce

BUF_MEM* ta_ctx::nonce

PICC's challenge.

Definition at line 276 of file eac.h.

◆ pk_pcd

BUF_MEM* ta_ctx::pk_pcd

PCD's public key extracted from it's CV certificate.

Definition at line 274 of file eac.h.

◆ priv_key

EVP_PKEY* ta_ctx::priv_key

TA private key used for signing the challenge.

Definition at line 270 of file eac.h.

◆ protocol

int ta_ctx::protocol

Identifier of the protocol's OID specifying the exact TA parameters to use.

Accepts the following values:

  • NID_id_TA_RSA_v1_5_SHA_1
  • NID_id_TA_RSA_v1_5_SHA_256
  • NID_id_TA_RSA_PSS_SHA_1
  • NID_id_TA_RSA_PSS_SHA_256
  • NID_id_TA_RSA_v1_5_SHA_512
  • NID_id_TA_RSA_PSS_SHA_512
  • NID_id_TA_ECDSA_SHA_1
  • NID_id_TA_ECDSA_SHA_224
  • NID_id_TA_ECDSA_SHA_256
  • NID_id_TA_ECDSA_SHA_384
  • NID_id_TA_ECDSA_SHA_512

Definition at line 266 of file eac.h.

◆ pub_key

EVP_PKEY* ta_ctx::pub_key

TA public key used for signing the challenge.

Definition at line 272 of file eac.h.

◆ trust_anchor

CVC_CERT* ta_ctx::trust_anchor

Trust anchor for CV certificate validation.

Definition at line 278 of file eac.h.

◆ version

unsigned char ta_ctx::version

(currently unused) Version of the TA protocol, MUST be 1 or 2

Definition at line 249 of file eac.h.


The documentation for this struct was generated from the following file: