Feature Maturity Table

September 21, 2026 ยท View on GitHub

Last updated: 2026-03-15 | Version: 4.6.0

Each feature is rated by: implementation status, threat model coverage, test vector sources, fuzz coverage, GPU support, secret-safety classification, and release tier.

Tier Definitions

TierMeaning
ProductionCAAS-hardened, fuzzed, differential-tested, CT-verified (where applicable), standard test vectors pass
HardenedProduction + adversarial protocol tests + Wycheproof + fault injection
ExperimentalImplemented and tested but limited independent vectors or fewer CAAS evidence passes

Status Legend

SymbolMeaning
YPresent and verified
CTUses constant-time layer (secret-safe)
FASTUses variable-time layer (public data only)
PPartial (some aspects covered)
-Not applicable or not present

Core Cryptographic Primitives

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
Field arithmetic (5x52 / 4x64)YCarry propagation, overflowFiat-Crypto, KATYY (all 3)N/A (internal)Production
Field arithmetic (10x26)YCarry propagationKATY-N/A (internal)Production
Scalar arithmeticYOverflow, reductionRFC 6979, KATYY (all 3)N/A (internal)Production
Point arithmeticYIdentity, doubling edgeExhaustive (small curve)YY (all 3)N/A (internal)Production
GLV endomorphismYLambda/beta consistencyDifferential (vs non-GLV)YY (all 3)FASTProduction
Generator precompute (w8)YTable correctnessselftest on init-Y (all 3)N/AProduction
MSM / PippengerYBucket overflow, edge scalarDifferentialYY (all 3)FASTProduction

Signature Schemes

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
ECDSA sign (RFC 6979)YNonce bias, k=0/n-1RFC 6979, WycheproofYY (all 3)CTHardened
ECDSA verifyYMalleable sigs, r/s boundsWycheproof (500+ vectors)YY (CUDA)FASTHardened
ECDSA DER encode/decodeYTruncation, padding, lengthWycheproof, fuzz_parsersY-FASTHardened
ECDSA recoveryYInvalid recidWycheproofYY (CUDA)FASTHardened
ECDSA batch verifyYBatch vs individual consistencyRandomizedYY (CUDA)FASTProduction
Schnorr sign (BIP-340)YNonce bias, aux randomnessBIP-340 official (15 vectors)YY (all 3)CTHardened
Schnorr verify (BIP-340)YInvalid R, e=0BIP-340 officialYY (CUDA)FASTHardened
Schnorr batch verifyYBatch vs individual consistencyRandomizedYY (CUDA)FASTProduction

Threshold / Multi-Party

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
MuSig2 (BIP-327) key aggYRogue-key attackBIP-327 officialY-FASTExperimental
MuSig2 nonce gen/aggYNonce reuse, replayAdversarial protocolY-CTExperimental
MuSig2 partial sign/verify/aggYTranscript mutation, signer ordering, malicious aggregator, abort/restartAdversarial protocol (A.1-A.8)Y-CTExperimental
FROST keygenYBelow-threshold attackAdversarial protocolY-CTExperimental
FROST sign/verify/aggregateYMalformed commitment, malicious coordinator, duplicate nonce, identity mismatchAdversarial protocol (B.1-B.6)Y-CTExperimental
ECDSA adaptor signaturesYInvalid adaptor point, transcript mismatch, extraction misuseAdversarial protocol (D.1-D.4)Y-CTExperimental
Schnorr adaptor signaturesYRound-trip, invalid pointAdversarial protocol (E.1-E.2)Y-CTExperimental

Key Derivation & Wallet

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
BIP-32 HD derivationYHardened vs normal, invalid childBIP-32 official, adversarialY-CTHardened
BIP-39 mnemonicYInvalid checksum, bad entropyBIP-39 officialY-CTProduction
ECDH (x-only + raw)YInfinity point, twistWycheproof ECDHYY (all 3)CTHardened
WIF encode/decodeYInvalid prefix, checksumFFI fuzzY-CTProduction
Bitcoin addresses (P2PKH, P2WPKH, P2TR)YBad pubkeyFFI fuzzY-FASTProduction
Multi-coin walletYCoin-specific derivationFFI fuzzY-CTProduction
BIP-352 Silent PaymentsYMalicious scan key, wrong outputAdversarial protocol (C.1)Y-CTHardened

Advanced Crypto

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
Pedersen commitmentsYBlinding factor overflowRandomizedYY (all 3)CTExperimental
ZK knowledge proofsYMalformed proofRandomizedYY (all 3)CTExperimental
ZK DLEQ proofsYWrong generators, malformedAdversarial protocol (F.1-F.2)YY (all 3)CTExperimental
ZK range proofs (Bulletproofs)YOut-of-range, verify sumRandomizedYY (all 3)CTExperimental
Taproot (BIP-341)YTweak overflowRandomizedY-CTProduction
ECIES encrypt/decryptYTruncated CT, wrong key, empty msg, 1MB payload, overlapping buffers85 regression vectorsY-CTHardened

Hashing

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
SHA-256Y-NIST-Y (all 3)N/AProduction
SHA-512Y-NIST--N/AProduction
Hash160 (RIPEMD160(SHA256))Y-Bitcoin-compatible-Y (all 3)N/AProduction
Keccak-256Y-Ethereum-compatible-Y (all 3)N/AProduction
Tagged hash (BIP-340)YMidstate precompBIP-340-Y (all 3)N/AProduction

Ethereum (conditional: SECP256K1_BUILD_ETHEREUM)

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
ETH address (Keccak)YEIP-55 checksumEthereum test suites-Y (all 3)FASTProduction
ETH personal sign/verifyYEIP-191 prefixRandomized--CTProduction
ETH ecrecoverYInvalid v/r/sRandomized--FASTProduction

Constant-Time Infrastructure

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
CT field (mul, sqr, inv)YTiming sidechanneldudect (>4.5 t-test threshold)-Y (all 3)CTHardened
CT scalar (mul, inv, cneg)YTiming sidechanneldudect + Valgrind taint-Y (all 3)CTHardened
CT point (add, dbl, gen_mul)YTiming sidechanneldudect + differential-Y (all 3)CTHardened
CT ECDSA signYTiming sidechanneldudect + Cachegrind-Y (CUDA)CTHardened
CT Schnorr signYTiming sidechanneldudect + Cachegrind-Y (CUDA)CTHardened
Lim-Lee comb (CT gen mul)YTiming sidechannelDifferential vs fast--CTHardened
value_barrier()YCompiler optimizationASM inspection--CTProduction

C ABI / FFI

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
97 ufsecp_* functionsYNull args, bad sizes, overlapping buffers286 FFI round-trip callsY-Auto-dispatchHardened
ABI gate (version + struct size)YABI break detectionabi_gate test--N/AProduction
Error codes (10 variants)YAll paths return correct codeFFI round-trip--N/AProduction

GPU C ABI Layer

FeatureStatusThreat ModelTest VectorsFuzzedGPUSecret-SafeTier
23 ufsecp_gpu_* functionsYNULL ctx/args, invalid backend, bad device, unsupported opgpu_abi_gate + gpu_backend_matrix-CUDA/OpenCL/MetalECDH + BIP-324 decrypt SECRET-BEARINGHardened
GPU error codes (100-106)YUnknown code mappingerror_str coverage-N/AN/AProduction
Backend discovery (3 backends)YNo device presentEnumerate + probe-CUDA/OpenCL/MetalN/AProduction
generator_mul_batchYNULL buffers, count=01*G == G equivalence-OpenCL+CUDAN/A (public)Hardened
Batch verify (ECDSA/Schnorr)Y---CUDA onlyN/A (public)Stable
ECDH/Hash160/MSM batchY---PartialECDH secret-bearingStable
FROST partial verify GPU ABIYMalformed commitments, unsupported backendProtocol vectors + backend probing-Y (all 3)N/A (public)Experimental
ecrecover_batch GPU ABIYInvalid recid, malformed compact sigBackend probing + GPU/CPU equivalence-CUDA/OpenCL/MetalN/A (public)Stable
ECDSA SNARK witness GPU ABIYNULL ctx/args, bad inputsLayout check + CPU reference + GPU-CPU equivalence-CUDA/OpenCLN/A (public)Stable
BIP-352 Silent Payment GPU scanYNULL ctx/args, zero count, SECRET-BEARING keyMacro + null-arg + determinism + distinct-tweaks tests-CUDA/OpenCLscan_privkey SECRET-BEARINGStable

Cross-Reference