NVA - Smart Contract Audit Report
NVA ($NVA) is building a new ERC-20 token.
For this audit, we reviewed the NVA contract using code that was provided to us by the project team.
Please ensure trust in the team prior to investing as they will be minted 100% of the total supply upon deployment.
Date: February 11th, 2022.
Finding #1 - NVA - InformationalDescription: Several functions are declared public, but are never called internally.Recommendation: We recommend declaring these functions external for additional gas savings on each call.
owner, getBalanceEther, depositEther, withdrawEther
- The total supply of the token is set to 10 billion $NVA [10,000,000,000].
- No mint or burn functions are accessible beyond deployment, though the circulating supply can be decreased by sending tokens to the 0x..dead address.
- There was no token allocation for our team to analyze as the contract has yet to be deployed to the mainnet.
- The owner can withdraw any ETH from the contract address at any time.
- There are no fees associated with transferring tokens.
- As the contract is implemented with Solidity v0.8.x, it is protected from overflows/underflows.
- The contract complies with the ERC-20 token standard.
External Threat Results
|Arbitrary Storage Write||N/A||PASS|
|Centralization of Control||100% of the total supply will be minted to the owner upon deployment.||PASS|
|Delegate Call to Untrusted Contract||N/A||PASS|
|Dependence on Predictable Variables||N/A||PASS|
|State Change External Calls||N/A||PASS|
|User Supplied Assertion||N/A||PASS|
|Critical Solidity Compiler||N/A||PASS|
|Overall Contract Safety||PASS|
($) = payable function # = non-constant function + [Int] IERC20 - [Ext] name - [Ext] symbol - [Ext] decimals - [Ext] totalSupply - [Ext] balanceOf - [Ext] allowance - [Ext] approve # - [Ext] transfer # - [Ext] transferFrom # + ERC20 (IERC20) - [Pub]
# - [Pub] name - [Pub] symbol - [Pub] decimals - [Pub] totalSupply - [Pub] balanceOf - [Pub] allowance - [Pub] approve # - [Pub] transfer # - [Pub] transferFrom # - [Pub] increaseAllowance # - [Pub] decreaseAllowance # - [Int] _mint # - [Int] _burn # - [Int] _approve # - [Int] _transfer # - [Int] _beforeTokenTransfer # - [Int] _afterTokenTransfer # + NVA (ERC20) - [Pub] # - modifiers: ERC20 - [Pub] owner - [Pub] getBalanceEther - [Pub] depositEther ($) - [Pub] withdrawEther # - [Ext] ($) - [Ext] ($)