privacy pass bypassing internet challenges anonymously
play

:: Privacy Pass :: Bypassing internet challenges anonymously Alex - PowerPoint PPT Presentation

:: Privacy Pass :: Bypassing internet challenges anonymously Alex Davidson 1,3 Ian Goldberg 2 Nick Sullivan 3 George Tankersley 4 Filippo Valsorda 4 1 Royal Holloway, University of London 2 University of Waterloo 3 Cloudflare 4 Independent PETS


  1. :: Privacy Pass :: Bypassing internet challenges anonymously Alex Davidson 1,3 Ian Goldberg 2 Nick Sullivan 3 George Tankersley 4 Filippo Valsorda 4 1 Royal Holloway, University of London 2 University of Waterloo 3 Cloudflare 4 Independent PETS 2018, Barcelona July 25, 2019 https://privacypass.github.io alex.davidson.2014@rhul.ac.uk // @alxdavids

  2. Background Anonymous authentication protocol Privacy Pass Summary 2

  3. Content delivery networks W User CDN W’ W’’ 3

  4. Content delivery networks W W W User CDN W’ W’’ 3

  5. Content delivery networks W W W User CDN W’ W’’ 3

  6. Content delivery networks W ? ⊥ User CDN W’ W’’ e.g. DDoS, spam filtering, content scraping etc... 3

  7. IP reputation W User CDN 27.2.187.41 27.2.187.41 4

  8. IP reputation ⊥ User CDN 27.2.187.41 27.2.187.41 4

  9. Is this a good system? ::false negatives:: User 27.2.187.41 particularly users of static, shared IP addresses 5

  10. Is this a good system? ::affected users:: 5

  11. Is this a good system? ::worst case:: ⊥ User CDN 27.2.187.41 5

  12. Is this a good system? ::average case:: User CDN 27.2.187.41 5

  13. Is this a good system? ::average case:: User CDN 27.2.187.41 5

  14. Is this a good system? ::average case:: W User CDN 27.2.187.41 5

  15. Problems with challenges (aka CAPTCHAs) ::: Heavily JS reliant ::: Potentially block access ::: Annoying/hard ::: Slow ::: Questionable protection ::: More round trips 6

  16. Possible solutions ::no blocking:: W User CDN 7

  17. Possible solutions ::cookies?:: W User CDN 7

  18. Possible solutions ::cookies?:: User CDN problem: linkability 7

  19. Contributions ::: Anonymous authentication protocol :: based on elliptic curves and oblivious prfs :: combination of prior techniques [JKK14, Hen14] ::: Client-side implementation in browser extension ::: Server-side deployment in Cloudflare edge servers ::: Empirical survey of results 8

  20. Background Anonymous authentication protocol Privacy Pass Summary 9

  21. Oblivious pseudorandom function (OPRF) PRF ( K , · ) C hello 10

  22. Oblivious pseudorandom function (OPRF) [x] PRF ( K , · ) C x is hidden from the PRF evaluator 10

  23. Oblivious pseudorandom function (OPRF) PRF ( K , x ) PRF ( K , · ) C K is not revealed to C 10

  24. Verifiable OPRF (VOPRF) y π PRF ( K , · ) C π is a NIZK proof that y ← PRF ( K , x ) 11

  25. Elliptic curve VOPRF (EC-VOPRF) H(x) r = [x] y = [x] k = DLEQ π H hashes x to an elliptic curve π is a discrete log equivalence (DLEQ) proof 12

  26. DLEQ proofs ::summary:: public commitments: g, h = g k signed token pair: x, y show that log g ( h ) = log x ( y ) = k without revealing k 13

  27. Anonymous authentication protocol ::signing:: [x] C Server gg 14

  28. Anonymous authentication protocol ::signing:: y π C Server H(x) k gg 14

  29. Anonymous authentication protocol ::redemption:: x MAC H(x) k ( x , . . . ) C Server H(x) k server verifies MAC to authenticate C 14

  30. Anonymous authentication protocol ::multiple tokens:: { [x i ] } i C Server gg 14

  31. Anonymous authentication protocol ::multiple tokens:: { y i } i { π i } i C Server similar design to [JKK14] 14

  32. Anonymous authentication protocol ::multiple tokens:: { y i } i π C Server batched DLEQ proofs! [Hen14] 14

  33. Security properties ::unlinkability:: ::: any x should be unlinkable from any signing phase ::: prevents server from linking authentication sessions ::: H(x) r uniformly blinds x from Server 15

  34. Security properties ::one-more-token security:: ::: for N signed tokens, hard to create N + 1 signed tokens ::: prevents client from forging signed tokens ::: reduction from one-more-decryption security of El Gamal 15

  35. Security properties ::Key consistency:: ::: ensures that all tokens are signed by one key k ::: prevent server deanonymisation using different keys ::: soundness of batch DLEQ proof [Hen14] 15

  36. Background Anonymous authentication protocol Privacy Pass Summary 16

  37. Privacy Pass ::browser extension:: 17

  38. Privacy Pass ::Cloudflare:: ::: CDN serves 10% of internet traffic ::: use CAPTCHAs to prevent bots accessing origins ::: use IP reputation to decide challenging or not 17

  39. Privacy Pass ::acquiring signed tokens:: { x i } i k 17

  40. Privacy Pass ::acquiring signed tokens:: { [x i ] } i { x i } i k 17

  41. Privacy Pass ::acquiring signed tokens:: W { y i } i π { x i } i k { H(x i ) k } i 17

  42. Privacy Pass ::bypassing challenges:: { x i } i k { H(x i ) k } i 17

  43. Privacy Pass ::bypassing challenges:: x i MAC i { x i } i k x i { H(x i ) k } i 17

  44. Privacy Pass ::bypassing challenges:: W SDC { x i } i k x i { H(x i ) k } i 17

  45. Specifics ::: Elliptic curve: NIST P256 ::: Public commitments ( g , g k ) for DLEQ verification ::: Batch DLEQ PRNG: SHAKE-256 ::: Default # of signed tokens (client-side): 30 ::: Max signed tokens (server-side): 300 ::: Triggers: { status codes , headers } ::: Code: :: https://github.com/privacypass/challenge-bypass-extension :: https://github.com/privacypass/challenge-bypass-server :: https://privacypass.github.io/protocol (protocol summary) 18

  46. Benchmarks ::Timings (ms):: Operation Timings 120 + 64 · N Token generation 220 + 110 · N Verify DLEQ Client 340 + 180 · N Total signing request Total redeem request 57 0 . 04 + 0 . 20 · N Signing 0 . 32 + 0 . 55 · N DLEQ generation Server 1 . 48 + 0 . 87 · N Total signing Total redemption 0 . 8 N = # of tokens batch signed 19

  47. Benchmarks ::Request size (bytes):: Operation Size (bytes) Signing request (U → CDN) 57 + 63 · N Signing response (CDN → U) 295 + 121 · N Redemption request (U → CDN) 396 N = # of tokens batch signed 19

  48. Cloudflare deployment (Nov 2017) ::Release:: ::: Extension released: 8 Nov 2017 ::: Downloads (28 Nov 2017) :: Chrome extension: 8499 :: Firefox add-on: 3489 ::: Downloads (Jul 2018) :: Chrome extension: 61578 :: Firefox add-on: 16375 20

  49. Cloudflare deployment (Nov 2017) Metric Global Tor Total requests (per week) 1.6 trillion 700 million Total challenged requests 1.04% 17% ∼ 600 ∼ 100 Signs (peak per hour) ∼ 2000 ∼ 200 Redeems {Nov 2017} (peak per hour) ∼ 3300 ∼ 600 Redeems {Jul 2018} (peak per hour) Single-domain cookies (Nov 2017) 515 million 34 million 20

  50. Background Anonymous authentication protocol Privacy Pass Summary 21

  51. Conclusion and links ::: Privacy Pass extension is still in beta ::: Further analysis of protocol/code would be welcome! 22

  52. Conclusion and links ::: Privacy Pass extension is still in beta ::: Further analysis of protocol/code would be welcome! ::: Protocol spec: :: https://tinyurl.com/pp-protocol ::: Website: :: https://privacypass.github.io ::: Code (contribute!): :: https://github.com/privacypass/challenge-bypass-extension :: https://github.com/privacypass/challenge-bypass-server ::: Support: :: privacy-pass-support@cloudflare.com 22

  53. Final notes ::: See paper for: { more analysis of out-of-band attacks, comparison with existing research, security proofs, implementation details } ::: EC-VOPRF IETF standardisation :: https://github.com/chris-wood/draft-sullivan-cfrg-voprf ::: Future work: { DLEQ update, more integrations, better documentation, PQ VOPRF } 23

  54. Final notes ::: See paper for: { more analysis of out-of-band attacks, comparison with existing research, security proofs, implementation details } ::: EC-VOPRF IETF standardisation :: https://github.com/chris-wood/draft-sullivan-cfrg-voprf ::: Future work: { DLEQ update, more integrations, better documentation, PQ VOPRF } Thanks for listening! https://privacypass.github.io 23

  55. References [Hen14] Henry, Ryan. Efficient Zero-Knowledge Proofs and Applications . PhD thesis, University of Waterloo, 2014. http://hdl.handle.net/10012/8621. [JKK14] Stanislaw Jarecki, Aggelos Kiayias, and Hugo Krawczyk. Round-optimal password-protected secret sharing and T-PAKE in the password-only model. In Palash Sarkar and Tetsu Iwata, editors, ASIACRYPT 2014, Part II , volume 8874 of LNCS , pages 233--253. Springer, Heidelberg, December 2014. 24

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