Holograph contest - lucacez's results

Omnichain protocol for deploying, minting, & bridging NFTs between blockchains.

General Information

Platform: Code4rena

Start Date: 18/10/2022

Pot Size: $75,000 USDC

Total HM: 27

Participants: 144

Period: 7 days

Judge: gzeon

Total Solo HM: 13

Id: 170

League: ETH

Holograph

Findings Distribution

Researcher Performance

Rank: 115/144

Findings: 1

Award: $0.00

Gas:
grade-c

🌟 Selected for report: 0

🚀 Solo Findings: 0

USING PRIVATE RATHER THAN PUBLIC FOR CONSTANTS, SAVES GAS

File: Holograph.sol Line 120

bytes32 constant _bridgeSlot = 0xeb87cbb21687feb327e3d58c6c16d552231d12c7a0e8115042a4165fac8a77f9;

File: Holograph.sol Line 124

bytes32 constant _chainIdSlot = 0x7651bfc11f7485d07ab2b41c1312e2007c8cb7efb0f7352a6dee4a1153eebab2;

File: Holograph.sol Line 128

bytes32 constant _factorySlot = 0xa49f20855ba576e09d13c8041c8039fa655356ea27f6c40f1ec46a4301cd5b23;

File: Holograph.sol Line 132

https://github.com/code-423n4/2022-10-holograph/blob/f8c2eae866280a1acfdc8a8352401ed031be1373/contracts/Holograph.sol#L136

File: Holograph.sol Line 136

bytes32 constant _interfacesSlot = 0xbd3084b8c09da87ad159c247a60e209784196be2530cecbbd8f337fdd1848827;

File: Holograph.sol Line 140

bytes32 constant _operatorSlot = 0x7caba557ad34138fa3b7e43fb574e0e6cc10481c3073e0dffbc560db81b5c60f;

File: Holograph.sol Line 144

bytes32 constant _registrySlot = 0xce8e75d5c5227ce29a4ee170160bb296e5dea6934b80a9bd723f7ef1e7c850e7;

File: Holograph.sol Line 148

bytes32 constant _treasurySlot = 0x4215e7a38d75164ca078bbd61d0992cdeb1ba16f3b3ead5944966d3e4080e8b6;

File: Holograph.sol Line 152

bytes32 constant _utilityTokenSlot = 0xbf76518d46db472b71aa7677a0908b8016f3dee568415ffa24055f9a670f9c37;

File: HolographBridge.sol Line 126

bytes32 constant _factorySlot = 0xa49f20855ba576e09d13c8041c8039fa655356ea27f6c40f1ec46a4301cd5b23;

File: HolographBridge.sol Line 130

bytes32 constant _holographSlot = 0xb4107f746e9496e8452accc7de63d1c5e14c19f510932daa04077cd49e8bd77a;

File: HolographBridge.sol Line 134

bytes32 constant _jobNonceSlot = 0x1cda64803f3b43503042e00863791e8d996666552d5855a78d53ee1dd4b3286d;

File: HolographBridge.sol Line 138

bytes32 constant _operatorSlot = 0x7caba557ad34138fa3b7e43fb574e0e6cc10481c3073e0dffbc560db81b5c60f;

File: HolographBridge.sol Line 142

bytes32 constant _registrySlot = 0xce8e75d5c5227ce29a4ee170160bb296e5dea6934b80a9bd723f7ef1e7c850e7;

File: HolographFactory.sol Line 127

bytes32 constant _holographSlot = 0xb4107f746e9496e8452accc7de63d1c5e14c19f510932daa04077cd49e8bd77a;

File: HolographFactory.sol Line 131

bytes32 constant _registrySlot = 0xce8e75d5c5227ce29a4ee170160bb296e5dea6934b80a9bd723f7ef1e7c850e7;

File: HolographOperator.sol Line 129

bytes32 constant _bridgeSlot = 0xeb87cbb21687feb327e3d58c6c16d552231d12c7a0e8115042a4165fac8a77f9;

File: HolographOperator.sol Line 133

bytes32 constant _holographSlot = 0xb4107f746e9496e8452accc7de63d1c5e14c19f510932daa04077cd49e8bd77a;

File: HolographOperator.sol Line 137

bytes32 constant _interfacesSlot = 0xbd3084b8c09da87ad159c247a60e209784196be2530cecbbd8f337fdd1848827;

File: HolographOperator.sol Line 141

bytes32 constant _jobNonceSlot = 0x1cda64803f3b43503042e00863791e8d996666552d5855a78d53ee1dd4b3286d;

File: HolographOperator.sol Line 145

bytes32 constant _messagingModuleSlot = 0x54176250282e65985d205704ffce44a59efe61f7afd99e29fda50f55b48c061a;

File: HolographOperator.sol Line 149

bytes32 constant _registrySlot = 0xce8e75d5c5227ce29a4ee170160bb296e5dea6934b80a9bd723f7ef1e7c850e7;

File: HolographOperator.sol Line 153

bytes32 constant _utilityTokenSlot = 0xbf76518d46db472b71aa7677a0908b8016f3dee568415ffa24055f9a670f9c37;

X += Y COSTS MORE GAS THAN X = X + Y FOR STATE VARIABLES

File: HolographFactory.sol Line 328

v += 27;

File: HolographOperator.sol Line 382

_bondedAmounts[msg.sender] += amount;

File: HolographOperator.sol Line 834

_bondedAmounts[operator] += amount;

File: HolographOperator.sol Line 1177

current += (current / _operatorThresholdDivisor) * (position / _operatorThresholdStep);

File: HolographERC20.sol Line 685

_totalSupply += amount;

File: HolographERC20.sol Line 686

_balances[to] += amount;

File: HolographERC20.sol Line 702

_balances[recipient] += amount;

++X IS MORE EFFICIENT THAN X++(SAVES ~6 GAS)

File: HolographERC20.sol Line 713

_nonces[account]++;

File: HolographERC721.sol Line 779

_ownedTokensCount[to]++;
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