Loading...
Loading...
Compare original and translation side by side
MatterIndexerqb64()qb2()raw()code()MatterIndexerqb64()qb2()raw()code()| Type | Purpose | Trait | Reference |
|---|---|---|---|
| Public verification key | Matter | cesr-primitives.md |
| Private signing key (auto-zeroized) | Matter | cesr-primitives.md |
| Cryptographic digest | Matter | cesr-primitives.md |
| Unindexed signature | Matter | cesr-primitives.md |
| Indexed signature (multisig) | Indexer | cesr-primitives.md |
| Key derivation salt (auto-zeroized) | Matter | cesr-primitives.md |
| Self-Addressing Identifier (SAID) | Matter | cesr-primitives.md |
| KERI identifier prefix | Matter | cesr-primitives.md |
| Sequence number (16-byte) | Matter | cesr-primitives.md |
| Auto-sized unsigned integer | Matter | cesr-primitives.md |
| ISO 8601 timestamp | Matter | cesr-primitives.md |
| Base64 text (Bext trait) | Matter | cesr-primitives.md |
| SAD path resolver (Bext trait) | Matter | cesr-primitives.md |
| KERI event serializer | Sadder | sad-serialization.md |
| ACDC credential serializer | Sadder | sad-serialization.md |
| Group framing construct | — | sad-serialization.md |
| Signing threshold logic | — | threshold-utils.md |
| 类型 | 用途 | Trait | 参考文档 |
|---|---|---|---|
| 公钥验证密钥 | Matter | cesr-primitives.md |
| 私钥签名密钥(自动清零) | Matter | cesr-primitives.md |
| 加密摘要 | Matter | cesr-primitives.md |
| 无索引签名 | Matter | cesr-primitives.md |
| 带索引签名(多签) | Indexer | cesr-primitives.md |
| 密钥派生盐(自动清零) | Matter | cesr-primitives.md |
| 自寻址标识符(SAID) | Matter | cesr-primitives.md |
| KERI标识符前缀 | Matter | cesr-primitives.md |
| 序列号(16字节) | Matter | cesr-primitives.md |
| 自动大小的无符号整数 | Matter | cesr-primitives.md |
| ISO 8601时间戳 | Matter | cesr-primitives.md |
| Base64文本(Bext trait) | Matter | cesr-primitives.md |
| SAD路径解析器(Bext trait) | Matter | cesr-primitives.md |
| KERI事件序列化器 | Sadder | sad-serialization.md |
| ACDC凭证序列化器 | Sadder | sad-serialization.md |
| 组帧结构 | — | sad-serialization.md |
| 签名阈值逻辑 | — | threshold-utils.md |
// Core traits
use cesride::core::matter::Matter;
use cesride::core::indexer::Indexer;
use cesride::core::sadder::Sadder;
use cesride::core::bexter::Bext;
// Primitives
use cesride::core::{Verfer, Diger, Signer, Salter, Cigar, Siger};
use cesride::core::{Saider, Prefixer, Seqner, Number, Dater, Bexter, Pather};
// Serialization
use cesride::core::{Serder, Creder, Counter};
use cesride::core::common::{versify, deversify, sniff};
// Code tables
use cesride::core::matter::tables as MatterCodex;
use cesride::core::indexer::tables as IndexerCodex;
use cesride::core::counter::tables as CounterCodex;
// Data model
use cesride::data::{Value, dat};
use cesride::error::{Error, Result};
// Crypto (raw bytes, no CESR)
use cesride::crypto::{sign, hash, salt, csprng};// Core traits
use cesride::core::matter::Matter;
use cesride::core::indexer::Indexer;
use cesride::core::sadder::Sadder;
use cesride::core::bexter::Bext;
// Primitives
use cesride::core::{Verfer, Diger, Signer, Salter, Cigar, Siger};
use cesride::core::{Saider, Prefixer, Seqner, Number, Dater, Bexter, Pather};
// Serialization
use cesride::core::{Serder, Creder, Counter};
use cesride::core::common::{versify, deversify, sniff};
// Code tables
use cesride::core::matter::tables as MatterCodex;
use cesride::core::indexer::tables as IndexerCodex;
use cesride::core::counter::tables as CounterCodex;
// Data model
use cesride::data::{Value, dat};
use cesride::error::{Error, Result};
// Crypto (raw bytes, no CESR)
use cesride::crypto::{sign, hash, salt, csprng};| File | Contents | Size |
|---|---|---|
| references/cesr-primitives.md | All 13 typed Matter/Indexer primitives — constructors, methods, valid codes | 11KB |
| references/sad-serialization.md | Sadder/Serder/Creder traits, Counter API, Ids/Ilkage constants | 4KB |
| references/crypto.md | Raw cryptographic operations — sign/verify, hash, stretch, CSPRNG | 5KB |
| references/data-errors.md | Value enum, data::Number, Error (28 variants), dat! macro | 7KB |
| references/threshold-utils.md | Tholder (weighted/unweighted), B64 conversion utilities | 6KB |
| 文件 | 内容 | 大小 |
|---|---|---|
| references/cesr-primitives.md | 全部13种Matter/Indexer类型化原语——构造函数、方法、有效编码 | 11KB |
| references/sad-serialization.md | Sadder/Serder/Creder trait、Counter API、Ids/Ilkage常量 | 4KB |
| references/crypto.md | 原生加密操作——签名/验证、哈希、拉伸、CSPRNG | 5KB |
| references/data-errors.md | Value枚举、data::Number、Error(28种变体)、dat!宏 | 7KB |
| references/threshold-utils.md | Tholder(加权/非加权)、B64转换工具 | 6KB |
Type::new(/* type-specific params */, code, raw, qb64b, qb64, qb2) -> Result<Self>
Type::new_with_raw(raw, code) -> Result<Self>
Type::new_with_qb64(qb64) -> Result<Self>
Type::new_with_qb64b(qb64b) -> Result<Self>
Type::new_with_qb2(qb2) -> Result<Self>Type::new(/* type-specific params */, code, raw, qb64b, qb64, qb2) -> Result<Self>
Type::new_with_raw(raw, code) -> Result<Self>
Type::new_with_qb64(qb64) -> Result<Self>
Type::new_with_qb64b(qb64b) -> Result<Self>
Type::new_with_qb2(qb2) -> Result<Self>let signer = Signer::new_with_defaults(Some(true), None)?; // Ed25519, transferable
let verfer = signer.verfer();
let cigar = signer.sign_unindexed(message)?;
assert!(verfer.verify(&cigar.raw(), message)?);let signer = Signer::new_with_defaults(Some(true), None)?; // Ed25519, 可转让
let verfer = signer.verfer();
let cigar = signer.sign_unindexed(message)?;
assert!(verfer.verify(&cigar.raw(), message)?);let salter = Salter::new_with_defaults(Some("low"))?;
let signers = salter.signers(Some(3), None, Some("icp"), None, None, None, None)?;let salter = Salter::new_with_defaults(Some("low"))?;
let signers = salter.signers(Some(3), None, Some("icp"), None, None, None, None)?;let (saider, saidified_sad) = Saider::saidify(&sad, None, None, None, None)?;
assert!(saider.verify(&saidified_sad, None, None, None, None, None)?);let (saider, saidified_sad) = Saider::saidify(&sad, None, None, None, None)?;
assert!(saider.verify(&saidified_sad, None, None, None, None, None)?);let serder = Serder::new_with_ked(&ked, None, None)?;
let said = serder.said()?;
let pre = serder.pre()?;
let raw = serder.raw();let serder = Serder::new_with_ked(&ked, None, None)?;
let said = serder.said()?;
let pre = serder.pre()?;
let raw = serder.raw();let tholder = Tholder::new_with_sith(&dat!([["1/2", "1/2"], ["1"]]))?;
assert!(tholder.satisfy(&[0, 1, 2])?);let tholder = Tholder::new_with_sith(&dat!([["1/2", "1/2"], ["1"]]))?;
assert!(tholder.satisfy(&[0, 1, 2])?);SignerSalterSalter::signers()CigarSigersign_indexed()versify()deversify()data::Numbercore::Numbercore::Numberdata::NumberCounterCounter::new_with_code_and_count()SignerSalterSalter::signers()CigarSigersign_indexed()versify()deversify()data::Numbercore::Numbercore::Numberdata::NumberCounterCounter::new_with_code_and_count()