// XERIS · TRIPLE CONSENSUS
fn seal(block: Block) -> Hash {
pow.mix(pos.stake(poh.tick()))
}
Ed25519 + ML-DSA-65 (Dilithium3)
Scrypt v1.2 N=4096 r=4 p=1 2 MB
hybrid sig mandatory from slot 1
ZkProofSubmit · instruction 46
PoH orders · Scrypt PoW produces
slot 4 s · final after 64 blocks
PqKeyRegistry · ZkVerifierRegistry
// XERIS · ZERO-KNOWLEDGE
let proof = zk.prove(stmt, witness);
assert!(zk.verify(&proof));
Groth16 verify on BN254 in runtime
stake-weighted leader election
Scrypt v1.2 N=4096 r=4 p=1 2 MB
ZkProofSubmit · instruction 46
slot 4 s · final after 64 blocks
PqKeyRegistry · ZkVerifierRegistry
PoH orders · Scrypt PoW produces
hybrid sig mandatory from slot 1
// XERIS · NATIVE DEFI
let (out, fee) = amm.swap(pool, in);
assert!(slippage <= max_slippage);
Groth16 verify on BN254 in runtime
stake-weighted leader election
Ed25519 + ML-DSA-65 (Dilithium3)
PoH orders · Scrypt PoW produces
hybrid sig mandatory from slot 1
PqKeyRegistry · ZkVerifierRegistry
ZkProofSubmit · instruction 46
slot 4 s · final after 64 blocks
// XERIS · RWA / ALEXANDRIA
tokenize(asset, ricardian_contract)
settle(block = slot_4s)
PoH orders · Scrypt PoW produces
ZkProofSubmit · instruction 46
Scrypt v1.2 N=4096 r=4 p=1 2 MB
Ed25519 + ML-DSA-65 (Dilithium3)
slot 4 s · final after 64 blocks
Groth16 verify on BN254 in runtime
hybrid sig mandatory from slot 1
PqKeyRegistry · ZkVerifierRegistry
// XERIS · HARDWARE VAULT
key = hsm.derive("m/44/0/0")
sign(tx, key) // never exported
Groth16 verify on BN254 in runtime
Ed25519 + ML-DSA-65 (Dilithium3)
hybrid sig mandatory from slot 1
slot 4 s · final after 64 blocks
PqKeyRegistry · ZkVerifierRegistry
PoH orders · Scrypt PoW produces
ZkProofSubmit · instruction 46
stake-weighted leader election
// XERIS · CONDITIONAL ORDERS
order.when(price_above, pool, p)
evaluate() // in-block, no keeper
ZkProofSubmit · instruction 46
PqKeyRegistry · ZkVerifierRegistry
hybrid sig mandatory from slot 1
PoH orders · Scrypt PoW produces
Groth16 verify on BN254 in runtime
Ed25519 + ML-DSA-65 (Dilithium3)
stake-weighted leader election
Scrypt v1.2 N=4096 r=4 p=1 2 MB
// XERIS · TRIPLE CONSENSUS
fn seal(block: Block) -> Hash {
pow.mix(pos.stake(poh.tick()))
}
Scrypt v1.2 N=4096 r=4 p=1 2 MB
ZkProofSubmit · instruction 46
Groth16 verify on BN254 in runtime
hybrid sig mandatory from slot 1
PqKeyRegistry · ZkVerifierRegistry
Ed25519 + ML-DSA-65 (Dilithium3)
slot 4 s · final after 64 blocks
// XERIS · ZERO-KNOWLEDGE
let proof = zk.prove(stmt, witness);
assert!(zk.verify(&proof));
stake-weighted leader election
slot 4 s · final after 64 blocks
hybrid sig mandatory from slot 1
Ed25519 + ML-DSA-65 (Dilithium3)
Scrypt v1.2 N=4096 r=4 p=1 2 MB
PqKeyRegistry · ZkVerifierRegistry
PoH orders · Scrypt PoW produces
ZkProofSubmit · instruction 46
// XERIS · NATIVE DEFI
let (out, fee) = amm.swap(pool, in);
assert!(slippage <= max_slippage);
PoH orders · Scrypt PoW produces
Scrypt v1.2 N=4096 r=4 p=1 2 MB
stake-weighted leader election
ZkProofSubmit · instruction 46
slot 4 s · final after 64 blocks
Groth16 verify on BN254 in runtime
hybrid sig mandatory from slot 1
PqKeyRegistry · ZkVerifierRegistry
// XERIS · RWA / ALEXANDRIA
tokenize(asset, ricardian_contract)
settle(block = slot_4s)
slot 4 s · final after 64 blocks
Groth16 verify on BN254 in runtime
Ed25519 + ML-DSA-65 (Dilithium3)
PoH orders · Scrypt PoW produces
Scrypt v1.2 N=4096 r=4 p=1 2 MB
stake-weighted leader election
PqKeyRegistry · ZkVerifierRegistry
hybrid sig mandatory from slot 1
// XERIS · HARDWARE VAULT
key = hsm.derive("m/44/0/0")
sign(tx, key) // never exported
ZkProofSubmit · instruction 46
Groth16 verify on BN254 in runtime
slot 4 s · final after 64 blocks
Scrypt v1.2 N=4096 r=4 p=1 2 MB
hybrid sig mandatory from slot 1
Ed25519 + ML-DSA-65 (Dilithium3)
PqKeyRegistry · ZkVerifierRegistry
PoH orders · Scrypt PoW produces
// XERIS · CONDITIONAL ORDERS
order.when(price_above, pool, p)
evaluate() // in-block, no keeper
stake-weighted leader election
hybrid sig mandatory from slot 1
ZkProofSubmit · instruction 46
Scrypt v1.2 N=4096 r=4 p=1 2 MB
Groth16 verify on BN254 in runtime
slot 4 s · final after 64 blocks
PoH orders · Scrypt PoW produces
PqKeyRegistry · ZkVerifierRegistry
// XERIS · TRIPLE CONSENSUS
fn seal(block: Block) -> Hash {
pow.mix(pos.stake(poh.tick()))
}
slot 4 s · final after 64 blocks
PoH orders · Scrypt PoW produces
Groth16 verify on BN254 in runtime
PqKeyRegistry · ZkVerifierRegistry
Scrypt v1.2 N=4096 r=4 p=1 2 MB
ZkProofSubmit · instruction 46
Ed25519 + ML-DSA-65 (Dilithium3)
// XERIS · ZERO-KNOWLEDGE
let proof = zk.prove(stmt, witness);
assert!(zk.verify(&proof));
Groth16 verify on BN254 in runtime
PqKeyRegistry · ZkVerifierRegistry
Scrypt v1.2 N=4096 r=4 p=1 2 MB
slot 4 s · final after 64 blocks
stake-weighted leader election
Ed25519 + ML-DSA-65 (Dilithium3)
PoH orders · Scrypt PoW produces
ZkProofSubmit · instruction 46
// XERIS · NATIVE DEFI
let (out, fee) = amm.swap(pool, in);
assert!(slippage <= max_slippage);
hybrid sig mandatory from slot 1
PqKeyRegistry · ZkVerifierRegistry
stake-weighted leader election
Ed25519 + ML-DSA-65 (Dilithium3)
PoH orders · Scrypt PoW produces
Groth16 verify on BN254 in runtime
slot 4 s · final after 64 blocks
ZkProofSubmit · instruction 46