shield-halvedsend_shielded_transaction

Send encrypted TxSeismic transaction

Build, encrypt, sign, and broadcast a shielded transaction.

Signatures

# sync
w3.seismic.send_shielded_transaction(
    *,
    to: ChecksumAddress,
    data: HexBytes,
    value: int = 0,
    gas: int | None = None,
    gas_price: int | None = None,
    security: SeismicSecurityParams | None = None,
    eip712: bool = False,
) -> HexBytes

# async
await w3.seismic.send_shielded_transaction(...same args...) -> HexBytes

Parameters

Parameter
Type
Default
Description

to

ChecksumAddress

Required

Recipient contract address

data

HexBytes

Required

Plaintext calldata (SDK encrypts it)

value

int

0

Wei to transfer

gas

int | None

None

Gas limit (defaults to 30_000_000)

gas_price

int | None

None

Gas price in wei (fetched from chain if None)

security

None

Override default security parameters

eip712

bool

False

Use EIP-712 typed-data signing path

Returns

HexBytes — transaction hash from eth_sendRawTransaction.

Example

What's encrypted

The SDK encrypts the data field (function selector + arguments) using AES-GCM with the ECDH-derived key. An observer can see from, to, value, and gas parameters, but not which function was called or what arguments were passed.

Notes

  • For contract interactions, prefer contract.write.functionName(...) which handles ABI encoding and encryption automatically

  • Creates a TxSeismic (type 0x4a) transaction

  • SDK auto-fetches nonce via eth_getTransactionCount

See Also

Last updated