A Demo to Enable Bitcoin Wallets Like UniSat and OKX on CKB

·

Blockchain interoperability is one of the most sought-after advancements in the decentralized ecosystem. The ability to use familiar Bitcoin wallets—such as UniSat and OKX Wallet—to interact with assets on alternative chains significantly lowers entry barriers for users. This article explores a proof-of-concept (PoC) project that enables Bitcoin wallet integration with the Nervos Network’s CKB (Common Knowledge Base), allowing users to send and receive CKB tokens using standard BTC addresses.

The project, known as CKB UniSat PoC, demonstrates how browser-based Bitcoin wallets can be adapted to function seamlessly on CKB testnet. By leveraging existing wallet infrastructure, this initiative enhances cross-chain accessibility without requiring users to adopt new tools or seed phrases.


🔧 Project Overview

The CKB UniSat PoC consists of two core components:

This setup enables users to utilize their UniSat or OKX Wallet not only for Bitcoin but also for interacting with CKB-based applications—bridging two major ecosystems through a unified identity layer.


🛠️ How to Use with UniSat Wallet

To get started with UniSat integration, follow these steps:

  1. Install UniSat Wallet from the official website.
  2. Restore test accounts using the following mnemonic phrases (pre-funded with testnet CKB):

    • cousin minimum crazy knock electric curve inflict acid neck gift castle slush
    • soup butter loud convince rabbit horn salute clump still amount immune sustain
  3. Choose an address format: Native Segwit, Nested Segwit, Legacy, or Taproot (P2TR).
  4. Launch the web UI:

    cd dapp && npm install && npm run uiWalletUnisat
⚠️ Note on Taproot (P2TR) Support: While Taproot addresses can be used to spend CKB, they are not fully compatible due to signature limitations. When sending to a Taproot address, users must use the generated Native Segwit address displayed in the UI instead of the wallet’s native Taproot address.

👉 Discover how Web3 wallets are transforming cross-chain interactions — explore integrated solutions today.


🛠️ How to Use with OKX Wallet

OKX Wallet users can follow a nearly identical process:

  1. Download and install OKX Wallet.
  2. Restore the same test accounts using the provided mnemonics:

    • cousin minimum crazy knock electric curve inflict acid neck gift castle slush
    • soup butter loud convince rabbit horn salute clump still amount immune sustain
  3. Select your preferred BTC address format.
  4. Run the application:

    cd dapp && npm install && npm run uiWalletOkx

Same caveat applies: Taproot addresses cannot be directly used as receiving addresses due to technical constraints in current wallet APIs.


🔍 Understanding the Taproot (P2TR) Address Limitation

One of the key challenges in integrating modern Bitcoin wallets with CKB lies in signature algorithm compatibility.

Current Findings:

When retrieving a public key via:

await unisat.getPubkey();

The result is a 33-byte compressed ECDSA key:

028d7b778457ebbd11da8a7dddcb21c481d9223303835174b6ab81fd7f6d33553a

Signing a message returns a 65-byte signature:

HPziNYdgXBQdozgHM10skbeJPu2WGyaW1P1H6i4XOok4AjDKjjqJf/b+qkvz6OuMIgre+O2g0ZX4KEDBbGXrcc4=

After decoding, it confirms ECDSA usage (R + S + recovery ID), not pure 64-byte Schnorr.

Workaround Solution

Since native Taproot signing isn't supported, the project uses a fallback method:

let pubkey = unisat.getPublicKey();
let pubkey_hash = RIPEMD160(SHA256(pubkey));
let address = bech32_encode(pubkey_hash); // Native Segwit (P2WPKH) format

This generates a bech32-encoded P2WPKH address derived from the same public key, ensuring compatibility with CKB's verification logic.

Thus, while users see a Taproot address in their wallet, the system internally maps it to a functional Native Segwit counterpart for receiving funds.


💡 Why This Matters: Core Benefits and Use Cases

This PoC unlocks several important possibilities:

Core Keywords:
Bitcoin wallet integration, CKB, UniSat, OKX Wallet, Taproot support, cross-chain interoperability, Nervos Network, proof of concept


❓ Frequently Asked Questions (FAQ)

Q: Can I use any Bitcoin wallet with this PoC?

A: Currently, only UniSat and OKX Wallet are supported due to their standardized Web3-like APIs. Other wallets may require custom integration.

Q: Is my mainnet BTC at risk when using this?

A: No. The project operates entirely on CKB testnet, and no actual Bitcoin is transferred or accessed. Only public key derivation and message signing are used.

Q: Why can’t I receive CKB directly to my Taproot address?

A: Because the wallet’s signMessage API doesn’t support Schnorr signatures needed for P2TR validation. The system falls back to P2WPKH-style addresses for compatibility.

Q: Can I contribute to improving Taproot support?

A: Yes! As wallet providers evolve their APIs, developers can update the lock script and UI logic to enable full P2TR functionality.

Q: What happens if I send CKB to my wallet’s displayed Taproot address?

A: It may result in lost funds. Always use the address generated by the dApp UI, which corresponds to the derived Native Segwit version.

👉 See how next-gen Web3 platforms are solving cross-chain friction — start exploring now.


🚀 The Future of Cross-Chain Wallet Integration

As blockchain ecosystems grow more specialized, seamless interoperability becomes essential. Projects like this CKB UniSat PoC represent early but critical steps toward a future where:

With continued improvements in wallet APIs—especially support for Schnorr and BIP-322-style signing—the vision of universal Bitcoin-based identity becomes increasingly viable.


✅ Final Thoughts

The CKB UniSat PoC is more than just a technical demo—it's a blueprint for inclusive blockchain access. By enabling popular Bitcoin wallets like UniSat and OKX Wallet to interact with CKB, it removes friction, leverages existing user bases, and promotes wider adoption of Layer 1 innovations like Nervos.

While limitations around Taproot remain, they highlight areas for future development rather than dead ends. As standards evolve, so too will the capabilities of cross-chain tools.

Whether you're a developer exploring multi-chain dApp design or a user seeking simpler onboarding, this project offers valuable insights into what's possible when ecosystems collaborate instead of compete.

👉 Ready to dive deeper into Web3 innovation? Start building with integrated tools today.