Skip to content

Getting Started

Welcome to the Conxian Developer Portal. This guide provides a walkthrough for developers connecting to the conxian-gateway (ISO 20022 banking integration) or utilizing the conxius-enclave-sdk (hardware enclave drivers and MuSig2 signing).


1. Connecting to the Banking Gateway (gateway.conxian.org)

Section titled “1. Connecting to the Banking Gateway (gateway.conxian.org)”

The ISO 20022 Banking Gateway normalizes financial XML messages (pacs.008, pacs.009, camt.053) into structured OData v4 JSON callback streams.

  • Active container instance of conxian-gateway from platform.conxian.org.
  • Access to client TLS certificates or enclave attestation key pairs.
Terminal window
curl -X GET "https://gateway.conxian.org/odata/v4/Transactions?\$filter=Status eq 'Settled'" \
-H "Accept: application/json" \
-H "Authorization: Bearer <YOUR_ATTESTATION_TOKEN>"
Terminal window
curl -X POST "https://gateway.conxian.org/api/v1/normalize/pacs008" \
-H "Content-Type: application/xml" \
--data-binary @pacs008_sample.xml

2. Utilizing the Hardware Enclave SDK (sdk.conxian.org)

Section titled “2. Utilizing the Hardware Enclave SDK (sdk.conxian.org)”

The Hardware Enclave SDK (conxius-enclave-sdk) exposes C and Rust bindings to manage cryptographic signing inside Trusted Execution Environments (TEEs) such as AWS Nitro Enclaves, Intel SGX, and AMD SEV.

Add conxius-enclave-sdk to your Cargo.toml:

[dependencies]
conxius-enclave-sdk = { git = "https://github.com/Conxian/conxius-enclave-sdk", branch = "main" }
use conxius_enclave_sdk::musig2::{EnclaveSigner, KeyAggContext};
fn main() -> Result<(), Box<dyn std::error::Error>> {
// Initialize enclave security context
let signer = EnclaveSigner::initialize_nitro_context()?;
// Aggregation of public keys for Schnorr multi-sig (BIP-340)
let pubkeys = vec![/* list of public keys */];
let key_agg = KeyAggContext::new(&pubkeys)?;
println!("Enclave initialized with aggregated key: {:?}", key_agg.aggregated_pubkey());
Ok(())
}