Caketools Token - Smart Contract Audit Report
Summary
Caketools Token ($CKT) is a new BEP20 token.
We audited Caketool's token contract at 0x3837e18b901629fcb200e0ad9c2f2441804bd6c8 on the Binance Smart Chain mainnet.
Notes of the contract:Audit Findings Summary
- The total supply of the token is set to 150 million $CKT [150,000,000].
- As the token was recently deployed to the mainnet, 100% of the total supply is in possession of the owner.
- Any user can burn their own tokens to decrease the total supply.
- The circulating supply can be decreased if a user elects to transfer their tokens to the 0x..dead address instead of using the burn function.
- The total supply is not updated when holders transfer their tokens to the 0x..dead address.
- Ownership has not been renounced.
- The token uses SafeMath to prevent any overflows.
- The contract complies with the BEP20 standard.
Resolved Issues
- No external threats were identified.
- Date: September 14th, 2021
- Updated: October 13th, 2021 to reflect the mainnet deployment.
- Updated: October 14th, 2021
- The team redeployed to resolve a finding from our team. Previously, the quantity of $CKT tokens that are displayed on BscScan would be inaccurate for holders if they participated in more than one transfer. This is due to the transfer event emitting incorrect information regarding the amount of tokens that were sent during a transfer. Instead, the contract was incorrectly displaying that the recipient's entire balance had been transferred instead of the actual intended token amount for the transfer.
External Threat 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 |
($) = payable function
# = non-constant function
+ Context
- [Int] _msgSender
- [Int] _msgData
+ [Int] IERC20
- [Ext] totalSupply
- [Ext] balanceOf
- [Ext] transfer #
- [Ext] allowance
- [Ext] approve #
- [Ext] transferFrom #
+ [Lib] SafeMath
- [Int] tryAdd
- [Int] trySub
- [Int] tryMul
- [Int] tryDiv
- [Int] tryMod
- [Int] add
- [Int] sub
- [Int] mul
- [Int] div
- [Int] mod
- [Int] sub
- [Int] div
- [Int] mod
+ Ownable (Context)
- [Pub] #
- [Pub] owner
- [Pub] renouncedOwnership #
- modifiers: onlyOwner
- [Pub] TransferOwner #
+ Caketools (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] burn #
- [Int] _transfer #
- [Int] _burn #
- [Int] _approve #
- [Int] _setupDecimals #
- [Int] _beforeTokenTransfer #