mimc efficient encryption and cryptographic hashing with
play

MiMC: Efficient Encryption and Cryptographic Hashing with Minimal - PowerPoint PPT Presentation

MiMC: Efficient Encryption and Cryptographic Hashing with Minimal Multiplicative Complexity . Arnab Roy 1 and Tyge Tiessen 1 ) Technical University of Denmark 1 Royal Holloway, University of London 2 TU Graz 3 1 (joint work with Martin Albrecht


  1. MiMC: Efficient Encryption and Cryptographic Hashing with Minimal Multiplicative Complexity . Arnab Roy 1 and Tyge Tiessen 1 ) Technical University of Denmark 1 Royal Holloway, University of London 2 TU Graz 3 1 (joint work with Martin Albrecht 2 , Lorenzo Grassi 3 , Christian Rechberger 1 , 3

  2. Background In recent years significant progress in - MPC, FHE, ZK Many applications are being developed Examples include • Private set intersection, privacy preserving search • Statistical computation on sensitive data • Verifiable computation • Cloud computation 2 Communication protocol (Theory → Practice)

  3. Security of systems . . crypto primitives (e.g. Hash function, Block cipher) . communication protocols ZK, MPC . secure system . user Performance of symmetric-key algorithms can improve the efficiency of protocols 3

  4. Motivation Our focus : Verifiable computation based on SNARK Motivation : constriction of performance due to private-key crypto Our focus : constriction due to Hash function 4 [BSCG + 13] Recently developed application around SNARK - ZeroCash [SCG + 14]

  5. SNARK . Prover knows w , keeps it secret y , short proof . . Prover . without computing F . Verifier . arithmetic circuit C for F , witness - w for input x . F 5 x , F check F ( x ) = y Let L C = { x ∈ { 0 , 1 } n : ∃ w ∈ { 0 , 1 } h , C ( x , w ) = 0 }

  6. Rank-1 constraints • The circuit consists of bilinear gates only • The SNARK algorithm generates the proof for satisfiability of • The systems looks like 6 • An F -arithmetic circuit C : F n × F h → F ℓ • The Arithmetic Circuit Satisfiability (ACS) of C is given by relation R = { ( x , a ) ∈ F n × F h : C ( x , a ) = 0 } a system of rank-1 quadratic constraints over the field F . ⟨ A i , w ⟩ · ⟨ B i , w ⟩ = ⟨ C i , w ⟩ where i = 1 , . . . , N c and w ∈ F N ′ . N c → no. of constraints; N ′ → no. of variables.

  7. Computational model Cost of computation - ( MULT , ADD ); ( AND , XOR ) Cost of single XOR (or ADD) is negligible compared to single MULT/AND Caution: Very large number of XORs (or ADDs) influences the cost Similar cost model, less extreme: Masking (for side-channel attack resilient crypto) General idea • Linear/Affine functions, Mult with a constant (almost free) • Non-linear functions (expensive) 7

  8. Computation cost: symmetric-key primitives Example Typical examples • Linear: XOR, ADD, Rotation • Non-linear: S-box, modular addition, bitwise AND 8 The well-known primitives use operations over F 2 or (and) F 2 n • SHA-256 over F 2 , Z 2 32 • SHA-3 over F 2 • AES over F 2 8 • PRINCE over F 2 4 and F 2 MULT or AND - x · y

  9. MPC/FHE/ZK friendly FHE friendly - Low circuit depth MPC friendly - Low circuit depth and Low number of multiplications SNARK friendly - Low number of multiplications 9 Protocols usually require computations over F p Symmetric-key computations: Embed the circuit in F p - Operations over F 2 are expressed over F p - Operations over F 2 n are expressed over F 2 , then embedded in F p - Example: XOR over F 2 changes over F p Recent results - FLIP [MJSC16] , LowMC [ARS + 15], Legendre symbol based PRF [GRR + 16]

  10. SNARK friendly design Mixing different fields is NOT useful Hash function: MiMC-Hash (uses sponge mode ) 10 Embedding PRP/PRF circuit over F 2 into F p has cost issues Efficient design over F p ? MiMC family Block cipher: MiMC- n / n , MiMC-2 n / n

  11. An old design: KN cipher • Knudsen-Nyberg cipher: Round function uses APN function over finite field • 64-bit block cipher using Feistel mode of operation . . x 3 . 33 . 32 . 32 • Broken with Interpolation Attack (algebraic) • This way of design was abandoned 11

  12. 12 k log 3 n Number of rounds: Round key Random round constants MiMC in Even-Mansour mode Figure 1: k . . . . . . X 3 . y X 3 X 3 . x . MiMC block-cipher: MiMC- n / n k ⊕ c 1 Note: n = odd so that x 3 is a permutation • Single k in F 2 n • ( k 1 , k 2 ) ∈ F 2 2 n on alternate rounds log 3 or log p Same design strategy over F 2 n and F p

  13. . . X 3 . k Figure 2: MiMC in Feistel mode Number of rounds: 2 n log 3 13 MiMC- 2 n / n Uses x 3 over F 2 n with Feistel mode (No linear layer) log 3 or 2 log p Round key and round constants: same as MiMC- n / n .

  14. Hash function h 0 m 4 . f . f . . . h 1 . h 2 Figure 3: Sponge mode Sponge mode instantiated by MiMC permutation with a fixed key . f . m 3 . r . c . f . m 1 . f . m 2 . f . 14 In the SNARK setting we use MiMC- n / n It is possible to use MiMC-2 n / n for large block size

  15. Cryptanalysis - Optimal differential property for - x 3 - Simple differential attack is not possible for full rounds 15 - The degree of the polynomial P ( x ) representing the cipher has full degree over F 2 n - Interpolation attack requires ≈ 2 n − 1 plaintexts

  16. Cryptanalysis unknown secret key - GCD attack recovers the unknown key Note : GCD attack assumes that adversary can compute the necessary polynomial(s) 16 - Consider two polynomials E ( K , x 1 ) − y 1 and E ( K , x 2 ) − y 2 over F q [ K ] - The GCD of these two polynomials is ( K − k ) where k is the - Complexity is O ( d log 2 d )

  17. Cryptanalysis - APN function provides security against linear attacks - Invariant subfield attack : Poor choice of round constants allows this attack - In this attack subsequent states following the input value belong to the same subfield - Randomly chosen round constants thwart this attack 17 - Higher-order differential attack requires 2 n plaintexts

  18. MiMC in SNARK setting - Each round can be expressed with - The equations are combined to obtain - These equations represent the rank-1 constraints - Each round has one multiplication 18 X + k i + C i + U = 0 , U · U = Y � �� � α Y · U = Z ( X + α )( X + α + Y ) = Y + Z

  19. Experimental results • We implemented a part of the SNARK algorithm to generate the circuit and witness • Compared it with SHA-256 (libsnark implementation) • SHA-3 takes almost the same time as SHA-256 • Also compared with the LowMC and Keccak (SHA-3) 19 • SHA-256 takes ≈ 73 ms while MiMC takes ≈ 7.8 ms

  20. Comparison 3300 646 8420888 28894643 422400 # multiplication 1293 9408 38400 10.6ms # rank-1 constraint 646 4704 2200 38400 MiMC and LowMC permutations have block size 1025 Our C++ implementation is available on https://github.com/byt3bit/mimc_snark.git # addition 262.0ms MiMC 75.8ms LowMC total time 7.8ms 90.3ms 76.8ms 271.2ms constraint generation 6.3ms 13.5ms 9.2ms 65.2ms witness generation 1.5ms 20 Keccak-[1600 , 24] # r = 16 # r = 55 m = 196 m = 20

  21. Conclusion design strategy MiMC also shows competitive performance in MPC setting Metric: Effect of large number XOR/ADD is clear from experimental results but How to quantify ? Can we use polynomial to reduce the number of multiplications ? 21 New efficiency criteria → Resurrection of an abandoned when used as PRF ([GRR + 16])

  22. Thank you! 22

  23. Remarks attack Problem: Number of multiplication increases 23 Monomial with exponent 2 t + 1 Problem: Resulting polynomial becomes sparse = ⇒ efficient Monomial with exponent 2 t − 1

  24. References i Martin R. Albrecht, Christian Rechberger, Thomas Schneider, Tyge Tiessen, and Michael Zohner. Ciphers for MPC and FHE. In Elisabeth Oswald and Marc Fischlin, editors, Advances in Cryptology - EUROCRYPT 2015 , volume 9056 of Lecture Notes in Computer Science , pages 430–454. Springer, 2015. Eli Ben-Sasson, Alessandro Chiesa, Daniel Genkin, Eran Tromer, and Madars Virza. SNARKs for C: Verifying Program Executions Succinctly and in Zero Knowledge , pages 90–108. Springer Berlin Heidelberg, Berlin, Heidelberg, 2013. 24

  25. References ii Lorenzo Grassi, Christian Rechberger, Dragos Rotaru, Peter Scholl, and Nigel P. Smart. Mpc-friendly symmetric key primitives. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security , CCS ’16, pages 430–443, New York, NY, USA, 2016. ACM. Pierrick Méaux, Anthony Journault, François-Xavier Standaert, and Claude Carlet. Towards stream ciphers for efficient fhe with low-noise ciphertexts. In Proceedings of the 35th Annual International Conference on Advances in Cryptology — EUROCRYPT 2016 - Volume 25

  26. References iii 9665 , pages 311–343, New York, NY, USA, 2016. Springer-Verlag New York, Inc. E. B. Sasson, A. Chiesa, C. Garman, M. Green, I. Miers, E. Tromer, and M. Virza. Zerocash: Decentralized anonymous payments from bitcoin. In 2014 IEEE Symposium on Security and Privacy , pages 459–474, May 2014. 26

Recommend


More recommend