logging in or signing up S4 03Dwaine Clarke Dixon Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 69 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: December 25, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Security Protocols in Automation: Security Protocols in Automation Dwaine Clarke declarke@mit.edu MIT Laboratory for Computer Science January 8, 2002 With help from: Matt Burnside, Todd Mills, Andrew Maywah, Srinivas Devadas, Ronald Rivest Slide2: Problem Description SPKI/SDSI Introduction Name Certificate Authorization Certificate Proxy-to-Proxy protocol Examples Status Questions OverviewProblem: Proxy to Proxy Security: Problem: Proxy to Proxy Security All proxies talk to each other with the same protocolSPKI/SDSI Introduction(Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure): SPKI/SDSI Introduction (Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure) Build secure distributed computing systems Access control over the network Simple, flexible, trust policy model with specific authorizations Fine-grained access control Scalable infrastructure SPKI/SDSI Introduction(Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure): SPKI/SDSI Introduction (Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure) Designed by Ron Rivest, Butler Lampson and Carl Ellison Each public key is a CA Name certificate: defines a name in issuer’s name space Authorization certificate: grants a specific authorization from issuer to subjectSPKI/SDSI: Name Certificates: SPKI/SDSI: Name Certificates Local name spaces GroupsSPKI/SDSI: Name Certificate: SPKI/SDSI: Name Certificate (cert (issuer (name (public-key (rsa-pkcs1-md5 (e #23#) (n |AMMgMuKpqK13pHMhC8kuxaSeCo+yt8TadcgnG8bEo+erdrSBveY3C MBkkZqrM0St4KkmMuHMXhsp5FX71XBiVW1+JGCBLfI7hxWDZCxGTMg bR4Fk+ctyUxIv3CQ93uYVkg9ca6awCxtS0EI7sLuEB+HKuOLjzTsH+ +Txw9NAHq4r|))) friends)) (subject (public-key (rsa-pkcs1-md5 (e #23#) (n |AKg3tOzoJ5PGQ5q9jzxzwxE8o6bIZ6/cE8gEL+1xJa23viE3bz68ru hpD5muqJ+uyDCNxgAZ0JVXJazmX1QjiGudj9kEmuni8gJRLZRu0T5E3 K7OU2dodu0kdDg32kym7+ooZNe/F0zWGekfESeezyQ25kvNO3XQvMHX afWcYjRw|)))))SPKI/SDSI: Authorization Model: SPKI/SDSI: Authorization Model Simple trust policy model Authorizations specified in flexible, user-defined tags Authorizations can be defined as specific or as general as the user desires Delegation (specific)SPKI/SDSI: Authorization Certificate: SPKI/SDSI: Authorization Certificate (cert (issuer (public-key (rsa-pkcs1-md5 (e #23#) (n |AMMgMuKpqK13pHMhC8kuxaSeCo+yt8TadcgnG8bEo+erdrSBveY3C MBkkZqrM0St4KkmMuHMXhsp5FX71XBiVW1+JGCBLfI7hxWDZCxGTMg bR4Fk+ctyUxIv3CQ93uYVkg9ca6awCxtS0EI7sLuEB+HKuOLjzTsH+ +Txw9NAHq4r|)))) (subject (public-key (rsa-pkcs1-md5 (e #23#) (n |AKg3tOzoJ5PGQ5q9jzxzwxE8o6bIZ6/cE8gEL+1xJa23viE3bz68ru hpD5muqJ+uyDCNxgAZ0JVXJazmX1QjiGudj9kEmuni8gJRLZRu0T5E3 K7OU2dodu0kdDg32kym7+ooZNe/F0zWGekfESeezyQ25kvNO3XQvMHX afWcYjRw|)))) (tag (http (* set GET POST) (* prefix http://ostrich.lcs.mit.edu/demo/))) (propagate))SPKI/SDSI: Tag: (tag (http (* set GET POST) (* prefix http://ostrich.lcs.mit.edu/demo/))) SPKI/SDSI: Tag Intuitively, a tag is a set of requests.Proxy to Proxy: Proxy to Proxy Alice (Client Proxy) Bob (Server Proxy) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs Set up SSL connection: Server auth Session key for privacy Freshness Protection from MIM Initialization:Proxy to ProxyCase 1: user’s key is directly on the ACL : Proxy to Proxy Case 1: user’s key is directly on the ACL Alice (Client) Bob (Server) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs [tag]Da Response ACL: {Ec, Eb, Ea}Proxy to Proxy: Proxy to Proxy Case 2: user’s key is “indirectly” on the ACL Client performs certificate chain discovery. Server verifies certificate chain. ACL: {‘Eb friends’}Certificate Chaining Example: Certificate Chaining Example Bob’s ACL says only MIT faculty are allowed to access his server. Alice’s first request is simply signed with Alice’s key, and Bob rejects this request. Alice’s second request contains a chain consisting of the following certificates: A certificate saying she is an LCS Professor A second certificate saying LCS Professors are MIT facultyCertificate Chain Discovery(Client Proxy): Certificate Chain Discovery (Client Proxy) Derive certificate chains Input: device’s ACL, requestor’s public key, requestor’s set of signed certificates, tag Output: a chain of certificates leading from an entry on the ACL to the requestor’s public key. (The certificate chain consists of signed certificates. It proves that the requestor is authorized to perform the tag’s operations on the device.) * Recall, intuitively, a tag is a set of requests.Certificate Chain Verification (Server Proxy): Certificate Chain Verification (Server Proxy) Verify certificate chains Input: device’s ACL, requestor’s public key, requestor’s certificate chain, tag Output: 1 if certificate chain proves that the public key is authorized to perform the tag’s operations on the device; 0 otherwise.Proxy to Proxy: Proxy to Proxy Alice (Client Proxy) Bob (Server Proxy) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs [tag]Da Rejected: [tag]Da, certs ACL Case 2 revisited user’s key is “indirectly” on the ACL Signed request provides proof of authenticity of the request Certificate chain provides proof that the request is authorizedExample: Public resource: Example: Public resource Mary wants to turn on/off a public light switch. Light switch’s proxy may require requests to be signed for auditing purposes.Example: user’s key directly on ACL: Example: user’s key directly on ACL Mary wants to log into an account on a dialup machine. ACL: {Ec, Ef, Em} Example:user’s key is indirectly on ACL: Example:user’s key is indirectly on ACL Mary wants to play music on John’s speaker. ACL: {‘Ej friends’}Summary:Issues we are dealing with: Summary: Issues we are dealing with Specifying, granting, delegating and revoking authorizations Creating, maintaining and auditing groups Attribute searching Facilitating scalability Designing simple, user-friendly systemsQuestions?: Questions? You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
S4 03Dwaine Clarke Dixon Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 69 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: December 25, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Security Protocols in Automation: Security Protocols in Automation Dwaine Clarke declarke@mit.edu MIT Laboratory for Computer Science January 8, 2002 With help from: Matt Burnside, Todd Mills, Andrew Maywah, Srinivas Devadas, Ronald Rivest Slide2: Problem Description SPKI/SDSI Introduction Name Certificate Authorization Certificate Proxy-to-Proxy protocol Examples Status Questions OverviewProblem: Proxy to Proxy Security: Problem: Proxy to Proxy Security All proxies talk to each other with the same protocolSPKI/SDSI Introduction(Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure): SPKI/SDSI Introduction (Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure) Build secure distributed computing systems Access control over the network Simple, flexible, trust policy model with specific authorizations Fine-grained access control Scalable infrastructure SPKI/SDSI Introduction(Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure): SPKI/SDSI Introduction (Simple Public-Key Infrastructure/Simple Distributed Security Infrastructure) Designed by Ron Rivest, Butler Lampson and Carl Ellison Each public key is a CA Name certificate: defines a name in issuer’s name space Authorization certificate: grants a specific authorization from issuer to subjectSPKI/SDSI: Name Certificates: SPKI/SDSI: Name Certificates Local name spaces GroupsSPKI/SDSI: Name Certificate: SPKI/SDSI: Name Certificate (cert (issuer (name (public-key (rsa-pkcs1-md5 (e #23#) (n |AMMgMuKpqK13pHMhC8kuxaSeCo+yt8TadcgnG8bEo+erdrSBveY3C MBkkZqrM0St4KkmMuHMXhsp5FX71XBiVW1+JGCBLfI7hxWDZCxGTMg bR4Fk+ctyUxIv3CQ93uYVkg9ca6awCxtS0EI7sLuEB+HKuOLjzTsH+ +Txw9NAHq4r|))) friends)) (subject (public-key (rsa-pkcs1-md5 (e #23#) (n |AKg3tOzoJ5PGQ5q9jzxzwxE8o6bIZ6/cE8gEL+1xJa23viE3bz68ru hpD5muqJ+uyDCNxgAZ0JVXJazmX1QjiGudj9kEmuni8gJRLZRu0T5E3 K7OU2dodu0kdDg32kym7+ooZNe/F0zWGekfESeezyQ25kvNO3XQvMHX afWcYjRw|)))))SPKI/SDSI: Authorization Model: SPKI/SDSI: Authorization Model Simple trust policy model Authorizations specified in flexible, user-defined tags Authorizations can be defined as specific or as general as the user desires Delegation (specific)SPKI/SDSI: Authorization Certificate: SPKI/SDSI: Authorization Certificate (cert (issuer (public-key (rsa-pkcs1-md5 (e #23#) (n |AMMgMuKpqK13pHMhC8kuxaSeCo+yt8TadcgnG8bEo+erdrSBveY3C MBkkZqrM0St4KkmMuHMXhsp5FX71XBiVW1+JGCBLfI7hxWDZCxGTMg bR4Fk+ctyUxIv3CQ93uYVkg9ca6awCxtS0EI7sLuEB+HKuOLjzTsH+ +Txw9NAHq4r|)))) (subject (public-key (rsa-pkcs1-md5 (e #23#) (n |AKg3tOzoJ5PGQ5q9jzxzwxE8o6bIZ6/cE8gEL+1xJa23viE3bz68ru hpD5muqJ+uyDCNxgAZ0JVXJazmX1QjiGudj9kEmuni8gJRLZRu0T5E3 K7OU2dodu0kdDg32kym7+ooZNe/F0zWGekfESeezyQ25kvNO3XQvMHX afWcYjRw|)))) (tag (http (* set GET POST) (* prefix http://ostrich.lcs.mit.edu/demo/))) (propagate))SPKI/SDSI: Tag: (tag (http (* set GET POST) (* prefix http://ostrich.lcs.mit.edu/demo/))) SPKI/SDSI: Tag Intuitively, a tag is a set of requests.Proxy to Proxy: Proxy to Proxy Alice (Client Proxy) Bob (Server Proxy) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs Set up SSL connection: Server auth Session key for privacy Freshness Protection from MIM Initialization:Proxy to ProxyCase 1: user’s key is directly on the ACL : Proxy to Proxy Case 1: user’s key is directly on the ACL Alice (Client) Bob (Server) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs [tag]Da Response ACL: {Ec, Eb, Ea}Proxy to Proxy: Proxy to Proxy Case 2: user’s key is “indirectly” on the ACL Client performs certificate chain discovery. Server verifies certificate chain. ACL: {‘Eb friends’}Certificate Chaining Example: Certificate Chaining Example Bob’s ACL says only MIT faculty are allowed to access his server. Alice’s first request is simply signed with Alice’s key, and Bob rejects this request. Alice’s second request contains a chain consisting of the following certificates: A certificate saying she is an LCS Professor A second certificate saying LCS Professors are MIT facultyCertificate Chain Discovery(Client Proxy): Certificate Chain Discovery (Client Proxy) Derive certificate chains Input: device’s ACL, requestor’s public key, requestor’s set of signed certificates, tag Output: a chain of certificates leading from an entry on the ACL to the requestor’s public key. (The certificate chain consists of signed certificates. It proves that the requestor is authorized to perform the tag’s operations on the device.) * Recall, intuitively, a tag is a set of requests.Certificate Chain Verification (Server Proxy): Certificate Chain Verification (Server Proxy) Verify certificate chains Input: device’s ACL, requestor’s public key, requestor’s certificate chain, tag Output: 1 if certificate chain proves that the public key is authorized to perform the tag’s operations on the device; 0 otherwise.Proxy to Proxy: Proxy to Proxy Alice (Client Proxy) Bob (Server Proxy) Da (private key) Ea (public key) Alice’s client certs List of CA certs Db (private key) Eb (public key) ACL Server certs [tag]Da Rejected: [tag]Da, certs ACL Case 2 revisited user’s key is “indirectly” on the ACL Signed request provides proof of authenticity of the request Certificate chain provides proof that the request is authorizedExample: Public resource: Example: Public resource Mary wants to turn on/off a public light switch. Light switch’s proxy may require requests to be signed for auditing purposes.Example: user’s key directly on ACL: Example: user’s key directly on ACL Mary wants to log into an account on a dialup machine. ACL: {Ec, Ef, Em} Example:user’s key is indirectly on ACL: Example:user’s key is indirectly on ACL Mary wants to play music on John’s speaker. ACL: {‘Ej friends’}Summary:Issues we are dealing with: Summary: Issues we are dealing with Specifying, granting, delegating and revoking authorizations Creating, maintaining and auditing groups Attribute searching Facilitating scalability Designing simple, user-friendly systemsQuestions?: Questions?