Security & verification
Verify what runs.
See who controls it.
Inspect the source, check the running software, and see who can approve a change.
Software has an identity
Change the code.
The hash changes.
A hash identifies an exact version of code. Hardware attestation lets you check which version is running. Verify that your connection reaches that runtime before sending private data.
function maySign(amount) {
return amount <= 1000;
}Wallet permissions
You decide which code
can use your wallet.
In ChainSecured mode, your wallet owns the account. You use on-chain groups to specify which Actions can use each key. The runtime checks those permissions on every request.
Inspect Chain SecuredProtocol governance
Follow software
approvals on-chain.
Deploying new software does not give it access to runtime keys. The key-management system checks hardware attestation and on-chain approval before releasing them.
Runtime approvals are separate from your wallet permissions.
- Software identity
- Measured by hardware attestation
- Release approval
- Code hashes authorized on-chain
- Key release
- Requires attestation and on-chain approval
Inspect the approved software versions, approval rules, and upgrade process in the governance guide.
Trust & boundaries
Understand what
verification tells you.
Isolation relies on hardware.
Confidential hardware protects runtime memory from the host. That protection depends on the security of the hardware and firmware.
Check who can approve changes.
Account permissions and protocol approvals have separate rules. Review how each can change when verifying a deployment.
Verified code can still have bugs.
Attestation identifies software. It does not prove application logic, external data, or model responses are correct.
Outputs still need controls.
Review permitted requests, responses, and logs. Verification does not prevent every data leak or guarantee availability.
Build with Lit