Client (User)
Last updated
Last updated
Clients have two ways to submit their transactions to the transaction orderer.
Using secure-rpc: Clients send their signed raw transactions to secure-rpc. The secure-rpc retrieves the necessary encryption key and other data from the DKG, encrypts the transaction, and forwards it to the tx_orderer. When the tx_orderer responds with an encrypted pre-confirmation, the secure-rpc then provides the decryption key. This ensures that transactions can only be decrypted after encrypted pre-confirmations are received.
Using radius-snap: Clients can generate or import their private key through the radius-snap. This allows the snap to sign raw transactions and encrypt them using an encryption key obtained from the DKG locally. Once signed and encrypted, the transaction is sent directly to the tx_orderer.
Client sends a raw transaction to Secure RPC.
Secure RPC fetches SKDE parameters and the encryption key from the Distributed Key Generation (DKG) Service.
Secure RPC encrypts the transaction.
Secure RPC sends the encrypted transaction to the tx_orderer.
Client generates or imports a private key.
Client sends a raw transaction to the Snap.
Snap fetches SKDE parameters and the encryption key from the Distributed Key Generation (DKG) Service.
Snap encrypts the transaction using .wasm
.
Snap sends the encrypted transaction to the tx_orderer.
For details on radius-snap, refer to its GitHub repository.