Encryption
ECDH key exchange, AES-GCM calldata encryption, and the Seismic encryption pipeline
Encryption Flow
1. Client generates an ephemeral secp256k1 keypair (or uses a provided one)
2. Client fetches the TEE public key from the node via seismic_getTeePublicKey
3. ECDH(client_sk, tee_pk) → shared secret
4. Shared secret → AES-256 key (via key derivation)
5. For each transaction:
a. Generate a random 12-byte nonce
b. Encode TxSeismicMetadata as Additional Authenticated Data (AAD)
c. AES-GCM encrypt(plaintext_calldata, nonce, aad) → ciphertext
d. Include encryptionPubkey + nonce in the transaction's SeismicTxExtras fieldsgetEncryption(networkPk, clientSk?)
Import
Parameters
Parameter
Type
Required
Description
Returns
Property
Type
Description
Example
Encryption Actions
Action
Return Type
Description
Example
SeismicTxExtras
Field
Type
Description
AES-GCM with AEAD
Crypto Dependencies
Package
Purpose
See Also
Last updated

