Closed akshay-ap closed 1 year ago
CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅
Totals | |
---|---|
Change from base Build 5024015688: | -0.04% |
Covered Lines: | 304 |
Relevant Lines: | 312 |
I have read the CLA Document and I hereby sign the CLA
Is there a timeline when this will be merged and release, for which Safe version?
Because in the new EIP1271 version, we would sign on the dataHash
(much simpler)
However, in the current Safe EIP1271 implementation, we must follow & implement the EIP712 hashing scheme off-chain, before signing it. Then we pass the original data
message, and the final signature
after EIP712 hashing scheme
Is there a timeline when this will be merged and release, for which Safe version?
Because in the new EIP1271 version, we would sign on the
dataHash
(much simpler)However, in the current Safe EIP1271 implementation, we must follow & implement the EIP712 hashing scheme off-chain, before signing it. Then we pass the original
data
message, and the finalsignature
after EIP712 hashing scheme
@andyrobert3 This feature will be merged as a part of release v1.5.0. And regarding timeline, after release v1.4.1 we will work on this release.
Context:
Safe contract supports contract signature validation using EIP-1271. The Safe contracts defines an interface which has a function declaration
isValidSignature(bytes, bytes)
which is used to validating the contract signatures. But, EIP-1271 definesisValidSignature(bytes32,bytes)
for validating contract signatures. This PR addresses this issue by removing the use of legacy implementation of EIP-1271.Fixes: https://github.com/safe-global/safe-contracts/issues/391 Forum discussion: https://forum.safe.global/t/safe-contract-v1-5-0/3383
Motivation
Changes proposed in the PR:
isValidSignature(bytes, bytes)
in the interface and replace withisValidSignature(bytes32,bytes)
data
parameter with checking signatures. ThecheckNSignatures
andcheckSignatures
functions still has the placeholder for this parameter but it is not used anymore.EIP1271_MAGIC_VALUE
to0x1626ba7e
as per updated EIP-1271 definition.UPDATED_MAGIC_VALUE
fromCompatibilityFallbackHandler.sol
as not needed anymore.isValidSignature(bytes, bytes)
isValidSignature(bytes, bytes)
and updateisValidSignature(bytes32, bytes)
inCompatibilityFallbackHandler.sol
. link to diffGS027
(Data Hash and hash of the pre-image data do not match) as not needed anymore.