C++ Reference

Overview

The C++ interface provides the most comprehensive API for Keychain Core v3.0, offering complete access to all cryptographic identity management, consensus protocols, and verifiable data operations.

Core Classes

gateway

Main cryptographic operations interface

persona

Local cryptographic identity with private keys

contact

External cryptographic identity (public keys only)

facade

Base class for persona and contact

settings

Configuration management

monitor

PKI blockchain monitoring (inherited by gateway)

Data Classes

verifiable_data

Digitally signed data with cryptographic verification

credential

W3C verifiable credentials implementation

transaction

Consensus transactions for application-level protocols

encrypted_data

Hybrid encrypted data with envelope encryption

attestation

Digital signature with metadata and approval status

serialized_data

Type-safe serialized data with metadata

tag_set

Key-value metadata container

key_lock

Encrypted symmetric key for data access control

Enumeration Types

security_level

Cryptographic strength levels (lightweight to ultra-secure)

consensus_algorithm

Consensus protocols (one/two/three-phase commit)

consensus_stage

Stages in consensus protocols (propose/precommit/commit)

data_type

Type metadata for serialized data

serialization_format

Data serialization formats (protobuf/json)

char_encoding

Character encoding standards

encryption_algorithm_class

General encryption algorithm families

encryption_scheme

Specific encryption algorithms with parameters

signature_algorithm_class

General signature algorithm families

signature_scheme

Specific signature algorithms with parameters

cipher_class

Symmetric cipher families

cipher

Specific symmetric ciphers with parameters

keychain_type

Types of key chains (encryption/signature)

did_status

DID lifecycle status on PKI

ledger_result

Results from ledger consensus operations

key_id_type

How public keys are identified

verification_result

Results from signature verification

Identity and DID Classes

did

Decentralized identifier implementation

persona_did

DID for local personas

keychain_did

DID for specific keychains

keychain

Sequence of public keys over device lifetime

keychain_element

Individual public key in a keychain

Utility Classes

version

Library version information

pair_helper

Development helper for trusted directory operations