Resources | Self-Hosted Wallets

Self-hosted Wallet Verification
Methods Compared

Self-hosted wallet verification is the process of confirming that a customer controls a cryptocurrency wallet address. For virtual asset service providers (VASPs), this can be an important part of meeting anti-money laundering (AML) and Travel Rule obligations when customers transfer digital assets to or from wallets they control themselves.

There are several ways to verify wallet ownership, each with different implications for security, privacy, cost and user experience. The four main methods are AOPP, the Satoshi Test, manual signing and visual proofs.

Why Is Self-Hosted Wallet Verification Important?Link Icon

Unlike custodial wallets, self-hosted wallets allow users to control their own private keys. Examples include mobile wallets, desktop wallets and hardware wallets.

When a customer requests a transfer to a self-hosted wallet, the VASP may need to establish that the customer controls the destination address. The applicable requirements depend on the jurisdiction and the circumstances of the transaction.

Wallet verification methods provide different ways to establish control of an address. Some rely on visual evidence, while others use an on-chain transaction or a cryptographic signature.

Self-Hosted Wallet Verification MethodsLink Icon

Number one

Address Ownership Proof Protocol (AOPP)Link Icon

Address Ownership Proof Protocol (AOPP) is a tool that allows cryptocurrency owners to prove that their self-hosted wallet (non-custodial wallet) belongs to them in an easy, fast and private way.

AOPP needs to be supported by both the self-hosted wallet and the VASP to exchange the signed message used to prove ownership. In practice, AOPP automates steps every wallet is capable of performing to send information to a VASP, but only with the user’s request and approval.

Rather than requiring customers to follow a manual signing procedure, AOPP guides them through the steps needed to generate and submit the proof.

How does AOPP work?

  1. The customer initiates a transaction with their VASP.
  2. An AOPP verification link is automatically generated.
  3. The customer opens the link and selects their supported wallet.
  4. Their wallet guides the customer through the ownership verification process.
  5. The signed proof is automatically returned to the VASP.

With an integrated solution such as the AOPP Portal, the process can be automated from the VASP's perspective, reducing the need for manual evidence review.

Pros Pros of AOPP

  • The process is fully automated; the proof can be submitted and processed without manual review of screenshots.
  • The underlying signature provides evidence of control of the relevant private key.
  • Customers do not need to send cryptocurrency or pay a blockchain transaction fee to prove ownership.
  • The chances of wallet address reuse are virtually nonexistent as customers can verify an address without incurring the costs associated with repeated Satoshi Tests.
  • The user experience is smoother due to the guided instructions, in turn reducing the technical effort required compared with manual signing.
  • Supported verification flows can be completed in seconds.
  • No copying and pasting of addresses and transaction proofs reduce the risk of users entering an incorrect address.
PDF Graphic

Download the AOPP Portal Guide

Download Now
Number two

Satoshi TestLink Icon

A Satoshi Test (Satoshi Test) is a method used to verify ownership of a self-hosted wallet address. To verify ownership, the wallet owner is required to transfer a small, predetermined amount of cryptocurrency from their address to their VASP within a specified timeframe. Successfully completing the transaction proves that the wallet owner controls the address.

Once the transfer is successful, the wallet owner is reimbursed for the amount sent. If the transaction fails, the wallet owner can attempt the test again, with the VASP issuing a new address and timeframe.

How does a Satoshi Test work?

  1. The VASP provides the customer with a test amount, destination address and deadline.
  2. The customer sends the specified amount from the wallet address they want to verify to the address provided by the VASP.
  3. The customer then submits the transaction ID or transaction hash to their VASP.
  4. Using the provided data, the VASP checks the blockchain transaction and confirms whether the test was completed correctly.
  5. Once the test is accepted, the address can be registered for subsequent transactions.

The transferred amount may be returned to the customer, depending on the provider's process. However, blockchain transaction fees are generally not refundable.

Pros Pros of the Satoshi Test

  • The transaction demonstrates the ability to initiate a transfer from the address being verified.
  • Verification can rely on a publicly recorded blockchain transaction rather than an image supplied by the customer.
  • Software can generate test instructions, monitor transactions and process verification results.

Cons Cons of the Satoshi Test

  • Customers must pay network fees, which can vary depending on the blockchain and network conditions.
  • Customers must complete an additional transaction before proceeding with their intended transfer, adding friction to the process.
  • Some wallets do not allow users to select the exact address or unspent outputs needed to perform the test. This is a particular challenge for UTXO-based cryptocurrencies such as Bitcoin.
  • The test is recorded on-chain and can reveal relationships between addresses and the timing of planned transfers.
  • Customers may prefer reusing a previously verified address to avoid repeating the test and paying further transaction fees.
  • Confirmation times and manual checks can slow down the verification process, thus delaying transactions.
Workflow Graphic

Download the Satoshi Test Workflow

Learn how to conduct a Satoshi Test step-by-step.

Download Workflow
Number three

Manual Signing MethodLink Icon

Manual signing (Manual Signing) verifies wallet ownership through a cryptographic digital signature. The VASP asks the customer to sign a specified message using the private key associated with the wallet address.

The VASP then verifies the signature against the address and message. A valid signature demonstrates control of the relevant private key without requiring an on-chain transaction.

How does manual signing work?

  1. The VASP provides a message for the customer to sign.
  2. The customer opens their wallet software and signs the message using the appropriate private key.
  3. The customer submits the signed message and wallet address to the VASP.
  4. The VASP verifies the signature.
  5. If the signature is valid and corresponds to the address being verified, the proof can be accepted.

The process does not require the customer to transfer cryptocurrency, although wallet compatibility and signing procedures vary.

Pros Pros of manual signing

  • A valid signature provides strong evidence that the signer controls the private key associated with the address.
  • Signing a message does not require an on-chain transaction.
  • The customer does not need to create a public transaction to demonstrate control of the address.
  • VASPs can automate signature verification and the processing of submitted proofs.

Cons Cons of manual signing

  • Not every wallet supports message signing in a way that is suitable for ownership verification.
  • Customers may need to understand how to sign messages and submit the resulting signature, and those unfamiliar with the process may need assistance from their VASP.
  • Different wallets can use different signing standards and formats, complicating verification.
Number four

Visual Proof MethodLink Icon

A visual proof (Visual Proof) is a screenshot or video recording showing a wallet address within the wallet software. The customer submits this evidence to their VASP, whose compliance team checks whether the displayed address matches the intended transaction address.

How does visual proof work?

  1. The customer initiates a transaction with their VASP.
  2. The customer captures a screenshot or video showing the relevant wallet address.
  3. The evidence is submitted to the VASP.
  4. A compliance team member reviews the evidence and checks the address.
  5. If the evidence is accepted, the transaction can proceed.

Pros Pros of visual proof

  • Most wallet users are familiar with taking screenshots or recording their screens.
  • The method can be used with virtually any wallet, provided the address can be displayed.
  • Customers do not need to send cryptocurrency or pay blockchain transaction fees to provide the proof.

Cons Cons of visual proof

  • Images and videos can be edited or fabricated, making it difficult to establish authenticity.
  • The process requires compliance teams to manually inspect the evidence and compare the displayed address with the intended destination.
  • Manual checks can delay transactions, particularly when review queues are busy.
  • Wallet interfaces vary considerably, making it challenging to standardise evidence assessment across different wallets.
  • Encourages address reuse due to the VASP trying to avoid inspections, which is bad for the customers and the VASP's privacy.

Comparing the Four Wallet Verification MethodsLink Icon

CriterionAOPPSatoshi TestManual signingVisual proof
Evidence typeDigitally signed proof via an automated workflowOn-chain transactionDigital signatureYes
Blockchain transaction requiredNoYesNoNo
Network feesNoYesNoNo
Cryptographic proofYesTransaction-based evidenceYesNo
Manual reviewCan be automatedDepends on automationDepends on implementationUsually required
Wallet compatibilityLimited to supported integrationsVaries by wallet and blockchainLimited to compatible signing methodsBroad
Customer effortLowModerate to highModerate to highLow
Privacy considerationsNo test transaction requiredOn-chain activity is publicNo test transaction requiredEvidence may expose wallet information
Automation potentialHighHighHighLimited
Evidence type
AOPPDigitally signed proof via an automated workflow
Satoshi TestOn-chain transaction
Manual signingDigital signature
Visual proofYes
Blockchain transaction required
AOPPNo
Satoshi TestYes
Manual signingNo
Visual proofNo
Network fees
AOPPNo
Satoshi TestYes
Manual signingNo
Visual proofNo
Cryptographic proof
AOPPYes
Satoshi TestTransaction-based evidence
Manual signingYes
Visual proofNo
Manual review
AOPPCan be automated
Satoshi TestDepends on automation
Manual signingDepends on implementation
Visual proofUsually required
Wallet compatibility
AOPPLimited to supported integrations
Satoshi TestVaries by wallet and blockchain
Manual signingLimited to compatible signing methods
Visual proofBroad
Customer effort
AOPPLow
Satoshi TestModerate to high
Manual signingModerate to high
Visual proofLow
Privacy considerations
AOPPNo test transaction required
Satoshi TestOn-chain activity is public
Manual signingNo test transaction required
Visual proofEvidence may expose wallet information
Automation potential
AOPPHigh
Satoshi TestHigh
Manual signingHigh
Visual proofLimited

Frequently Asked QuestionsLink Icon

What is self-hosted wallet verification?

Copy
Link Icon

Self-hosted wallet verification is the process of establishing that a customer controls a cryptocurrency address held in a wallet they manage themselves, rather than an account held by a custodial provider.

Is a screenshot sufficient to prove wallet ownership?

Copy
Link Icon

A screenshot can show that an address appears in a wallet interface, but it does not provide cryptographic proof that the customer controls the associated private key. Screenshots can also be manipulated, so their suitability depends on the VASP's risk assessment and applicable requirements.

What is the difference between a Satoshi Test and a digital signature?

Copy
Link Icon

A Satoshi Test uses an on-chain transaction to demonstrate the ability to transfer funds from an address. A digital signature demonstrates control of the associated private key by signing a message, without requiring a cryptocurrency transaction.

Is AOPP different from manual signing?

Copy
Link Icon

AOPP automates the exchange of information used in signature-based wallet verification. Manual signing requires the customer to perform more of the signing and submission process themselves, whereas AOPP guides and standardises the workflow for supported wallets.

Does wallet verification require a blockchain transaction?

Copy
Link Icon

No. A Satoshi Test requires an on-chain transaction, but visual proof, manual signing and AOPP-based verification do not inherently require one.

Automate Self-Hosted Wallet Verification with 21 Travel RuleLink Icon

21 Travel Rule supports self-hosted wallet verification through the AOPP Portal, alongside workflows for Satoshi Tests, manual signing and visual proofs.

By automating supported verification processes, VASPs can reduce manual compliance work, streamline the customer journey and select an appropriate method for different wallet types.

Discover how 21 Travel Rule can support your self-hosted wallet verification requirements.

Request a Demo
21 Analytics offers Software Solutions for Virtual Asset Service Providers.
Poststrasse 22, Zug, Switzerland     |     info@21analytics.co
X
Trust Graphic

New: TRUST Network

Transact with Coinbase, Kraken, Gemini and others.