February 16, 2024

User Signing: A Step-by-Step Guide on Verifying Bitcoin Non-Custodial Wallet Ownership

User Signing: A Step-by-Step Guide on Verifying Bitcoin Non-Custodial Wallet Ownership

For Virtual Asset Service Providers (VASPs), ensuring the legitimacy of transactions to comply with regulatory standards such as the FATF Travel Rule while maintaining user privacy is crucial. However, this was easier said than done until Shyft launched User Signing in late December last year. 

With Shyft User Signing, VASPs now have a user-friendly and secure way for users to prove ownership of their non-custodial wallets. 

In this guide, we outline the user signing process on the Bitcoin network with the Trezor and Ledger hardware wallets.

User Signing on the Bitcoin Network With Trezor

Step 1: Select the Type of Address to Sign

The first step in the user signing process is to select the type of cryptocurrency address you wish to sign. In this case, we are focusing on the Bitcoin network. 

Step 2: Choose Your Hardware Wallet

After selecting Bitcoin, the next step is to choose the hardware device that you will use to connect to your Bitcoin wallet. For this section, we will proceed with Trezor.

Step 3: Connect Your Trezor Wallet

Connecting your Trezor device is straightforward. Once you've selected Trezor as your hardware wallet, you'll be prompted to connect the device to your computer and enter your PIN. 

The service will then communicate with your Trezor to prepare it for signing.

Step 4: Export the Public Key

Trezor will request permission to export your public key to the signing service. This is a crucial step as it allows the service to identify which address you're proving ownership of without compromising your private key. 

Step 5: Signing the Message

With your public key exported, the next step is to sign a message. This is done through the Trezor interface, where you will see a prompt to sign a Bitcoin message. Follow the instructions on your Trezor device's screen to complete this step.

Step 6: Verification and Proof

Upon successful signing, you will receive a signature proof. This is a cryptographic string that proves you have signed a message with the private key corresponding to your public Bitcoin address. 

Now, we will see a similar process with Ledger, another popular hardware crypto wallet. 

User Signing on the Bitcoin Network With Ledger

Step 1: Select the Type of Address to Sign

First, select the type of cryptocurrency address you wish to sign. We selected the Bitcoin network.

Step 2: Choose Your Hardware Wallet

After selecting Bitcoin, the next step involves selecting your hardware device, which was Ledger in our case. 

Step 3: Connect Your Ledger Wallet

Connect your Ledger device to your computer, enter your PIN, and open the Bitcoin application on the device. The interface will then establish a connection with your Ledger and prepare it for the user signing process.

Step 4: Export the Public Key

Your Ledger will now ask permission to export your public key to the user signing service. This step is essential for the service to verify your address ownership securely.

Step 5: Sign the Message

Once your public key is exported, sign the message using your Ledger. Here, you will see the details of the message to sign. Now, confirm the message on your Ledger device to complete the signing process.

Step 6: Verification and Proof

After signing the message, you'll receive a signature proof—a cryptographic verification that you have used your private key to sign the message without exposing it. This proof is used to confirm ownership of your Bitcoin address securely.

For a better understanding of the entire process, you might want to check the video tutorial: https://www.youtube.com/watch?v=iuE6_IafxOs

Conclusion

User signing is a must-have for VASPs to keep transactions secure and compliant. With this guide, VASPs can help their users confidently verify their non-custodial Bitcoin wallets, making sure everyone's on the same page with clear and secure processes.

______________________________________

Shyft Network powers trust on the blockchain and economies of trust. It is a public protocol designed to drive data discoverability and compliance into blockchain while preserving privacy and sovereignty. SHFT is its native token and fuel of the network.

Shyft Network facilitates the transfer of verifiable data between centralized and decentralized ecosystems. It sets the highest crypto compliance standard and provides the only frictionless Crypto Travel Rule compliance solution while protecting user data.

Visit our website to read more, and follow us on X (Formerly Twitter), GitHub, LinkedIn, Telegram, Medium, and YouTube. Sign up for our newsletter to keep up-to-date on all things privacy and compliance.