Smart Security Practices From The Best
What do Lido, Red Stone, YieldNest, and Braintrust have in common? They’ve developed effective methods for improving security without drastically increasing costs. Top-tier protocol […]
Clear instructions and best security practices to ensure the secure usage of private keys for smart contract management.
Private key compromise has become the most significant attack vector this year so far and is responsible for the greatest financial damage. The likelihood that you will be hacked due to your negligence in operational security is ~74% according to data presented by @_iphelix during DSS2024.

Watch Peter’s full presentation here.
Each entity managing or being part of a privileged role in a smart contract should have its own key generated separately by itself.
Buy an original hardware wallet from the official website and use the private key stored in a secure element chip, isolated from internet-connected devices.
If PC is adequately protected, consider software solutions to generate keys that utilize high entropy (ideally on a different account on the computer or on another computer dedicated for the project):
openssl ecparam -name secp256k1 -genkey -noout).ONLY key owners, who should be highly trusted individuals being part of the multi-sig or managing a trusted role.
NEVER share the private key.
Store the key in a software wallet in an isolated browser profile, ideally on a separate account. Consider using a separate device that is never used for non-project operations (e.g., airdrop claims!).
--trezor to use a Trezor hardware wallet--ledger to use a Ledger hardware wallet--aws to use AWS Key Management Service.env file can be used; however, preferably addresses from this private key should not have any privileged role assigned.| No. | Item |
|---|---|
| 1. | Verify that the key was generated in a secure environment. |
| 2. | Ensure that each private key has only one owner and no one else has access to it. |
| 3. | Confirm that compromise or loss of access to a single private key will not impact the users and that there is a securely stored backup. |
| 4. | Verify that each key owner has gone through the recovery procedure. |
| 5. | Ensure that access to the private key is protected by MFA. |
| 6. | Use different keys for mainnet launch and test environments. |
| 7. | Ensure that compromised keys are irrecoverably erased and no longer used anywhere. |
| 8. | Ensure private keys are securely stored, preferably in hardware wallets or HSMs, or kept in a separate wallet (isolated environment) that is never used for other activities. |
| 9. | Regularly update and patch all software and hardware used in key management. |
| 10. | Educate all key holders on best security practices and potential threats. |
Composable Security 🛡️⛓️ is an elite team of 2 experienced Security Researchers who specialize in (re)staking, AVS and UniswapV4 projects.
Uniswap Foundation grant recipient. Creators of the Smart Contract Security Verification Standard and the first Security Guide for DApps CTOs, Lead Developers, and Security Enthusiasts.
Have peace of mind like: RedStone, Braintrust, Enjin, Tellor, and many more.
Meet Composable Security
Get throughly tested by the creators of Smart Contract Security Verification Standard
Let us help
Get throughly tested by the creators of Smart Contract Security Verification Standard