The Future of Bitcoin Privacy

in #bitcoin6 years ago (edited)

This post is a combination of all my bitcoin privacy series in one post!

 Contrary to popular belief bitcoin  is  not private. You can track every single movement on the blockchain if it is onchain transactions( Yes I am going to talk about LN).  While no privacy does not seems like a major big deal.....(My heart hurts after saying that), it lead to a bigger more major issue.  No Fungibility. Fungibility is a good or asset's interchangeability with other individual goods or assets of the same type.  As long as a coin is "traceable" it is subject to less fungibility. How? Every bitcoin is the same right? By code yes! By "history" no. A public ledger keep track of every movement.   

 Here how a bitcoin is not fungibility:
Let's say you sign up with Coinbase, You do some services and receive payment in Bitcoin. Those Bitcoins happen to be "dirty", either because the person that gave them to you used a darknet site, withdrew from a gambling site / hyip ponzi, or used a questionable mixer. You don't realize that and deposit the coins into your Coinbase wallet.  Subsequently your Coinbase account gets banned. If the coins were freshly mined there is no way that Coinbase would ban your account. While currently there isn't a direct difference in value between "clean" and "dirty" coins, the difference still exists. I talked about all possible bitcoin privacy tech. But I could not confirm which one are going to be added. Now I can. I have found out which tech that is going to be added well the tech that can be added voluntary or soft forks.  

 

Now let beginning with the basic techs/concepts that all the privacy features require/recommended to be used with:

Segwit: 

Now that something you do not think about do you. Segwit is a major scaling milestone. Not only is does it scale bitcoin by boosting the block size  , it allows for the Lightning network  to happen which also increasing/ allow  privacy to occur.  Segwit does increase fungibility, making zero-conf transactions secure by to fixing tx malleability. It will also increase the adoption of side chains and the lightning network, two other ways to increase fungibility.  

 Schnorr signature aggregation :

 Schnorr signatures can add a new advantage to CoinJoin/coinjoin liker services. It enables all participants in a CoinJoin transaction to not only combine their transactions, but to also combine their signatures. And doing so means the size of the transaction would actually be smaller than all individual transactions combined. The main benefit of schnorr is  that schnorr signatures could eventually increase total capacity 40 percent or more. Requires segwit to work.Think of it as decentralized batching. Read more about schnorr here:https://bitcoinmagazine.com/articles/the-power-of-schnorr-the-signature-algorithm-to-increase-bitcoin-s-scale-and-privacy-1460642496/https://medium.com/@SDWouters/why-schnorr-signatures-will-help-solve-2-of-bitcoins-biggest-problems-today-9b7718e7861c
 

Coinjoin proposal explanation:

 CoinJoin, allows different users to combine all their transactions into a single transaction. That one transaction will include multiple inputs coming from different payers, which sends money to multiple outputs, belonging to different payees.(This can be compared to a group of people throwing their bills and coins together in a basket, which they use to go shopping in different stores to buy the products all of them want. Each individual will get the goods that individual paid for, but it's unlikely any individual's “own” bill paid for the product that individual bought. Source Coinjoin has many diff forms but there are two current forms that are going to be added: On chain version  and the LN version. The onchain version has 2 popular version however I will not talk about one of them bc it has to many flaws aka it assumes bitcoin fees are $1. Yikes. Anyway the tech is called Zerolink explaining why it assumes bitcoin fees are high. Good idea but needs bitcoin fees to be high...... There can be a fix to it but no update to it right now so....

Sidechain: 

 A sidechain is separate chain that connect with bitcoin's main chain. Thus allowing bitcoin to have a diff chain using diff tech without clogging up the main chain. Hint if you can't wait for me to write about it, it called grin

Hiding ip:

Dadellion= hiding the ip in the bitcoin network. Explanation here IDK bc there is no update on the tech but once i find one I will notify everyone. In the meantime: Bitcoin nodes can connect to Tor but not by default. Coins like Verge claim the hiding ip is good enough for privacy so.......
 

 On chain privacy:

 I consider the tech more onchain bc it has to be introduced as another soft fork and does not use the LN. 

 

Confidential Transactions:

 Confidential Transactions combine and utilize several cryptographic tricks, most notably Borromean ring signatures and Pedersen commitment schemes. In confidential transactions   only the sender and the receiver of a transaction are aware of the amount transacted.   All inputs of those transaction can be added up, all outputs can be added up, and the two sums can be compared to ensure they’re equal ‒ all while never revealing any of the masked amounts, nor the sums. As such, nodes can verify that no bitcoins were created out of thin air, without knowing how many bitcoins were actually sent.Miner fees are still visible so that  miners can't award themselves too many fees. :)

Confidential Transactions would be more or less compatible with the current Bitcoin-protocol. The solution can be rolled out as a soft fork  

 If a Confidential Transaction is made from the anyone-can-spend address, both old nodes and new nodes see that transaction. New nodes would recognize the transaction as a Confidential Transaction, and, for example, check that there are no bitcoins created from thin air. New nodes would see new transactions, and know that some amount of bitcoin is probably moved from address to address – though they'd have no idea how many. :) Old nodes, meanwhile, would be tricked into thinking it's a zero-bitcoin transaction: they would believe no bitcoins left the anyone-can-spend address at all.This logic holds for each subsequent transaction. Old nodes see “zero-bitcoin transactions,” and believe all the bitcoins are still sitting in the anyone-can-spend address. (Old nodes might wonder why people are sending empty transactions to each other. But again, they wouldn't mind.) Bitcoins received through a Confidential Transaction can initially be spent only as a Confidential Transaction. They are “locked up” in the anyone-can-spend address for now, and cannot visibly move over the Bitcoin blockchain at all. 

So you see now why it may be considered off chain and confidential transaction requires segwit. So no bitcoin cash would not/could use confidential transactions. 

 In order to be able to spend these bitcoins in a normal transaction again, they must first “pass through” the original anyone-can-spend address. The receiver of a Confidential Transaction would have to send them back to the anyone-can-spend address, and from there start moving the coins in clear sight on the blockchain again. New nodes would check that not too many coins are being moved, while old nodes would simply assume the coins are moving for the first time since they were “locked up.” 

A Con to confidential transactions is how heavy it is vs normal bitcoin transactions.

Confidential Transactions can be brought down to only three times the size of a normal Bitcoin transaction.  
Ouch....Bitcoin is having trouble already with current transactions now transaction 3x than now.   That is where bullet proof come in which is talked about later on in this post. 

Another Con to confidential transactions is that it only hides amount used. 

 If Alice sends an unknown amount of bitcoins to Bob, and Bob subsequently sends 5 bitcoins to Carol and 2 to himself as change, it obviously means Alice sent 7 bitcoins to Bob.  This is where a version of coinjoin comes in.  With the amounts involved in Bitcoin transactions masked, the only lingering problem is breaking the link between a sender and a recipient in a trustless manner. This is what ValueShuffle, an improved version of CoinJoin, intends to achieve. 

As "CoinJoin" obfuscates which addresses sent bitcoins to which addresses, Confidential Transactions obfuscates the amounts, to break all links. With ValueShuffle, all this can be done without requiring a trusted party to merge the different transactions into one.

Basically Valueshuffle is just an better version of coinjoin that is compatible with confidential transactions and saves fees by batching the transactions ie: merge the different transactions into one.Segwit and schoor signatures would make the batched transaction even cheaper(talked about in stater post) Sources: https://bitcoinmagazine.com/articles/confidential-transactions-how-hiding-transaction-amounts-increases-bitcoin-privacy-1464892525/https://bitcoinmagazine.com/articles/valueshuffle-brings-together-the-best-of-both-worlds-for-privacy-1483557170/https://coinjournal.net/path-towards-better-privacy-bitcoin-becomes-clearer-will-still-take-time/

Bullet proof 

This is a type of proof that would scale bitcoin transaction aka scale confidential transactions. “At the time of writing, Bitcoin has roughly 50 million UTXOs from 22 million transactions. Using a 52-bit representation of bitcoin that can cover all values from 1 satoshi up to 21 million bitcoins, this results in roughly 160GB of range proof data using the current systems. Using aggregated Bulletproofs, the range proofs for all UTXOs would take less than 17GB, about a factor 10 reduction in size.” According to redditors it would scale bitcoin to do 5 times amount of transactions.
So the plan is to make Value shuffle and confidential transactions to use bulletproof.  Since Confidential transaction are 3x greater, Bulletproof-CT= +2x.  SO which would mean in real world use CT won't clog up the bitcoin network. And best of all regular transactions can use bulletproof to scale.   Sources: https://bitcoinmagazine.com/articles/how-bulletproofs-could-make-bitcoin-privacy-less-costly/https://coinjournal.net/bulletproofs-rangeproofs-quest-confidential-transactions/The last key problem with CT is that you read how the system has to act weird bc it a soft fork. So it would be recommended for CT to used after 2 releases of the bitcoin core ref client so that most nodes will be CT compatible nodes. It not that hard to fix.  

 

Offchain privacy:

 The lightning network is a bitcoin upgrade that does not affect the main chain. With segwit activated, the main chain is unaffected. So how does the LN protect user privacy? Well step one involves the fact  that the bitcoin you send in the LN is not "tracked aka record" instead it a huge smart contract that once complete shut off and send the bitcoin through main net.  So you could say this protect user privacy my not tracking every moment bc it only track the first and last transfer but those two gaps still reveal alot of info aka look at Tor :( So speaking of Tor..

Hiding the ip of transaction is a key part to privacy.

The LN will be by default using  The Lightning-Onion Protocol  The Lightning Network uses onion routing to securely and privately send transactions. This means addresses and transaction paths (# of hops) will be hidden from all LN nodes while still being able to push transactions through. However won't be using Tor but something like it.

Sphinx:

 Sphinx shares similarities with the well-known anonymizing communication tool, Tor (the Onion Router). As with Tor, any data package sent with Sphinx - including the receiving IP address - is encrypted. This encrypted package is then itself encrypted a couple times over until it consists of several "layers" of encryption (hence the "onion" metaphor for Tor).  Using clever cryptographic tricks, all these layers of encryption are applied so that each intermediary along a route toward the final destination of the package can unwrap only one layer. This layer reveals to each intermediary where the package must be forwarded to, but nothing else. (Compared to Tor, Sphinx uses improved cryptographic algorithms and creates a constant-size data package to better obfuscate a node's position in the route.) So basically Sphinx is like a better Tor routing but for LN payments only. Read more about it here: Source According to Verge coin: When the IP addresses of the users are obfuscated and the transactions are completely untraceable.  That is not enough while yes Sphinx hides the ip the opening and closing still reveal some really small info and not mixing coins lead to more tracking...So what have we got so far?The opening and closing of LN is only trackable(most cases). Using Tor, the ip address of the users are hidden somewhat thus leaving only gaps in the opening and closing checkpoint in Tor ( unless the new Tor is as untraceable as promised but that whole new diff conversation...)And unfortunately a solution for that issue is not found yet but hey Tor still couldn't solve it.As always run a VPN for even better privacy. I recommend  Torguard   they allow LN payments :)

As I said before hiding the ip is not good enough mixing the funds from the start ensure even better privacy. 

Tumblebit: Decentralized bitcoin mixer on LN  

 TumbleBit is in theory a completely private and trustless mixing service — and even offers increased scalability as a bonus. There are similarities between TumbleBit and the Lightning Network. It is  an unidirectional payment hub, similar to how the Lightning Network operates, where opening payment channels allows trustlessness. How does Tumblebit works: TumbleBit is based on David Chaum’s blind signatures. Let’s look at how one person, Alice, donates 1 bitcoin to another, Bob, through TumbleBit by formalizing the actions of the actors as follows:Tumbler: I want to play a game, I created a bunch of puzzles. I pay 1 btc for every solution and I also solve any puzzle for 1 btc. So the Tumbler solves any puzzle, not just ones it created.Alice: I use this game to anonymously pay Greg. I choose a puzzle and blind it. Then I make the Tumbler solve this blinded puzzle for 1 bitcoin. Once the Tumbler solves the puzzle, I unblind the blinded solution. Finally, I give the solution and original puzzle to Greg.Bob: I can redeem this solution for 1 bitcoin from the Tumbler. Alice blinds a puzzle, makes the Tumbler solve the blinded puzzle for 1 bitcoin, and unblinds the blinded solution. Alice then gives the original puzzle and the solution to Bob, and he redeems 1 bitcoin from the Tumbler with them. The key observation is as follows; when Bob and, say hundreds of other payees, come to redeem a bitcoin with their own solutions, the Tumbler cannot link together the blinded puzzles and blinded solutions, which it previously solved for Alice and the hundreds of other payers, with the real ones. This is the main idea behind TumbleBit’s anonymization technique. SourceThese anonymous transaction  between all Alices, the intermediary, and all Bobs, never hit the blockchain. Rather, once everyone is done transacting, the end-state of all payment channels is recorded on the blockchain once, to let everyone take their funds out. TumbleBit is a scalable second-layer payment hub on top of a privacy-friendly solution. Tumblebit is another version of LN that focus on privacy. Could it be added to the mainstream version of LN? At current stage nope but it could do a channel swap.However Tumblebit has a 3rd mode coming.  There also is a third mode, maturing in the head of the creators, that has not been fully published yet(aka proof), but it is probably possible to make the payer and the receiver make the same person. Therefore by joining the TumbleBit hub you can send and receive money anonymously, instantly for free. Isn’t that the marketing selling point of Bitcoin?
Note the amounts has to be fixed in this case, too....Source: LN has some much potential and it all because of segwit :)  

 

Bitcoin Sidechain Privacy:

 So you might be wondering what in the world is a sidechain?
Worry not that what I am here for! 😊
So a sidechain is a separate chain that connects with the main chain. The main chain currency acts like the currency on the sidechain. This introduces new tech to the coin without affecting the mainchain. Plus all transaction on a sidechain don't clog up the main chain so it good scalability solution as well 😊
Sidechain is being worked on bitcoin to help exchanges scale and introduce bitcoin to the Dapps's arm race!
Bitcoin's Ethereum killer: https://steemit.com/bitcoin/@sames/how-rsk-is-going-to-use-sharding
Bitcoin's solution for exchanges: https://steemit.com/busy/@sames/liquid-bitcoin-s-solution-for-exchangesHowever privacy side chains can be built as well!The most well known bitcoin privacy chain is MimbleWimble.

MimbleWimble:

MimbleWimble uses a type of Confidential Transactions and Coinjoin.In Mimblewimble, the receiver of a transaction generates the blinding factor which is used to prove ownership of the bitcoins. And the way it does this by "excess value", which is the difference between the inputs and outputs. This excess value is a set of random numbers that ensure that only the person who generated the blinding factor (the receiver) can spend the bitcoins. So, the blinding factors do not add up to zero anymore, but rather to another amount that is like a private key.
This is Mimblewimble version of Confidential Transactions.Now to hide individual transactions, Mimblewimble uses a type of Coinjoin!
Instead of containing transactions, Mimblewimble blocks will only have a list of new inputs, a list of new outputs and a list of signatures which are created from the aforementioned excess value.Mimblewimble is a scalable solution.

If it were to be active on Bitcoin since day one, the blockchain would be somewhat bigger (a few GB) than it is now. Compared to other real privacy coin this is amazing accomplishment.

Source: https://www.cryptocompare.com/coins/guides/what-is-mimblewimble/MimbleWimble is natively private.There are no ring signatures or zero-knowledge proofs on top of a transparent bitcoin-like transaction. In a MimbleWimble transaction, all values are fully obscured. There are no reusable or identifiable addresses. Every transaction looks the same to an outside party. Unlike the popular cryptocurrency, where the exact history of all transfers is publicly verifiable, that will not necessarily be the case for Mimblewimble. Private keys are no longer in play at all. (Nor are public keys or addresses. 😊)
So right now in theory MimbleWimble is better than Monero privacy in fact it so good Monero might be using a MimbleWimble sidechain themsleves.
Source: https://www.coindesk.com/mimblewimble-silly-sounding-tech-seriously-reform-bitcoin/This is the main privacy chain but in theory clones of Monero and zcash sidechain can be made for bitcoin but that boring and not that great :( 


So the post combined were:

https://steemit.com/bitcoin/@sames/how-bitcoin-plans-on-adding-privacy-fungibility

https://steemit.com/privacy/@sames/on-chain-privacy-how-bitcoin-plans-on-adding-privacy-fungibility

https://steemit.com/bitcoin/@sames/offchain-privacy-how-bitcoin-plans-on-adding-privacy-fungibility

https://steemit.com/bitcoin/@sames/bitcoin-sidechain-privacy


 Hope you liked it guys! Cited my sources too but cheetah going to complain either way :( 

 Now time for my game and Dapps battle series 



()

Sort:  

This post received a $0.210 (30.18%) upvote from @upvotewhale thanks to @sames! For more information, check out my profile!

Coins mentioned in post:

CoinPrice (USD)📈 24h📈 7d
BTCBitcoin8911.550$7.04%11.22%
ETHEthereum615.207$7.48%22.5%
XMRMonero266.649$8.02%38.15%
XVGVerge0.070$-3.09%-26.44%

Congratulations! Your post has been selected as a daily Steemit truffle! It is listed on rank 25 of all contributions awarded today. You can find the TOP DAILY TRUFFLE PICKS HERE.

I upvoted your contribution because to my mind your post is at least 27 SBD worth and should receive 130 votes. It's now up to the lovely Steemit community to make this come true.

I am TrufflePig, an Artificial Intelligence Bot that helps minnows and content curators using Machine Learning. If you are curious how I select content, you can find an explanation here!

Have a nice day and sincerely yours,
trufflepig
TrufflePig

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.028
BTC 58484.86
ETH 3100.06
USDT 1.00
SBD 2.40