Decentralized USD Smart Contract Audit

Project Background

  • Decentralized USD token contract for an ERC20 token called USDD. Here’s a breakdown of the contract:
    • SafeMath Library: This library provides arithmetic functions with safety checks to prevent overflow and underflow.
    • IERC20 Interface: This interface defines the standard functions and events for ERC20 tokens.
    • Address Library: This library provides functions to interact with addresses, including checking if an address is a contract and performing low-level calls.
    • EnumerableSet Library: This library provides data structures and functions for managing enumerable sets of data.
    • ContextMixin Contract: This contract provides context functions for retrieving the sender of a message.
    • IMintableERC20 Interface: This interface extends the ERC20 interface with a `mint` function to mint new tokens.
    • Initializable Contract: This contract ensures that certain functions can only be called during initialization.
    • ERC20 Contract: This is the main ERC20 token contract, implementing the ERC20 interface with additional functionality such as minting, burning, and allowance management.
    • AccessControl Contract: This contract provides role-based access control functionality, allowing certain roles to perform specific actions.
    • AccessControlMixin Contract: This contract is a mix-in for access control, defining modifiers and functions to grant, revoke, and check roles.
    • EIP712Base Contract: This contract implements the EIP-712 standard for typed structured data hashing and signing.
    • NativeMetaTransaction Contract: This contract enables meta transactions using EIP-712 structured data.
    • USDD Contract: This is the actual token contract that inherits from ERC20, AccessControlMixin, ContextMixin, and NativeMetaTransaction. It defines the USDD token, including its constructor and the `mint` function, which can only be called by the `PREDICATE_ROLE`.
  • Overall, this contract provides a comprehensive implementation of an ERC20 token with additional features like meta transactions and role-based access control.


Executive Audit Summary

According to the standard audit assessment, the Customer`s solidity smart contracts are “Secured”.  Also, these contracts contain owner control, which does not make them fully decentralized. We used various tools like Slither, Solhint and Remix IDE. At the same time this finding is based on critical analysis of the manual audit.

We found 0 critical, 0 high, 0 medium, 0 low and 3 very low-level issues.

Audit Report in PDF


Audit Report Flip book

Please wait while flipbook is loading. For more related info, FAQs and issues please refer to DearFlip WordPress Flipbook Plugin Help documentation.

Leave a Reply

Your email address will not be published. Required fields are marked *

two × one =