psi from paxos
play

PSI from PaXoS: Fast, Malicious Private Set Intersection - PowerPoint PPT Presentation

PSI from PaXoS: Fast, Malicious Private Set Intersection ia.cr/2020/193 Benny Pinkas Bar-Ilan University Mike Rosulek Oregon State University Ni Trieu UC Berkeley Avishay Yanai VMware Eurocrypt 2020, COVID-19 edition what is private set


  1. why isn’t it secure against malicious parties? Alice Bob F 1 (·) 1 F 2 (·) Bob should send two 2 c c , e F 3 (·) F -values per item , what if 3 F 4 (·) he sends only one? d 4 d F 5 (·) e 5 F 6 (·) 6 f e c , d F 7 (·) 7 F 8 (·) 8 f F 9 (·) 9 f F 10 (·) 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  2. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? 7 8 9 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  3. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F 3 ( c ) F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? 7 8 9 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  4. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F 3 ( c ) F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? 7 8 9 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  5. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? F 7 ( c ) 7 8 9 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  6. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? F 7 ( c ) 7 8 ?? Only if c placed in bin 3! 9 10 � � F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  7. why isn’t it secure against malicious parties? Alice Bob 1 Bob should send two 2 F -values per item , what if 3 he sends only one? 4 5 Alice has c ; does she 6 c include it in output? 7 8 Only if c placed in bin 3! 9 ◮ Depends on Alice’s 10 entire input ! � � ⇒ can’t simulate! F 3 ( c ) , F 3 ( e ) , F 4 ( d ) , . . . , F 7 ( c ) , . . .

  8. how do we overcome this problem?

  9. batch OPRF for malicious PSI Alice Bob F 1 ( x 1 ) F 1 (·) 1 F 2 ( x 2 ) F 2 (·) 2 F 3 ( x 3 ) F 3 (·) 3 F 4 ( x 4 ) F 4 (·) 4 F 5 ( x 5 ) F 5 (·) 5 F 6 ( x 6 ) F 6 (·) 6 F 7 ( x 7 ) F 7 (·) 7 F 8 ( x 8 ) F 8 (·) 8 F 9 ( x 9 ) F 9 (·) 9 . . .

  10. batch OPRF for malicious PSI Alice Bob State of the art malicious batch OPRF [OOS17] F 1 ( x 1 ) F 1 (·) 1 ◮ essentially same cost as semi-honest F 2 ( x 2 ) F 2 (·) 2 F 3 ( x 3 ) F 3 (·) 3 F 4 ( x 4 ) F 4 (·) 4 F 5 ( x 5 ) F 5 (·) 5 F 6 ( x 6 ) F 6 (·) 6 F 7 ( x 7 ) F 7 (·) 7 F 8 ( x 8 ) F 8 (·) 8 F 9 ( x 9 ) F 9 (·) 9 . . .

  11. batch OPRF for malicious PSI Alice Bob State of the art malicious batch OPRF [OOS17] F 1 ( x 1 ) F 1 (·) 1 ◮ essentially same cost as semi-honest F 2 ( x 2 ) F 2 (·) 2 F 3 ( x 3 ) F 3 (·) 3 ◮ consistency check relies on an additive homomorphism: F 4 ( x 4 ) F 4 (·) 4 F 5 ( x 5 ) F 5 (·) F i ( x ) ⊕ F j ( y ) = F ij ( x ⊕ y ) 5 F 6 ( x 6 ) F 6 (·) 6 F 7 ( x 7 ) F 7 (·) 7 F 8 ( x 8 ) F 8 (·) 8 F 9 ( x 9 ) F 9 (·) 9 ∗ : a gross oversimplification . . .

  12. our protocol main idea: Alice Bob 1 2 a c 3 4 b d 5 6 c e 7 8 d f 9 10

  13. our protocol main idea: Alice Bob 1 2 a c 3 4 b d 5 6 c e 7 8 d f 9 10

  14. our protocol main idea: Alice Bob 1 s 2 2 s 2 ⊕ s 7 = a c 3 4 b d Alice secret-shares x into 5 bins h 1 ( x ) and h 2 ( x ) 6 c e s 7 7 8 d f 9 10

  15. our protocol main idea: Alice Bob 1 s 2 2 s 2 ⊕ s 7 = a c 3 4 b d Alice secret-shares x into 5 bins h 1 ( x ) and h 2 ( x ) 6 c e s 7 7 8 d f 9 10

  16. our protocol main idea: Alice Bob 1 s 2 2 s 2 ⊕ s 7 = a c s 3 3 4 s 3 ⊕ s 9 = b d Alice secret-shares x into 5 bins h 1 ( x ) and h 2 ( x ) 6 c e s 7 7 8 d f s 9 9 10

  17. our protocol main idea: Alice Bob s 1 1 s 2 2 s 2 ⊕ s 7 = a c s 3 3 s 4 4 s 3 ⊕ s 9 = b d s 5 Alice secret-shares x into 5 s 6 bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e s 7 7 s 8 8 s 4 ⊕ s 7 = d f s 9 9 s 10 10

  18. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10

  19. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a )

  20. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b )

  21. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  22. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  23. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) � � F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 37 ( c ) , F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  24. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 F 10 ( s 10 ) F 10 (·) 10 F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) � � F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 37 ( c ) , F 47 ( d ) , F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  25. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 Bob sends only one F 10 ( s 10 ) F 10 (·) 10 F -value per item F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) � � F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 37 ( c ) , F 47 ( d ) , F 35 ( e ) , F 69 ( f ) F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  26. our protocol main idea: Alice Bob F 1 ( s 1 ) F 1 (·) 1 F 2 ( s 2 ) F 2 (·) 2 s 2 ⊕ s 7 = a c F 3 ( s 3 ) F 3 (·) 3 F 4 ( s 4 ) F 4 (·) 4 s 3 ⊕ s 9 = b d F 5 ( s 5 ) F 5 (·) Alice secret-shares x into 5 F 6 ( s 6 ) F 6 (·) bins h 1 ( x ) and h 2 ( x ) 6 s 3 ⊕ s 7 = c e F 7 ( s 7 ) F 7 (·) 7 F 8 ( s 8 ) F 8 (·) 8 s 4 ⊕ s 7 = d f F 9 ( s 9 ) F 9 (·) 9 Bob sends only one F 10 ( s 10 ) F 10 (·) 10 F -value per item F 2 ( s 2 ) ⊕ F 7 ( s 7 ) = F 27 ( a ) � � F 3 ( s 3 ) ⊕ F 9 ( s 9 ) = F 39 ( b ) F 37 ( c ) , F 47 ( d ) , F 35 ( e ) , F 69 ( f ) F 3 ( s 3 ) ⊕ F 7 ( s 7 ) = F 37 ( c ) F 4 ( s 4 ) ⊕ F 7 ( s 7 ) = F 47 ( d )

  27. [how] can Alice secret-share all items? s 1 s 2 s 2 ⊕ s 7 = a s 3 s 4 s 3 ⊕ s 9 = b s 5 s 6 s 3 ⊕ s 7 = c s 7 s 8 s 4 ⊕ s 7 = d s 9 s 10

  28. [how] can Alice secret-share all items? – – s 2 ⊕ s 7 = a – – s 3 ⊕ s 9 = b – – s 3 ⊕ s 7 = c – – s 4 ⊕ s 7 = d – –

  29. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a – – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – s 3 ⊕ s 7 = c – – s 4 ⊕ s 7 = d – –

  30. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a – – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – s 3 ⊕ s 7 = c – find item with one unset location – s 4 ⊕ s 7 = d – –

  31. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a – – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d – –

  32. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a – – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d – –

  33. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a s 3 – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d – –

  34. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a s 3 – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d – –

  35. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a s 3 – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d s 9 –

  36. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a s 3 – algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d s 9 –

  37. [how] can Alice secret-share all items? – s 2 s 2 ⊕ s 7 = a s 3 s 4 algorithm: s 3 ⊕ s 9 = b – set one location arbitrarily – repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location – s 4 ⊕ s 7 = d s 9 –

  38. [how] can Alice secret-share all items? s 1 s 2 s 2 ⊕ s 7 = a s 3 s 4 algorithm: s 3 ⊕ s 9 = b s 5 set one location arbitrarily s 6 repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location s 8 s 4 ⊕ s 7 = d s 9 s 10

  39. [how] can Alice secret-share all items? s 1 s 2 s 2 ⊕ s 7 = a s 3 s 4 algorithm: s 3 ⊕ s 9 = b s 5 set one location arbitrarily s 6 repeat: s 3 ⊕ s 7 = c s 7 find item with one unset location solve for that unset location s 8 s 4 ⊕ s 7 = d s 9 only works if cuckoo graph acyclic s 10 � ������ �� ������ � cuckoo graph

  40. s 1 s 2 s 2 ⊕ s 7 = a s 3 s 4 s 3 ⊕ s 9 = b s 5 s 6 s 3 ⊕ s 7 = c s 7 s 8 s 4 ⊕ s 7 = d s 9 s 10

  41. s 1 s 2 a s 3 s 4 encode so that for all x : b s 5 Encode s 6 s h 1 ( x ) ⊕ s h 2 ( x ) = x c s 7 s 8 d s 9 s 10

  42. probe-and-XOR-of-strings (PaXoS) s 1 s 2 a s 3 encode so that for all x : s 4 � b s 5 s i = x Encode s 6 c s 7 i ∈ P ( x ) s 8 d s 9 s 10

  43. probe-and-XOR-of-strings (PaXoS) s 1 s 2 a s 3 encode so that for all x : s 4 � b s 5 s i = x Encode s 6 c s 7 i ∈ P ( x ) s 8 d s 9 s 10 1. system of linear constraints must be satisfiable with overwhelming probability

  44. probe-and-XOR-of-strings (PaXoS) s 1 s 2 a s 3 encode so that for all x : s 4 � b s 5 s i = x Encode s 6 c s 7 i ∈ P ( x ) s 8 d s 9 s 10 1. system of linear constraints must be satisfiable with overwhelming probability 2. |� s | = number of OPRFs = communication cost of PSI, ideally O ( # items )

  45. probe-and-XOR-of-strings (PaXoS) s 1 s 2 a s 3 encode so that for all x : s 4 � b s 5 s i = x Encode s 6 c s 7 i ∈ P ( x ) s 8 d s 9 s 10 1. system of linear constraints must be satisfiable with overwhelming probability 2. |� s | = number of OPRFs = communication cost of PSI, ideally O ( # items ) 3. ideally linear-time encoding of items into � s .

  46. PaXoS constructions secret-shared cuckoo idea: ◮ requires acyclic cuckoo graph ◮ failure probability too high

  47. PaXoS constructions secret-shared cuckoo idea: ◮ requires acyclic cuckoo graph ◮ failure probability too high probe each position with probability 0.5: ◮ n items � vector of size n + λ ◮ expensive O ( n 3 ) encoding

  48. PaXoS constructions secret-shared cuckoo idea: garbled bloom filter [DCW13]: ◮ requires acyclic cuckoo graph ◮ n items � vector of size λ n ◮ failure probability too high probe each position with probability 0.5: ◮ n items � vector of size n + λ ◮ expensive O ( n 3 ) encoding

  49. PaXoS constructions secret-shared cuckoo idea: garbled bloom filter [DCW13]: ◮ requires acyclic cuckoo graph ◮ n items � vector of size λ n ◮ failure probability too high new garbled cuckoo PaXoS: probe each position with probability 0.5: ◮ n items � vector of size ∼ 2 . 4 n ◮ n items � vector of size n + λ ◮ fast encoding: O ( n λ ) ◮ expensive O ( n 3 ) encoding

  50. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 s 4 b s 5 s 6 c s 7 s 8 d s 9 s 10 e

  51. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 s 4 b s 5 s 6 c s 7 s 8 d s 9 s 10 e

  52. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 s 4 b s 5 s 6 c s 7 s 8 d s 9 s 10 e s 11    s 12   k aux positions .  .  .  s 10 + k 

  53. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 ◮ probe random subset of aux positions s 4 b s 5 s 6 c s 7 s 8 d s 9 s 10 e s 11    s 12   k aux positions .  .  .  s 10 + k 

  54. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 - ◮ probe random subset of aux positions s 4 - b s 5 - s 6 - c s 7 - s 8 - d s 9 - s 10 - e s 11 -    s 12 -   k .  .  .  s 10 + k - 

  55. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 - ◮ probe random subset of aux positions s 4 - b s 5 - 1. identify all items across all cycles s 6 - c s 7 - s 8 - d s 9 - s 10 - e s 11 -    s 12 -   k .  .  .  s 10 + k - 

  56. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 - ◮ probe random subset of aux positions s 4 - b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items c s 7 - s 8 - d s 9 - s 10 - e s 11 -    s 12 -   k .  .  .  s 10 + k - 

  57. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 - ◮ probe random subset of aux positions s 4 - b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items c s 7 - ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - d s 9 - s 10 - e s 11 -    s 12 -   k .  .  .  s 10 + k - 

  58. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 ◮ probe random subset of aux positions s 4 - � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time d s 9 s 10 - e � s 11    s 12   k .  .  .  s 10 + k 

  59. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 ◮ probe random subset of aux positions s 4 - � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time d s 9 s 10 - e � s 11 2. solve for remaining items iteratively (linear time)    s 12   k .  .  .  s 10 + k 

  60. new garbled cuckoo PaXoS s 1 - for each item x : s 2 - ◮ probe positions h 1 ( x ) and h 2 ( x ) a s 3 ◮ probe random subset of aux positions s 4 - � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time d s 9 s 10 - e � s 11 2. solve for remaining items iteratively (linear time)    s 12   k .  .  .  s 10 + k 

  61. new garbled cuckoo PaXoS s 1 - for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) � a s 3 ◮ probe random subset of aux positions s 4 - � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time d s 9 s 10 - e � s 11 2. solve for remaining items iteratively (linear time)    s 12 ◮ remaining cuckoo graph is acyclic   k .  .  .  s 10 + k 

  62. new garbled cuckoo PaXoS s 1 - for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) � a s 3 ◮ probe random subset of aux positions s 4 - � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time d s 9 s 10 - e � s 11 2. solve for remaining items iteratively (linear time)    s 12 ◮ remaining cuckoo graph is acyclic   k .  .  .  s 10 + k 

  63. new garbled cuckoo PaXoS s 1 - for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) � a s 3 ◮ probe random subset of aux positions s 4 � b s 5 - 1. identify all items across all cycles s 6 - ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 - ◮ can be found in [ # cycle items ] 3 time � d s 9 s 10 - e � s 11 2. solve for remaining items iteratively (linear time)    s 12 ◮ remaining cuckoo graph is acyclic   k .  .  .  s 10 + k 

  64. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) � a s 3 ◮ probe random subset of aux positions s 4 � b s 5 1. identify all items across all cycles s 6 ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 ◮ can be found in [ # cycle items ] 3 time � d s 9 s 10 e � s 11 2. solve for remaining items iteratively (linear time)    s 12 ◮ remaining cuckoo graph is acyclic   k .  .  .  s 10 + k 

  65. new garbled cuckoo PaXoS s 1 for each item x : s 2 ◮ probe positions h 1 ( x ) and h 2 ( x ) � a s 3 ◮ probe random subset of aux positions s 4 � b s 5 1. identify all items across all cycles s 6 ◮ solve linear system for the cycle items � c s 7 ◮ solution exists whp if k > [ # cycle items ] + λ s 8 ◮ can be found in [ # cycle items ] 3 time � d s 9 s 10 e � s 11 2. solve for remaining items iteratively (linear time)    s 12 ◮ remaining cuckoo graph is acyclic   k .  .  .  s 10 + k  whp: [# cycle items] is O ( log n )

Recommend


More recommend