Go to production
To connect to the production environment, make sure your
chain.jsoncontent is as follows:
Do not forget to target a production workerpool when running a production application:
iexec app run <0x-your-app-address> \
--workerpool prod-v8-bellecour.main.pools.iexec.eth \
The following applies only to the Scone framework.
If you are developing a Confidential Computing application, be aware of following information.
- sharing the folder containing the
- adding the
docker run -it \
-v /signer:/signer \
- storing all secrets of iExec users (application developer, requester, dataset owner)
- defining - by following on-chain governance - which secrets are accessible to a specific enclave.
To reach a higher level of security on the production environment, the iExec SMS runs inside an enclave.
Below is a graph showing how the secrets and session mechanism works:
Inside Security Services (yellow area in above diagram), all secrets are protected by an SMS database encryption key, itself backed by the CAS. The SMS enclave needs to prove its authenticity and integrity to the CAS in order to get access to its database encryption key.
With that pattern, no one, even an administrator or someone with root privileges, can inspect confidential assets of users.
While giving high guarantees about confidentiality of the data, if the CAS software is updated, or if the hardware under the CAS is updated or falls out of order, the CAS data will not be recoverable, hence user secrets will be lost.
In addition, when deploying a new configuration or software release for the SMS, the application enclave hash (MREnclave) will change. For that reason, old SMS data enclave will not be accessible to the new one, hence user secrets will be lost.
For these reasons, secrets can be lost at any time, with or without notice. Always keep a local copy of your secrets. Nobody, even iExec, will be able to restore them.