Multichain Wallet Ownership Verification

Multichain Wallet Ownership Verification

The goal of our project goal is to prove ownership of wallets across multiple chains by sending messages back and forth between two chains or two wallets on the same chain.

Created on 16th April 2023

Multichain Wallet Ownership Verification

Multichain Wallet Ownership Verification

The goal of our project goal is to prove ownership of wallets across multiple chains by sending messages back and forth between two chains or two wallets on the same chain.

The problem Multichain Wallet Ownership Verification solves

People today can have assets spread around to multiple wallets or chains. While there are great reasons to have assets on multiple chains and addresses, keeping things separate can lead to challenges if you want to prove your ownership of assets. Proving ownership of assets is important for getting loans, posting collateral, OTC trading, and other applications that are necessary for a future built around decentralized ID systems and DeFi.

Examples of specific applications that could use our protocol include:

  1. Credit scoring systems. Credit scores often rely on the asset value of the person taking out credit as one of the inputs to credit scores. Credit scores are important for building trust and risk models in today's world and will become even more important in the future as the parties transact pseudonymously.
  2. Company financial reporting. Companies in the future will probably use many different wallets and chains for different use cases and the added security of multi-wallet asset holding. In the future, these companies will still need to create financial statements to give shareholders and other interested parties information on their performance. Now, just by showing a single address and proving ownership through our project, they can disclose a lot about their financial position to interested parties without a laundry list of addresses in their financial statements.
  3. Interchain lending. People with this project can secure loans with assets from any chain around the world and get access to lending pools built on any chain. While this project only performs the first step in lending, the financial assessment of the borrower, we feel that without our project a world of interchain partially collateralized lending would be impossible.

Challenges we ran into

We ran into many problems while building, however, we powered through them and in the end created something we are proud of using technologies we had never used before.

Our first issue was getting NPM to run on Windows machines. Eventually, we did get WSL and everything working to begin building. After getting over the NPM issues, we were able to run all of the examples of smart contracts in the Axelar example GitHub. We learned a lot reading these examples and began using them to transact on the testnet.

Second, we ran into issues around paying for gas on different chains. We eventually got a large amount of Avalanche Fuji testnet gas from the Avalance team and so that helped us out a lot.

At this point, we came across issues getting our transactions to get approved and executed. Our first transaction: https://testnet.axelarscan.io/gmp/0x5371b6d12fc3205389e446da12170c3d171afed1b1f4023030ae7b5bf121af61:1 has still not gone through, however, eventually we fixed this problem too.

We had our first real success when we completed our first testnet transaction going from Avalanche to Polygon:
Axelarscan: https://testnet.axelarscan.io/gmp/0x1e216be4395cff23e96ce69d292100a9e5c7f572b22830990fee21ebc206cbc8:1

At this point, we tried to build a front end but had problems getting it to interact with the smart contracts so we included the code and two screenshots of the front end in the images section.

After this, we created another smart contract with updated abilities for sending back and forth data which will be our final submission:
Both on the Axelar testnet
Tx1: 0x64474d96fcc75399d627c2615a9d4048c82f81af8e9832e2e5a8a577cd730343
Tx2: 0xbddcbb360344ea3226a5a6a9bcf1fe35c71d864ed7dd51bb645b5fdf5f44b257

These two transactions prove that a user holds two addresses and can transact on both.

Tracks Applied (3)

Axelar

The main focus of our project is Axelar GMP which we used to build and deploy a smart contract seen in this AxelarScan ...Read More

Ava Labs

To qualify for the C-Chain EVM Track for Avalanche we created a solidity smart contract on the Avalanche Fuji testnet an...Read More

🏆Fool's Gold

While we think it is unlikely anyone would lose money due to an exploit on our project we do realize that there is a pos...Read More

Discussion

Builders also viewed

See more projects on Devfolio