Passer au contenu principal
  1. Lire récupère les comptes de jetons Solana privés chiffrés de l’indexeur avec des méthodes RPC dédiées.
  2. Seul l’utilisateur, ou toute personne que l’utilisateur autorise, peut déchiffrer les soldes avec sa clé de visualisation.
  3. Utilisez-le après qu’un solde privé ait changé et avant un transfert.
  1. getBalance renvoie le SOL public. getAccount renvoie un compte de jetons public.
  2. Le RPC renvoie le solde public.

Commencer

1

Prérequis

Les exemples TypeScript nécessitent Node.js 24 ou une version ultérieure, pnpm 11.18.0, et le Solana CLI.
Source : sdk-libs/ts
Ajoutez une clé API Helius:
.env
Les exemples utilisent le portefeuille Solana CLI comme payeur par défaut. Le payeur doit détenir du SOL sur le devnet. Voir Comment obtenir Devnet SOL.
2

Dériver le tag de visualisation

  • senderViewTag est senderAddress.confidentialViewTag(), la clé publique Solana de l’expéditeur dans les anneaux confidentiels. L’indexeur l’utilise pour renvoyer des sorties chiffrées correspondantes.
3

Récupérer les sorties de transaction de l’indexeur

  • getShieldedTransactionsByTags récupère les sorties chiffrées associées à senderViewTag.
  • atSlot(depositTx.slot) attend que l’indexeur ait le dépôt à cet emplacement.
  • L’indexeur renvoie les données de sortie chiffrées. Il ne déchiffre pas le solde privé.
4

Déchiffrer vers un solde privé

  • sender fournit la clé de visualisation de l’expéditeur pour le déchiffrement local.
  • decryptToBalances déchiffre les sorties correspondantes et renvoie les soldes privés de l’expéditeur.
  • balancesAfterDeposit.balance(SOL_MINT) lit le solde SOL privé.
Consultez État privé et UTXO pour comprendre le fonctionnement du marquage des propriétaires et des comptes de tokens Solana privés.

Exemple de code complet

Clonez et exécutez l’exemple :
Les exemples utilisent un Ring confidentiel sur local/devnet ici.

Guides connexes

Create a Private Wallet

Deposit

Transfer

Withdraw

Read Private History

Vous n’avez pas trouvé ce que vous cherchiez ?

Contactez-nous ! Telegram | E-Mail | Contact