Platform: Code4rena
Start Date: 29/06/2022
Pot Size: $50,000 USDC
Total HM: 20
Participants: 133
Period: 5 days
Judge: hickuphh3
Total Solo HM: 1
Id: 142
League: ETH
Rank: 128/133
Findings: 1
Award: $21.17
🌟 Selected for report: 0
🚀 Solo Findings: 0
🌟 Selected for report: GalloDaSballo
Also found by: 0v3rf10w, 0x1f8b, 0xA5DF, 0xDjango, 0xHarry, 0xKitsune, 0xNazgul, 0xNineDec, 0xc0ffEE, 0xf15ers, 0xkatana, 0xsanson, ACai, Aymen0909, Bnke0x0, BowTiedWardens, Chom, ElKu, Fitraldys, Funen, Haruxe, Hawkeye, IllIllI, JC, JohnSmith, Kaiziron, Kenshin, Lambda, Limbooo, MadWookie, Metatron, MiloTruck, Picodes, PwnedNoMore, Randyyy, RedOneN, ReyAdmirado, Ruhum, Sm4rty, StErMi, StyxRave, TerrierLover, TomJ, Tomio, UnusualTurtle, Waze, Yiko, _Adam, __141345__, ajtra, ak1, apostle0x01, asutorufos, c3phas, cRat1st0s, catchup, codetilda, cryptphi, datapunk, defsec, delfin454000, durianSausage, exd0tpy, fatherOfBlocks, gogo, grrwahrr, hake, hansfriese, horsefacts, ignacio, jayfromthe13th, joestakey, ladboy233, m_Rassska, mektigboy, minhquanym, mrpathfindr, natzuu, oyc_109, rajatbeladiya, reassor, rfa, robee, rokinot, sach1r0, saian, sashik_eth, simon135, slywaters, swit, z3s, zeesaw, zer0dot
21.1705 USDC - $21.17
Source repo: https://github.com/code-423n4/2022-06-putty/blob/main/contracts/src/PuttyV2.sol
Instead of
/* ~~~ STATE VARIABLES ~~~ */ /** @dev ERC721Asset type hash used for EIP-712 encoding. */ bytes32 public constant ERC721ASSET_TYPE_HASH = keccak256(abi.encodePacked("ERC721Asset(address token,uint256 tokenId)")); /** @dev ERC20Asset type hash used for EIP-712 encoding. */ bytes32 public constant ERC20ASSET_TYPE_HASH = keccak256(abi.encodePacked("ERC20Asset(address token,uint256 tokenAmount)")); /** @dev ERC721Asset type hash used for EIP-712 encoding. */ bytes32 public constant ORDER_TYPE_HASH = keccak256( abi.encodePacked( "Order(", "address maker,", "bool isCall,", "bool isLong,", "address baseAsset,", "uint256 strike,", "uint256 premium,", "uint256 duration,", "uint256 expiration,", "uint256 nonce,", "address[] whitelist,", "address[] floorTokens,", "ERC20Asset[] erc20Assets,", "ERC721Asset[] erc721Assets", ")", "ERC20Asset(address token,uint256 tokenAmount)", "ERC721Asset(address token,uint256 tokenId)" ) );
we can write directly this values:
/* ~~~ STATE VARIABLES ~~~ */ /** @dev ERC721Asset type hash used for EIP-712 encoding. */ bytes32 public constant ERC721ASSET_TYPE_HASH = 0x768c1d2c3157c9ca752098be2da2da3e1ddae5a69ca4394b1f83e1179407e8f0; /** @dev ERC20Asset type hash used for EIP-712 encoding. */ bytes32 public constant ERC20ASSET_TYPE_HASH = 0xa55d25ac87b1c0e125b844871149c64ce5636cae2bb0ed2f2eb4990df479cd91; /** @dev ERC721Asset type hash used for EIP-712 encoding. */ bytes32 public constant ORDER_TYPE_HASH = 0x331cf33dce9314036c50f72ada91444e078be32f06bf1d891362de01ac1a8d66;