KingsDAO Token Logo

KSD [KingsDAO] Token

About KSD

Listings

Not Found
Token 3 years

Website

Not Found

Description

Not Found

Social

Not Found

Laser Scorebeta Last Audit: 27 June 2022

report
Token seems to be anonymous. As long as we are unable to find website score is limited.

KSD._tFeeTotal (#74) is never initialized. It is used in:
- KSD.totalFees() (#180-182)
Initialize all the variables. If a variable is meant to be initialized to zero, explicitly set it to zero to improve code readability.

Additional information: link


Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)

KSD._tokenTransferBuy(address,address,uint256,bool) (#306-330) performs a multiplication on the result of a division:
-projectFee = tAmount.div(1000).mul(48) (#318)
KSD._tokenTransferBuy(address,address,uint256,bool) (#306-330) performs a multiplication on the result of a division:
-_rOwned[recipient] = _rOwned[recipient].add(rAmount.div(100).mul(recipientRate)) (#326-328)
KSD._tokenTransferBuy(address,address,uint256,bool) (#306-330) performs a multiplication on the result of a division:
-Transfer(sender,recipient,tAmount.div(100).mul(recipientRate)) (#329)
KSD._tokenTransferBuy(address,address,uint256,bool) (#306-330) performs a multiplication on the result of a division:
-destroyFee = tAmount.div(1000).mul(12) (#319)
KSD._tokenTransferSell(address,address,uint256,bool) (#331-355) performs a multiplication on the result of a division:
-projectFee = tAmount.div(1000).mul(72) (#343)
KSD._tokenTransferSell(address,address,uint256,bool) (#331-355) performs a multiplication on the result of a division:
-_rOwned[recipient] = _rOwned[recipient].add(rAmount.div(100).mul(recipientRate)) (#351-353)
KSD._tokenTransferSell(address,address,uint256,bool) (#331-355) performs a multiplication on the result of a division:
-destroyFee = tAmount.div(1000).mul(18) (#344)
KSD._tokenTransferSell(address,address,uint256,bool) (#331-355) performs a multiplication on the result of a division:
-Transfer(sender,recipient,tAmount.div(100).mul(recipientRate)) (#354)
KSD._tokenTransfer(address,address,uint256,bool) (#356-379) performs a multiplication on the result of a division:
-projectFee = tAmount.div(1000).mul(24) (#368)
KSD._tokenTransfer(address,address,uint256,bool) (#356-379) performs a multiplication on the result of a division:
-_rOwned[recipient] = _rOwned[recipient].add(rAmount.div(100).mul(recipientRate)) (#375-377)
KSD._tokenTransfer(address,address,uint256,bool) (#356-379) performs a multiplication on the result of a division:
-Transfer(sender,recipient,tAmount.div(100).mul(recipientRate)) (#378)
KSD._tokenTransfer(address,address,uint256,bool) (#356-379) performs a multiplication on the result of a division:
-destroyFee = tAmount.div(1000).mul(6) (#369)
Consider ordering multiplication before division.

Additional information: link

KSD._tokenTransfer(address,address,uint256,bool).rate (#366) is a local variable never initialized
KSD._tokenTransferBuy(address,address,uint256,bool).rate (#316) is a local variable never initialized
KSD._tokenTransferSell(address,address,uint256,bool).rate (#341) is a local variable never initialized
Initialize all the variables. If a variable is meant to be initialized to zero, explicitly set it to zero to improve code readability.

Additional information: link

Ownable.changeOwner(address) (#24-26) should emit an event for:
- _owner = newOwner (#25)
Emit an event for critical parameter changes.

Additional information: link

KSD.set_tradingEnabledTime(uint256) (#198-200) should emit an event for:
- _tradingEnabledTime = tradingEnabledTime (#199)
Emit an event for critical parameter changes.

Additional information: link

Ownable.changeOwner(address).newOwner (#24) lacks a zero-check on :
- _owner = newOwner (#25)
KSD.transferFrom(address,address,uint256).recipient (#136) lacks a zero-check on :
- uniswapV2Pair = recipient (#140)
KSD.changeRouter(address).router (#400) lacks a zero-check on :
- uniswapV2Pair = router (#401)
Check that the address is not zero.

Additional information: link

KSD._transfer(address,address,uint256) (#254-305) uses timestamp for comparisons
Dangerous comparisons:
- block.timestamp <= _tradingEnabledTime (#269)
- block.timestamp <= _tradingEnabledTime (#279)
Avoid relying on block.timestamp.

Additional information: link

KSD.getWhiteListLength() (#219-221) is never used and should be removed
KSD.transferWhiteUser() (#390-399) is never used and should be removed
Remove unused functions.

Additional information: link

Variable Ownable._owner (#19) is not in mixedCase
Function KSD.set_tradingEnabledTime(uint256) (#198-200) is not in mixedCase
Variable KSD._isBlacklisted (#68) is not in mixedCase
Variable KSD._tTotalFeeMax (#72) is not in mixedCase
Follow the Solidity naming convention.

Additional information: link

KSD.constructor(address) (#84-94) uses literals with too many digits:
- _tTotal = 2100000 * 10 ** _decimals (#88)
KSD.slitherConstructorVariables() (#61-404) uses literals with too many digits:
- _destroyAddress = address(0x000000000000000000000000000000000000dEaD) (#78)
Use: Ether suffix, Time suffix, or The scientific notation

Additional information: link

KSD._tOwned (#64) is never used in KSD (#61-404)
Remove unused state variables.

Additional information: link

KSD._destroyAddress (#78) should be constant
KSD._fundAddress (#79) should be constant
KSD._projectAddress (#80) should be constant
KSD._tFeeTotal (#74) should be constant
KSD._tTotalFeeMax (#72) should be constant
Add the constant attributes to state variables that never change.

Additional information: link

changeOwner(address) should be declared external:
- Ownable.changeOwner(address) (#24-26)
name() should be declared external:
- KSD.name() (#95-97)
symbol() should be declared external:
- KSD.symbol() (#98-100)
decimals() should be declared external:
- KSD.decimals() (#101-103)
totalSupply() should be declared external:
- KSD.totalSupply() (#104-106)
transfer(address,uint256) should be declared external:
- KSD.transfer(address,uint256) (#110-117)
allowance(address,address) should be declared external:
- KSD.allowance(address,address) (#118-125)
approve(address,uint256) should be declared external:
- KSD.approve(address,uint256) (#126-133)
transferFrom(address,address,uint256) should be declared external:
- KSD.transferFrom(address,address,uint256) (#134-152)
increaseAllowance(address,uint256) should be declared external:
- KSD.increaseAllowance(address,uint256) (#153-164)
decreaseAllowance(address,uint256) should be declared external:
- KSD.decreaseAllowance(address,uint256) (#165-179)
totalFees() should be declared external:
- KSD.totalFees() (#180-182)
set_tradingEnabledTime(uint256) should be declared external:
- KSD.set_tradingEnabledTime(uint256) (#198-200)
setBlacklisted(address) should be declared external:
- KSD.setBlacklisted(address) (#201-203)
excludeFromFee(address) should be declared external:
- KSD.excludeFromFee(address) (#204-211)
includeInFee(address) should be declared external:
- KSD.includeInFee(address) (#212-217)
claimTokens() should be declared external:
- KSD.claimTokens() (#234-236)
isExcludedFromFee(address) should be declared external:
- KSD.isExcludedFromFee(address) (#237-239)
getInviter(address) should be declared external:
- KSD.getInviter(address) (#240-242)
changeRouter(address) should be declared external:
- KSD.changeRouter(address) (#400-402)
Use the external attribute for functions never called from the contract.

Additional information: link

Holders:


Token seems to be untradeable: there is no PancakeSwap trading pair and no trading volumes. Ignore for presale.


Unable to find Telegram and Twitter accounts


Unable to find website, listings and other project-related information


Young tokens have high risks of scam / price dump / death


Token has no active CoinGecko listing / rank


Token has no active CoinMarketCap listing / rank

Price for KSD