Backd Tokenomics contest - asutorufos's results

Maximize the power of your assets and start earning yield

General Information

Platform: Code4rena

Start Date: 27/05/2022

Pot Size: $75,000 USDC

Total HM: 20

Participants: 58

Period: 7 days

Judge: GalloDaSballo

Total Solo HM: 15

Id: 131

League: ETH

Backd

Findings Distribution

Researcher Performance

Rank: 35/58

Findings: 2

Award: $171.81

🌟 Selected for report: 0

🚀 Solo Findings: 0

Awards

113.8755 USDC - $113.88

Labels

bug
QA (Quality Assurance)
resolved
sponsor confirmed

External Links

L-1 Maybe should have address(0) checks to avoid having to redeploy contracts https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/BkdLocker.sol#:~:text=rewardToken%20%3D%20_rewardToken%3B

L-2 Missing checks for address when assigning values to address state variables https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/BkdLocker.sol#:~:text=rewardToken%20%3D%20newRewardToken%3B

N-1 Multiple addresss mapping can be combined into a single mapping of an address to a struct. https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/BkdLocker.sol#:~:text=mapping(address,)%20public%20totalStashed%3B

N-2 Emit an event in setInflationRecipient() The setInflationRecipient() function is operated only by the governerance and should emit an event when the inflationrecipient is set for the first time or changes. https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/tokenomics/AmmConvexGauge.sol#:~:text=function%20setInflationRecipient(,%7D

#0 - GalloDaSballo

2022-06-20T15:33:18Z

I think the lack of validation findings have merit, however the Struct commend is not actionable

Awards

57.93 USDC - $57.93

Labels

bug
G (Gas Optimization)
resolved
sponsor confirmed

External Links

G-1 COMPARISONS WITH ZERO FOR UNSIGNED INTEGERS >0 is less gas efficient than !0 only if you enable optimizer and you're in a require statement. https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/BkdLocker.sol#:~:text=require(amount%20%3E%200%2C%20Error.INVALID_AMOUNT)%3B

G-2 An length should be cached to save gas in for-loops Some of the for-loops in other contracts already have been doing this but the one below hasn't. https://github.com/code-423n4/2022-05-backd/blob/main/protocol/contracts/StakerVault.sol#:~:text=for%20(uint256%20i%3B%20i%20%3C%20actions.length%3B%20i%20%3D%20i.uncheckedInc())%20%7B

#0 - GalloDaSballo

2022-06-17T23:16:08Z

Saves 6 gas in total

AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax © 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter