parameterizing access control for heterogeneous peer to
play

Parameterizing Access Control for Heterogeneous Peer-to-Peer - PowerPoint PPT Presentation

Parameterizing Access Control for Heterogeneous Peer-to-Peer Applications Ashish Gehani Surendar Chandra SRI University of Notre Dame 1 INTRODUCTION : Heterogeneous Applications Name resolution - CoDNS Scientific citations - OverCite


  1. Parameterizing Access Control for Heterogeneous Peer-to-Peer Applications Ashish Gehani Surendar Chandra SRI University of Notre Dame 1

  2. INTRODUCTION : Heterogeneous Applications • Name resolution - CoDNS • Scientific citations - OverCite • Multiplayer game object location - Chord • Email filtering - SpamWatch 2

  3. INTRODUCTION : What’s the problem? • Discretionary access control • Traditional concerns: – Authorization service is central point of failure – Revocation enforcement • Peer-to-peer environment concerns: – Reliability ( ρ ) – Performance (operation execution time) 3

  4. MOTIVATION : Heterogeneous Applications Table 1: Operation timeframe Grant Revoke Request Name resolution Minute Minute Second Spam filtering Minute Hour Second Digital library Minute Day Minute Content sales Second Never Second Multiplayer game Second Minute Second 4

  5. ASSUMPTIONS : System Model • Peers have equivalent functionality • Unauthorized reads preventable • Unauthorized writes not preventable – Must be detectable • Fraction of peers are malicious ( µ ) • Security should degrade gracefully 5

  6. GOALS : Solution Constraints • Flexible trust establishment • Authorize users, not nodes • Flexible operation order 6

  7. DESIGN : Object Sealing Object Name Owner α β Verfication Key Signed Hash Encrypted Object Data 7

  8. DESIGN : Permission Processing Read Capability Write Capability Identity Based Encryption Verifiable Secret Shares Overlay Insertions 8

  9. DESIGN : Leveraging Peers’ Storage User α Request Retrieves β Grant Object Shares Owner Peer Nodes 9

  10. IMPLEMENTATION : DAAL’s Java API static void grant(Globals globals, Delegation delegation, User owner, String user, String filename, boolean grantRead, boolean grantWrite, int alpha, int beta); static void revoke(Globals globals, Delegation delegation, User owner, String user, String filename, int alpha, int beta); static Capabilities request(Globals globals, User user, String filename, int alpha, int beta); 10

  11. EVALUATION : If µ = α β , ρ is independent of α Request with Β � 20, Μ�Α � Β Ρ 1 0.8 0.6 0.4 0.2 Α 2 4 6 8 10 12 14 11

  12. EVALUATION : If µ = α β , ρ is independent of β Request with Α � 5, Μ�Α � Β Ρ 1 0.8 0.6 0.4 0.2 20 Β 8 10 12 14 16 18 12

  13. α EVALUATION : ρ grows with α β > µ → Β� 20 , Α Β � k Μ , k � 1.2,1.5,1.8 ������ Ρ 1 0.8 0.6 0.4 0.2 12 Α 2 4 6 8 10 13

  14. ( α β ) EVALUATION : For large β , ρ depends on µ Α� 5 , Α Β � k Μ , k � 1.2,1.5,1.8 ������ Ρ 1 0.8 0.6 0.4 0.2 20 Β 10 12 14 16 18 14

  15. ( α β ) EVALUATION : Revocation depends on µ Revoke with Β � 20, Α Β � k Μ , k � 1, 2 ������ Ρ 1 0.8 0.6 0.4 0.2 14 Α 2 4 6 8 10 12 15

  16. EVALUATION : Large β and α β = 2 µ → Reliable operations Revoke with Α � 5, Α Β � k Μ , k � 1, 2 ������ Ρ 1 0.8 0.6 0.4 0.2 20 Β 8 10 12 14 16 18 16

  17. APPROACH : Parameter Selection α ← 1 , β ← 2 while Time ( request ( α, β )) < request threshold do α ++ , β ++ while Time ( revoke ( α, β )) < revoke threshold do β ++ while α β < = k.µ do β - - 17

Recommend


More recommend