Poufny transfer

Czym są Poufne Transfery?

Poufne transfery umożliwiają przesyłanie tokenów między token accounts bez ujawniania kwoty transferu. Jest to przydatne do transakcji zachowujących prywatność. Prywatne są tylko kwoty transferów i salda tokenów. Adresy token accounts pozostają publiczne.

Jak to działa?

Rozszerzenie Confidential Transfer dodaje instrukcje do Token Extensions Program, które umożliwiają przesyłanie tokenów między kontami bez ujawniania kwoty transferu.

Confidential Transfer Basic Overview

Podstawowy przebieg poufnych transferów tokenów jest następujący:

  1. Utwórz mint account z rozszerzeniem poufnego transferu.
  2. Utwórz token accounts z rozszerzeniem poufnego transferu dla nadawcy i odbiorcy.
  3. Wyemituj tokeny na konto nadawcy.
  4. Wpłać publiczne saldo nadawcy na poufne saldo oczekujące.
  5. Zastosuj saldo oczekujące nadawcy jako poufne saldo dostępne.
  6. Poufnie prześlij tokeny z token account nadawcy do token account odbiorcy.
  7. Zastosuj saldo oczekujące odbiorcy jako poufne saldo dostępne.
  8. Wypłać poufne saldo dostępne odbiorcy na saldo publiczne.

Aby uzyskać więcej informacji na temat kroków w procesie poufnego transferu, zapoznaj się z odpowiednimi stronami:

Poniższy diagram przedstawia szczegółową sekwencję podstawowego przepływu dla poufnych przelewów tokenów:

Confidential Transfer Detailed Overview

Instrukcje poufnych przelewów

Pełna lista instrukcji rozszerzenia Confidential Transfer instructions jest następująca:

InstrukcjaOpis
InitializeMintKonfiguruje mint account do poufnych przelewów. Ta instrukcja musi być zawarta w tej samej transakcji co instrukcja TokenInstruction::InitializeMint.
UpdateMintAktualizuje ustawienia poufnych przelewów dla mint account.
ConfigureAccountKonfiguruje token account do poufnych przelewów.
ApproveAccountZatwierdza token account do poufnych przelewów, jeśli mint wymaga zatwierdzenia dla nowych token accounts.
EmptyAccountOpróżnia oczekujące i dostępne poufne salda, aby umożliwić zamknięcie token account.
DepositKonwertuje publiczne saldo tokenów na oczekujące poufne saldo.
WithdrawKonwertuje dostępne poufne saldo z powrotem na saldo publiczne.
TransferPoufnie przesyła tokeny między token accounts.
ApplyPendingBalanceKonwertuje oczekujące saldo na dostępne saldo po wpłatach lub przelewach.
EnableConfidentialCreditsUmożliwia token account odbieranie poufnych przelewów tokenów.
DisableConfidentialCreditsBlokuje przychodzące poufne przelewy, jednocześnie zezwalając na publiczne przelewy.
EnableNonConfidentialCreditsUmożliwia token account odbieranie publicznych przelewów tokenów.
DisableNonConfidentialCreditsBlokuje zwykłe przelewy, aby token account odbierał wyłącznie poufne przelewy.
TransferWithFeePoufnie przesyła tokeny między token accounts z opłatą.
ConfigureAccountWithRegistryAlternatywny sposób konfiguracji token accounts do poufnych przelewów przy użyciu konta ElGamalRegistry zamiast dowodu VerifyPubkeyValidity.

Is this page helpful?

Spis treści

Edytuj stronę