Kissantoken - Audit

CertiK1 address on BNB Chain

CertiK reviewed Kissantoken (Kissantoken - Audit) on 20 Dec 2022: 5 findings, 0 critical; 1 marked fixed, 4 open.

No open critical findings
Open the reportOpen Kissantoken’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings5

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High101
Medium000
Low300
HighInitial Token DistributionOpen

All of the KSN tokens are sent to the contract deployer when deploying the contract. This could be a centralization risk as the deployer can distribute KSN tokens without obtaining the consensus of the community. The deployer(0x1601410d5b6e841718a19c10433901121add9f7e) transferred those tokens to another address 0xf451aa1aeb7275a02359b53a3693098c856f1c7a, which currently holds 44.83% of the total supply.

LowFunction Should Be Declared ExternalOpen

The functions which are never called internally within the contract should have external visibility for gas optimization. ```solidity=321 function name() public view virtual returns (string memory) { ``` --- ```solidity=329 function symbol() public view virtual returns (string memory) { ``` --- ```solidity=353 function totalSupply() public view virtual override returns (uint256) { ``` --- ```solidity=360 function balanceOf(address account) public view virtual override returns (uint256) { ``` --- ```solidity=372 function transfer(address recipient, uint256 amount) public virtual override returns (bool) { ``` --- ```solidity=380 function allowance(address owner, address spender) public view virtual override returns (uint256) { ``` --- ```solidity=391 function approve(address spender, uint256 amount) public virtual override returns (bool) { ``` --- ```solidity=409 function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { ``` --- ```solidity=427 function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { ``` --- ```solidity=446 function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { ``` --- ```solidity=593 function transferOwnership(address newOwner) public onlyOwner { ``` --- ```solidity=602 function renounceOwnership() public onlyOwner { ```

LowMissing Error MessagesOpen

The **require** can be used to check for conditions and throw an exception if the condition is not met. It is better to provide a string message containing details about the error that will be passed back to the caller.

LowOpenZeppelin library code included in source codeOpen

It is highly recommended NOT to include OpenZeppelin library code directly in the source code, but import the original library to minimize risk because even slight changes to the library code may lead to critical/major vulnerabilities/bugs. For Solidity version 0.6.x, the latest OpenZeppelin version 3.4.2 should be used.

Contracts in scope1

AddressChainSource code
0xc8a11f433512c16ed895245f34bcc2ca44eb06bdChain: BNB ChainSource code: Verified source

Part of Kissantoken’s security record

Kissantoken
Audits1 audit by 1 firmLast audit Dec 2022, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open Kissantoken’s security record

Security firm

CertiK

1,044 projects reviewed · 1,375 reports · latest May 2025

See CertiK’s audits

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us