CertiK reviewed Tech Trees (Techtrees) on 22 Oct 2022: 15 findings, 0 critical; 3 marked fixed, 12 open.
Report hosted on skynet.certik.com.
Trustblock does not review code.
Statuses are the security firm’s own, from its report.
| Severity | Open | Acknowledged | Fixed |
|---|---|---|---|
| Critical | 0 | 0 | 0 |
| High | 3 | 0 | 0 |
| Medium | 1 | 0 | 0 |
| Low | 8 | 0 | 3 |
Before `start()` is called, `lastUpdateBlock` will be always be `0`. With this, `initTokens()` can be freely called by the owner multiple times. This could increase the contract's balance of `ttCoin` and the state variable `totalInjectedTokens`, as well as overwrite the `powTokensPerBlock` and `pointsPerBlock` state variables on each call.
One or more state changes do not emit events to pass the changes out of chain. ```solidity=1328 royaltyFee = _royaltyFee; ``` --- ```solidity=92 totalInjectedTokens += powTokens; ``` ```solidity=93 powTokensPerBlock = uint96(powTokensPerBlock_); ``` ```solidity=94 pointsPerBlock = uint96(pointsPerblock_); ``` --- ```solidity=109 powEndBlock = uint32(block.number + restToken / powTokensPerBlock_); ``` ```solidity=110 powTokensPerBlock = uint96(powTokensPerBlock_); ``` --- ```solidity=117 pointsPerBlock = uint96(pointsPerBlock_); ``` --- ```solidity=124 totalInjectedTokens += powTokens; ``` ```solidity=126 if (lastUpdateBlock > 0) powEndBlock = uint32(block.number + restToken / powTokensPerBlock); ```
One or more state variables are never used in the codebase. Variable `feeFreeBlocks` in `TechTreesCoinStaking` is never used in `TechTreesCoinStaking`. ```solidity=20 uint256 private constant feeFreeBlocks = blocksPerday * 7; ``` ```solidity=8 contract TechTreesCoinStaking is Ownable { ``` --- Variable `oneEther` in `TechTreesCoinStaking` is never used in `TechTreesCoinStaking`. ```solidity=22 uint256 private constant oneEther = 1 ether; ``` ```solidity=8 contract TechTreesCoinStaking is Ownable { ``` --- Variable `zeroAddress` in `TechTreesCoinStaking` is never used in `TechTreesCoinStaking`. ```solidity=26 address private constant zeroAddress = address(0x0); ``` ```solidity=8 contract TechTreesCoinStaking is Ownable { ```
The report names a repository or files. Open the report to see its scope.
Repository and files the report names (3)
1,044 projects reviewed · 1,375 reports · latest May 2025
See CertiK’s auditsSomething wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.
Tell us