Defines the multi-signature safe standard for Lux Network. Safes are multi-owner smart contract wallets requiring m-of-n signatures to execute transactions. The implementation is based on the Safe (formerly Gnosis Safe) architecture, deployed on all Lux EVM chains. Safes are used for treasury management, protocol admin keys, and team fund operations.
SafeProxy -> SafeSingleton (master copy)
|-- OwnerManager (add/remove/swap owners, threshold)
|-- ModuleManager (enable/disable execution modules)
|-- GuardManager (pre/post transaction guards)
|-- FallbackManager (fallback handler for unknown calls)
execTransaction(to, value, data, signatures) | Execute with m-of-n signatures |addOwnerWithThreshold(owner, threshold) | Add signer, adjust threshold |removeOwner(prevOwner, owner, threshold) | Remove signer |changeThreshold(threshold) | Adjust required signatures |Safes are deployed via the SafeProxyFactory using CREATE2 for deterministic addresses. The factory is deployed at the same address on all chains:
Factory: 0x4e1DCf7AD4e460CfD30791CCC4F9c8a4f820ec67
Transaction guards enforce additional policies:
1. The SafeSingleton is a master copy. Safes use delegatecall via proxy. A compromised singleton affects all Safes. The singleton is immutable and audited.
2. Owner management requires threshold signatures. No single owner can add/remove owners unilaterally.
3. Modules have unrestricted execution power. Only enable audited, trusted modules.
4. Nonce tracking prevents replay. Each Safe maintains an incrementing nonce.
github.com/luxfi/standard/contracts/safe/ |github.com/luxfi/standard/contracts/safe/SafeProxyFactory.sol |Copyright (C) 2023-2026, Lux Partners Limited. All rights reserved.
Licensed under the MIT License.