Verify a wallet

A PUT request sent to verify a non-custodial wallet.

Confirming the ownership of a wallet is vital for the safeguarding of your assets and to emit a new card (virtual or physical).

At its core, demonstrating ownership of a certain wallet or address equates to having the capability to move assets from that particular wallet or address.

There exist multiple methods to ascertain ownership. One prevalent method is through message signing, where a message is signed using the private key that correlates with a public address, verifying ownership.

By holding the private keys, you're enabled to sign transactions, solidifying your claim to the wallet. Additionally, you can produce a distinct signature that affirms ownership of a particular wallet or address.

Example with Ethersjs:

const wallet = ethers.Wallet.createRandom();
const types = {
  User: [{ name: 'userId', type: 'string' }],
};
const domain = {
  name: 'Kulipa Wallet Verification',
  version: '1',
  chainId: 1, // this is the chain ID of the wallet network
};
const message = {
  userId: 'usr-123',
};

const signature = await wallet.signTypedData(domain, types, message);

Chain IDs are unique identifiers for blockchain networks. They are used to differentiate between different networks and are crucial for wallet verification.

Language
Credentials
Header