Tenzro Namespace - Asset
| Author | Tenzro Engineering (eng@tenzro.com) |
|---|---|
| Discussions-To | https://github.com/ChainAgnostic/namespaces/pull/184 |
| Status | Draft |
| Type | Standard |
| Created | 2026-05-02 |
| Updated | 2026-05-02 |
| Requires | CAIP-2, CAIP-10, CAIP-19 |
Table of Contents
CAIP-19
For context, see the CAIP-19 specification.
Rationale
Tenzro hosts assets across three VM façades (EVM, SVM, Canton/DAML) that all
share a single underlying native balance — the Sei-V2-style pointer model.
For CAIP-19 purposes, an asset is identified by its canonical Tenzro token
ID (a 32-byte SHA-256 of creator || nonce) regardless of which VM façade a
client uses to interact with it. The same TNZO holding is reachable as wTNZO
(ERC-20) on the EVM façade, as a wTNZO SPL token on the SVM façade, and as a
CIP-56 holding on the Canton façade — but the CAIP-19 reference is one and
the same.
Two asset namespaces are defined:
asset_namespace |
Meaning |
|---|---|
slip44 |
TNZO native coin — uses the SLIP-44 coin index |
token |
Fungible token registered in Tenzro’s unified token registry, identified by 32-byte token ID |
nft |
Non-fungible token, identified by <collection_id>/<token_id> where collection_id is the 32-byte collection ID |
The native TNZO coin uses SLIP-44 coin type 1414421071
(0xd44e5a4f), registered via satoshilabs/slips#2015. Until
that PR is merged, implementations MAY also accept the literal reference
tenzro under slip44 (vendor-prefixed pre-registration form) for
forward compatibility.
Syntax
After the CAIP-2 chain prefix, a slash defines an asset_namespace and
an asset_reference:
asset_id := chain_id "/" asset_namespace ":" asset_reference [ "/" token_id ]
chain_id: CAIP-2 identifier (seecaip2.md)-
asset_namespace:slip44tokennft asset_reference:- For
slip44: SLIP-44 coin index1414421071(decimal); the pre-registration stringtenzroMAY also be accepted on input until the upstream PR merges - For
token: 64-character lowercase hex of the 32-byte token ID - For
nft: 64-character lowercase hex of the 32-byte collection ID
- For
token_id(NFT only): 64-character lowercase hex of the 32-bytemintRandom-derived token ID, or a decimal integer for sequentially minted tokens
Examples
# Tenzro Testnet — native TNZO coin (registered SLIP-44 index)
tenzro:92bd27db9713293097f0e63476e3911e/slip44:1414421071
# Tenzro Testnet — native TNZO coin (pre-registration form, accepted until slips#2015 merges)
tenzro:92bd27db9713293097f0e63476e3911e/slip44:tenzro
# Tenzro Testnet — fungible token (e.g. an ERC-20 deployed via TOKEN_FACTORY)
tenzro:92bd27db9713293097f0e63476e3911e/token:7a4bcb13a6b2b384c284b5caa6e5ef3126527f93000000000000000000000000
# Tenzro Testnet — NFT (collection_id / token_id)
tenzro:92bd27db9713293097f0e63476e3911e/nft:a1b2c3d4e5f6...64hex.../42
Cross-VM identity
The same asset identifier MUST resolve to the same underlying balance
regardless of which VM façade a client queries. For example, given a TNZO
balance for an account A:
eth_getBalance(A)on the EVM façadetenzro_getTokenBalance({owner: A, token: <wtnzo_evm_addr>})on the Tenzro-native API- An SPL token-account query against the SVM
tenzro_cross_vmprogram for wTNZO
…all return the same numeric value (in 18-decimal precision; SPL truncates to 9 decimals at the boundary). The CAIP-19 identifier is the cross-VM canonical name; the per-VM contract addresses are aliases.
References
Copyright
Copyright and related rights waived via CC0.
Citation
Please cite this document as:
Tenzro Engineering (eng@tenzro.com), "namespaces/tenzro-caip19: Tenzro Namespace - Asset [DRAFT]," Chain Agnostic Namespaces, tenzro-caip19, May 2026 / May 2026. [Online serial]. Available: https://github.com/ChainAgnostic/namespaces/tenzro-caip19.md