IOTEXCHART - Audit Report
IOTEXCHART ($IOTEXCHART) is a new XRC20 token on the IoTex Blockchain.
We reviewed the IOTEXCHART contract at r6lu9059wndgqc7aqususk3n68709k on the IoTex mainnet.
Notes on the Contract:
- The total supply of the token is set to 1 billion $IOTEXCHART [1,000,000,000].
- No mint functions are accessible beyond deployment.
- Any user can burn their own tokens to reduce the total supply.
- At the time of writing this report, the top holder owns 91.82% of the total supply.
- The next holder owns 5.50% of the total supply.
- The next five holders own a cumulative 1% of the total supply.
- The contract complies with the XRC20 token standard.
- The owner can withdraw any XRC20 tokens from the contract address balance at any time.
- Although the Safemath library is utilized, the contract is deployed with Solidity v0.8.7 which has built-in overflow checks. Safemath could be safely removed to reduce contract size and increase gas savings.
Audit Findings Summary
- No external threats were identified.
- Please ensure trust in the team prior to investing as the deployer owns 100% of the total supply.
- Date: December 6th, 2021
- Updated: December 17th, 2021 to reflect new mainnet deployment.
|Arbitrary Storage Write||N/A||PASS|
|Centralization of Control||The deployer owns 100% of the total supply.||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 + [Lib] SafeMath - [Int] add - [Int] sub - [Int] sub - [Int] mul - [Int] div - [Int] div - [Int] mod - [Int] mod + [Lib] Address - [Int] isContract - [Int] sendValue # - [Int] functionCall # - [Int] functionCall # - [Int] functionCallWithValue # - [Int] functionCallWithValue # - [Prv] _functionCallWithValue # + [Int] IERC20 - [Ext] totalSupply - [Ext] balanceOf - [Ext] transfer # - [Ext] allowance - [Ext] approve # - [Ext] transferFrom # + Context - [Int] _msgSender - [Int] _msgData + Ownable (Context) - [Pub]
# - [Pub] owner - [Pub] transferOwnership # - modifiers: onlyOwner + HasForeignAsset (Ownable) - [Ext] assetBalance - [Ext] getAsset # - modifiers: onlyOwner + IOTEXCHART (IERC20, HasForeignAsset) - [Pub] # - [Ext] ($) - [Pub] name - [Pub] symbol - [Pub] decimals - [Pub] totalSupply - [Pub] balanceOf - [Pub] transfer # - [Pub] allowance - [Pub] approve # - [Pub] transferFrom # - [Pub] increaseAllowance # - [Pub] decreaseAllowance # - [Int] _transfer # - [Int] _mintOnce # - [Int] _burn # - [Pub] burn # - [Int] _approve # - [Int] _setupDecimals # - [Int] _beforeTokenTransfer #