sublinear zero knowledge arguments for ram programs
play

Sublinear Zero-Knowledge Arguments for RAM Programs Payman Mike - PowerPoint PPT Presentation

Sublinear Zero-Knowledge Arguments for RAM Programs Payman Mike Alessandra Mohassel Scafuro Rosulek OSU NCState V I S Oregon State University A Problem C Data S Problem C Data S R 1 Problem C Data S R 1 y 1 Problem C


  1. Sublinear Zero-Knowledge Arguments for RAM Programs Payman Mike Alessandra Mohassel Scafuro Rosulek OSU NCState V I S Oregon State University A

  2. Problem C Data S

  3. Problem C Data S R 1

  4. Problem C Data S R 1 y 1

  5. Problem C Data S R 1 y 1 R 2

  6. Problem C Data S R 1 y 1 R 2 y 2

  7. Problem C Data S R 1 y 1 R 2 y 2 . . . .

  8. Problem C Data S R 1 proof 𝜌 1 y 1 correct computation on same data R 2 y 2 𝜌 2 . . . .

  9. Problem C Data S R 1 Zero-Knowledge proof 𝜌 1 y 1 correct computation on same data R 2 y 2 𝜌 2 . . . .

  10. Problem Data S C R 1 Zero-knowledge y 1 𝜌 1 proof Properties

  11. Problem Data S C R 1 Zero-knowledge y 1 𝜌 1 proof Properties Efficiency: work depends only on running time T

  12. Problem Data S C R 1 Zero-knowledge y 1 𝜌 1 proof Properties Efficiency: work depends only on running time T Security: Composability

  13. Problem Data S C R 1 Zero-knowledge y 1 𝜌 1 proof Properties Efficiency: work depends only on running time T Security: Composability [constant-round]

  14. Sub-linear Zero Knowledge

  15. Sub-linear Zero Knowledge [Kil92,Mic94,Gro10a,Lip12, GGPR13,….] P V pcp / Goal: proof as short as possible snarks

  16. Sub-linear Zero Knowledge [Kil92,Mic94,Gro10a,Lip12, GGPR13,….] P V pcp / Goal: proof as short as possible snarks Problem P’s work depends on size of the input

  17. Sub-linear Zero Knowledge [Kil92,Mic94,Gro10a,Lip12, GGPR13,….] P V pcp / Goal: proof as short as possible snarks Problem P’s work depends on size of the input Circuit-based approaches

  18. Sub-linear Zero Knowledge [Kil92,Mic94,Gro10a,Lip12, GGPR13,….] P V pcp / Goal: proof as short as possible snarks Problem P’s work depends on size of the input Circuit-based approaches

  19. Sub-linear Zero Knowledge [Kil92,Mic94,Gro10a,Lip12, GGPR13,….] P V pcp / Goal: proof as short as possible snarks Problem P’s work depends on size of the input ORAM Circuit-based approaches [GO96…]

  20. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase

  21. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase

  22. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase GC GC GC GC T garbled circuits

  23. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase GC GC GC GC T garbled circuits Problem Setup Phase : O(N) for both !

  24. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase GC GC GC GC T garbled circuits Problem Setup Phase : O(N) for both !

  25. Sub-linear amortized Zero-Knowledge [HMR15] P V Setup phase proof phase Special cases ZK Sets [MRK03] and generalizations [ORS07,..] GC GC GC GC T garbled circuits Problem Setup Phase : O(N) for both !

  26. Our Result

  27. Sulinear Zero-Knowledge for RAM programs Setup Phase V P Proof Phase T = running time work depends only on running time T UC-Secure [based on efficient primitives (GC, Zkboo[GMO16])]

  28. Sulinear Zero-Knowledge for RAM programs Setup Phase V P Proof Phase T = running time work depends only on running time T UC-Secure [based on efficient primitives (GC, Zkboo[GMO16])]

  29. UC-Secure Ideal functionality F zkRAM F zkRAM V P

  30. UC-Secure Ideal functionality F zkRAM F zkRAM Init: M V P

  31. UC-Secure Ideal functionality F zkRAM M F zkRAM Init: M V P

  32. UC-Secure Ideal functionality F zkRAM M F zkRAM Init: M V P Prove: R i , w i

  33. UC-Secure Ideal functionality F zkRAM M’,y ← R i ( M , w i ) M F zkRAM Init: M V P Prove: R i , w i

  34. UC-Secure Ideal functionality F zkRAM M’,y ← R i ( M , w i ) M ’ M F zkRAM Init: M V P Prove: R i , w i

  35. UC-Secure Ideal functionality F zkRAM M’,y ← R i ( M , w i ) M ’ M F zkRAM Init: M R i , y V P Prove: R i , w i

  36. UC-Secure Ideal functionality F zkRAM Challenge: extract M from M’,y ← R i ( M , w i ) M ’ M transcript F zkRAM Init: M R i , y V P Prove: R i , w i

  37. Our technique

  38. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data

  39. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values

  40. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - Garbling

  41. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - Garbling R i

  42. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - Garbling access pattern (i 1, i 2, i 3,.. ) R i

  43. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - Garbling access pattern (i 1, i 2, i 3,.. ) R i prepares T garbled circuits

  44. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - Garbling access pattern (i 1, i 2, i 3,.. ) R i prepares T garbled circuits GC GC GC [JOK13]

  45. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i GC GC GC

  46. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i i 1 GC GC GC

  47. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i i 2 i 1 GC GC GC

  48. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i i 2 i 1 i 3 GC GC GC

  49. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i 0/1 i 2 i 1 i 3 GC GC GC

  50. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i 0/1 i 2 i 1 i 3 GC GC GC y

  51. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i 0/1 i 2 i 1 i 3 GC GC GC y replace used encoding

  52. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data Garbling values - ORAM - “Garbling” access pattern (i 1, i 2, i 3,.. ) R i 0/1 i 2 i 1 i 3 GC GC GC y replace used encoding soundness: V fully controls encoding of the dataset

  53. Sub-linear amortized Zero-Knowledge [HMR15] Setup phase P V Data V should do nothing. Garbling values - ORAM - “Garbling” Soundness….? access pattern (i 1, i 2, i 3,.. ) R i 0/1 i 2 i 1 i 3 GC GC GC y replace used encoding soundness: V fully controls encoding of the dataset

  54. P V Setup phase access pattern (i 1, i 2, i 3,.. ) GC GC GC

  55. P V Setup phase access pattern (i 1, i 2, i 3,.. ) initial data GC GC GC

  56. P V Setup phase access pattern (i 1, i 2, i 3,.. ) ORAM initial data GC GC GC

  57. P V Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM initial data GC GC GC

  58. P V Merkle Tree Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM initial data GC GC GC

  59. P V Merkle Tree Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC

  60. P V Merkle Tree Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC

  61. P V Merkle Tree Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC

  62. P V Merkle Tree Setup phase encode access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC

  63. P V Merkle Tree Setup phase encode ? access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC 1. Consistency with committed input? (black-box)

  64. P V Merkle Tree Setup phase encode ? access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC 1. Consistency with committed input? (black-box) 2. Extraction committed input?

  65. P V Merkle Tree Setup phase encode ? access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC 1. Consistency with committed input? (black-box) 2. Extraction committed input? 3. “Malicious" ORAM?

  66. P V Merkle Tree Setup phase encode ? access pattern (i 1, i 2, i 3,.. ) ORAM OT initial data GC GC GC 1. Consistency with committed input? (black-box) 2. Extraction committed input? 3. “Malicious" ORAM?

  67. 1. Black box proof of consistency V P y GC GC [GO S V14, IW14]

  68. 1. Black box proof of consistency V P y GC GC encode Reed- Solomon [GO S V14, IW14]

  69. 1. Black box proof of consistency V P commit y GC GC encode Reed- Solomon [GO S V14, IW14]

  70. 1. Black box proof of consistency V P Merkle Tree commit y GC GC encode Reed- Solomon [GO S V14, IW14]

  71. 1. Black box proof of consistency V P Merkle Tree commit codeword y GC GC encode Reed- Solomon i 1 [GO S V14, IW14]

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