Preventive Measures

In the anonymous cryptocurrency space, coin listings and transfers can occur in a split second. Many arbitrage scripts, often utilizing flash loans, are designed to exploit price differences between exchanges to generate small profits.

Given the speed at which these transactions can be executed, it is crucial to prevent potential risks. We must strike a balance between the ease of contract execution and the security of these transactions. To achieve this, we need to implement a comprehensive set of variables to maximise security and coverage.

This will be an abstract class (to be imported in the token contract) and all timing will reset at 00:00 from the node's server time.

addDaily(uint256 amount, uint256 transactions)
// The total amount can be transacted per day
// The total transactions can take place a day

addWeekly(uint256 amount, uint256 transactions)
// The total amount can be transacted per week
// The total transactions can take place a week

addMonthly(uint256 amount, uint256 transactions)
// The total amount can be transacted per month
// The total transactions can take place a month

getThreshold() returns(uint256[], uint256[])
// Return in array and in order of amount and 
// transaction limit in day, week, month

addSigner(address signer)
// Add a secured address that can be used to remove
// any threshold that has been set

getSigner() returns(address[])
// Return all signer addresses in array

removeDaily(address mainUser)
// Reset the daily treshold, if user did not add
// any signer, it will be removed immediately, otherwise
// all signers will need to run this to take effect

removeWeekly(address mainUser)
// Reset the daily treshold, if user did not add
// any signer, it will be removed immediately, otherwise
// all signers will need to run this to take effect

removeMonthly(address mainUser)
// Reset the daily treshold, if user did not add
// any signer, it will be removed immediately, otherwise
// all signers will need to run this to take effect

Last updated