Pulse Factory Contract Audit

Disclaimer: This report does not indicate the participation of Codeum in the project. The report only applies to the contract address mentioned and is meant to be used only for the specified project.

Project Info

Overal Description:

Introduction:

This report presents the findings of our comprehensive audit conducted on the smart contract of PulseFactory. Our objective was to assess the contract’s functionality, security, and compliance with industry best practices. The audit encompassed an examination of the contract code, its parameters, and the implemented features.

  1. Miner Conversion and Daily ROI:
    The smart contract operates on the principle of converting PLS (Pulse Token) into virtual miners represented by eggs. The conversion rate is determined by the constant variable EGGS_TO_HIRE_1MINERS, which is set at the top of the contract.
    EGGS_TO_HIRE_1MINERS = 2160000; // 4%
    For instance, when a user deposits a specified amount of PLS, the corresponding number of eggs (miners) received is calculated by dividing the number of eggs by 2,160,000. Each miner is programmed to produce 1 new egg per second. Therefore, at the end of a day (86400 seconds), the total number of new eggs in the user’s cart is determined by multiplying the number of miners by 86,400.
    The basic daily ROI is calculated as 86,400 divided by 2,160,000, resulting in a daily return of 0.04 (4%).
  1. Adjustable Parameters:
    The contract incorporates certain adjustable parameters that allow the contract owner to modify specific aspects of the investment program. These parameters include:
    Basic ROI: The basic daily ROI is initially set at 4% but can be adjusted by the owner within the range of 3% to 8%. The adjustment of the ROI impacts the value of EGGS_TO_HIRE_1MINERS, consequently influencing the daily APR.
    Basic Referral: The referral bonus percentage, calculated based on the number of eggs (miners), is initially set at 10%. The contract owner has the authority to modify this percentage within the range of 8% to 12%.
  2. Lottery and Top Deposit Pot:
    The smart contract incorporates a miner lottery and a Top Deposit Pot feature, designed to enhance user engagement and rewards. The key aspects of these features are as follows:
    Lottery: 1% of each deposit or compound is allocated to the lottery pot. For every 20,000 PLS deposited or compounded, the user automatically receives 1 ticket, with a maximum of 20 tickets per user. The lottery randomly selects a winner every 24 hours or when it reaches a maximum of 100 users or the MAX_LOTTERY_POOL_PER_ROUND,  which is set at 4,000,000 per round. 90% of the lottery pot will be added to the user’s balance.
    Top Deposit Pot: Similarly, 1% of each deposit or compound is allocated to the Top Deposit Pot, promoting competitiveness among users. Top Depositor Event will run every 24 hours and then the top 5 in the leader boards will share the prize pool. Rewards will be used to buy MINERS and be added to the investors. Rewards Distribution: Rank 1: 30%, Rank 2: 25%, Rank 3: 20%, Rank 4: 15%, Rank 5: 10%
  3. Deposit and Action Timeframes: To participate in the PulseFactory contract, users are required to deposit a minimum of 20,000 PLS, with a maximum deposit limit of 60,000,000 PLS. Minimum 24 hours needed for users to withdraw or compound. After 48 hours from the user’s last action, they must choose to withdraw, compound, or buy additional miners; otherwise, the miners cease to operate. Buying new miners will reset the countdowns.
  4. Owner Fee Distribution:
    The owner fee structure consists of various components, totaling 8% of the transaction amount. The breakdown of the owner fees is as follows:
    Deposit fees: 2% admin fee, 2% marketing fee/ Withdraw fees: 2% admin fee, 2% marketing fee

Write Contract on PulseScan is designed to assist users in interacting with any smart contract deployed onto the BSC. The function and nature of the smart contract are defined by the developers of the smart contract respectively.

Write Contract:

  1. CHANGE_OWNERSHIP: Changing ownership of the contract
  2. ENABLE_LOTTERY:Enable or disable Lottery event.(modifiable by the owner)
  3. ENABLE_TOP_DEPOSIT : Enable or disable Top Deposit event.(modifiable by the owner)
  4. PRC_EGGS_TO_HIRE_1MINERS: Changing the basic daily ROI of the contract.(modifiable by the owner). Must be between 3% to 8%.
  5. SET_REF_PERCENTAGE: Changing referral percentage(modifiable by the owner). The amount must be between 8% to 12%.
  6. activateLaunch: set contractStarted bool to true and activate lottery and events. Owner can launch the contract.
  7. buyEGGS: Deposit to Buy EGGS  in the contract. Using this function user can use PLS to buy eggs.
  8. hatchEggs: Compound Eggs Usage: Using this function user can use his/her withdraw-able amount to buy eggs.
  9. runEvents: Running the lottery and Top Deposit events. If no action is made(BUY, Withdraw or Compound), then this function needs to be ran so event choose the winners.
  10. sellEggs: Sell Eggs Usage: Using this function user can withdraw the dividends.

*In the website

Buying Eggs= Buy Miners

Hatch Eggs= Compound

Selling Eggs = Withdraw

 

CRITICAL ISSUES (critical, high severity): 0

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; high priority unacceptable bugs for deployment at mainnet; critical warnings for owners, customers or investors.

ERRORS AND BUGS (medium, low severity): 0

Bugs that can trigger a contract failure, with further recovery only possible through manual modification of the contract state or contract replacement altogether; lack of necessary security precautions; other warnings.

OPTIMIZATION POSSIBILITIES (very low severity): 0

Possibilities to decrease cost of transactions and data storage of Smart-Contracts.

NOTES AND RECOMMENDATIONS (very low severity): 0

Tips and tricks, all other issues and recommendations, as well as errors that do not affect the functionality of the Smart-Contract.

 

Conclusion:

In the PulseFactory Smart-Contract were found no vulnerabilities and no backdoors. The code was manually reviewed for all commonly known and more specific vulnerabilities.

NOTE: The system used is called ROI and it is considered HIGH-RISK. The system will pay dividends from deposits of other users. Users can get dividends and referral commission. Do always invest with proper knowledge and investigation.

Codeum Score

Codeum score
Development
Optimization

Conclusion:

In the PulseFactory Smart-Contract were found no vulnerabilities and no backdoors. The code was manually reviewed for all commonly known and more specific vulnerabilities.


  • 0
  • June 4, 2023