Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: •...
Transcript of Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: •...
![Page 1: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/1.jpg)
Privacy-preserving techniques using zero
knowledge proof in public Ethereum
3 November 2017
ELCA Informatique SA
Nagib Aouini, Head of Cyber Security Services
Dr Sonia Bogos, Cryptography Engineer
Jorge Alvarado, Lead Blockchain architect, ELCA 1
![Page 2: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/2.jpg)
Agenda
― Why Privacy is important in blockchain ?
― Theory and concept around Zero Knowledge proof
― Application of zk-SNARKs in public Ethereum Blockchain
― Q & A
1
2
3
4
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 2
![Page 3: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/3.jpg)
Importance of privacy
3
• Essential human right
• Allow people exercise unique moral
choices
• Enable our societies evolved around is
healthy, and makes it more resilient and
more humane
![Page 4: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/4.jpg)
©copyright 2017
Why privacy matters
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 4
![Page 5: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/5.jpg)
Once data is embedded in the
blockchain it cannot be altered
•
•
•
![Page 6: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/6.jpg)
Do you think Bitcoin is still anonymous ?
• Wallet address re-use, linking your transactions
together into a single profile.
• IP address re-use.
• Combining inputs from multiple transactions,
• Using mobile wallet, effectively revealing to a third
party your full set of addresses.
![Page 7: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/7.jpg)
Following a bitcoin transaction
![Page 8: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/8.jpg)
8
![Page 9: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/9.jpg)
©copyright 2017
How to make private transaction in the blockchain
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 9
![Page 10: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/10.jpg)
©copyright 2017
Application of Zero Knowledge Proof
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 10
Source :
![Page 11: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/11.jpg)
In a Zero-knowledge (ZK) proof we have 2 participants:
• Prover - Peggy
• Verifier - Victor
The prover wants to convince the verifier that a statement is true without leaking any extra information.
E.g. the prover wants to convince the verifier that he has a secret without revealing it.
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 11
Zero-knowledge proof
![Page 12: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/12.jpg)
©copyright 2017
Zero-knowledge proof
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 12
![Page 13: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/13.jpg)
Properties of ZK proofs:
• Termination: the protocol finishes after a number of steps.
• Completeness: if the statement is true then the verifier will be convinced of this at the end of the protocol.
• Soundness: if the statement is false then it is unlikely that the verifier will be fooled.
• Zero-knowledge: at the end of the protocol no sensitive information is leaked to the verifier.
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 13
Zero-knowledge proof
![Page 14: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/14.jpg)
©copyright 2017
zkSNARK
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 14
Zero-knowledge Succinct Non-interactive ARguments of Knowledge
Zero-knowledge: proving existence of a secret without revealing it
Succinct: the communication volume is small
Non-interactive: no interaction
Arguments of Knowledge: proving that one knows the secret
![Page 15: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/15.jpg)
©copyright 2017
Non-interactive Zero-knowledge proof (NIZK)
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 15
Peggy Victor
Common Reference String
Source: https://thenounproject.com
Secret s
Proof p Verify proof p
![Page 16: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/16.jpg)
©copyright 2017
Common Reference String (CRS)
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 16
Initial parameters Trusted Setup
Common Reference String
Destroy the
parameters !
![Page 17: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/17.jpg)
©copyright 2017
Pairing on elliptic curves
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 17 Source: https://desmos.com/calculator, https://en.wikipedia.org/wiki/Swiss_passport
𝐸𝑎,𝑏 = 𝑂 ∪ { 𝑥, 𝑦 ; 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏}
RSA (bit length) EC (bit length) Security level
1248 160 80
2048 224 112
Pairing: mathematical tool used to instantiate a NIZK
Elliptic curve:
Efficiency
Used by
![Page 18: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/18.jpg)
Homomorphic encryption allows to perform operations on sensitive data while keeping it encrypted.
Use case: secure cloud computing
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 18
𝐸𝑛𝑐 𝑚 + 𝐸𝑛𝑐 𝑛 = 𝐸𝑛𝑐(𝑚 + 𝑛)
Homomorphic evaluation/
encryption
![Page 19: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/19.jpg)
©copyright ELCA 2017
Agenda
― Privacy in Ethereum
― Byzantium
― Zk-SNARKs
― Demo
― ZoKrates
― Conclusions
1
2
3
4
5
6
There are 2 text area:
• The 1st one is for the
number of chapter. Click
on “enter” between each
number
• The 2nd one is for the name
of chapter. Click “enter”
between each text
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 19
19
![Page 20: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/20.jpg)
©copyright ELCA 2017
Self-service Business Oriented
Ethereum: public but private but
public…
20 https://pixabay.com/en/replacement-lamp-lighting-951781/
![Page 21: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/21.jpg)
©copyright ELCA 2017
Self-service Business Oriented
Byzantium what?
21 https://pixabay.com/en/replacement-lamp-lighting-951781/
![Page 22: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/22.jpg)
©copyright ELCA 2017
Self-service Business Oriented
zk-SNARKs what?
22 https://pixabay.com/en/replacement-lamp-lighting-951781/
![Page 23: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/23.jpg)
©copyright ELCA 2017
There are 2 text area:
• The 1st one is for the
number of chapter. Click
on “enter” between each
number
• The 2nd one is for the name
of chapter. Click “enter”
between each text
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 23
23
?
?
?
?
Reference: https://www.reddit.com/r/ethereum/comments/712idt/ethereum_testnet_just_verified_a_zcash_transaction/
TEST Contract
Library: Pairing
Pre-compiled EC
operations
How does it work?
![Page 24: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/24.jpg)
©copyright ELCA 2017
There are 2 text area:
• The 1st one is for the
number of chapter. Click
on “enter” between each
number
• The 2nd one is for the name
of chapter. Click “enter”
between each text
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 24
24
Demo…
![Page 25: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/25.jpg)
©copyright ELCA 2017
Self-service Business Oriented
ZoKrates… what?
25 https://pixabay.com/en/replacement-lamp-lighting-951781/
![Page 26: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/26.jpg)
©copyright ELCA 2017
There are 2 text area:
• The 1st one is for the
number of chapter. Click
on “enter” between each
number
• The 2nd one is for the name
of chapter. Click “enter”
between each text
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 26
26
ZoKrates
“… ZoKrates allows information to be obscured off the main ethereum blockchain and then
uploaded into a smart contract the network can still verify, all without exposing contract
information.”
It is another type of ethereum smart contract. A custom version of the self-executing code that runs
on top of the network, the tool serves as a way to transfer a zk-SNARKs operation onto the
blockchain and to verify that that information is valid.
![Page 27: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/27.jpg)
©copyright ELCA 2017
Conclusions
― Privacy is the holy-grail of public blockchains
― zk-SNARKs allows to verify something without knowing the details
― Byzantium fork on Ethereum brings new functionality to facilitate the verifiability of zk-SNARKS
― zk-SNARKs is difficult to grasp and even more difficult to code and automate
― More tooling is needed and ZoKrates attempts to fill the gap
There are 2 text area:
• The 1st one is for the
number of chapter. Click
on “enter” between each
number
• The 2nd one is for the name
of chapter. Click “enter”
between each text
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 27
27
![Page 28: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/28.jpg)
Innovations @ ELCA
ELCA is working on innovation projects which aim to cover the following domains:
• Cloud Security and Searchable Encryption in the cloud
• ChatBot and Natural Language processing
• BigData
• Blockchain
![Page 29: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/29.jpg)
©copyright 2017
ELCA expertise
Digital & Business
Transformation
Complexity
Reduction Modernization
Automation
& Standartisation
Time to Market
& Agility
Alignement Business
& IT Security …
MARKET CHALLENGES
PROJEKT ERFAHRUNG
Consulting
Software
Engineering
Technology
Integration
Application &
Cloud Management
BRANCHEN ERFAHRUNG
Financial
Services
Health &
Pension
Public
Administration
Defense &
Cybersecurity
Transportation &
Logistics
Retail & Other
Industries
(ex. Intern. Org,
Energy etc.)
ANGESAGTE THEMEN
IT Business
Consulting
ECM Enterprise
Content
Management
CIM Customer
Interaction
Management
Big Data &
Analytics
SaaS Service
& Operations Architecture
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 29
![Page 30: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/30.jpg)
©copyright 2017
Blockchain team
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 30
Nagib Aouini : [email protected] Blockchain Technical Advisor /
Strategist
Jorge A. Ethereum Expert
Hyperledger Smart Contract Cloud Architect
Laurent P Blockchain Java
Hyperledger Smart Contract
Architect
Reto F. Security Architect Blockchain Expert
Zurich
Head of Division / Senior Consultant
Blockchain evangelist > 10 senior manager
Sébastien P Lead Architect
Dev Team Smart contract > 10 engineers – Blockchain
– Team
– Industry
– Business expert Financial
– Industry
– Business expert
Insurance
– Industry
– Business expert
– Public sector
– Industry
– Business expert
Healthcare
Dedicated skilled Blockchain experts
![Page 31: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/31.jpg)
©copyright 2017
• Discuss Blockchain technology
• Explore customer business
model
• Show Blockchain Application
demo
• Understand Blockchain
concepts & elements
• Hands on with
Blockchain on Ethereum /
Hyperledger / Others
• Standard demo customization
• Define business challenge
• Agile iterations incrementally
build project functionality
• Enterprise integration
• Provide Blockchain Dev expert
and consulting services
Élaboration Construction
How ELCA can help on Blockchain technology
Blockchain Hands-on
Experience Blockchain
Provide Expertise and First Project
Privacy-preserving techniques using zero knowledge proof in public Ethereum - Nov 3 - BAT38 31
![Page 32: Privacy-preserving techniques using zero knowledge proof in … · Properties of ZK proofs: • Termination: the protocol finishes after a number of steps. • Completeness: if the](https://reader033.fdocuments.us/reader033/viewer/2022042107/5e86333ecb22d25eb52701b4/html5/thumbnails/32.jpg)
Mr Nagib Aouini Mr Jorge Alvaradp
Head of Cyber Security Lead Blockchain Architect
[email protected] [email protected]
Tel : 021 613 2136 Tel : 021 613 2111
Confidential do not distribute 32
Dr Sonia Bogos
Crypography Engineer
Tel : 021 613 2111