decentralizing privacy using blockchain to protect
play

Decentralizing Privacy: Using Blockchain to Protect Personal Data - PowerPoint PPT Presentation

Decentralizing Privacy: Using Blockchain to Protect Personal Data Guy Zyskind , Oz Nathan, Alex Sandy Pentland Guy Zyskind Decentralizing Privacy: 2 Using Blockchain to Protect Personal Data The problem of


  1. Decentralizing Privacy: Using Blockchain to Protect Personal Data � � Guy Zyskind , Oz Nathan, Alex ‘Sandy’ Pentland � Guy Zyskind � Decentralizing Privacy: 2 � Using Blockchain to Protect Personal Data � �

  2. The problem of protecting personal data � Data are stored centrally (Trusted Third Party model): � User perspective: � • Security breaches : a single point of failure � • Users don’t own their data (lack of ownership ) � • Users can’t audit (lack of transparency ) � � Guy Zyskind � Decentralizing Privacy: 3 � Using Blockchain to Protect Personal Data � �

  3. The problem of protecting personal data � Data are stored centrally (Trusted Third Party model): � User perspective: � Service perspective: � • Security breaches : a single point of • Cost (compliancy, security audits, failure � Hiring CS PhDs…) � • Users don’t own their data (lack of • Brand reputation � ownership ) � • Simplicity � • Users can’t audit (lack of transparency ) � � � � Guy Zyskind � Decentralizing Privacy: 4 � Using Blockchain to Protect Personal Data � �

  4. General idea – A (verifiable) privacy-preserving decentralized cloud � Service � Service � blockchain Registry � Server � DHT DHT Guy Zyskind � Decentralizing Privacy: 5 � Using Blockchain to Protect Personal Data � �

  5. General idea – Simulate TTPs with a P2P network + blockchain � Eliminates trust. Decentralized: � • Access-control (Blockchain) � • Storage (DHT) � • Privacy-preserving Computations Service � (MPC) � Service � blockchain Registry � Server � DHT DHT Guy Zyskind � Decentralizing Privacy: 6 � Using Blockchain to Protect Personal Data � �

  6. A brief introduction to Bitcoin � • Proposed in 2008 in a paper by Satoshi Nakamoto (pseudonym). � • Enables parties to directly transfer a digital currency (Bitcoins) without a TTP (i.e., banks). � • Instead, a network of untrusted peers ensures the validity of all transactions. � • All correct transactions are publicly verifiable through a public ledger (the blockchain ). � Guy Zyskind � Decentralizing Privacy: 7 � Using Blockchain to Protect Personal Data � �

  7. How does Bitcoin work? In a nutshell .. � Goal: Construct a public time-stamped log of all valid transactions without using TTPs. � Guy Zyskind � Decentralizing Privacy: 8 � Using Blockchain to Protect Personal Data � �

  8. How does Bitcoin work? In a nutshell .. � Goal: Construct a public time-stamped log of all valid transactions without using TTPs. � How? Every ~10 minutes (expected time), reach a distributed consensus ensuring valid mempool (floating) transactions are grouped into a block. Then, append the block to the end of the chain. The blockchain is the desired public log. � Guy Zyskind � Decentralizing Privacy: 9 � Using Blockchain to Protect Personal Data � �

  9. Distributed consensus mechanism � Nakamoto consensus (AKA – Proof of Work): � For every round t and every miner m : � Guy Zyskind � Decentralizing Privacy: 10 � Using Blockchain to Protect Personal Data � �

  10. Distributed consensus mechanism � Nakamoto consensus (AKA – Proof of Work): � For every round t and every miner m : � • Collect mempool transactions (tx’s) and validate them. Construct block b m,t � Guy Zyskind � Decentralizing Privacy: 11 � Using Blockchain to Protect Personal Data � �

  11. Distributed consensus mechanism � Nakamoto consensus (AKA – Proof of Work): � For every round t and every miner m : � • Collect mempool transactions (tx’s) and validate them. Construct block b m,t � • Attempt to solve a hard computational puzzle [ SHA-256(SHA-256(b m,t )) < target ]. � Guy Zyskind � Decentralizing Privacy: 12 � Using Blockchain to Protect Personal Data � �

  12. Distributed consensus mechanism � Nakamoto consensus (AKA – Proof of Work): � For every round t and every miner m : � • Collect mempool transactions (tx’s) and validate them. Construct block b m,t � • Attempt to solve a hard computational puzzle [ SHA-256(SHA-256(b m,t )) < target ]. � • First miner to solve broadcasts the solution. All other miners independently validate the solution (work + all included transactions). If correct, they append it to their local copy of the blockchain. � Guy Zyskind � Decentralizing Privacy: 13 � Using Blockchain to Protect Personal Data � �

  13. Distributed consensus mechanism � Nakamoto consensus (AKA – Proof of Work): � For every round t and every miner m : � • Collect mempool transactions (tx’s) and validate them. Construct block b m,t � • Attempt to solve a hard computational puzzle [ SHA-256(SHA-256(b m,t )) < target ]. � • First miner to solve broadcasts the solution. All other miners independently validate the solution (work + all included transactions). If correct, they append it to their local copy of the blockchain. � • Solver receives newly minted coins and tx fees. � Guy Zyskind � Decentralizing Privacy: 14 � Using Blockchain to Protect Personal Data � �

  14. How are transactions deemed valid? Scripts! � • Every transaction is associated with a script (actually, every tx output is associated with a script called scriptPubKey). � • Nodes validate transactions by executing the script with the arguments given in the tx by the sender (most importantly – her sig). � • Can run arbitrary verifications – not just financial ( smart contracts ). � Guy Zyskind � Decentralizing Privacy: 15 � Using Blockchain to Protect Personal Data � �

  15. Our framework (Overview) � Goal: when a user installs a mobile app, she can control and audit what data are stored and how they are used. Access should be revokable. � � Guy Zyskind � Decentralizing Privacy: 16 � Using Blockchain to Protect Personal Data � �

  16. Our framework (Overview) � Goal: when a user installs a mobile app, she can control and audit what data are stored and how they are used. Access should be revokable. � Solution: Store access-policies to personal data on the blockchain. Then, let the blockchain nodes moderate access to a DHT. � approved? � read � read � service data � data � Guy Zyskind � Decentralizing Privacy: 17 � Using Blockchain to Protect Personal Data � �

  17. Sign up ( or user downloads the app) � (pk s,u , sk s,u ) � (pk u,s , sk u,s ) � • User u and service s each generate a signing key pair. � (enc) sk u,s � service • A symmetric encryption key is generated and shared over a secure channel. � • The user approves the list of permissions POLICY u,s � Blockchain • u sends T access (pk u,s, pk s,u, POLICY u,s ) to the blockchain. � • Also used for uninstall/modify. � Guy Zyskind � Decentralizing Privacy: 18 � Using Blockchain to Protect Personal Data � �

  18. Storing & loading data � Storing data: � • Send T data (E v ,’w’) . Nodes verify sig against policy. � write tx + enc. data � Blockchain • Set k=SHA-256(E u,s (v)) � key reference to the data � � � � (key stored on blockchain , � data stored on DHT ). � Guy Zyskind � Decentralizing Privacy: 19 � Using Blockchain to Protect Personal Data � �

  19. Storing & loading data � Storing data: � • Send T data (E v ,’w’) . Nodes verify sig against policy. � read tx + key � Blockchain service • Set k=SHA-256(E u,s (v)) � enc. data � Reading data: � � � • Send T data (k,’r’). Nodes verify sig � against policy. � iff approved � • Return v ß DHT[k] � Guy Zyskind � Decentralizing Privacy: 20 � Using Blockchain to Protect Personal Data � �

  20. Security and privacy analysis � • An adversary controlling any number of DHT nodes For ¡every ¡real ¡ ¡ cannot compromise privacy (because of encryption). � adversary ¡ A ¡ Guy Zyskind � Decentralizing Privacy: 21 � Using Blockchain to Protect Personal Data � �

  21. Security and privacy analysis � • An adversary controlling any number of DHT nodes For ¡every ¡real ¡ ¡ cannot compromise privacy (because of encryption). � adversary ¡ A ¡ • An adversary controlling less than 50% of the computational power of miners cannot compromise privacy or resiliency (Nakamoto consensus & forging digital signatures) � Guy Zyskind � Decentralizing Privacy: 22 � Using Blockchain to Protect Personal Data � �

  22. Security and privacy analysis � • An adversary controlling any number of DHT nodes For ¡every ¡real ¡ ¡ cannot compromise privacy (because of encryption). � adversary ¡ A ¡ • An adversary controlling less than 50% of the computational power of miners cannot compromise privacy or resiliency (Nakamoto consensus & forging digital signatures) � • An adversary controlling the service can learn as much as permissions allows, but traceable. An improved model follows. � Guy Zyskind � Decentralizing Privacy: 23 � Using Blockchain to Protect Personal Data � �

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend