S

SafeGuard

Customisable on-chain financial controllers on Safes

S

SafeGuard

Customisable on-chain financial controllers on Safes

The problem SafeGuard solves

Transaction guards were introduced on Safes to improve account security and enable better financial controls among other purposes. However, setting these guards on the safes is a long and cumbersome process as one needs to know how to program the custom logic needed in the guard, deploy the guard contract and then set it up from the Safe UI using a contract interaction. This is where SafeGuard comes in.

SafeGuard enables users to add customisable on-chain financial controllers on their safes allowing them to unlock a new level of control, transparency and security over their financial actions. The two main transaction guards currently provided are AllowList Guard and DenyList Guard. These guards let users safely transact with only certain addresses. The former guard only allows Safe transactions to be sent to a list of addresses chosen by the user while the latter does not let users send Safe transactions to addresses that they do no want to. This is a great way for users to reduce their compliance risk as well by not having their transactions sent to sanctioned addresses.

The other two guards provided help users avoid overpaying during gas price volatility and have safes that can only be accessed for a certain period of time.

The contract addresses on Polygon mainnet are:
AllowList Guard Deployer contract address: 0x28572Ba0bA799494a63A57d574598c2Ede1eeBBE
DenyList Guard Deployer contract address: 0x8516d935daD1BC7bD6147E6CB0F4a6dEf7D6d791

Challenges we ran into

The main problem we came across was to figure out the transaction flow of the transaction which we initiate from safe, and make sure we aren’t blocking any safe contracts if that happens then no transactions can be executed from the safe and funds would be locked in there.

Tracks Applied (4)

ENS

ENS

Valist

Valist

Safe

Safe

Gnosis Chain

Gnosis Chain

Discussion