## Introduction to Modern Cryptography

Author(s) : Mihir Bellare and Phillip Rogaway, Department of Computer Science and Engineering, University of California

Publication Date : September 2005

This document functions as notes for course CSE 207: Modern Cryptography at Computer Science and Engineering, University of California.

This course is an introduction to modern cryptography as a science. The viewpoint in this course is “theory brought to practice”, specifically the application of the theory of “provable-security” to the design and analysis of real world cryptographic schemes. This course considers tasks like encryption, signatures, authentication, and key distribution. The goal is to instill understanding of fundamentals of cryptographic protocol design.

Although the aim is to end up with practical solutions, the work involved is largely theoretical. This document will spend much of its time understanding how to formally define and model various goals, and prove correct protocols for these goals. This document is not about computer security. It will not be covering topics like operating systems security, viruses, and worms.

Functions as course notes for UCSD course CSE207. Feedback, corrections and comments welcome.

Preface: postscript ; pdf

Chapter | Notes | Slides |

Introduction | postscript ; pdf | |

Block ciphers | postscript ; pdf | |

Pseudorandom functions | postscript ; pdf | |

Symmetric encryption | postscript ; pdf | |

Hash functions | postscript ; pdf | |

Message authentication | postscript ; pdf | |

Computational number theory | postscript ; pdf | |

Number-theoretic primitives | postscript ; pdf | |

Asymmetric encryption | postscript ; pdf | |

Digital signatures | postscript ; pdf | |

Key distribution |

Appendix | Notes |

The birthday problem | postscript ; pdf |