Crate ssi_multicodec

Crate ssi_multicodec 

Source

Structs§

MultiEncoded
Multi-encoded byte slice.
MultiEncodedBuf

Enums§

Error

Constants§

AES_128
128-bit AES symmetric key
AES_192
192-bit AES symmetric key
AES_256
256-bit AES symmetric key
AES_GCM_256
AES Galois/Counter Mode with 256-bit key and 12-byte IV
ARWEAVE_NS
Arweave Namespace
BEESON
Swarm BeeSon
BENCODE
bencode
BITCOIN_BLOCK
Bitcoin Block
BITCOIN_TX
Bitcoin Tx
BITCOIN_WITNESS_COMMITMENT
Bitcoin Witness Commitment
BLAKE3
BLAKE3 has a default 32 byte output length. The maximum length is (2^64)-1 bytes.
BLAKE2B_8
Blake2b consists of 64 output lengths that give different hashes
BLAKE2B_16
BLAKE2B_24
BLAKE2B_32
BLAKE2B_40
BLAKE2B_48
BLAKE2B_56
BLAKE2B_64
BLAKE2B_72
BLAKE2B_80
BLAKE2B_88
BLAKE2B_96
BLAKE2B_104
BLAKE2B_112
BLAKE2B_120
BLAKE2B_128
BLAKE2B_136
BLAKE2B_144
BLAKE2B_152
BLAKE2B_160
BLAKE2B_168
BLAKE2B_176
BLAKE2B_184
BLAKE2B_192
BLAKE2B_200
BLAKE2B_208
BLAKE2B_216
BLAKE2B_224
BLAKE2B_232
BLAKE2B_240
BLAKE2B_248
BLAKE2B_256
BLAKE2B_264
BLAKE2B_272
BLAKE2B_280
BLAKE2B_288
BLAKE2B_296
BLAKE2B_304
BLAKE2B_312
BLAKE2B_320
BLAKE2B_328
BLAKE2B_336
BLAKE2B_344
BLAKE2B_352
BLAKE2B_360
BLAKE2B_368
BLAKE2B_376
BLAKE2B_384
BLAKE2B_392
BLAKE2B_400
BLAKE2B_408
BLAKE2B_416
BLAKE2B_424
BLAKE2B_432
BLAKE2B_440
BLAKE2B_448
BLAKE2B_456
BLAKE2B_464
BLAKE2B_472
BLAKE2B_480
BLAKE2B_488
BLAKE2B_496
BLAKE2B_504
BLAKE2B_512
BLAKE2S_8
Blake2s consists of 32 output lengths that give different hashes
BLAKE2S_16
BLAKE2S_24
BLAKE2S_32
BLAKE2S_40
BLAKE2S_48
BLAKE2S_56
BLAKE2S_64
BLAKE2S_72
BLAKE2S_80
BLAKE2S_88
BLAKE2S_96
BLAKE2S_104
BLAKE2S_112
BLAKE2S_120
BLAKE2S_128
BLAKE2S_136
BLAKE2S_144
BLAKE2S_152
BLAKE2S_160
BLAKE2S_168
BLAKE2S_176
BLAKE2S_184
BLAKE2S_192
BLAKE2S_200
BLAKE2S_208
BLAKE2S_216
BLAKE2S_224
BLAKE2S_232
BLAKE2S_240
BLAKE2S_248
BLAKE2S_256
BLS12_381_G1G2_PUB
BLS12-381 concatenated public keys in both the G1 and G2 fields
BLS12_381_G1_PUB
BLS12-381 public key in the G1 field
BLS12_381_G2_PUB
BLS12-381 public key in the G2 field
BLS_12381_G1_SIG
G1 signature for BLS-12381-G2
BLS_12381_G2_SIG
G2 signature for BLS-12381-G1
CAIP_50
CAIP-50 multi-chain account id
CAR
Content Addressable aRchive (CAR)
CAR_INDEX_SORTED
CARv2 IndexSorted index format
CAR_MULTIHASH_INDEX_SORTED
CARv2 MultihashIndexSorted index format
CBOR
CBOR
CERTHASH
TLS certificate’s fingerprint as a multihash
CHACHA_128
128-bit ChaCha symmetric key
CHACHA_256
256-bit ChaCha symmetric key
CIDV1
CIDv1
CIDV2
CIDv2
CIDV3
CIDv3
CRC32
CRC-32 non-cryptographic hash algorithm (IEEE 802.3)
CRC64_ECMA
CRC-64 non-cryptographic hash algorithm (ECMA-182 - Annex B)
DAG_CBOR
MerkleDAG cbor
DAG_COSE
MerkleDAG COSE
DAG_JOSE
MerkleDAG JOSE
DAG_JSON
MerkleDAG json
DAG_PB
MerkleDAG protobuf
DASH_BLOCK
Dash Block
DASH_TX
Dash Tx
DBL_SHA2_256
DCCP
DECRED_BLOCK
Decred Block
DECRED_TX
Decred Tx
DNS
DNS4
DNS6
DNSADDR
DNSLINK
DNSLink path
ED448_PUB
Ed448 public Key
ED25519_PRIV
Ed25519 private key
ED25519_PUB
Ed25519 public key
EDDSA
Edwards-Curve Digital Signature Algorithm
EIP_191
EIP-191 Ethereum Signed Data Standard
ES256
ES256 Signature Algorithm
ES284
ES384 Signature Algorithm
ES512
ES512 Signature Algorithm
ES256K
ES256K Siganture Algorithm (secp256k1)
ETH_ACCOUNT_SNAPSHOT
Ethereum Account Snapshot (RLP)
ETH_BLOCK
Ethereum Header (RLP)
ETH_BLOCK_LIST
Ethereum Header List (RLP)
ETH_RECEIPT_LOG
Ethereum Transaction Receipt Log (RLP)
ETH_RECEIPT_LOG_TRIE
Ethereum Transaction Receipt Log Trie (Eth-Trie)
ETH_STATE_TRIE
Ethereum State Trie (Eth-Secure-Trie)
ETH_STORAGE_TRIE
Ethereum Contract Storage Trie (Eth-Secure-Trie)
ETH_TX
Ethereum Transaction (MarshalBinary)
ETH_TX_RECEIPT
Ethereum Transaction Receipt (MarshalBinary)
ETH_TX_RECEIPT_TRIE
Ethereum Transaction Receipt Trie (Eth-Trie)
ETH_TX_TRIE
Ethereum Transaction Trie (Eth-Trie)
FIL_COMMITMENT_SEALED
Filecoin sector data commitment merkle node/root - sealed and replicated (CommR)
FIL_COMMITMENT_UNSEALED
Filecoin piece or sector data commitment merkle node/root (CommP & CommD)
GARLIC32
I2P base32 (hashed public key or encoded public key/checksum+optional secret)
GARLIC64
I2P base64 (raw public key)
GIT_RAW
Raw Git object
HOLOCHAIN_ADR_V0
Holochain v0 address + 8 R-S (63 x Base-32)
HOLOCHAIN_ADR_V1
Holochain v1 address + 8 R-S (63 x Base-32)
HOLOCHAIN_KEY_V0
Holochain v0 public key + 8 R-S (63 x Base-32)
HOLOCHAIN_KEY_V1
Holochain v1 public key + 8 R-S (63 x Base-32)
HOLOCHAIN_SIG_V0
Holochain v0 signature + 8 R-S (63 x Base-32)
HOLOCHAIN_SIG_V1
Holochain v1 signature + 8 R-S (63 x Base-32)
HTTP
HTTPS
IDENTITY
raw binary
IP4
IP6
IP6ZONE
IPCIDR
CIDR mask for IP addresses
IPFS
IPFS path
IPLD
IPLD path
IPNS
IPNS path
IPNS_RECORD
Signed IPNS Record
ISCC
ISCC (International Standard Content Code) - similarity preserving hash
JSON
JSON (UTF-8-encoded)
JSON_JCS
The result of canonicalizing an input according to JCS - JSON Canonicalisation Scheme (RFC 8785)
JWK_JCS_PUB
JSON object containing only the required members of a JWK (RFC 7518 and RFC 7517) representing the public key. Serialisation based on JCS (RFC 8785)
KANGAROOTWELVE
KangarooTwelve is an extendable-output hash function based on Keccak-p
KECCAK_224
keccak has variable output length. The number specifies the core length
KECCAK_256
KECCAK_384
KECCAK_512
KUMANDRA_NS
Kumandra Network Namespace
LEOFCOIN_BLOCK
Leofcoin Block
LEOFCOIN_PR
Leofcoin Peer Reputation
LEOFCOIN_TX
Leofcoin Transaction
LIBP2P_KEY
Libp2p Public Key
LIBP2P_PEER_RECORD
libp2p peer record type
LIBP2P_RELAY_RSVP
libp2p relay reservation voucher
MD4
MD5
MEMORYTRANSPORT
in memory transport for self-dialing and testing; arbitrary
MESSAGEPACK
MessagePack
MULTIADDR
MULTIBASE
MULTICODEC
MULTIDID
Compact encoding for Decentralized Identifers
MULTIHASH
MURMUR3_32
MURMUR3_X64_64
The first 64-bits of a murmur3-x64-128 - used for UnixFS directory sharding.
MURMUR3_X64_128
NOISE
NONSTANDARD_SIGDeprecated
Namespace for all not yet standard signature algorithms
ONION
ONION3
P2P
libp2p
P2P_CIRCUIT
P2P_STARDUSTDeprecated
P2P_WEBRTC_DIRECTDeprecated
Use webrtc or webrtc-direct instead
P2P_WEBRTC_STARDeprecated
Use webrtc or webrtc-direct instead
P2P_WEBSOCKET_STAR
P256_PRIV
P-256 private key
P256_PUB
P-256 public Key (compressed)
P384_PRIV
P-384 private key
P384_PUB
P-384 public Key (compressed)
P521_PRIV
P-521 private key
P521_PUB
P-521 public Key (compressed)
PATH
Namespace for string paths. Corresponds to / in ASCII.
PLAINTEXTV2
POSEIDON_BLS12_381_A2_FC1
Poseidon using BLS12-381 and arity of 2 with Filecoin parameters
POSEIDON_BLS12_381_A2_FC1_SC
Poseidon using BLS12-381 and arity of 2 with Filecoin parameters - high-security variant
PROTOBUF
Protocol Buffers
QUIC
QUIC_V1
RAW
raw binary
RIPEMD_128
RIPEMD_160
RIPEMD_256
RIPEMD_320
RLP
recursive length prefix
RS256
RS256 Signature Algorithm
RSA_PRIV
RSA private key
RSA_PUB
RSA public key. DER-encoded ASN.1 type RSAPublicKey according to IETF RFC 8017 (PKCS #1)
SCION
SCION Internet architecture
SCTP
SECP256K1_PRIV
Secp256k1 private key
SECP256K1_PUB
Secp256k1 public key (compressed)
SHA1
SHA2_224
aka SHA-224; as specified by FIPS 180-4.
SHA2_256
SHA2_384
aka SHA-384; as specified by FIPS 180-4.
SHA2_512
SHA2_256_TRUNC254_PADDED
SHA2-256 with the two most significant bits from the last byte zeroed (as via a mask with 0b00111111) - used for proving trees as in Filecoin
SHA2_512_224
aka SHA-512/224; as specified by FIPS 180-4.
SHA2_512_256
aka SHA-512/256; as specified by FIPS 180-4.
SHA3_224
SHA3_256
SHA3_384
SHA3_512
SHA256A
The sum of multiple sha2-256 hashes; as specified by Ceramic CIP-124.
SHAKE_128
SHAKE_256
SILVERPINE
Experimental QUIC over yggdrasil and ironwood routing protocol
SKEIN256_8
Skein256 consists of 32 output lengths that give different hashes
SKEIN256_16
SKEIN256_24
SKEIN256_32
SKEIN256_40
SKEIN256_48
SKEIN256_56
SKEIN256_64
SKEIN256_72
SKEIN256_80
SKEIN256_88
SKEIN256_96
SKEIN256_104
SKEIN256_112
SKEIN256_120
SKEIN256_128
SKEIN256_136
SKEIN256_144
SKEIN256_152
SKEIN256_160
SKEIN256_168
SKEIN256_176
SKEIN256_184
SKEIN256_192
SKEIN256_200
SKEIN256_208
SKEIN256_216
SKEIN256_224
SKEIN256_232
SKEIN256_240
SKEIN256_248
SKEIN256_256
SKEIN512_8
Skein512 consists of 64 output lengths that give different hashes
SKEIN512_16
SKEIN512_24
SKEIN512_32
SKEIN512_40
SKEIN512_48
SKEIN512_56
SKEIN512_64
SKEIN512_72
SKEIN512_80
SKEIN512_88
SKEIN512_96
SKEIN512_104
SKEIN512_112
SKEIN512_120
SKEIN512_128
SKEIN512_136
SKEIN512_144
SKEIN512_152
SKEIN512_160
SKEIN512_168
SKEIN512_176
SKEIN512_184
SKEIN512_192
SKEIN512_200
SKEIN512_208
SKEIN512_216
SKEIN512_224
SKEIN512_232
SKEIN512_240
SKEIN512_248
SKEIN512_256
SKEIN512_264
SKEIN512_272
SKEIN512_280
SKEIN512_288
SKEIN512_296
SKEIN512_304
SKEIN512_312
SKEIN512_320
SKEIN512_328
SKEIN512_336
SKEIN512_344
SKEIN512_352
SKEIN512_360
SKEIN512_368
SKEIN512_376
SKEIN512_384
SKEIN512_392
SKEIN512_400
SKEIN512_408
SKEIN512_416
SKEIN512_424
SKEIN512_432
SKEIN512_440
SKEIN512_448
SKEIN512_456
SKEIN512_464
SKEIN512_472
SKEIN512_480
SKEIN512_488
SKEIN512_496
SKEIN512_504
SKEIN512_512
SKEIN1024_8
Skein1024 consists of 128 output lengths that give different hashes
SKEIN1024_16
SKEIN1024_24
SKEIN1024_32
SKEIN1024_40
SKEIN1024_48
SKEIN1024_56
SKEIN1024_64
SKEIN1024_72
SKEIN1024_80
SKEIN1024_88
SKEIN1024_96
SKEIN1024_104
SKEIN1024_112
SKEIN1024_120
SKEIN1024_128
SKEIN1024_136
SKEIN1024_144
SKEIN1024_152
SKEIN1024_160
SKEIN1024_168
SKEIN1024_176
SKEIN1024_184
SKEIN1024_192
SKEIN1024_200
SKEIN1024_208
SKEIN1024_216
SKEIN1024_224
SKEIN1024_232
SKEIN1024_240
SKEIN1024_248
SKEIN1024_256
SKEIN1024_264
SKEIN1024_272
SKEIN1024_280
SKEIN1024_288
SKEIN1024_296
SKEIN1024_304
SKEIN1024_312
SKEIN1024_320
SKEIN1024_328
SKEIN1024_336
SKEIN1024_344
SKEIN1024_352
SKEIN1024_360
SKEIN1024_368
SKEIN1024_376
SKEIN1024_384
SKEIN1024_392
SKEIN1024_400
SKEIN1024_408
SKEIN1024_416
SKEIN1024_424
SKEIN1024_432
SKEIN1024_440
SKEIN1024_448
SKEIN1024_456
SKEIN1024_464
SKEIN1024_472
SKEIN1024_480
SKEIN1024_488
SKEIN1024_496
SKEIN1024_504
SKEIN1024_512
SKEIN1024_520
SKEIN1024_528
SKEIN1024_536
SKEIN1024_544
SKEIN1024_552
SKEIN1024_560
SKEIN1024_568
SKEIN1024_576
SKEIN1024_584
SKEIN1024_592
SKEIN1024_600
SKEIN1024_608
SKEIN1024_616
SKEIN1024_624
SKEIN1024_632
SKEIN1024_640
SKEIN1024_648
SKEIN1024_656
SKEIN1024_664
SKEIN1024_672
SKEIN1024_680
SKEIN1024_688
SKEIN1024_696
SKEIN1024_704
SKEIN1024_712
SKEIN1024_720
SKEIN1024_728
SKEIN1024_736
SKEIN1024_744
SKEIN1024_752
SKEIN1024_760
SKEIN1024_768
SKEIN1024_776
SKEIN1024_784
SKEIN1024_792
SKEIN1024_800
SKEIN1024_808
SKEIN1024_816
SKEIN1024_824
SKEIN1024_832
SKEIN1024_840
SKEIN1024_848
SKEIN1024_856
SKEIN1024_864
SKEIN1024_872
SKEIN1024_880
SKEIN1024_888
SKEIN1024_896
SKEIN1024_904
SKEIN1024_912
SKEIN1024_920
SKEIN1024_928
SKEIN1024_936
SKEIN1024_944
SKEIN1024_952
SKEIN1024_960
SKEIN1024_968
SKEIN1024_976
SKEIN1024_984
SKEIN1024_992
SKEIN1024_1000
SKEIN1024_1008
SKEIN1024_1016
SKEIN1024_1024
SKYNET_NS
Skynet Namespace
SM2_PUB
SM2 public key (compressed)
SM3_256
SNI
Server Name Indication RFC 6066 § 3
SR25519_PRIV
Sr25519 private key
SR25519_PUB
Sr25519 public key
SSZ
SimpleSerialize (SSZ) serialization
SSZ_SHA2_256_BMT
SSZ Merkle tree root using SHA2-256 as the hashing function and SSZ serialization for the block binary
STELLAR_BLOCK
Stellar Block
STELLAR_TX
Stellar Tx
STREAMID
Ceramic Stream Id
SUBSPACE_NS
Subspace Network Namespace
SWARM
Swarm path
SWARM_FEED
Swarm Feed
SWARM_MANIFEST
Swarm Manifest
SWHID_1_SNP
SoftWare Heritage persistent IDentifier version 1 snapshot
TCP
THREAD
Textile Thread
TLS
TORRENT_FILE
Torrent file (bencoded)
TORRENT_INFO
Torrent file info field (bencoded)
TRANSPORT_BITSWAP
Bitswap datatransfer
TRANSPORT_GRAPHSYNC_FILECOINV1
Filecoin graphsync datatransfer
TRANSPORT_IPFS_GATEWAY_HTTP
HTTP IPFS Gateway trustless datatransfer
UDP
UDT
UNIX
URDCA_2015_CANON
The result of canonicalizing an input according to URDCA-2015 and then expressing its hash value as a multihash value.
UTP
VARSIG
Variable signature (varsig) multiformat
WEBRTC
webrtc transport where connection establishment is according to w3c spec
WEBRTC_DIRECT
ICE-lite webrtc transport with SDP munging during connection establishment and without use of a STUN server
WEBTRANSPORT
WS
WSS
X11
X448_PUB
X448 public Key
X25519_PRIV
Curve25519 private key
X25519_PUB
Curve25519 public key
XXH3_64
Extremely fast non-cryptographic hash algorithm
XXH3_128
Extremely fast non-cryptographic hash algorithm
XXH_32
Extremely fast non-cryptographic hash algorithm
XXH_64
Extremely fast non-cryptographic hash algorithm
ZCASH_BLOCK
Zcash Block
ZCASH_TX
Zcash Tx
ZERONET
ZeroNet site address
ZEROXCERT_IMPRINT_256
0xcert Asset Imprint (root hash)

Traits§

Codec
MultiCodec