- Créer un portefeuille privé auto-custodial
- Recevoir des transferts privés avec une adresse Solana
- Déposer des jetons sur un solde privé
- Envoyer en privé à une adresse Solana
- Retirer vers n’importe quelle adresse Solana
- Décrypter les soldes privés et l’historique des transactions localement
- Paire de clés protégée – dans votre gestion des clés pour le chiffrement
- Interface de Confidentialité et SDK – pour construire des transactions privées
- Flux Utilisateurs – pour intégrer dans votre portefeuille
Contexte pour votre IA
Add a Private Wallet to an existing Solana wallet
View prompt
View prompt
1
Intégrer la Paire de Clés Protégée
Une intégration de portefeuille privé ajoute une paire de clés protégée à votre gestion des clés. Une paire de clés protégée signe, chiffre et déchiffre des transactions.La paire de clés protégée est un ensemble des clés de signature, de nullification et de visualisation.- Clé de signature : La paire de clés Ed25519 Solana du portefeuille pour signer des transactions.
- Clé de visualisation : Une paire de clés P-256, utilisée pour chiffrer et déchiffrer des transactions.
- Clé de nullification :
- Pour les portefeuilles basés sur une graine, choisissez Dériver à partir de la phrase de récupération.
- Pour les portefeuilles non basés sur une graine, choisissez Dériver à partir de la signature EdDSA.
- Dériver à partir de la phrase de récupération
- Dériver à partir de la signature EdDSA
Un portefeuille basé sur une graine dérive la paire de clés protégée à partir d’un mnémonique BIP-39 et d’un index de compte (
0, 1, …).Chaque index de compte associe une paire de clés Solana à une paire de clés protégée.
Vous pouvez récupérer la paire de clés protégée de la même manière que vous récupérez la paire de clés Solana.Par exemple :- Compte 0 : paire de clés Solana 0 et paire de clés protégée 0
- Compte 1 : paire de clés Solana 1 et paire de clés protégée 1
La clé de signature protégée est la clé Ed25519 Solana de ce compte.
Les clés de nullification et de visualisation sont des clés supplémentaires dérivées de la même graine.
Implémentation Exemple: Exemple TypeScript · Exemple Rust
2
Intégrer l’Interface de Confidentialité et le SDK
L’Interface de Confidentialité permet à votre code d’utiliser le SDK Privacy pour construire des transactions privées sans accéder directement au matériel des clés. Votre gestion des clés implémente l’Interface de Confidentialité en deux parties.- Interface de Signature pour la Construction de Transactions avec le SDK Privacy. Voir Source: TypeScript/ Rust
- Interface de Chiffrement & Déchiffrement. Voir Source: TypeScript/ Rust
L’Interface de Confidentialité est sans état et ne stocke donc pas les soldes ou l’historique des transactions.
Pour la performance, nous recommandons de mettre en cache les soldes et l’historique des transactions des utilisateurs localement.
Sur la Génération de Preuves
La génération de preuves à connaissance nulle nécessite des entrées en texte clair des données complètes de la transaction de l’utilisateur et des clés de nullification.Actuellement, la génération de preuves par le serveur est disponible via l’URL standard de Helius RPC.La génération de preuves locales sera bientôt disponible. La génération de preuves sur serveur entièrement cryptée de bout en bout sur AWS Nitro est prévue avant le lancement sur le réseau principal.3
Intégrer les Flux Utilisateurs
Créer un Portefeuille Privé
Un portefeuille privé est créé en deux étapes :- Dériver la paire de clés protégée
- Enregistrer l’adresse Solana dans le registre sur chaîne.
Chaque enregistrement de registre est un PDA détenu par le , que tout le monde peut consulter pour voir si une adresse Solana peut recevoir des transferts privés.
Synchroniser le Solde Privé & l’Historique des Transactions
La synchronisation des soldes récupère l’état chiffré du RPC et le déchiffre dans le portefeuille.Le RPC ne déchiffre pas. Seul le propriétaire peut déchiffrer un solde privé avec une clé de visualisation.Un portefeuille devrait déchiffrer et mettre à jour les soldes avant les transactions privées et partout où il exécute des remplissages : lors du déverrouillage du portefeuille, de l’ouverture du portefeuille privé, de la reprise de l’application, de la reconnexion au réseau, de l’écart de flux, ou de la restauration du portefeuille.
Lire un Solde Privé
Lire l'Historique des Transactions Privées
Dépôt sur un Solde Privé
Les utilisateurs peuvent déposer sur un solde privé de deux façons :- Passerelle d’entrée depuis un solde fiat vers un solde crypto privé
- Dépôt depuis un compte SPL public vers un solde privé
Rampe d'accès/de sortie
Rampe d’accès/de sortie en fiat directement vers et depuis un solde privé.
Dépôt
Dépôt depuis un solde crypto public.
Transferts Privés
Les utilisateurs peuvent envoyer des transferts privés à n’importe quelle adresse de portefeuille Solana.Pour chaque transfert privé, le SDK Privacy recherche l’adresse du portefeuille dans le registre sur chaîne pour vérifier si le destinataire possède un portefeuille privé.Le SDK Privacy peut résoudre un transfert privé en un retrait privé-vers-public, lorsque le destinataire ne possède pas de portefeuille privé.Nous recommandons de marquer la transaction dans l’interface utilisateur comme un retrait pour assurer que l’utilisateur ne retire pas par accident vers un solde public.
Transfert Privé
Transfert privé vers un solde privé.
Retirer vers un Solde Public
Les retraits peuvent être utilisés de deux façons :- En tant que solution de repli pour des transferts privés vers des destinataires qui n’ont pas de portefeuille privé, ou
- Retrait direct vers un compte de jeton SPL public.
Retrait
Retirer vers un solde crypto public.