BIP 75 Simplifies Bitcoin Wallets for the Everyday User
Although Bitcoin is more than 7 years old, making payments on the network is still a rather cumbersome task. With a user interface that requires users to send money to long strings of letters and numbers rather than human-readable names, it’s no wonder that many individuals have a hard time figuring out how to use this new financial technology.
BIP 70 (Payment Protocol), which was authored by Bitcoin Foundation Chief Scientist Gavin Andresen and former Bitcoin developer Mike Hearn, has been a step in the right direction, but the relatively new BIP 75, which was co-authored by developers from Netki (Justin Newton and Matt David) and Breadwallet (Aaron Voisine and James MacWhyte), takes the main ideas in BIP 70 one step further.
What is the Payment Protocol?
The Payment Protocol creates a method of communication between a merchant and their customers before a payment is made. This communication protocol allows customers to see human-readable payment destinations, which can be authenticated via digital signatures. The protocol also creates a proof-of-payment for the customer, and it automatically provides a refund address to the merchant from the customer’s wallet.
This version of the Payment Protocol has been helpful in creating a checkout process for merchants that is similar to other options on traditional point-of-sale systems.
How Does BIP 75 Improve Upon the Payment Protocol?
One of the main downfalls of BIP 70 is that it doesn’t work well for P2P payments. While it gets the job done for transactions between a customer and a merchant, Bitcoin wallets are unable to receive payment requests when they’re offline. Store-and-forward servers can be used to forward new payment requests to wallets when they come online, but this setup creates new privacy and security concerns. BIP 75 is an attempt to solve this issue by encrypting all communication in the Payment Protocol end to end.
“By adding encryption at the application layer we create secure private communications, even in the case where there is a store and forward server for mobile or desktop wallets,” Netki founder and CEO Justin Newton, who co-authored BIP 75, told Bitcoin Magazine. “This additional encryption also protects the users in the case that the transport layer security is compromised.”
BIP 75 also allows the sender of a payment to create a cryptographically-signed invoice request for the receiver. This enables the receiver to validate the identity of the sender before they release an address in the returned payment request. Then, the receiver sends the encrypted payment request back to the sender.
Netki Senior Software Engineer and BIP 75 co-author Matt David clarified the differences in digital signature usage between BIP 70 and BIP 75 for Bitcoin Magazine:
“A digital signature exists only in the Payment Request message portion of the BIP 70 process, and therefore, the signature is only from the receiver. In BIP 75, there are digital signatures from both parties (via certificate signatures) as well as message signatures from each side to prove ownership of the messaging keys, which are used to calculate the encryption key for the Payment Protocol transaction.”
The human-readable names used in this updated version of the Payment Protocol make the entire payment process much more user-friendly. Personal logs of transactions are also improved because the names of people from past transactions are stored in a log rather than just a list of random Bitcoin addresses.
The Wallet Names discussed in BIP 75 would allow users to store static domain-style names, such as kyle.bitcoinmagazine.com. This enables what essentially amounts to address books in Bitcoin wallets. Wallet names can be mapped to BIP 32 wallets, which means users can use a single address for all payments without compromising on privacy. A new Bitcoin address is generated for each payment to avoid address reuse.
In terms of how Wallet Names are mapped to Bitcoin addresses in this system, Newton told Bitcoin Magazine:
“Wallet Names can point to a web address where the sending wallet can retrieve a unique address per transaction via a BIP 21 formatted response, or can initiate a BIP 75 Payment Protocol transaction, resulting in a signed Payment Request (including a unique address) generated by the receiving wallet.”
With this BIP implemented, Bitcoin wallets will look less like the early days of the Internet and more like modern payment applications such as Venmo.
Thanks to Netki Senior Software Engineer and BIP 75 co-author Matt David and Netki COO Dawn Newton for reviewing this article for technical accuracy.
Kyle Torpey is a freelance journalist who has been following Bitcoin since 2011. His work has been featured on VICE Motherboard, Business Insider, NASDAQ, RT’s Keiser Report and many other media outlets. You can follow @kyletorpey on Twitter.