Search
⌃
K
Getting started
Overview
Private Payments Tutorial
Creating a custom PSP
References
zk.js
CLI
Core protocol
UTXO
Account
Transaction Parameters
Merkle Tree
Multi Asset Pool Circuit (Zero Knowledge Proof)
Liquidity Pools
System Verifier
Core concepts
High-level overview
Lifecycle of a Light transaction
Relayers
Help & support
Contact
FAQ - Devnet
More
Light for Solana Wallets
Security
Compliance
Terms of Use
About
End user guides
(v1) Effective privacy
(v1) Signing messages
Powered By
GitBook
Account
To derive account keypairs, a user generates a base seed from the hash of an ed25519 signature, the signature algorithm used in Solana. This seed is used to derive several keypairs in different domains:
Shielded Keypair
Is used to send and receive shielded tokens.
Scheme:
Private key = blake2bHash(seed + "shielded");
Public key = PoseidonHash(private key)
Signature = PoseidonHash(private key, input1, input2);
Encryption Keypair
encryptionPrivkey = blake2bHash(seed + "encryption");
Poseidon Eddsa Keypair
Eddsa instantiated with the poseidon hash over Bn254.
Aes Keypair
Burner Seeds
creates a new seed
Custom Domain Keypair
not added yet SDK exposes a call with which the developer can get a private key in a custom domain.
Previous
UTXO
Next
Transaction Parameters
Last modified
6mo ago