Author

Topic: BIP47 Is it the Privacy Codes Bitcoin Users Need? (Read 205 times)

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
Thank you for the reply, so this code does not enhance Bitcoin privacy transaction but rather it only act as mask to the original address?

The BIP47 addresses can only function as masks by obscuring the sender and receivers behing lots of multisig, CPFP and other structures as franky1 pointed out.  (And of course, any technology in general has the potential for fraudulent usage.)
sr. member
Activity: 1372
Merit: 348
Thank you for the reply, so this code does not enhance Bitcoin privacy transaction but rather it only act as mask to the original address? 

As I read the GitHub wiki of bip47 this kind of motivation concern me
Quote
Payment codes provide the privacy benefits of Darkwallet-style Stealth Addresses to SPV clients without requiring the assistance of a trusted full node and while greatly reducing reliance on blockchain storage.

Since this code does not promote reliance on blockchain and trusted full node, could this code be subject to fraud and scam?
legendary
Activity: 2212
Merit: 7064
After reading the comments on github for BIP47 I saw that this original proposal was poorly designed and unanimously discouraged for implementation.
Here are some comments from Luke Dashjr, Greg Maxwell and Paul Imthurn in 2016, 2017 and 2018:
https://github.com/bitcoin/bips/wiki/Comments:BIP-0047

It's possible that something similar to payment codes could be used for Bitcoin, but it needs major redesign or writing new proposal from scratch.
Anything that improves privacy would be great for whole bitcoin ecosystem.
legendary
Activity: 3472
Merit: 10611
Two of 4 wallets the article mentioned are unknown, I can't even find any wallet called "Billion" and "Stash" seems shady to me.
The first problem that stands out in BIP47 to me is the need for an initial transaction between the two parties to get things started which also adds overhead (costs more fees). This "notification transaction" also leaks the payment code and blockchain analysis companies would love to mark everything they can link with such transactions as "tainted".

I feel like with introduction of side-chains, proposals like BIP47 are somewhat moot. You could do all the communication and even the fund transfer through a different channel using other layers or side-chains.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
It seems to be similar to another proposal called Silent payments that was posted here recently.

If so, then what were the causes that made BIP47 "Unanimously discouraged for implementaion"? I'm sure its not using the exact same EC algorithm (silent payments do not use ECDH but multiplicative properties of public/private keys).
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I'm not sure it's completely pro privacy but I could be reading things wrong.

What I understand from the examples is:
A code is generated (like a bitcoin address or a public key).
This address/public key is shared but wallets that pay it but add a derivation path to it too.
The new address generated is paid instead of the public key or address the user started with.

I'm not sure if there was an update or something I'm missing but unless the receiver's client is able to interact and give an address to pay at the time I don't know how these generated addresses actually stay private. It looks like what payment processors can already do (and pay servers) so might also be unnecessary/unused.
sr. member
Activity: 1372
Merit: 348
I happen to stumble on an article regarding BIP 47 and how it enhance the transaction privacy.  So I do a little bit more searching looking for other articles that explains it.  From a get go, I found that

BIP 47 also known as Bitcoin Improvement Proposal 47 (BIP47) is a Layer applications for Reusable payment Codes.

 
Code:
BIP: 47
  Layer: Applications
  Title: Reusable Payment Codes for Hierarchical Deterministic Wallets
  Author: Justus Ranvier
  Comments-Summary: Unanimously Discourage for implementation
  Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-0047
  Status: Draft
  Type: Informational
  Created: 2015-04-24[/quote]

Its purpose is to create payment code which can be publicly advertised and associated with a real-life identity without creating the loss of security or privacy inherent to P2PKH address reuse. [1]

According to this article[2] it explains the BIP47 as
Quote
Bitcoin Improvement Proposal 47 ? or BIP47 ? allows wallets to offer ?payment codes,? which act as stealth addresses masking the real Bitcoin address where various payments eventually land. Its protocol and specification have been written by developer and early Bitcoin adopter Justus Ranvier, who spoke with us about the wallets currently seeking to be BIP47-compliant.
Justus?s spec notes that payment codes automatically provide for transaction refundability, are SPV-friendly, and positively identify senders to recipients for relational certainty.[2]


Here are some worth noting conversation between Bitcoin.com (BC) and Justus Ranvier explaining about BIP 47 way back 2015

Bitcoin.com (BC): Which wallets are looking at implementing BIP47? Which already have, if any?

Justus Ranvier (JR): Samourai Wallet was the first wallet I worked with, and they are very close to launching with payment codes integrated.
justus ranvier bitcoin developerTwo other wallets have expressed tentative interest, but haven?t actively started working on an implementation yet.
I?m currently working with one wallet developer to define a multisig version of extend BIP47.

Quote
The first version of BIP47 did not support multisig because it wasn?t immediately evident that it would be possible, but we?ve recently discovered a way to make it work with reasonable trade-offs compared to the non-multisig version

BC: Is this the first such BIP for Bitcoin?

JR: The Stealth Addresses in Darkwallet were the first use of Elliptic Curve Diffie-Hellman (ECDH) addresses in Bitcoin.
Payment codes are designed to address some of the shortcomings of stealth addresses, which may have been responsible for their lack of adoption.


BC: Why would a user opt for Bitcoin with BIP47 rather than a currency which offers native privacy like Dash or Monero?

JR: The ?native privacy? advertised by some currencies may turn out to be more marketing hype than reality. We won?t really know until there?s been comprehensive testing of all the different currencies from a privacy perspective.
In the long term, users will prefer the currencies which represent the best investment because they have the best monetary properties.
Quote
?If [A privacy-centric] altcoin has inferior monetary properties and Bitcoin can get reasonably close to it in terms of practical privacy, I don?t see how such an altcoin can compete in the long term.?

BC: What primary use cases do you envision for BIP47?

JR: Bitcoin users can use payment codes the way they?ve always wanted to use Bitcoin addresses, without harmful security and privacy side effects.
Quote
?You can treat a payment code like your email address ? something that changes infrequently (if at all) and that you print on your business card.?
When you receive bitcoins to your payment code, you see the payment code of the sender and can send bitcoins back to them as easily as replying to an email.
Because they are a more natural fit for the way users want to interact with their wallets, I expect that payment codes will replace addresses as the primary way in which Bitcoin users pay each other


BC: What other coding projects are you working on right now?
JR: I accidentally became a core developer of Open Transactions because there was nobody else available to do it.

BC: Tell us a bit about your involvement with the Open Bitcoin Privacy Project. What?s up with OBPP these days?

JR: Right now we?re working on finishing up the second round of wallet privacy ratings, which should be released before the end of the year.
We also have a project to measure and graph address reuse in the blockchain and additional privacy recommendations to wallet developers in the pipeline.



7 years later of that conversation, BIP47 had drastically progressed and has been implemented on several wallets.[3]
Quote
Many few crypto wallets have accepted the modern technology of reusable payment codes such as Billion, Samourai, Sparrow, and Stash. The crypto market is set to embrace BIP47 more in the nearby future for the welfare of crypto investors to complete necessary crypto transactions with Bitcoin more safely and securely. The main aim of BIP47 or reusable payment codes for hierarchical deterministic wallets is to simplify Bitcoin processes with a static and public address. Thus, it can be said that reusable payment codes can allow repetitive crypto transactions with the preservation of on-chain privacy.

Full details and explanation of BIP47 can be found here[1]



Now that the Bitcoin Development Kit plans to implement BIP47 users is now allow to receive payment via a static payment code and interact with more privacy.[4].


With this development, does the transaction privacy offered by BIP47 match those  privacy coins?  Is it possible that transaction done with BIP47 can't be traced?



[1] https://github.com/bitcoin/bips/blob/master/bip-0047.mediawiki#Abstract
[2] https://news.bitcoin.com/reusable-payment-codes-privacy-coming-wallet-near/
[3] https://www.analyticsinsight.net/reusable-payment-codes-are-what-makes-bitcoin-transactions-safer/
[4] https://www.nasdaq.com/articles/implementing-reusable-payment-codes-in-bitcoin-wallets-to-improve-user-privacy
Jump to: