Expand description
Engine v0.2.0 - LOCKED DO NOT MODIFY without version bump Last frozen: 2025-11-06
Northroot Proof Engine v0.2 — Core proof computation and validation library
This library provides the foundational cryptographic and validation primitives for the modular proof architecture (PoSH, PoX).
§Architecture
- PoSH (Proof of Shape): Method transformation contracts
- PoX (Proof of Execution): Run evidence and commitments
§Modules
types: v0.2 proof type definitionscanonical: Deterministic JSON canonicalizationhash: SHA-256 hash computationsignature: ed25519 signature handlingvalidation: Input validation functionsdata_shape: Data shape hashing
§Usage Example
use northroot_proof_engine::{compute_sha256, validate_trace_id, SpanCommitment, SpanStatus};
// Compute SHA-256 hash
let hash = compute_sha256("Hello, world!");
assert!(hash.starts_with("sha256:"));
// Validate trace ID
assert!(validate_trace_id("tr_01H1234567890").is_ok());
assert!(validate_trace_id("invalid").is_err());§See Also
- README - Overview and quick start guide
- CLI Guide - Command-line tool usage
- Benchmarks - Performance characteristics
Re-exports§
pub use types::ArtifactRef;pub use types::Did;pub use types::IsoTime;pub use types::MethodRef;pub use types::MethodShapeManifest;pub use types::RuntimePins;pub use types::Sha256;pub use types::Signature;pub use types::SignedSpan;pub use types::SpanCommitment;pub use types::SpanMeta;pub use types::SpanShape;pub use types::SpanStatus;pub use types::Trace;pub use types::TraceRoots;pub use types::Uri;pub use canonical::canonicalize_method_shape;pub use canonical::canonicalize_span_commitment;pub use canonical::canonicalize_span_shape;pub use canonical::canonicalize_trace;pub use canonical::canonicalize_trace_roots;pub use canonical::normalize_timestamp;pub use canonical::CanonicalError;pub use hash::compute_identity_root;pub use hash::compute_method_shape_hash;pub use hash::compute_method_shape_root;pub use hash::compute_sha256;pub use hash::compute_span_commitment_hash;pub use hash::compute_span_shape_hash;pub use hash::compute_trace_hash;pub use hash::compute_trace_roots_hash;pub use hash::compute_trace_seq_root;pub use hash::compute_trace_set_root;pub use hash::HashError;pub use signature::sign_message;pub use signature::sign_span_commitment;pub use signature::validate_signature_format;pub use signature::verify_signature;pub use signature::verify_span_commitment_signature;pub use signature::SignatureError;pub use validation::validate_iso_time;pub use validation::validate_method_ref;pub use validation::validate_sha256_format;pub use validation::validate_span_commitment;pub use validation::validate_span_id;pub use validation::validate_trace_id;pub use validation::ValidationError;pub use data_shape::compute_data_shape_hash;pub use data_shape::validate_data_shape_hash;pub use data_shape::DataShapeError;pub use ids::validate_span_id as validate_otel_span_id;pub use ids::validate_trace_id as validate_otel_trace_id;pub use ids::OtelIdError;
Modules§
- canonical
- Canonicalization for v0.2 proof types
- data_
shape - Data shape hashing for v0.2
- hash
- Hash computation for v0.2 proof types
- ids
- OTEL ID validation utilities
- signature
- Signature handling for v0.2 proof types
- types
- v0.2 Proof type definitions
- validation
- Validation functions for v0.2 proof types