logo
logo

Blog

Articles and commentary from the Qtum team.

Bridged USDC Banner
June 05, 20243 mins read

Preparing for Bridged USDC on Qtum

We’ve previously provided a few updates about our plan to bridge USDC between Ethereum and Qtum to bring liquidity pools to our blockchain. We currently have the development done for the bridge infrastructure, which has been audited by Certik. Sayfer has finished and audited the MetaMask Snap portion of the bridge. We’re happy to announce that no major security issues were found, and every issue flagged as low or medium has been responded to.

We’ve successfully bridged Sepolia USDC to Qtum Testnet using a “sideloaded” MetaMask Snap wallet. Sideloaded means that the MetaMask Snap has to be manually installed, not through the Chrome Extension Store. One of the last steps we’re doing is submitting our audited MetaMask Snap to Consensys to see if they will bundle our Snap into the greater MetaMask Chrome extension. We’ve been told that this is possible if our Snap is audited by an approved company, which is why we chose to use Sayfer to get this done. 

To sum up, the work on the bridge and wallet is complete, and we should be able to start bridging Circle USDC back and forth between Qtum Testnet and Ethereum Sepolia. After some testing, we’ll be able to bring this to the mainnet.

Here are some notes from our developers on the work that has been done in the last few weeks since our previous progress report:

Bridge Development:

  1. Contracts Creation:

    • Integrated USDC on Sepolia and Qtum testnets.

  2. Frontend Development:

    • Established initial user interface and wallet integration.

  3. Validator Nodes:

    • Configured validator nodes and backend communication interfaces.

    • Conducted internal testing and deployed multiple validator nodes.

  4. Metamask Integration:

    • Developed and tested a Metamask snap.

    • Deployed Metamask flask for testing and conducted validator load testing.

  5. Security and Audits:

    • Audited contracts with Certik.

    • Implemented Certik’s recommendations.

    • Initiated negotiations and bid collection for Metamask snap auditors.

    • Deployed DNS, SSL, and other security best practices.

  6. Public Deployment:

    • Released public validator nodes, codenamed “Ziesto.”

    • Deployed the testnet frontend and made testnet nodes public.

  7. Documentation:

    • Updated documentation to reflect the latest developments.

AMM Deployment:

  • Planning and adopting best practices for Automated Market Maker (AMM) deployment.

  • Decided against involving third-party developers for the initial AMM setup to allow community-driven expansion after the initial launch for the base pair.

Developer Notes:

(Qtum Developers wrote this section)

We are approaching the final stages of our testnet deployment for the bridge. The validators and all backend services essential for successful bridge implementation are now operational in their "final" public testnet version. 

Extensive discussions have been held on transitioning from internally managed validators to community-voted external validator nodes and the mechanisms to facilitate this process. 

Our testnet and mainnet initial deployments will remain with Qtum at first, but we will work with users to deploy validators to augment the foundation validators as we move forward. 

Internally, the USDC Sepolia contract and Qtum API interfaces have undergone rigorous testing. Numerous enhancements have been made to streamline operations and ensure the system remains quick, user-friendly, and exceptionally stable—maintaining the high standards we set for our blockchain.

We chose a Metamask snap for the user interface, focusing on ease of use and user-friendliness. This decision, though challenging, was facilitated by our development of the Janus web3 proxy between ERC and QRC, significantly easing the deployment process and benefiting third-party developers creating web3 dApps on Qtum. As a result, implementing QRC20 functions has become more straightforward for external developers.

The testnet will continue to use Metamask flask with our externally hosted snap until the final audit is completed. Once we progress through the Ziesto testnet public test with our Discord community, we will notify testers to transition to the standard Metamask app.

This overview encapsulates our progress and the efforts made to ensure the robustness and user-friendliness of our implementation. We are excited about the upcoming phases and look forward to the community's continued support and feedback as we enter public testing.


Join the Qtum Community

If you have yet to become a part of our community, we invite you to join us and stay updated on the latest developments, participate in discussions, and contribute to the growth of the Qtum ecosystem.