EthereumCommonwealth / Auditing

Ethereum Commonwealth Security Department conducted over 400 security audits since 2018. Not even a single contract that we audited was hacked. You can access our audit reports in the ISSUES of this repo. We are accepting new audit requests.
https://audits.callisto.network/
GNU General Public License v3.0
132 stars 34 forks source link

ThriveCoin smart contract audit #639

Closed vigan-abd closed 1 year ago

vigan-abd commented 2 years ago

Audit request

THRIVE is a dynamic supply cross chain ERC20 token that supports burning and
minting. The token is capped where `cap` is dynamic, but can only be
decreased after the initial value. The decrease of `cap` happens when
additional blockchains are added. The idea is to divide every blockchain
to keep nearly equal `cap`, so e.g. when a new blockchain is supported
all existing blockchains decrease their `cap`.

Token cross chain swapping is supported through minting and burning
where a separate smart contract also owned by THC owner will operate on each
chain and will handle requests. The steps of swapping are:
- `address` calls approve(`swap_contract_chain_1`, `swap_amount`)
- `swap_contract_chain_1` calls burnFrom(`address`, `swap_amount`)
- `swap_contract_chain_2` calls mint(`address`, `swap_amount`)
NOTE: If an address beside `swap_contract_chain_1` calls burn action
the funds will be lost forever and are not recoverable, this will cause to
decrease total supply additionally!

Another key feature of THRIVE is ability to lock funds to be spend only by
specific accounts. This is achieved through `lockAmount` and `unlockAmount`
actions, where the first one is called by balance owner and second by spender.

Key features:
- burn
- mint
- capped, dynamic decreasing only
- pausable
- blocking/unblocking accounts
- role management
- locking/unlocking funds

Source code

https://github.com/ThriveCoin/thc-smart-contracts-sol

Disclosure policy

Standard disclosure policy.

Contact information (optional)

via email:

Platform

Our contracts will be deployed on ethereum and polygon chains