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_CERT * | trust_anchor
| Trust anchor for CV certificate validation.
CVC_CERT * | current_cert
| Most recent verified CV certificate in a certificate chain.
CVC_CERT * | new_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:

- eac/eac.h