Platform: Code4rena
Start Date: 17/03/2023
Pot Size: $36,500 USDC
Total HM: 10
Participants: 98
Period: 3 days
Judge: leastwood
Total Solo HM: 5
Id: 223
League: ETH
Rank: 64/98
Findings: 1
Award: $22.77
🌟 Selected for report: 0
🚀 Solo Findings: 0
🌟 Selected for report: Sathish9098
Also found by: 0xAgro, 0xSmartContract, 0xdaydream, 0xnev, Awesome, Aymen0909, BRONZEDISC, Bauchibred, Deathstore, Diana, IceBear, Jerry0x, Kresh, Matin, Rolezn, Stryder, T1MOH, Udsen, adriro, alejandrocovrr, atharvasama, codeslide, cryptonue, descharre, igingu, jack, joestakey, libratus, lukris02, luxartvinsec, nadin, nasri136, reassor, scokaf, shark, slvDev, tnevler
22.7749 USDC - $22.77
Docs specify length has to be shorter than 200
code: bio.sol - https://github.com/code-423n4/2023-03-canto-identity/blob/077372297fc419ea7688ab62cc3fd4e8f4e24e66/canto-bio-protocol/src/Bio.sol#L123
if (bytes(_bio).length == 0 || bytes(_bio).length > 200) revert InvalidBioLength(bytes(_bio).length);
should be:
if (bytes(_bio).length == 0 || bytes(_bio).length > 199) revert InvalidBioLength(bytes(_bio).length);
Code does not do what the readme says. The tests shows that they intend to accept 200 characters, but the docs specify shorter than 200.
non-critical: Code styling issue. https://github.com/code-423n4/2023-03-canto-identity/blob/077372297fc419ea7688ab62cc3fd4e8f4e24e66/canto-namespace-protocol/src/Namespace.sol#L121
code:
uint256[] memory uniqueTrays = new uint256[](_characterList.length);
[PASS] testFusingAsOwnerOfTray() (gas: 476771)
should be:
uint256[] memory uniqueTrays = new uint256[](numCharacters);
[PASS] testFusingAsOwnerOfTray() (gas: 476771)
#0 - c4-judge
2023-04-11T16:15:58Z
0xleastwood marked the issue as grade-b