How to Secure Your Data in Blockchain? Privacy and Confidentiality in Blockchain

👉 Complete Playlist of Blockchain Specialization https://www.youtube.com/playlist?list=PLfQLfkzgFi7b3vQW6HObc8noOqL7LKR5-

Privacy is the right to protect the data, attributes, and assets of an entity from observation by unconsented parties. Confidentiality of data ensures that only authorized entities can have access to the data. These are two important concept especially for blockchain where the transactions can be viewed and analyzed using custom-built tools. In this lesson, we’ll look at methods for addressing privacy and confidentiality. On completion of this lesson, you will be able to discuss the approaches to ensure privacy, explain the methods for realizing confidentiality, both in the context of blockchain. By now, we all know very well that Bitcoin is a public blockchain. You can see all the transactions happening on the Bitcoin blockchain. Many blockchains including Enterprise Ethereum and Hyperledger Fabric are permissioned blockchains. They limit access to the blockchain to permission entities only. This ensures privacy of the network to a large extent. Within the network, data access privileges such as create, read, update are assigned to various entities. These are enforced with every transaction. This adds to the basic privacy provided by permissioned networks. Some blockchain platforms such as MultiChain ensures that the transacting nodes are indeed in a permissioned list. It also authenticates the sender and receiver using key exchange for every transaction. We just discussed the basic privacy currently implemented in blockchains. Next, let’s look at the confidentiality. For confidentiality, a straightforward method is to encrypt the data transacted and digitally sign it. It is also possible to obfuscate the data by adding extra elements. We illustrate the encryption and obfuscation with a smart contract data, blindedBid, where the actual bid in a blind auction smart contract is the value, but we’ve added two more parameters called fake and secret. In this case, the blindedBid sent by the bidder is obfuscated with the value fake and a value secret as parameters, and then encrypted with keccak secure hash algorithm. This provides confidentiality of the bid in a blind auction application. We explored at high level some simple methods for ensuring privacy and confidentiality. There’s extensive research on privacy including zero knowledge proofs and homomorphic encryption algorithms. You may explore these using the links in the resources section. Now, when you’re designing an application, the question to ask is, what are the encryption and obfuscation method you’re using in your design?

Update

Steve Rich's Exciting New Book: A Journey into the World of Forex Trading!

Interview

Subscribe to our channel for more computer science related tutorials| https://www.youtube.com/@learnwithgeeks