Vertrouwelijke Saldi

Wat zijn Confidential Balances?

Confidential Balances is een Token-2022-extensie waarmee je tokens kunt overdragen tussen token accounts zonder het overdrachtsbedrag te onthullen. Dit is nuttig voor privacybeschermende transacties. Alleen overdrachtsbedragen en tokensaldi zijn privé. Token account-adressen blijven openbaar.

Hoe werkt het?

De Confidential Balances-extensie voegt instructies toe aan het Token Extensions Program waarmee je tokens tussen accounts kunt overdragen zonder het overdrachtsbedrag te onthullen.

Confidential Balances Basic Overview

De basisstroom van vertrouwelijke tokenoverdrachten is als volgt:

  1. Maak een mint account aan met Confidential Balances ingeschakeld.
  2. Maak token accounts aan met Confidential Balances ingeschakeld voor de verzender en ontvanger.
  3. Mint tokens naar het account van de verzender.
  4. Stort het publieke saldo van de verzender naar het vertrouwelijk uitstaand saldo.
  5. Pas het uitstaande saldo van de verzender toe op het vertrouwelijk beschikbaar saldo.
  6. Draag tokens vertrouwelijk over van het token account van de verzender naar het token account van de ontvanger.
  7. Pas het uitstaande saldo van de ontvanger toe op het vertrouwelijk beschikbaar saldo.
  8. Hef het vertrouwelijk beschikbaar saldo van de ontvanger op naar het publiek saldo.

Auditorsleutels

Een Confidential Balances-mint kan een optionele globale auditor ElGamal-openbare sleutel opslaan. Wanneer er een is geconfigureerd, bevat elke vertrouwelijke overdracht het bedrag versleuteld voor de verzender, ontvanger en auditor. Het overdrachtsbewijs verifieert dat alle drie de cipherteksten hetzelfde bedrag bevatten. Het publiek kan het bedrag nog steeds niet lezen, maar de houder van de geheime auditorsleutel kan overdrachtsbedragen voor die mint ontsleutelen.

De Confidential Balances-autoriteit stelt de auditorsleutel in bij het initialiseren van de extensie of wijzigt deze later met UpdateMint. De autoriteit kan de sleutel roteren of wissen. Een rotatie geldt alleen voor toekomstige overdrachten, bewaar dus eerdere geheime sleutels wanneer historische audittoegang vereist is. Auditorsleutels bieden leestoegang; ze machtigen geen tokenoverdrachten en onthullen het volledige vertrouwelijke saldo van een account niet.

Voor voorbeelden van instelling en rotatie, zie Een auditor configureren. Wallets, verkenners, exchanges en compliance-providers moeten ook de richtlijnen voor auditorintegratie raadplegen.

Voor meer details over de stappen in de vertrouwelijke overdrachtsstroom, zie de bijbehorende pagina's:

Het onderstaande diagram toont een gedetailleerde volgorde van de basisstroom voor vertrouwelijke token-overdrachten:

Confidential Balances Detailed Overview

Confidential Balances-instructies

De volledige lijst van Confidential Balances-extensie instructies is als volgt:

InstructieBeschrijving
InitializeMintSchakelt Confidential Balances in op een mint account. Deze instructie moet worden opgenomen in dezelfde transactie als de TokenInstruction::InitializeMint-instructie.
UpdateMintWerkt het goedkeuringsbeleid van de mint-account en de optionele globale auditor ElGamal-openbare sleutel bij.
ConfigureAccountSchakelt Confidential Balances in op een token account.
ApproveAccountKeurt een token account goed voor Confidential Balances als de mint goedkeuring vereist voor nieuwe token accounts.
EmptyAccountLeegt de openstaande en beschikbare vertrouwelijke saldi om het sluiten van een token account mogelijk te maken.
DepositConverteert het publieke tokensaldo naar een openstaand vertrouwelijk saldo.
WithdrawConverteert het beschikbare vertrouwelijke saldo terug naar een publiek saldo.
TransferDraagt tokens vertrouwelijk over tussen token accounts.
ApplyPendingBalanceConverteert het openstaande saldo naar een beschikbaar saldo na stortingen of overdrachten.
EnableConfidentialCreditsStaat een token account toe om vertrouwelijke token-overdrachten te ontvangen.
DisableConfidentialCreditsBlokkeert inkomende vertrouwelijke overdrachten maar staat publieke overdrachten nog steeds toe.
EnableNonConfidentialCreditsStaat een token account toe om publieke token-overdrachten te ontvangen.
DisableNonConfidentialCreditsBlokkeert reguliere overdrachten zodat het account alleen vertrouwelijke overdrachten ontvangt.
TransferWithFeeDraagt tokens vertrouwelijk over tussen token accounts met een vergoeding.
ConfigureAccountWithRegistryAlternatieve manier om token accounts te configureren voor Confidential Balances met behulp van een ElGamalRegistry-account in plaats van een VerifyPubkeyValidity-bewijs.

Is this page helpful?

Inhoudsopgave

Pagina Bewerken
© 2026 Solana Foundation. Alle rechten voorbehouden.