AstroElon - Smart Contract Audit Report

Summary

AstroElon Audit Report AstroElon is a new project that provides automated rewards to users who hold the token via frictionless fee redistribution.

AstroElon is deployed at 0x97b65710D03E12775189F0D113202cc1443b0aa2 on the Ethereum Mainnet.

Notes on the contract:
  • AstroElon is a fork of Reflect Finance. The key notable difference is the altered total supply and the increased (doubled) transaction fee.
  • The total supply of the token is 1 quadrillion.
  • No mint or burn functions exist, though the circulating supply can be decreased by sending tokens to 0x...dead.
  • 49.5% of the total supply has been send to Vitalik Buterin's public address.
  • 10.6% of the token's supply is in Uniswap liquidity. 99% of liquidity is locked for 100 years.
  • One wallet holds 9.5% of the supply, which poses some risk if this wallet were to sell all together.
  • The team holds 2.6% of the supply. The next largest holder has 1.5%.

  • 100% of the 2% fee that is charged on token transfers will be redistributed to existing token holders instantly and automatically at the time of each transaction.
  • The owner can exclude any address from the fee mechanism.
  • Some gas optimizations can be achieved through declaring functions external instead of public and some variables constant. As this contract is already deployed, this is merely informational.
  • There is also some unnecessecary logic in the fee calculation, but this has no tangible impact on security or user functionality. As this contract is already deployed, this is also merely informational.
  • Utilization of SafeMath to prevent overflows.

Audit Findings Summary
  • No external threats were identified.
  • Ensure trust in the team as they have substantial power in the ecosystem. We advise renouncing ownership.
  • Be aware of the current token distribution described above.
  • Date: May 1st, 2021

Audit Results

Vulnerability Category Notes Result
Arbitrary Storage Write N/A PASS
Arbitrary Jump N/A PASS
Delegate Call to Untrusted Contract N/A PASS
Dependence on Predictable Variables N/A PASS
Deprecated Opcodes N/A PASS
Ether Thief N/A PASS
Exceptions N/A PASS
External Calls N/A PASS
Flash Loans N/A PASS
Integer Over/Underflow N/A PASS
Multiple Sends N/A PASS
Oracles N/A PASS
Suicide N/A PASS
State Change External Calls N/A PASS
Unchecked Retval N/A PASS
User Supplied Assertion N/A PASS
Critical Solidity Compiler N/A PASS
Overall Contract Safety   PASS

Function Graph

ERC20 Token Graph


Inheritence Chart

Multi-file Token


Functions Overview


 ($) = payable function
 # = non-constant function
 
 Int = Internal
 Ext = External
 Pub = Public
 
 +  Context 
    - [Int] _msgSender
    - [Int] _msgData

 + [Int] IERC20 
    - [Ext] totalSupply
    - [Ext] balanceOf
    - [Ext] transfer #
    - [Ext] allowance
    - [Ext] approve #
    - [Ext] transferFrom #

 + [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 #

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

 +  AstroElon (Context, IERC20, Ownable)
    - [Pub]  #
    - [Pub] name
    - [Pub] symbol
    - [Pub] decimals
    - [Pub] totalSupply
    - [Pub] balanceOf
    - [Pub] transfer #
    - [Pub] allowance
    - [Pub] approve #
    - [Pub] transferFrom #
    - [Pub] increaseAllowance #
    - [Pub] decreaseAllowance #
    - [Pub] isExcluded
    - [Pub] totalFees
    - [Ext] setMaxTxPercent #
       - modifiers: onlyOwner
    - [Pub] reflect #
    - [Pub] reflectionFromToken
    - [Pub] tokenFromReflection
    - [Ext] excludeAccount #
       - modifiers: onlyOwner
    - [Ext] includeAccount #
       - modifiers: onlyOwner
    - [Prv] _approve #
    - [Prv] _transfer #
    - [Prv] _transferStandard #
    - [Prv] _transferToExcluded #
    - [Prv] _transferFromExcluded #
    - [Prv] _transferBothExcluded #
    - [Prv] _reflectFee #
    - [Prv] _getValues
    - [Prv] _getTValues
    - [Prv] _getRValues
    - [Prv] _getRate
    - [Prv] _getCurrentSupply