1 / 8

Achieving Security: Authenticate, Verify, and Authorize for Complete Mediation

Learn how to achieve security by authenticating an agent's identity, verifying the integrity of requests, and checking the agent's authorization. Discover design principles to minimize security holes, minimize secrets, and establish fail-safe defaults. Understand the importance of authentication and key distribution, and the attacks on authentication systems. Finally, explore the concept of confidentiality and how to combine it with authentication.

frankbrown
Download Presentation

Achieving Security: Authenticate, Verify, and Authorize for Complete Mediation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 6.033 Quiz3 Review Spring 2007

  2. How can we achieve security? • Authenticate agent’s identity • Verify the integrity of the request • Check the agent’s authorization • Complete mediation – answer all three questions for every request

  3. Design Principles • Open Design Principle – need help spotting security holes • Minimize secrets: hard to keep them! • Economy of mechanism: fewer things to get right • Minimize common mechanism- fewer unintended communication paths • Fail-safe defaults: most users won’t change them • Least-privilege principle: limit the damage of an accident • Complete mediation- check every operation

  4. Authentication • Establish the origin and integrity of the message • Sign and Verify: Sender creates an authentication tag.[ T= sign(M, K1)] • Receiver verifies it. [Result = Verify(M’, T’, K2)]

  5. Implementation • Cryptographic transformations used – without knowing K, it should be “impossible” to construct a different message and tag that verifies correctly. • Algorithms are public, secret is just a key (longer keys harder to break) • Shared key : Sign and verify using the same key • Public-Key : Use private key to sign, public key to verify

  6. Key Distribution • Trusted physical delivery • Use mutually-trusted third party • “3” forms a certificate and Charles is CA.

  7. Attacks on authentication systems • Modifications to M and T • Reordering M • Extending M by appending information • Splicing several messages and tags • Attacks on cryptographic transformations • Sign and verify construction is hard!

  8. Confidentiality • Encrypt – message to ciphertext • Decrypt – ciphertext to plain text • Can use shared key or public-key cryptography • Combining authentication and confidentiality- encrypt and then sign the encrypted message

More Related