Conclusion:In the HARDROCK Smart-Contract were found no vulnerabilities, no backdoors and no scam scripts. The code was tested with compatible compilers and simulate manually reviewed for all commonly known and specific vulnerabilities.
So HARDROCK Smart-Contract is safe for use in the Tron main network.
OFFICIAL AUDIT: DOWNLOAD
This audit is only for the HARDROCK smart contract codes base on the below-specified address only.
The audit makes no statements or warranties about the suitability or sustainability of the business model or regulatory regime for the business model. Do take into consideration that you are doing all financial actions & transactions at your own risk, especially if you are dealing with high-risk projects / Dapps.
CRITICAL ISSUES (critical, high severity): 0
Critical and harmful access for owners, user block ability, Bugs and vulnerabilities that enable theft of funds, lock access to funds without possibility to restore it, or lead to any other loss of funds to be transferred to any party.
ERRORS, BUGS AND WARNINGS (medium, low severity): 0
Bugs can negatively affect the usability of a program, errors that can trigger a contract failure, Lack of necessary security precautions, other warnings for owners and users, warning codes that are valid code but the compiler thinks are suspicious.
OPTIMIZATION (low severity): 2
Methods to decrease the cost of transactions in Smart-Contract.
RECOMMENDATIONS (very low severity): 1
Hint and tips to improve contract functionality and trustworthy.
1- Loop on the dynamic variable (low severity).
If the user gets more parallel deposits his withdraw transaction going to cost more transaction fee, because the loop on the dynamic variable is used in the ‘withdraw’ function.
In case of exceeding TRON limit of the size of transaction withdraw is not possible.
This comment is relevant only if a user creates an excessive amount of parallel deposits (more than 100).
2- Recording statistical parameters in the blockchain
Too many statical variables in the Player struct and total contract cause to increase all functions transaction fee.
Use data function to calculate parameters instead of writing it in the blockchain.
Note: this comment doesn’t affect the main functionality of the smart-contract.
3- Insufficient contract balance
Based on Withdraw function if a user interest amount is bigger than the contract balance cannot withdraw.
In this situation, it is better to withdraw contract balance to the user.
Note: In this situation, it is better to transfer the contract balance to the user.
Independent description of the smart-contract functionality
The HARDROCK smart-contract provides the opportunity to invest any amount in TRX (from 300 TRX) in the contract and get a 210% return on investment if the contract balance has enough funds for payment.
- Dividends are paid from deposits of users.
- All dividends are calculated at the moment of request and available for withdrawal anytime.
- Each subsequent Deposit is kept separately in the contract, in order to maintain the payment amount for each Deposit.
Contract Owners Fee
5% daily profit. A User can get 210% return totally.
- Minimum deposit amount is 300 TRX
Referral System (Match Bonus)
This contract paid referrals in two-level totally 5%
- Level one: 3%
- Level two: 2%
- Referral should be an active user; it means referral address has at least one deposit
- A referrer is specified once at the time of the first deposit and is assigned to the user without the possibility of changing. From each subsequent Deposit, the referrer will get his percent.
- If a user has not a referrer or a valid referrer the owner will be set as his upline.
Cash Back Bonus
User can get a random cashback amount of deposit amount between 10% to 30%
- Cashback is just for the first deposit of a user
- User should have a valid referrer
- Depend on random function this bonus is between 10% to 30%
Note: “total_refer_bonus” will be increased 1% of the amount of deposit on the cashback process.
It is 0.3% per 24 hours if the user does not withdraw
Note: If you make a withdraw your hold bonus will reset.
There is a rule if users reinvest his available dividends can get an extra 0.4% daily bonus.
Attention: a user can reinvest his available dividends anytime but only one time per 24 hours extra 0.4% daily bonus will be added to his total bonuses.
HARDROCK Smart-Contract Functions
Constructor: initial developer, marketing and initial ref bonus
- refPayout: calculate referral bonus
- setUpline: register a new user and set upline and calculate cashback
- deposit: make a new deposit
- withdraw: transfer user dividends to his wallet
- reinvest: make a new deposit from dividends and increase the bonus
- getHoldBonus: return hold and reinvest bonus
- getTarif: return total bonus
- getPlan_InterestProfit: return profit of one deposit of user
- getTotal_InterestProfit: return a total profit of user
- getActiveDeposits: return the total amount of active deposits
- payTrxOnTopFee: transfer owners contract fee
- random: generate a random number between 10 to 30
- minZero: if the first parameter be bigger than second one return first minus the second one, otherwise it returns zero
- maxVal: returns bigger one
- minVal: returns smaller one
- getContractBalance: return contract balance
- contractInfo: returns total contract stats
- userGeneralInfo: returns total user stats
- userPlanInfo: returns user investment stats