Closed mydogmaxuk closed 3 years ago
The audit fee for NFTLootbox.sol
file is 529 USDT (you may send it as ERC20 or TRC20 - let me know your choice).
Please note, that this contract import other files (Context.sol
, SafeMath.sol
, Ownable.sol
, IERC20.sol
, IERC1155.sol
, ReentrancyGuard.sol
) which are excluded from the audit, and we will write about it in the final report.
If you want to include those files in the audit, the total fee will be 609 USDT.
Please include the import files - 609 USDT - Thank you
the wallet address for ERC20 USDT is 0xb9662e592f2f0412be62f0833ca463a9b1aabebb
Payment sent
The audit will be completed in 4 days
If complete in 24 hours I will pay an extra 600 USDT, 48 hours I will pay a further 400 USDT and 72 hours then 200 extra, Thanks.
The audit will be complete as soon as possible
Auditing time 1 day.
Auditing time: 24 -48 hours.
@MrCrambo assigned
@danbogd Not assign
@mydogmaxuk please, describe the logic of NFTLootBox smart contract. I see two functions:
lootboxID
it's price multiply by bets
amount. The 90% of paid tokens will be burned and 10% transfer to feeAddress
.
What means seed
argument in this function? It's not using in the logic of the function. junkAmount
of junkAsset
to some user who submit the bet before. But the contract does not contain the logic of selection NFTs, asset, and amount - it passed as arguments of function with authAddress
signature (centralize).Users purchase lootboxes using their client seed. the contract doesn't use this seed, but the server (which reads the event emitted) does. Since generating random numbers is very difficult on-chain we calculate winnings serverside. once we've determined the user's winnings, they can redeem those winnings through the redeemBulk function. the other functions are leftovers and will soon be deleted.
as above thanks
@mydogmaxuk link to audit report: https://gist.github.com/yuriy77k/973fc9abef65eda61cb31105dbfde624
NFTLootBox.com smart contract security audit report performed by Callisto Security Audit Department
Logic description by developer:
Users purchase lootboxes using their client seed. the contract doesn't use this seed, but the server (which reads the event emitted) does. Since generating random numbers is very difficult on-chain we calculate winnings server-side. once we've determined the user's winnings, they can redeem those winnings through the redeemBulk function.
Commit hash 56ad73a604226e481e78b2dc634001721203ad66
NFTLootbox.sol lib/Context.sol lib/SafeMath.sol lib/Ownable.sol lib/IERC20.sol lib/IERC1155.sol lib/ReentrancyGuard.sol lib/Address.sol
In total, 3 issues were reported including:
1 low severity issues.
2 notes.
No critical security issues were found.
The imported files located in the /lib/ folder, but in the code /lib/
is missing that cause compiler error.
Use import like following:
import "./lib/Context.sol";
import "./lib/SafeMath.sol";
import "./lib/Ownable.sol";
import "./lib/IERC20.sol";
import "./lib/IERC1155.sol";
import "./lib/ReentrancyGuard.sol";
There is no zero address checking in functions: setTransferAddress, setAuthAddress, updateLootbox
Add zero address checking:
require( _address != address(0) );
The modifier nonReentrant
is overused that will cause unnecessary gas usage.
The modifier nonReentrant
may be removed from functions setTransferAddress, setAuthAddress, updateLootbox where no risk of re-entrance.
The audited smart contract can be deployed. Only low severity issues were found during the audit.
https://gist.github.com/MrCrambo/f11c21632ca2b02d92d2e8ede91b6d19
As promised 600 USDT bonus for speedy work. Same address? Thanks
@mydogmaxuk yes, address the same. Thanks.
Sent
Thank you
Audit request
Contract used for opening lootboxes and claiming rewards.
Source code
https://github.com/NFTLootBox/contracts/blob/master/contracts/NFTLootbox.sol
Disclosure policy
notify me privately in case of finding critical mistakes.
... provide your conditions for publishing the report or leave only standard disclosure policy link ...
Standard disclosure policy.
Contact information (optional)
Telegram @ChonkyBob Twitter @NFTLootbox
... Provide information about the media resources of the project you want us to audit (website/ twitter account/ reddit/ telegram channel/ etc.) ...
NFTLootBox.com t.me/NFTLootBoxChat
Platform
Eth