GnosisSafeL2

Optimism 瀏覽鏈

0x2a82ae142b2e62cb7d10b55e323acb1cab663a26

Proxy 實作合約: 0xfb1bffc9d739b8d520daf37df666da4c687191ea

Solidity v0.7.6+commit.7338295f

🤖
透過你的 AI 查詢此合約
參考: 0x2a82ae142b2e62cb7d10b55e323acb1cab663a26
範例提示詞: "Tell me the current state of optimism/0x2a82ae142b2e62cb7d10b55e323acb1cab663a26"
還沒有接入 AI?→ mcp.smarts.md · 瀏覽鏈

管理與風險

誰能修改規則?

Detected upgradeable controls from the verified ABI.

Upgradeable

當前控制

Implementation
0xfb1bffc9d739b8d520daf37df666da4c687191ea ↗ Etherscan → smarts proxy

概覽

讀取函式
16
寫入函式
15
事件
17

讀取函式

Block #152,755,283 · just now
VERSION() view → 1.3.0

Returns the current contract version string.✨ AI

回傳值

名稱 類型 描述
string A string containing the contract version identifier, e.g. a semantic version or build tag.✨ AI
approvedHashes(address, bytes32) view

Get the stored approval value for an owner and a specific hash.✨ AI

參數

名稱 類型 描述
address
bytes32

回傳值

名稱 類型 描述
uint256 Uint256 value representing the stored approval state for the owner and hash.✨ AI
checkNSignatures(dataHash: bytes32, data: bytes, signatures: bytes, requiredSignatures: uint256) view

Verify that the provided signatures satisfy the requiredSignatures threshold for the given dataHash and data.✨ AI

開發者: Checks whether the signature provided is valid for the provided data, hash. Will revert otherwise.

參數

名稱 類型 描述
dataHash bytes32 Hash of the data (could be either a message hash or transaction hash)
data bytes That should be signed (this is passed to an external validator contract)
signatures bytes Signature data that should be verified. Can be ECDSA signature, contract signature (EIP-1271) or approved hash.
requiredSignatures uint256 Amount of required valid signatures.
checkSignatures(dataHash: bytes32, data: bytes, signatures: bytes) view

Checks that the provided signatures validly authorize the given dataHash and data.✨ AI

開發者: Checks whether the signature provided is valid for the provided data, hash. Will revert otherwise.

參數

名稱 類型 描述
dataHash bytes32 Hash of the data (could be either a message hash or transaction hash)
data bytes That should be signed (this is passed to an external validator contract)
signatures bytes Signature data that should be verified. Can be ECDSA signature, contract signature (EIP-1271) or approved hash.
domainSeparator() view → 0x462891ca8f7777ee79e5fe4366d0577864fdf00769c59e345303b084bf0cf38d

Returns the EIP-712 domain separator for this Gnosis Safe on L2.✨ AI

回傳值

名稱 類型 描述
bytes32 The 32-byte EIP-712 domain separator used in typed data hashing and signature verification.✨ AI
encodeTransactionData(to: address, value: uint256, data: bytes, operation: uint8, safeTxGas: uint256, baseGas: uint256, gasPrice: uint256, gasToken: address, refundReceiver: address, _nonce: uint256) view

Encode a Safe transaction into the canonical bytes payload for signing or relaying.✨ AI

開發者: Returns the bytes that are hashed to be signed by owners.

參數

名稱 類型 描述
to address Destination address.
value uint256 Ether value.
data bytes Data payload.
operation uint8 Operation type.
safeTxGas uint256 Gas that should be used for the safe transaction.
baseGas uint256 Gas costs for that are independent of the transaction execution(e.g. base transaction fee, signature check, payment of the refund)
gasPrice uint256 Maximum gas price that should be used for this transaction.
gasToken address Token address (or 0 if ETH) that is used for the payment.
refundReceiver address Address of receiver of gas payment (or 0 if tx.origin).
_nonce uint256 Transaction nonce.

回傳值

名稱 類型 描述
bytes Transaction hash bytes.
getChainId() view → 10

Gets the current chain ID of the blockchain.✨ AI

開發者: Returns the chain id used by this contract.

回傳值

名稱 類型 描述
uint256 The chain identifier (chainId) as a uint256.✨ AI
getModulesPaginated(start: address, pageSize: uint256) view

Returns a paginated list of enabled module addresses starting after the provided address.✨ AI

開發者: Returns array of modules.

參數

名稱 類型 描述
start address Start of the page.
pageSize uint256 Maximum number of modules that should be returned.

回傳值

名稱 類型 描述
array address[] array Array of modules.
next address next Start of the next page.
getOwners() view → [0x3f3cd78ef9bd85961c0729e6bbb11e94ca6f61d2]

Returns the list of owner addresses for this Gnosis Safe.✨ AI

開發者: Returns array of owners.

回傳值

名稱 類型 描述
address[] Array of Safe owners.
getStorageAt(offset: uint256, length: uint256) view

Read raw contract storage starting at the specified storage slot offset and return the requested bytes.✨ AI

開發者: Reads `length` bytes of storage in the currents contract

參數

名稱 類型 描述
offset uint256 - the offset in the current contract's storage in words to start reading from
length uint256 - the number of words (32 bytes) of data to read

回傳值

名稱 類型 描述
bytes the bytes that were read.
getThreshold() view → 1

Returns the current approval threshold required to execute a transaction.✨ AI

回傳值

名稱 類型 描述
uint256 The uint256 number of owner confirmations required to execute a safe transaction.✨ AI
getTransactionHash(to: address, value: uint256, data: bytes, operation: uint8, safeTxGas: uint256, baseGas: uint256, gasPrice: uint256, gasToken: address, refundReceiver: address, _nonce: uint256) view

Compute the deterministic hash of a Safe transaction for signing or on-chain verification.✨ AI

開發者: Returns hash to be signed by owners.

參數

名稱 類型 描述
to address Destination address.
value uint256 Ether value.
data bytes Data payload.
operation uint8 Operation type.
safeTxGas uint256 Fas that should be used for the safe transaction.
baseGas uint256 Gas costs for data used to trigger the safe transaction.
gasPrice uint256 Maximum gas price that should be used for this transaction.
gasToken address Token address (or 0 if ETH) that is used for the payment.
refundReceiver address Address of receiver of gas payment (or 0 if tx.origin).
_nonce uint256 Transaction nonce.

回傳值

名稱 類型 描述
bytes32 Transaction hash.
isModuleEnabled(module: address) view

Returns true if the specified module address is enabled for this Safe.✨ AI

開發者: Returns if an module is enabled

參數

名稱 類型 描述
module address Module address to check for enabled status.✨ AI

回傳值

名稱 類型 描述
bool True if the module is enabled
isOwner(owner: address) view

Checks whether the provided address is a registered owner of the Safe.✨ AI

參數

名稱 類型 描述
owner address Address to check for ownership.✨ AI

回傳值

名稱 類型 描述
bool True if the address is an owner, false otherwise.✨ AI
nonce() view → 13

Returns the current nonce used to sequence the safe's transactions.✨ AI

回傳值

名稱 類型 描述
uint256 Current nonce (uint256) used to order and replay-protect the safe's transactions.✨ AI
signedMessages(bytes32) view

Return the uint256 value stored for a given message hash.✨ AI

參數

名稱 類型 描述
bytes32

回傳值

名稱 類型 描述
uint256 The uint256 value associated with the given message hash.✨ AI

寫入函式

addOwnerWithThreshold(owner: address, _threshold: uint256) nonpayable

Adds the owner `owner` to the Safe and updates the threshold to `_threshold`.

開發者: Allows to add a new owner to the Safe and update the threshold at the same time. This can only be done via a Safe transaction.

參數

名稱 類型 描述
owner address New owner address.
_threshold uint256 New threshold.
approveHash(hashToApprove: bytes32) nonpayable

Approve a hash so the Safe marks it as approved by the calling owner.✨ AI

開發者: Marks a hash as approved. This can be used to validate a hash that is used by a signature.

參數

名稱 類型 描述
hashToApprove bytes32 The hash that should be marked as approved for signatures that are verified by this contract.
changeThreshold(_threshold: uint256) nonpayable

Changes the threshold of the Safe to `_threshold`.

開發者: Allows to update the number of required confirmations by Safe owners. This can only be done via a Safe transaction.

參數

名稱 類型 描述
_threshold uint256 New threshold.
disableModule(prevModule: address, module: address) nonpayable

Disables the module `module` for the Safe.

開發者: Allows to remove a module from the whitelist. This can only be done via a Safe transaction.

參數

名稱 類型 描述
prevModule address Module that pointed to the module to be removed in the linked list
module address Module to be removed.
enableModule(module: address) nonpayable

Enables the module `module` for the Safe.

開發者: Allows to add a module to the whitelist. This can only be done via a Safe transaction.

參數

名稱 類型 描述
module address Module to be whitelisted.
execTransaction(to: address, value: uint256, data: bytes, operation: uint8, safeTxGas: uint256, baseGas: uint256, gasPrice: uint256, gasToken: address, refundReceiver: address, signatures: bytes) payable

Execute a Safe transaction with provided calldata, gas settings, and signatures.✨ AI

開發者: Allows to execute a Safe transaction confirmed by required number of owners and then pays the account that submitted the transaction. Note: The fees are always transferred, even if the user transaction fails.

參數

名稱 類型 描述
to address Destination address of Safe transaction.
value uint256 Ether value of Safe transaction.
data bytes Data payload of Safe transaction.
operation uint8 Operation type of Safe transaction.
safeTxGas uint256 Gas that should be used for the Safe transaction.
baseGas uint256 Gas costs that are independent of the transaction execution(e.g. base transaction fee, signature check, payment of the refund)
gasPrice uint256 Gas price that should be used for the payment calculation.
gasToken address Token address (or 0 if ETH) that is used for the payment.
refundReceiver address Address of receiver of gas payment (or 0 if tx.origin).
signatures bytes Packed signature data ({bytes32 r}{bytes32 s}{uint8 v})

回傳值

名稱 類型 描述
bool True if the transaction was executed successfully, false otherwise.✨ AI
execTransactionFromModule(to: address, value: uint256, data: bytes, operation: uint8) nonpayable

Executes a transaction initiated by a module, sending value and data to the specified target address.✨ AI

開發者: Allows a Module to execute a Safe transaction without any further confirmations.

參數

名稱 類型 描述
to address Destination address of module transaction.
value uint256 Ether value of module transaction.
data bytes Data payload of module transaction.
operation uint8 Operation type of module transaction.

回傳值

名稱 類型 描述
success bool True if the executed call succeeded, false otherwise.✨ AI
execTransactionFromModuleReturnData(to: address, value: uint256, data: bytes, operation: uint8) nonpayable

Executes a transaction from an enabled module and returns whether it succeeded and any returned data.✨ AI

開發者: Allows a Module to execute a Safe transaction without any further confirmations and return data

參數

名稱 類型 描述
to address Destination address of module transaction.
value uint256 Ether value of module transaction.
data bytes Data payload of module transaction.
operation uint8 Operation type of module transaction.

回傳值

名稱 類型 描述
success bool Boolean indicating whether the executed transaction succeeded.✨ AI
returnData bytes Raw return data from the executed call.✨ AI
removeOwner(prevOwner: address, owner: address, _threshold: uint256) nonpayable

Removes the owner `owner` from the Safe and updates the threshold to `_threshold`.

開發者: Allows to remove an owner from the Safe and update the threshold at the same time. This can only be done via a Safe transaction.

參數

名稱 類型 描述
prevOwner address Owner that pointed to the owner to be removed in the linked list
owner address Owner address to be removed.
_threshold uint256 New threshold.
requiredTxGas(to: address, value: uint256, data: bytes, operation: uint8) nonpayable

Deprecated in favor of common/StorageAccessible.sol and will be removed in next version.

開發者: Allows to estimate a Safe transaction. This method is only meant for estimation purpose, therefore the call will always revert and encode the result in the revert data. Since the `estimateGas` function includes refunds, call this method to get an estimated of the costs that are deducted from the safe with `execTransaction`

參數

名稱 類型 描述
to address Destination address of Safe transaction.
value uint256 Ether value of Safe transaction.
data bytes Data payload of Safe transaction.
operation uint8 Operation type of Safe transaction.

回傳值

名稱 類型 描述
uint256 Estimate without refunds and overhead fees (base transaction and payload data gas costs).
setFallbackHandler(handler: address) nonpayable

Set the fallback handler address that processes calls that do not match any contract function.✨ AI

開發者: Allows to add a contract to handle fallback calls. Only fallback calls without value and with data will be forwarded. This can only be done via a Safe transaction.

參數

名稱 類型 描述
handler address contract to handle fallbacks calls.
setGuard(guard: address) nonpayable

Sets the guard contract that runs checks before transactions execute.✨ AI

開發者: Set a guard that checks transactions before execution

參數

名稱 類型 描述
guard address The address of the guard to be used or the 0 address to disable the guard
setup(_owners: address[], _threshold: uint256, to: address, data: bytes, fallbackHandler: address, paymentToken: address, payment: uint256, paymentReceiver: address) nonpayable

Set up the Safe by providing owners, the confirmation threshold, and an optional initialization call.✨ AI

開發者: Setup function sets initial storage of contract.

參數

名稱 類型 描述
_owners address[] List of Safe owners.
_threshold uint256 Number of required confirmations for a Safe transaction.
to address Contract address for optional delegate call.
data bytes Data payload for optional delegate call.
fallbackHandler address Handler for fallback calls to this contract
paymentToken address Token that should be used for the payment (0 is ETH)
payment uint256 Value that should be paid
paymentReceiver address Adddress that should receive the payment (or 0 if tx.origin)
simulateAndRevert(targetContract: address, calldataPayload: bytes) nonpayable

Simulate a call to a target contract using provided calldata and revert to avoid state changes.✨ AI

開發者: Performs a delegetecall on a targetContract in the context of self. Internally reverts execution to avoid side effects (making it static). This method reverts with data equal to `abi.encode(bool(success), bytes(response))`. Specifically, the `returndata` after a call to this method will be: `success:bool || response.length:uint256 || response:bytes`.

參數

名稱 類型 描述
targetContract address Address of the contract containing the code to execute.
calldataPayload bytes Calldata that should be sent to the target contract (encoded method name and arguments).
swapOwner(prevOwner: address, oldOwner: address, newOwner: address) nonpayable

Replaces the owner `oldOwner` in the Safe with `newOwner`.

開發者: Allows to swap/replace an owner from the Safe with another address. This can only be done via a Safe transaction.

參數

名稱 類型 描述
prevOwner address Owner that pointed to the owner to be replaced in the linked list
oldOwner address Owner address to be replaced.
newOwner address New owner address.

事件

AddedOwner(owner: address)
名稱 類型 已索引 描述
owner address
ApproveHash(approvedHash: bytes32, owner: address)
名稱 類型 已索引 描述
approvedHash bytes32
owner address
ChangedFallbackHandler(handler: address)
名稱 類型 已索引 描述
handler address
ChangedGuard(guard: address)
名稱 類型 已索引 描述
guard address
ChangedThreshold(threshold: uint256)
名稱 類型 已索引 描述
threshold uint256
DisabledModule(module: address)
名稱 類型 已索引 描述
module address
EnabledModule(module: address)
名稱 類型 已索引 描述
module address
ExecutionFailure(txHash: bytes32, payment: uint256)
名稱 類型 已索引 描述
txHash bytes32
payment uint256
ExecutionFromModuleFailure(module: address)
名稱 類型 已索引 描述
module address
ExecutionFromModuleSuccess(module: address)
名稱 類型 已索引 描述
module address
ExecutionSuccess(txHash: bytes32, payment: uint256)
名稱 類型 已索引 描述
txHash bytes32
payment uint256
RemovedOwner(owner: address)
名稱 類型 已索引 描述
owner address
SafeModuleTransaction(module: address, to: address, value: uint256, data: bytes, operation: uint8)
名稱 類型 已索引 描述
module address
to address
value uint256
data bytes
operation uint8
SafeMultiSigTransaction(to: address, value: uint256, data: bytes, operation: uint8, safeTxGas: uint256, baseGas: uint256, gasPrice: uint256, gasToken: address, refundReceiver: address, signatures: bytes, additionalInfo: bytes)
名稱 類型 已索引 描述
to address
value uint256
data bytes
operation uint8
safeTxGas uint256
baseGas uint256
gasPrice uint256
gasToken address
refundReceiver address
signatures bytes
additionalInfo bytes
SafeReceived(sender: address, value: uint256)
名稱 類型 已索引 描述
sender address
value uint256
SafeSetup(initiator: address, owners: address[], threshold: uint256, initializer: address, fallbackHandler: address)
名稱 類型 已索引 描述
initiator address
owners address[]
threshold uint256
initializer address
fallbackHandler address
SignMsg(msgHash: bytes32)
名稱 類型 已索引 描述
msgHash bytes32