Skalespace: conditional decryption in SKALE
On SKALE Base and SKALE Base Sepolia, SKALE’s conditional transactions let smart contracts request decryption on demand. This capability supports sealed-bid auctions and voting within SKALE’s programmable privacy system.
Last updated -
- Requesting component
- A smart contract.
- Privacy foundation
- SKALE’s programmable privacy uses threshold encryption.
- Execution environment
- EVM-compatible SKALE Base mainnet and SKALE Base Sepolia testnet; contact the SKALE team for conditional-transaction access.
Contract requests and transaction visibility
First, a contract checks its Solidity condition, such as whether an auction or voting deadline has passed. Once the condition is met, the contract can request decryption, which queues a callback through a unique ephemeral wallet. The contract must restrict its callback to that wallet and revoke the authorization after use. In a later block, validators decrypt the requested arguments and deliver them to the contract’s callback. The related encrypted-transactions feature hides the destination address and call data during mempool and consensus, then decrypts after finality for execution. These functions address distinct requirements: an application’s need to request decryption and a transaction’s visibility during processing.
| Privacy capability | Function | Relevant scope |
|---|---|---|
| Conditional transactions | Allow a smart contract to request decryption on demand. | Uses include sealed-bid auctions and voting on SKALE Base and SKALE Base Sepolia; contact the SKALE team for access. |
| Encrypted transactions | Hide transaction payloads during mempool and consensus. | On SKALE Base and SKALE Base Sepolia, payload protection provides MEV resistance before finality; decrypted details are visible onchain after execution. |