Solana Token-2022 NonTransferable ou Sui Token Closed-Loop — frappé aux portefeuilles, jamais transféré entre eux. Identité, présence, attestation KYC, réputation.
Les tokens soul-bound sont comment l'identité on-chain reste on-chain. Une fois frappé à un portefeuille, le token ne peut jamais bouger — le rendant utile pour les justificatifs, les preuves de présence, les attestations KYC et les systèmes de réputation où la transférabilité laisserait les utilisateurs jouer l'attribution. Ce preset est le SBT le plus simple possible sur l'une ou l'autre chaîne : l'extension Token-2022 NonTransferable de Solana ou le Token Closed-Loop de Sui sans règle de transfert enregistrée sur la TokenPolicy.
Sur Solana, l'extension NonTransferable est un seul bit sur le compte de frappe — le programme SPL Token-2022 l'applique au niveau du protocole, pas de logique personnalisée à auditer. Sur Sui, `sui::token::Token<T>` est déclaré avec uniquement la capacité `key` (pas de `store`), donc `transfer::public_transfer` est rejetée au moment de la compilation et chaque mouvement nécessite une règle TokenPolicy — que nous ne l'enregistrons pas. Le contournement est structurellement impossible sur les deux chaînes.
EVM n'a pas de primitive non transférable au niveau du protocole — chaque implémentation remplace le hook `_update` sur la base ERC-20 pour revenir, ce qui fonctionne mais n'est pas aussi propre (le chemin de retour est un code auditable, pas une application de protocole). Solana et Sui exposent tous deux une sémantique soul-bound de première classe, donc nous livrons là-bas en premier. Une variante EVM est tracée pour quand le cas d'usage justifie une implémentation par chaîne.
Oui sur les deux chaînes. Sur Solana, l'extension NonTransferable bloque les transferts entre portefeuilles mais pas les burns — l'autorité de frappe peut révoquer une justificatif via l'instruction SPL Token Burn standard. Sur Sui, le déployeur détient le TreasuryCap et peut brûler via `sui::token::burn` (la politique Closed-Loop s'applique aux transferts initiés par l'utilisateur, pas aux burns émetteur).
Identity / SBT est la forme maximalement restrictive — aucun transfert, jamais, par personne. Loyalty (Sui-only) permet les transferts mais uniquement vers les adresses sur la liste blanche gérée par l'émetteur (vos commerçants, portefeuilles partenaires, comptes opérateurs). Choisissez Identity pour les justificatifs et les preuves de présence ; choisissez Loyalty pour les programmes de points en boucle fermée où les détenteurs ont besoin de dépenser les soldes au sein du réseau marchand.