Project

One World
NFTDeFi
15,000 USDC
View results
Submission Details
Severity: low
Invalid

Incomplete EIP-712 Implementation

Summary

Incomplete EIP-712 Implementation

Vulnerability Details

`contract NativeMetaTransaction is EIP712Base {
bytes32 private constant META_TRANSACTION_TYPEHASH = keccak256(
bytes(
"MetaTransaction(uint256 nonce,address from,bytes functionSignature)"
)
);
event MetaTransactionExecuted(
address userAddress,
address relayerAddress,
bytes functionSignature,
bytes32 metaTXHash
);
mapping(address => uint256) nonces;`

The current implementation only provides basic EIP-712 functionality: ```solidity contract EIP712Base { function toTypedMessageHash(bytes32 messageHash) internal view returns (bytes32) { return keccak256( abi.encodePacked("\x19\x01", getDomainSeperator(), messageHash) ); } }

This is insufficient because EIP-712 requires:

1. Support for structured data typing

2. Handling of nested structs

3. Array support

4. Complex type encoding

Impact

No compatibility with advanced EIP-712 wallets. Cannot sign complex data structures

Tools Used

Manual Review

Recommendations

Implement the complete eip712

Updates

Lead Judging Commences

0xbrivan2 Lead Judge 11 months ago
Submission Judgement Published
Invalidated
Reason: Lack of quality
0xbrivan2 Lead Judge 11 months ago
Submission Judgement Published
Invalidated
Reason: Lack of quality

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.