Bitcoin Cash materializes Monero-level privacy with the new Electron Cash feature: "RPA Pay Codes" (Reusable Payment Addresses).
Monero privacy is based on hiding the identity of the transaction peers with the use of "ring signatures" and onetime keys (stealth addresses) for each transaction. It achieved better privacy with the development of "Ring Confidential Transactions" (or Ring CT), which in addition obfuscates the amount of each transaction.
While Bitcoin Cash as a blockchain is not oriented towards privacy, we have some solutions already and the recent implementation of the open-source development of "Reusable Payment Addresses" by the Electron Cash wallet is another step towards increasing the privacy of Bitcoin Cash users.
Electron Wallet has already integrated Cashfusion which performs shuffling of BCH with the use of Tor client and provides increased anonymity by obfuscating and mixing transactions.
These two features combined provide ultimate anonymity levels for Bitcoin Cash!
Reusable Payment Addresses (RPA)
Reusable Payment Addresses generates a "Pay-Code" which is a new receiving public address that is not linked to the previous addresses of the user. It gives a new receiving address for each payment, creating better terms of anonymity.
Together with Cashfusion, it creates an obfuscating combination that would make it virtually impossible for an outside researcher to track the route of funding.
The upgrade is still in an "alpha" stage and requires Electron Cash v. 4.2.4.2 RPA release of the wallet. This version is available to download from Github (link).
Another important feature of RPA Pay-Code is that it can be combined with the "Cash Accounts" feature of the Electron Cash wallet.
The Reusable Payment Addresses proposal was introduced by Imaginary_Username on his repository at GitHub.
RPA is still not functional for multi-sig addresses and Imaginary_Username explains the reason:
Source: Reddit
Electron Cash - RPA Tutorial
Developers recommend using RPA only for testing with small amounts until it becomes fully implemented in future Electron Cash releases.
*Please do not send any funds (tips) to these addresses, not even for test purposes as I will use these keys for test only (and for the reasons of this presentation) and I will discard them afterward.
Tutorial - Steps to create a Reusable Payment Address Wallet using Electrum Cash 4.2.4.2 RPA.
For this example, I created a new Bitcoin Cash wallet on Electron Cash v. 4.2.4.2. (link)
I downloaded the installable file and set up Electron Cash on an old laptop that I'm currently using for this tutorial.
With this tutorial, we will create a new Electrum BCH wallet with RPA functionality. I used the name "pantera" for my new wallet and proceeded with selecting to create a Reusable Payment Address Wallet.
After that, as usual, we are given the seed phrase that we enter to verify we written correctly.
We validate the password we selected previously to perform RPA background synching.
On receive section we have the RPA Pay Code.
Important to notice that currently the server we should be connected to is fulcrum.fountainhead.cash.
Network specifications should be as in the image above. Most probably, we will be connected to another server and port. If we are not on the same server as with the image above, the steps are:
- Open the Network Options from the Tools menu
- On the second tab "Server", deselect "Select server automatically"
- From the servers' menu select: fulcrum.fountainhead.cash and use port "50102"
The paycode will be in a form like this one:
paycode:qygqyw3xd59r05220aahha802rcrlagr98u9vnxe6f7sm9cgs2yrshwtqgg0u740lcv385jmext9ctwgzqcduj0sn7yt6lns70xdq8a44cjxuqqqqqqq862elfpg.
I opened a second test-wallet (default_wallet) which I used to send a small amount of BCH to test. The second wallet is a default one (not RPA), but I tested connected with the same server as shown above.
I don't think the sender wallet can send RPA transactions, while connected on a different server. So it is better to have both wallets connected to fulcrum.fountainhead.cash.
While waiting, the progress bar gets filled:
Seconds later, the transaction is transmitted and sent.
In case our transaction is still not showing in the receiver wallet an option that can help is refreshing the RPA transactions through the tools menu.
The transaction, in my case, required to refresh RPA. I received it in this address: bitcoincash:qpwduppzlhaaya4zlgagq9jj655hrgc39vrjfnssns
This was the second one I made, though.
The first one took a little longer for the wallet to display. This address received the first one:
bitcoincash:qrz80flavv8x6ety3m73pfrlkypmnjeckc760uvm26
I made a third transaction that took a little longer to conclude.
The first two were relatively fast,(less than a minute) but the third one took a few minutes to "grind through signatures".
The test was concluded successfully and privacy features may demand some more time, especially when the software is still at an "alpha" stage.
It will be a feature that will become very popular once the testing period ends.
Conclusion
Image from Unsplash, by Becca Tapert, (modified)
Financial privacy is as important as any other fundamental human right. Our sensitive private information is collected and sold and we don't even notice it. The websites we use, the shops we visit, and every kind of financial transaction we make leaves behind a trail of our consumer habits.
Financial and other private information is data-mined and eventually sold to various buyers with dubious. More than often, our financial information will be leaked in the darknet markets if we don't take care of our privacy.
Privacy features like this one, have immense importance in increasing Bitcoin Cash adoption in the merchant and business sector, but equally for retail users.
Overall, RPA is a feature that provides new public addresses for each transaction. And this is how we are supposed to be using Bitcoin, by not reusing the same addresses.
This feature does that automatically and I think that especially those businesses that deal too often with Bitcoin Cash will embrace it. Every user will find RPA to be a great tool at their disposal.
Congratulations to Imaginary_Username, Electron Cash, and the rest of the developers that took part in the discussions, coding, and testing of this essential feature.
Originally published at Read.Cash
Images:
- Lead Image from: Pexels, by Anthony Shkraba, (modified)
Writing on the following networks:
- Noise Cash
- Read Cash
- Steemit
- Hive
- Medium
- Vocal
- Minds
- Vocal.Media
- Den.Social (inactive)
- Publish0x (inactive)
I'm also active on the following media:
Check Bitworkerss! A new jobs marketplace for online freelancers!
Posted Using LeoFinance Beta
Congratulations @pantera1! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s) :
Your next target is to reach 200 replies.
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Good articles. I want to ask permission to re-blog your post. Thank you.
Sure, go ahead! Thanks for the kind words.
Posted Using LeoFinance Beta
this payment method really make sense it will make it easy for people to make their payments and even more secure. this is the advantage of digital currency
It is still in testing mode, but when fully integrated, together with Cashfusion (which suffles transactions) it will do wonders.
Posted Using LeoFinance Beta
digital currency is the evolution of money I think people should adopt it, if you refuse to adopt it now he will later regret it