SOGE - Smart Contract Audit Report
Space HOGE (SOGE) is a new project that provides automated rewards to users who hold the token via frictionless fee redistribution.
Notes on the contract:
- SOGE is a fork of Reflect Finance. The key notable difference is the altered total supply and the increased transaction fee.
- The total supply of the token is 100 trillion.
- No mint or burn functions exist, though the circulating supply can be decreased by sending tokens to 0x...dead.
- 37% of the total supply has been send to Vitalik Buterin's public address.
- 1.5% of the token's supply is in Uniswap liquidity. 98% of liquidity is locked for 6 months.
- The team's marketing/development wallet has 4.5% of the total supply; and two other wallets have slightly more than Uniswap. The team has previously locked 4.5% of the supply that they control based on our recommendation..
- 100% of the 5% 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 the rights to a modest amount of the token's supply.
- Date: April 7th, 2021
|Arbitrary Storage Write||N/A||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 = 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) - [Pub]
# - [Pub] owner - [Pub] renounceOwnership # - modifiers: onlyOwner - [Pub] transferOwnership # - modifiers: onlyOwner + SOGE (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 - [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