{"id":"multihash-encode","version":"1.0.0","description":"Encode a bounded digest as a canonical hexadecimal multihash.","supported_operations":["encode digest as multihash","build canonical multihash bytes","wrap sha3 digest in multihash","serialize a sha2 multihash","create blake3 multihash envelope","convert digest to multihash hex"],"unsupported_operations":["computing a digest from content","unlisted multicodec algorithms"],"semantics":["Encodes varint(code), varint(digest byte length), then digest bytes.","Hex input and output are lowercase and varints are minimal.","Disclaimer: format transform only; provides no confidentiality, integrity, or authenticity."],"limits":{"max_digest_bytes":64,"max_multihash_bytes":68},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","additionalProperties":false,"required":["algorithm","digest"],"properties":{"algorithm":{"type":"string","enum":["sha2-256","sha2-512","sha3-512","sha3-384","sha3-256","sha3-224","blake3","blake2b-256","blake2b-512","blake2s-256"]},"digest":{"type":"string","maxLength":128,"pattern":"^(?:[0-9a-f]{2})*$"}}},"output_schema":{"type":"object","additionalProperties":false,"required":["multihash","code","digest_size","standard","reference","data_version"],"properties":{"multihash":{"type":"string","pattern":"^[0-9a-f]+$"},"code":{"type":"integer","minimum":0},"digest_size":{"type":"integer","minimum":0,"maximum":64},"standard":{"type":"string"},"reference":{"type":"string"},"data_version":{"type":"string"}}},"examples":[{"input":{"algorithm":"sha2-256","digest":"0000000000000000000000000000000000000000000000000000000000000000"},"output":{"multihash":"12200000000000000000000000000000000000000000000000000000000000000000","code":18,"digest_size":32,"standard":"Multiformats Multihash specification","reference":"multihash = varint(code) || varint(size) || digest; unsigned LEB128 must be minimally encoded","data_version":"multicodec-2026-10-24"}},{"input":{"algorithm":"blake3","digest":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},"output":{"multihash":"1e20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","code":30,"digest_size":32,"standard":"Multiformats Multihash specification","reference":"multihash = varint(code) || varint(size) || digest; unsigned LEB128 must be minimally encoded","data_version":"multicodec-2026-10-24"}}],"execute_url":"/v1/tools/multihash-encode/versions/1.0.0/execute"}