Good Games Guild Token - Smart Contract Audit Report
Summary
Good Games Guild Token ($GGG) is a new ERC20 token on the Binance Smart Chain.
Notes on the Contract:Audit Findings Summary
- The total supply of the token is set to 100 million $GGG.
- At the time of writing this report, the entire $GGG token supply is stored in the owner's wallet address.
- Token holders can use the burn function to transfer an amount of their tokens to the zero address, reducing the circulating total supply.
- Token holders can alternatively transfer tokens to the 0x...Dead address to burn their tokens. However, using this method will not be reflected in the total supply and it will not be updated.
- If an address has approval to spend tokens on another's behalf, that address can opt to burn tokens from the account that has provided the approval.
- There are no additonal minting functions available after deployment.
- Although the contract inherits the Ownable library, no ownership-restriction functions are present.
- The contract complies with the ERC20 standard.
- As the project is deployed with Solidity v0.8.0, it is protected from overflows.
- No external threats were identified.
- Please ensure trust in the team prior to investing as they currently possess the entire token supply.
- Date: October 4th, 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 |
Integer Over/Underflow | N/A | PASS |
Multiple Sends | 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
Inheritence Chart
Functions Overview
($) = payable function
# = non-constant function
+ Context
- [Int] #
- [Int] _msgSender
- [Int] _msgData
+ Ownable (Context)
- [Int] #
- [Pub] owner
- [Pub] renounceOwnership #
- modifiers: onlyOwner
- [Pub] transferOwnership #
- modifiers: onlyOwner
+ [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 #
+ ERC20 (Context, IERC20)
- [Pub] #
- [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] _mint #
- [Int] _burn #
- [Int] _approve #
- [Int] _setupDecimals #
- [Int] _beforeTokenTransfer #
+ ERC20Burnable (Context, ERC20)
- [Pub] burn #
- [Pub] burnFrom #
+ GoodGameGuildToken (Ownable, ERC20Burnable)
- [Pub] #
- modifiers: Ownable,ERC20