TronMint

tronmint
0 0 votes
Article Rating

Conclusion:

In the TronMint 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 TronMint Smart-Contract is safe for use in the Tron main network.

OFFICIAL AUDIT: DOWNLOAD

 

Disclaimer:

This audit is only to the Smart-Contract code at the specified address.

TronMint:
https://tronscan.io/#/contract/TVfNcBxaMPtVKPmqUs2j4D3DmKXXYArC3p/code

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): 1

Methods to decrease the cost of transactions in Smart-Contract.

 

RECOMMENDATIONS (very low severity): 1

Hint and tips to improve contract functionality and trustworthy.

 

 

 

Optimization Suggestions

 

1- Recording statistical parameters in the blockchain (low severity).

uint256 public totalUsers;

uint256 public totalInvested;

uint256 public totalWithdrawn;

uint256 public totalDeposits;

uint256 public totalRefBonus;

 

Solution:

Use data function to calculate parameters instead of writing it in the blockchain.

Note: this issue doesn’t affect the main functionality and security of the smart-contract.

 

2- Loop on a dynamic variable (low severity).

If a 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.

Solution:

Limit number of deposit for each address.

Note: This issue occurs only if a user creates an extreme amount of parallel deposits (more than 300).

 

 

 

 

 

 

 

Independent Review of Functionality

The TronMint smart-contract is an ROI project which users can invest at least 50 TRX and get a 250% return.

 

Return on investment (ROI) is a ratio between net profit (over a period) and cost of investment (resulting from an investment of some resources at a point in time).

 

  • Withdraw is available 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 at any time.
  • Each subsequent Deposit is kept separately in the contract, in order to maintain the payment amount for each Deposit.

 

Contract Owners Fee

PROJECT:   2%

MARKETING:    12%

 

INVESTMENT PLANS

250% return on every investment. The basic interest rate of 1.5% daily and plenty of diverse bonuses.

Notes:

  • Minimum deposit amount is 50 TRX

 

 

Basic interest

The basic interest of contract is 1.5% every 24 hours

 

Hold Bonus

Users can get an extra 0.1% daily every 24h if you did not withdraw.

  • Maximum hold bonus is 5%.
  • If a user withdraws amount less or exact referral bonus, hold bonus will not change or reset
  • The hold bonus is reduced by the amount withdrawn divided by the total amount withdrawn.

 

Contract Bonus:

Each 1,000,000 TRX contract balance will give all users 0.1% daily.

  • Maximum contract bonus is 8.5% daily ROI.
  • This bonus increase and decrease with contract balance

 

Referral System (Match Bonus)

This contract paid referrals in three level totally 8%.

  • Level one: 5%
  • Level two: 2%
  • Level three: 1%

Notes:

  • Referral should be an active user, it means referral address has at least one deposit
  • The referrer is specified once at the time of the first deposit with active referral code and is assigned to the user without the possibility of changing. every subsequent deposit, the referrer will get his share.
  • The user cannot use his referral code for himself

 

 

Refback Feature

function setRefBackPercent(uint256 newPercent) public {

require(newPercent <= PERCENTS_DIVIDER);

User storage user = users[msg.sender];

user.refBackPercent = newPercent;

}

 

Users can use this function to return from 0 to 100% of their referral amount to the user who has invested with his referral code.

Note: 50% is 5000 because contract divider is 10000

 

Referral Direct (level 1)

This contract paid a referral based on level 1 referrals:

Turnover (TRX) <100,000 >100,000 >250,000 >500,000 >1,000,000
Rate (%) 5 6 7 8 10

 

Turnover is the total amount of level 1 user referral investments.

 

Whale Bonus

This contract paid a bonus based on total investment:

Total Investment (TRX) >2,500 >10,000 >25,000 >100,000 >250,000 >1,000,000
Bonus (%) 0.1 0.5 1 1.5 2 2.5

 

 

 

 

Referral Number Bonus

This contract paid a bonus based on total referral level 1 number:

Total Investment (TRX) >5 >15 >50 >100 >250 >500
Bonus (%) 0.1 0.5 1 1.5 2 2.5

 

Maximum Daily Profit

A user can get a 20% daily profit at maximum.

 

Prelaunch Bonus

This contract paid a bonus based on deposit before launch date:

Total Investment (TRX) <100,000 >100,000 >500,000 >1,000,000
Rate (%) 5 10 15 20
  • Top rate will be added to deposit amount.
  • Launch Date: 11/18/2020 @ 6:20am (UTC)

Notes :

 

uint256 mils = address(this).balance.div(CONTRACT_BALANCE_STEP);

if (mils > lastMil) { /// 1 per every 1 mil

users[getUserById(1)].bonus = users[getUserById(1)].bonus.add((mils.sub(lastMil)).mul(CONTRACT_BALANCE_STEP.div(100)));

lastMil = mils;

}

 

According to the above codes, with the increase of each 1 million contract balance, 10,000 TRX will be paid to the first user of the contract, who is the owner.

 

TronMint Smart-Contract Functions

  • Constructor: initial project, marketing address wallets and set launch date.
  • Invest: make a new deposit
  • _reverse: calculate dividends of all deposits
  • withdraw: transfer available dividends, referral and bonus to user
  • setRefBackPercent: set referral back percent
  • getContractBalance: return contract balance
  • getContractBalanceRate: return contract bonus
  • getUserHoldBonus: return hold bonus
  • getUserDownlineBonus: return number of direct referral user
  • getUserWhaleBonus: return whale bonus
  • getPrelaunchBonus: return prelaunch rate
  • getUserPercentRate: return total user rate
  • getUserDividends: return user dividends
  • getUserReferralPercent: return referral bonus
  • getUserId: rerun user id based on address
  • getUserById: return user address based on id
  • getUserCheckpoint: return user checkpoint
  • getUserReferrer: return user referrer
  • getUserDirectBusiness: return total amount of deposits of referral user in level 1
  • getUserRefRewards: retrun referral rewards
  • getUserReferralBonus: return referral bonus
  • getUserAvailable: return available dividends
  • getUserLastDepositDate: return last deposit date
  • isActive: return user status
  • getUserDepositInfo: return a deposit of user stats
  • getUserAmountOfDeposits: return number of deposits
  • getUserTotalDeposits: return total amount of deposits
  • getUserTotalWithdrawn: return total withdrawn
  • getUserWithdrawRef: return total reward sub bonus
  • getUserDownlineCount: return total number of referrals
  • getUserRefbackPercent: return refback percent

 

Related Posts

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x