Safe (multisig)

Safe (opens in a new tab) is a robust and flexible smart contract platform, commonly utilized for asset management on Ethereum. It's a go-to choice for users requiring enhanced security and modular control over their digital assets. Traditionally, Safe contracts are employed for managing funds in a decentralized and secure manner. Users benefit from features like multi-signature (multisig) transactions, which require multiple confirmations before execution, ensuring greater oversight and reduced risk of unauthorized access.

Deploying a Safe

Use the Superchain Safe UI

We are thrilled to announce the availability of the Superchain Safe UI, a user-friendly interface specifically designed for interacting with Safe contracts on the Public Goods Network (PGN). This UI simplifies the process of creating, managing, and executing Safe transactions, eliminating the need for manual interaction with the underlying smart contracts.

To get started with the Superchain Safe UI:

  1. Navigate to the Superchain Safe UI (opens in a new tab)
  2. Connect your wallet
  3. Follow the on-screen instructions to create a new Safe, import an existing Safe, or interact with existing Safe contracts.

Alternatives to the Superchain Safe UI

While the Superchain Safe UI is the recommended method for most users, alternative options exist for those comfortable with interacting directly with the smart contracts:

Interact with the smart contracts

Let's explore the steps you'd need to take to interact with the smart contracts using the PGN explorer:

  1. Copy any Safe contract address
  2. Open the Explorer (opens in a new tab), search, and navigate to the selected contract addresses
  3. Open the "Contract" tab, and navigate to "Write contract"
  4. Connect your wallet
  5. Expand the contract dropdown under the "Contract information" section
  6. Enter your transaction and value into the input boxes and submit with the "Write" button

Use the Safe SDK

We'll provide some guidance here, but it is important or you to read through the Safe Core SDK (opens in a new tab) docs to understand this method.

Here are a few steps that you will need to follow:

  1. Create an ethAdapter (opens in a new tab)
  2. Create a Safe Factory and deploy the Safe (opens in a new tab)

Note: PGN is a layer 2 so no need to include the isL1SafeMasterCopy flag Note: Safe contracts are deployed to the PGN network in version v1.3.0

  1. Use the different components (opens in a new tab) available via the Protocol Kit to engage with the deployed Safe.

Safe contracts

Contract NameMainnet and testnet address
multiSend0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761
safeMasterCopy0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552
safeProxyFactory0xa6B71E26C5e0845f74c812102Ca7114b6a896AB2
multiSendCallOnly0x40A2aCCbd92BCA938b02010E17A5b8929b49130D
fallbackHandler0x1AC114C2099aFAf5261731655Dc6c306bFcd4Dbd
createCall0x7cbB62EaA69F79e6873cD1ecB2392971036cFAa4
signMessageLib0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2