Getting your Trinity Audio player ready...

This post was first published on Medium.

nChain
Vanity Address

Previously, we have shown a novel and private way to purchase Bitcoin vanity addresses, using Zero-Knowledge Key-Statement Proof. In practice, it has one drawback: after the buyer verifies the proof in step 7, he can abort the exchange protocol and the seller wastes resources to find an answer but does not get paid.

To overcome this drawback, we conduct the exchange entirely on chain using a smart contract. It only pays out if a private key is provided such as the derived/combined public key/address meets the vanity pattern. Full code is shown below.

 

To compute point addition (Line 16) and multiplication (Line 13) efficiently, we leverage the same technique as before. After we have the combined public key, we validate its corresponding address meets the predefined vanity pattern at Line 19.

Extension

We have only showed how to verify the derived address has certain prefix. But it is straightforward to extend it to have the address or the public key meet any arbitrary requirement.

Watch: CoinGeek New York presentation, Smart Contracts & Computation on Bitcoin

Recommended for you

Modular ASIC-GPU Hybrids: ZK Proofs in Bitcoin mining
Modular ASIC-GPU hybrids revolutionize block reward mining, enhancing efficiency and opportunities in ZK proofs and diverse computing applications.
October 21, 2025
Open Run//Asia Hackathon: Code // Collaborate // Compete
Join Open Run//Asia, a three-month online hackathon and compete for $15,000 in prizes while innovating on the BSV blockchain. Registration...
October 7, 2025
Advertisement
Advertisement
Advertisement