+ All Categories
Home > Documents > Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that...

Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that...

Date post: 23-May-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
63
Symmetric Cryptography for New Applications Christian Rechberger
Transcript
Page 1: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Symmetric Cryptography for New Applications

Christian Rechberger

Page 2: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

Communication Protocol

Cryptographic Primitive

Page 3: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

Communication Protocol

Cryptographic Primitive

Page 4: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

Communication Protocol

Ciphers, Hash functions

Page 5: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

The bad news

Traditional crypto often can not solve real-world problems

Example:“Key theft/loss”, Ron Rivest, Crypto 2011

Page 6: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Philosophy Computer Science

Mathematics

Quantum Physics

Electrical Engineering

Confidentiality

Integrity

PKI

Authenticity

Non-Repudiation Digital signatures

Ciphers

Hash functions

Page 7: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Philosophy Computer Science

Mathematics

Quantum Physics

Electrical Engineering

Confidentiality

Secure Computation

Integrity

PKI

Authenticity

Non-Repudiation

Zero-Knowledge Proofs

Digital signatures

Ciphers

Hash functions FHE

Page 8: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

The good news

• New developments in crypto: MPC, FHE, ZKP can help to remedy the situation

• Moving from mere theoretical results on to practicability

• Distributed cryptography has first applications, efficiency gains needed to allow for many more

• Symmetric crypto was (so far) outside this development

Page 9: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

Communication Protocol

MD5, SHA-1, AES, SHA-3

Page 10: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

KEM/DEM, PKI, …

MD5, SHA-1, AES, SHA-3

Page 11: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

New: MPC, FHE, SNARKS, …

MD5, SHA-1, AES, SHA-3

Page 12: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MPC

Page 13: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MPC applications for Ciphers

● Oblivious Pseudorandom Functions (OPRFs)– Privacy-preserving keyword search– Private set intersection– Secure database join

● Secure storage– Store symmetrically encrypted intermediate MPC values in

untrusted storage– Securely getting data in and out of an secret-shared database– Move data securely between clients and MPC engines

Page 14: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Application: Secure database join, three parties

Way to combine several

data sources in privacy

preserving manner

Source: Cybernetica

Application: Merging databases from two different ministries in Estonia, while obeying various data-protection laws.

Page 15: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

FHE

Page 16: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Breakthrough

• Gentry, 2009: Mathematical possibility of computing on encrypted data

– Any combination of linear and non-linear operation

• Problem: extremely inefficient

• Sub-discipline became very active and well funded

Page 17: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Protecting Data via Encryption: Homomorphic encryption

1. Put your gold in a locked box.

2. Keep the key.

3. Let your jeweler work on it through a glove

box.

4. Unlock the box when the jeweler is done!

The following slides are courtesy of Kristin Lauter

Page 18: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the
Page 19: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Why the excitement?

Fundamental Problem: privacy protection – Burgeoning genome sequencing capability

– Explosion of scientific research possible

– High risk for personal privacy

Fundamental Progress through interaction – Computer Scientists

– Mathematicians

– Bioinformaticians

– Policy-makers

Page 20: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Genomic Revolution

Fast drop in the cost of genome-sequencing 2000: $3 billion

Mar. 2014: $1,000

Genotyping 1M variations: below $200

Unleashing the potential of the technology Healthcare: e.g., disease risk detection,

personalized medicine

Biomedical research: e.g., geno-phono

association

Legal and forensic

DTC: e.g., ancestry test, paternity test

……

Page 21: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Genome Privacy

• Privacy risks – Genetic disease disclosure

– Collateral damage

– Genetic discrimination

• Grand Challenges: – How to share genomic data or learning in a way that preserves the

privacy of the data donors, without undermining the utility of the data or impeding its convenient dissemination?

– How to perform a LARGE-SCALE, PRIVACY-PRESERVING analysis on genomic data, in an untrusted cloud environment or across multiple users?

Page 22: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

• Building predictive models • Predictive analysis

• Classification tasks • Disease prediction • Sequence matching

• Data quality testing • Basic statistical functions • Statistical computations on genomic data

Computations on Genome sequence data

Page 23: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

What are the Costs? Challenges? Obstacles?

• Storage costs (large ciphertexts)

• New hard problems (introduced 2010-2016)

• Efficiency at scale (large amounts of data, deep circuits)

Page 24: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

FHE Application of Ciphers

FHE schemes typically come with a ciphertext expansion in the order of 1000s to 1000000s.

Proposed solution:

encrypt messages! Cloud homomorphically

decrypts them.

Page 25: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

New designs for new computational models

• Since 1970s: balance between linear and non-linear operations

cost-ratio: XOR/(N)AND

Direct Hardware: 2-3

Direct Software: 1

Page 26: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

New designs for new computational models

• Since 1970s: balance between linear and non-linear operations

cost-ratio: XOR/(N)AND

Direct Hardware: 2-3

Direct Software: 1

Computation in

MPC protocol, FHE circuit very small, almost 0

SNARK, …

Page 27: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

New designs for new computational models

• Since 1970s: balance between linear and non-linear operations

How would an efficient cipher look like if linear operations

were for free?

Page 28: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

MPC, FHE, SNARKS, …

MD5, SHA-1, AES, SHA-3

Page 29: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Security of modern IT Systems

User

Secure System

MPC, FHE, SNARKS, …

?

Page 30: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Roadmap of the lecture

● Introduction● LowMC, a design for the binary setting● MiMC, a design to work also with Integers● Rasta, a new design with low depth● Picnic, a new application for LowMC: long-term

secure (PQ) public-key signatures

Page 31: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

LowMC

By Martin Albrecht (RHUL), Christian Rechberger (DTU), Thomas Schneider (TUD), Michael Zohner (TUD) and Tyge Tiessen (DTU), Eurocrypt 2015

Page 32: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Towards LowMC

• Metrics to optimize:

AND-depth,

#AND/bit

#ANDs

Page 33: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Related work

Ciphers that try to minimizing cost of side-channel attack countermeasures

• Noekeon

• LS-designs (Robin, Fantomas)

Ciphers that try to minimize the latency when implemented in hardware

• Prince

Page 34: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

High-level design approach

• Minimise ANDs for confusion

• Maximize diffusion

• Use SPN

• Use small S-box with low multiplicative complexity

• Use partial S-box layer

• Maximise diffusion in affine layer

Page 35: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Round transformation

S:

A B C

S0 S1 S2

Page 36: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Affine layer

Let block-size be n

Multiplication of internal state with randomly chosen invertible matrix in GF(2) with n rows/columns

Add randomly chosen n-bit vector

Distinct for every rounds

Page 37: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Key schedule

• Re-use random matrix approach

– Derive round keys from master key by multiplication with nxk binary matrix

– Choose matrices uniformly at random from all binary nxk matrices of rank min(n,k)

Page 38: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Design space

Size

– n: Block size

– m: Number of Sboxes

Security

– k: Key size (allowed time complexity)

– d: allowed data complexity

r: Number of rounds that is computed as a function of (n,m,k,d)

Page 39: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

How to determine #rounds r

• Cryptanalysis

– How long is the longest distinguishers

• Statistical distinguisher (e.g. differential, linear)

• Combined attacks: special case Boomerang attacks

• Low-degree attacks

• …

– How many rounds could be peeled off?

• ?

Page 40: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Resistance against differential attacks

• Standard method to determine probability of best differential characteristic:

– Determine minimal number of active Sboxes.

– Combine with maximal differential probability of Sbox to determine lower bound on best possible characteristic.

• To determine the minimal number of active Sboxes the branch number would be helpful.

• We do not know the branch number of the randomly chosen matrix

Page 41: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Resistance against differential attacks

• Idea:

– Calculate for each possible good differential characteristic probability that it is realized in instantiation of LowMC. Sum all these probabilities to get upper bound for probability that at least one is realized.

Let C set of possible good characteristics.

Sum over all c∈C:

Pr(c exists in cipher) ≤Pr(good characteristic exists)

Page 42: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Bounds against differential attacks

Page 43: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Bounds against differential attacks

Page 44: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Bounds + concrete security against differential attacks

Page 45: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Resistance against combined attacks

• Example: Boomerang attacks, which use good differentials that meet half-way from both sides

• Partial non-linear layer allows probability 1 differential for a few rounds

• Solution:

– Re-use approach from before for the heightened requirements

– Double the length

Page 46: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Resistance against higher order attacks

• Question: What is the minimal number of rounds needed to reach a given algebraic degree?

• Lemma: If algebraic degree is dr after r rounds, max. degree in round r+1 is min (2dr, m+dr, n/2+dr/2)

Page 47: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Round formular – LowMC v2

r ≥ max(rstat, rcmbnd ,rdeg +2rinfl) + router

rstat: bound for differential and linear distinguishers

rcmbnd: bound for combined distinguishers

rdeg: bound for sufficient degree

rinfl: rounds needed for one bit to influence all

router: bound for rounds that can be peeled off (we choose router=rstat)

Page 48: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Visualizing the design space

Page 49: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Comparison with other cipher designs: AES-like security

Page 50: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Comparison with other cipher designs: „lightweight“ security

Page 51: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MPC benchmarks – long message

Page 52: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

FHE implementation benchmarks

Caveat: implementations/underlying techniques improve over time

Page 53: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MiMC

• Joint work with Martin Albrecht (RHUL), Lorenzo Grassi (TU Graz), Arnab Roy (DTU), and Tyge Tiessen (DTU)

• Only between n and 2n multiplications for n-bit security.

• Works in GF(p) and GF(2n), rather than GF(2)

• At least 10 times faster than SHA-256 in SNARK implementation

Page 54: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MiMC

Page 55: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MiMC

• Essentially idea due to Knudsen-Nyberg 1995

– Seen as an example of how to NOT design a cipher due to efficient attacks

• Elegant and competitive for new applications

Page 56: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Cryptanalysis

• Differential and linear attacks don’t go far

• Interpolation attacks

• Hypothetical GCD attack

• Number of rounds:

• Blocksize n is odd

• Less than 1 cubing per bit!

Page 57: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Comparison: ciphers

Page 58: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Comparison: hash functions

Page 59: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Concrete benchmarks

• Use-case:

– A practical application, Zerocash, which solves Bitcoin's privacy problem. Whereas Bitcoin publicly broadcast all transactions and account balances, Zerocash replaces these by privacy-preserving zkSNARK proofs.

– SHA-256 is bottleneck

• Setting: compressing 768 bits to 256 bits

• SNARK implementation

– SHA-256: 73ms per block

– MiMChash-256: 7.8ms per block

Page 60: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Application of MiMC to MPC setting

● Very suitable as it can natively work on Integers● Circuit too deep?● This intuition is wrong, see

– ‘MPC-Friendly Symmetric Key Primitives’ Lorenzo Grassi, Christian Rechberger, Dragos Rotaru, Peter Scholl, Nigel P. Smart, ACM CCS 2016

– Even without considering losses due to field conversion, 10x faster than AES

● Follow-up: MiMC clearly outperforms all the rest when considering also modes of operation:– ‘Modes of Operation Suitable for Computing on Encrypted Data’

by Dragos Rotaru; Nigel P. Smart; Martijn Stam, FSE 2018

Page 61: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MPC Benchmarks with MiMC LAN setting

Page 62: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

MPC Benchmarks with MiMC WAN setting

Page 63: Symmetric Cryptography for New Applications...–How to share genomic data or learning in a way that preserves the privacy of the data donors, without undermining the utility of the

Conclusion

• Current algorithms in symmetric crypto can be a roadblock for modern crypto protocols

• Explored extreme corner of design space, motivated by new set of applications

• Speed-ups between factor 2-20 so far. More?

• Relying on simple metrics to predict performance has limits:

– LowMC can hardly outperform AES in some MPC setting

– FLIP can hardly outperform LowMC in FHE setting (Helib)

– MiMC performs better than expected in MPC settings


Recommended