EVDC Token - Smart Contract Audit Report

Summary

EVDC Token Audit Report EVDC intends to build an electric charger network.

For this audit we reviewed the project's token contract, deployed at 0xf09611a964535b32285bff5fcf9937c52bab8ea5 on the Binance Smart Chain mainnet.

Notes of the Token Contract:
  • The current circulating supply (reduced due to burns) is approximately 43 billion tokens.
  • The team has the ability to mint tokens at any time.
  • Anyone may burn their own tokens to reduce the total supply.

  • 9 billion tokens are locked and will vest to the team in 3 months.
  • Four wallets hold over 1 billion tokens.
  • 881 million tokens are in the Pancakeswap liquidity pool.
  • Liquidity has been locked for 20 years.
  • The next largest holder has 800 million tokens.
  • The contract utilizes SafeMath to prevent overflow issues.
Audit Findings Summary:
  • No issues from external attackers were identified.
  • Ensure trust in the team as they can mint tokens at any time.
  • Be aware of the few wallets with a very large number of tokens.
  • The team lead has completed KYC with our firm.
  • Date: April 28th, 2021.
  • Update Date: June 6th, 2021 - Updated token allocations and KYC of team lead.

External Threat Results

Vulnerability CategoryNotesResult
Arbitrary Storage WriteN/APASS
Arbitrary JumpN/APASS
Delegate Call to Untrusted ContractN/APASS
Dependence on Predictable VariablesN/APASS
Deprecated OpcodesN/APASS
Ether ThiefN/APASS
ExceptionsN/APASS
External CallsN/APASS
Flash LoansN/APASS
Integer Over/UnderflowN/APASS
Multiple SendsN/APASS
OraclesN/APASS
SuicideN/APASS
State Change External CallsN/APASS
Unchecked RetvalN/APASS
User Supplied AssertionN/APASS
Critical Solidity CompilerN/APASS
Overall Contract Safety PASS

Inheritence Chart

Multi-file Token

Function Graph

ERC20 Token Graph

Functions Overview


 ($) = payable function
 # = non-constant function
 
 Int = Internal
 Ext = External
 Pub = Public

 + [Int] IBEP20 
    - [Ext] totalSupply
    - [Ext] decimals
    - [Ext] symbol
    - [Ext] name
    - [Ext] getOwner
    - [Ext] balanceOf
    - [Ext] transfer #
    - [Ext] allowance
    - [Ext] approve #
    - [Ext] transferFrom #

 +  Context 
    - [Int]  #
    - [Int] _msgSender
    - [Int] _msgData

 + [Lib] SafeMath 
    - [Int] add
    - [Int] sub
    - [Int] sub
    - [Int] mul
    - [Int] div
    - [Int] div
    - [Int] mod
    - [Int] mod

 +  Ownable (Context)
    - [Int]  #
    - [Pub] owner
    - [Pub] renounceOwnership #
       - modifiers: onlyOwner
    - [Pub] transferOwnership #
       - modifiers: onlyOwner
    - [Int] _transferOwnership #

 +  EVDC (Context, IBEP20, Ownable)
    - [Pub]  #
    - [Ext] getOwner
    - [Ext] decimals
    - [Ext] symbol
    - [Ext] name
    - [Ext] totalSupply
    - [Ext] balanceOf
    - [Ext] transfer #
    - [Ext] allowance
    - [Ext] approve #
    - [Ext] transferFrom #
    - [Pub] increaseAllowance #
    - [Pub] decreaseAllowance #
    - [Pub] mint #
       - modifiers: onlyOwner
    - [Pub] burn #
    - [Int] _transfer #
    - [Int] _mint #
    - [Int] _burn #
    - [Int] _approve #
    - [Int] _burnFrom #