Presentation is loading. Please wait.

Presentation is loading. Please wait.

Authentication Advanced Software Engineering (CSE870) Instructor: Dr. B. Cheng Contact info: chengb at cse dot msu dot edu Eduardo Diaz Dan Fiedler Andres.

Similar presentations


Presentation on theme: "Authentication Advanced Software Engineering (CSE870) Instructor: Dr. B. Cheng Contact info: chengb at cse dot msu dot edu Eduardo Diaz Dan Fiedler Andres."— Presentation transcript:

1 Authentication Advanced Software Engineering (CSE870) Instructor: Dr. B. Cheng Contact info: chengb at cse dot msu dot edu Eduardo Diaz Dan Fiedler Andres Ramirez Eduardo Diaz Dan Fiedler Andres Ramirez

2 Road Map  Introduction to Authentication  Needham-Schroeder, Otway-Rees, Kerberos  Commonalities  Additional Requirements  Class Diagrams  State Diagrams  Conclusions  Introduction to Authentication  Needham-Schroeder, Otway-Rees, Kerberos  Commonalities  Additional Requirements  Class Diagrams  State Diagrams  Conclusions

3 Authentication  Meet:  Alice (Staff)  Bob (MISys)  Meet:  Alice (Staff)  Bob (MISys)

4 Authentication  Purpose  Key exchange.  Allow Alice to secretly communicate with Bob using a shared cryptographic key.  Methods  Private keys, shared keys, public keys…  Potential Problems  Trustworthy?  Safe handling of private keys?  Purpose  Key exchange.  Allow Alice to secretly communicate with Bob using a shared cryptographic key.  Methods  Private keys, shared keys, public keys…  Potential Problems  Trustworthy?  Safe handling of private keys?

5 Needham-Schroeder 1.Alice Cathy: {Alice || Bob || rand 1 } 2.Cathy Alice: {Alice || Bob || rand 1 } Ksess || {Alice || Ksess} kbob } kalice 3. Alice Bob: {Alice || ksess} kbob 4. Bob Alice: {rand 2 } ksess 5. Alice Bob: {rand 2 - 1} ksess 1.Alice Cathy: {Alice || Bob || rand 1 } 2.Cathy Alice: {Alice || Bob || rand 1 } Ksess || {Alice || Ksess} kbob } kalice 3. Alice Bob: {Alice || ksess} kbob 4. Bob Alice: {rand 2 } ksess 5. Alice Bob: {rand 2 - 1} ksess

6 Needham Schroeder  Motive?  Prevent replay attacks  A valid data transmission is retransmitted maliciously.  Nonces  Randomly generated numbers to identify exchanges.  Key idea: Cathy is trusted by Alice and Bob.  Motive?  Prevent replay attacks  A valid data transmission is retransmitted maliciously.  Nonces  Randomly generated numbers to identify exchanges.  Key idea: Cathy is trusted by Alice and Bob.

7 Otway-Rees 1.Alice Bob: num || Alice || Bob || { rand 1 || num || Alice|| Bob} kalice 2. Bob Cathy: num || Alice || Bob || {rand 1 || num || Alice || Bob} kalice || {rand 2 || num || Alice || Bob} kbob 3. Cathy Bob: num || {rand 1 || k sess } kalice || {rand 2 || k sess } kbob 4. Bob Alice: num || {rand 1 || k sess } kalice 1.Alice Bob: num || Alice || Bob || { rand 1 || num || Alice|| Bob} kalice 2. Bob Cathy: num || Alice || Bob || {rand 1 || num || Alice || Bob} kalice || {rand 2 || num || Alice || Bob} kbob 3. Cathy Bob: num || {rand 1 || k sess } kalice || {rand 2 || k sess } kbob 4. Bob Alice: num || {rand 1 || k sess } kalice

8 Otway-Rees  Motivation  Needham-Schroeder assumes all cryptographic keys are secure… in practice generated pseudorandomly… but it can be predicted.  Num  Verify that num agrees through the exchanges.  Key Idea  Cathy is again the trustworthy element.  Motivation  Needham-Schroeder assumes all cryptographic keys are secure… in practice generated pseudorandomly… but it can be predicted.  Num  Verify that num agrees through the exchanges.  Key Idea  Cathy is again the trustworthy element.

9 Kerberos 1.Alice Cerberus: Alice || Barnum 2.Cerberus Alice: {k alice,barnum } kalice || T alice,barnum 3.Alice Barnum: Guttenberg || A alice,barnum || T alice,barnum 4.Barnum Alice: Alice || {k alice,guttenberg } kalicebarnum || T alice,guttenberg 5.Alice Guttenberg: A alice,guttenberg || T alice,guttenberg 6. Guttenberg Alice: {t+1} kalice,guttenberg 1.Alice Cerberus: Alice || Barnum 2.Cerberus Alice: {k alice,barnum } kalice || T alice,barnum 3.Alice Barnum: Guttenberg || A alice,barnum || T alice,barnum 4.Barnum Alice: Alice || {k alice,guttenberg } kalicebarnum || T alice,guttenberg 5.Alice Guttenberg: A alice,guttenberg || T alice,guttenberg 6. Guttenberg Alice: {t+1} kalice,guttenberg

10 Kerberos  What is T?  T alice,barnum = Barnum || {Alice || Alice Address || valid time || k alice,barnum } kbarnum  What is A?  {Alice || generation time || kt} kalice,barnum  Kt… not used.  What is T?  T alice,barnum = Barnum || {Alice || Alice Address || valid time || k alice,barnum } kbarnum  What is A?  {Alice || generation time || kt} kalice,barnum  Kt… not used.

11 Kerberos  Motivation  Separate authentication of the user to ticket granting server and resource being requested.  2 Servers  Authenticate first  Obtain ticket second  Key Idea:  Time windows  Separation of trusted parties  Motivation  Separate authentication of the user to ticket granting server and resource being requested.  2 Servers  Authenticate first  Obtain ticket second  Key Idea:  Time windows  Separation of trusted parties

12 Commonalities  Message Passing  Authentication Requests  Encryption / Decryption  Key Passing  … other than that, not much!  Each protocol has slight variants.  Message Passing  Authentication Requests  Encryption / Decryption  Key Passing  … other than that, not much!  Each protocol has slight variants.

13 Additional Requirements  Same as other groups plus:  Incorporate 2 design patterns  1 must be a security design pattern  Strategy Design Pattern (encryption algorithms)  Single Access Point (entry and logging)  Instantiate the framework at MISys  At the whitebox level  Same as other groups plus:  Incorporate 2 design patterns  1 must be a security design pattern  Strategy Design Pattern (encryption algorithms)  Single Access Point (entry and logging)  Instantiate the framework at MISys  At the whitebox level

14 Whitebox Class Diagram

15 N.S. Class Diagram

16 O.R. Class Diagram

17 Kerberos Class Diagram

18 Whitebox Class Diagram-MISys

19 State Diagrams, NS

20 State Diagrams, N.S.

21 State Diagram, O.R.

22

23 State Diagram, Kerberos

24 Graybox Class Diagram

25 BlackBox Class Diagram

26 Conclusions  Questions?


Download ppt "Authentication Advanced Software Engineering (CSE870) Instructor: Dr. B. Cheng Contact info: chengb at cse dot msu dot edu Eduardo Diaz Dan Fiedler Andres."

Similar presentations


Ads by Google