By Kevin Helms,
Reusable payment codes, which can be used in place of bitcoin addresses to give transactions more privacy, just got more useful. Now there is a directory for payment codes, beta-launched last week by the Samourai Wallet developers.
What is a Payment Code?
The invention of the highly private bitcoin payment codes for Hierarchical Deterministic (HD) wallets dates back to 2015, when Bitcoin developer and engineer Justus Ranvier wrote Bitcoin Improvement Proposal 47 (BIP47) to define the technique for creating payment codes. According to his definition:
Payment codes are a technique for creating permanent Bitcoin addresses that can be reused and publicly associated with a real-life identity without creating a loss of financial privacy. They are similar to stealth addresses, but involve a different set of trade-offs and features that may make them more practical.
Last year, Samourai Wallet became the first to create a full BIP47 implementation of payment codes, designed to bring privacy to public bitcoin payments.
Payment codes are longer than Bitcoin addresses and can only be generated in wallets that are BIP47-ready, and so far that only includes the Samourai Wallet.
Both sending and receiving parties need the Android-only Samourai wallet to use the feature. When sending bitcoins using a payment code, a payment channel will be created between both wallets by sending a special transaction on the blockchain called a ‘broadcast transaction,’ which requires one network confirmation to confirm, Samourai’s website explains. Here are the instructions on how to set up a payment code.
Payment Code Directory
Last week, the startup announced a beta launch of Paymentcode.io, a searchable, public directory of reusable payment codes.
The directory allows anyone to sign up with just an email address, and all Bitcoin users in the future can add their payment codes to the directory, associated with their chosen information such as their name, social media accounts, and a picture.
Using the directory, anyone’s payment code can be looked up by name, social username, or email address. From there, bitcoin can be sent directly to anyone by scanning the QR code on the page. No addresses will be shared or reused, and there’s no way to track the transaction.
Once other wallets have included BIP47 payment codes, their users can also add their codes to the directory, making it a central directory for everyone’s payment codes.
Why Use Payment Codes?
Posting a bitcoin public address online such as on forums or social media pages is far from private, since the world can track payment history associated with that address on the blockchain. A payment code can be publicly associated with an identity without giving anyone the ability to track its transactions on the blockchain. They’re created to be bitcoin address alternatives that can be posted publicly en masse with none of the privacy concerns that bitcoin users now face.
Bitcoins sent to a payment code get directed to a unique bitcoin address every time. The recipient will be able to “see the payment code of the sender and can send bitcoins back to them as easily as replying to an email,” Ranvier explained to Bitcoin.com. Payment codes are therefore great for mass advertising and accepting payments privately. He also noted that:
You can publicize your payment code in the same way that you can publicize your email address. Even if everyone knows your payment code, nobody can monitor the blockchain to see how many payments you have received or which transactions are yours.