A Cryptography Tutorial Jim Xu College of Computing Georgia Tech

Slides:



Advertisements
Similar presentations
Relations, Functions, and Matrices Mathematical Structures for Computer Science Chapter 4 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesThe Mighty Mod.
Advertisements

Spring 2000CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
1 Network Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Computer Science CSC 474By Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.1 Introduction to Cryptography.
CS 6262 Spring 02 - Lecture #7 (Tuesday, 1/29/2002) Introduction to Cryptography.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (4) Information Security.
CS457 – Introduction to Information Systems Security Cryptography 1b Elias Athanasopoulos
CS 555Topic 11 Cryptography CS 555 Topic 1: Overview of the Course & Introduction to Encryption.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 6 Wenbing Zhao Department of Electrical and Computer Engineering.
ECOMMERCE TECHNOLOGY SUMMER 2002 COPYRIGHT © 2002 MICHAEL I. SHAMOS Cryptographic Security.
Spring 2002CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Chapter 5 Cryptography Protecting principals communication in systems.
BY MUKTADIUR RAHMAN MAY 06, 2010 INTERODUCTION TO CRYPTOGRAPHY.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
Cryptography (continued). Enabling Alice and Bob to Communicate Securely m m m Alice Eve Bob m.
ITIS 3200: Introduction to Information Security and Privacy Dr. Weichao Wang.
Csci5233 Computer Security & Integrity 1 Cryptography: Basics (2)
McGraw-Hill©The McGraw-Hill Companies, Inc., Security PART VII.
Spring 2003CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Cryptography & Number Theory
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Security 2 Distributed Systems Lecture# 15. Overview Cryptography Symmetric Assymeteric Digital Signature Secure Digest Functions Authentication.
8: Network Security8-1 Symmetric key cryptography symmetric key crypto: Bob and Alice share know same (symmetric) key: K r e.g., key is knowing substitution.
Chapter 13: Electronic Commerce and Information Security Invitation to Computer Science, C++ Version, Fourth Edition SP09: Contains security section (13.4)
Computer Science CSC 774Dr. Peng Ning1 CSC 774 Advanced Network Security Topic 2. Review of Cryptographic Techniques.
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
Chapter 12 Cryptography (slides edited by Erin Chambers)
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Network Security (A Very Brief Introduction)
CIS 725 Security. Cryptosystem Quintuple ( E, D, M, K, C ) M set of plaintexts K set of keys C set of ciphertexts E set of encryption functions e: M 
Cryptography Lecture 1: Introduction Piotr Faliszewski.
Network Security. Cryptography Cryptography functions Secret key (e.g., DES) Public key (e.g., RSA) Message digest (e.g., MD5) Security services Privacy:
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
Cryptography, Authentication and Digital Signatures
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Day 18. Concepts Plaintext: the original message Ciphertext: the transformed message Encryption: transformation of plaintext into ciphertext Decryption:
Chapter 17 Security. Information Systems Cryptography Key Exchange Protocols Password Combinatorics Other Security Issues 12-2.
Midterm Review Cryptography & Network Security
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Module 3 – Cryptography Cryptography basics Ciphers Symmetric Key Algorithms Public Key Algorithms Message Digests Digital Signatures.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
Signcryption Parshuram Budhathoki Department of Mathematical Sciences Florida Atlantic University April 18, 2013
Some Number Theory Modulo Operation: Question: What is 12 mod 9?
Cryptography Part 1: Classical Ciphers Jerzy Wojdyło May 4, 2001.
11-Basic Cryptography Dr. John P. Abraham Professor UTPA.
30.1 Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Security and Cryptography: basic aspects Ortal Arazi College of Engineering Dept. of Electrical & Computer Engineering The University of Tennessee.
24-Nov-15Security Cryptography Cryptography is the science and art of transforming messages to make them secure and immune to attacks. It involves plaintext,
1.1 Introduction to Cryptography. 1.2 Basic Cryptography Cryptography is a deep mathematical subject. Cryptographic protocols provide a cornerstone for.
EE 122: Lecture 24 (Security) Ion Stoica December 4, 2001.
Secure Instant Messenger in Android Name: Shamik Roy Chowdhury.
Computer Security By Rubel Biswas. Introduction History Terms & Definitions Symmetric and Asymmetric Attacks on Cryptosystems Outline.
Department of Computer Science Chapter 5 Introduction to Cryptography Semester 1.
Cryptography Deffie hellman. organization Foundations Symmetric key Symmetric key weaknesses Assymmetric key Deffie hellman – key exchange RSA – public.
Fundamentals of Network Security Ravi Mukkamala SCI 101 October 6, 2003.
Security Outline Encryption Algorithms Authentication Protocols
Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Security through Encryption
Presentation transcript:

A Cryptography Tutorial Jim Xu College of Computing Georgia Tech

Why Cryptography? Network information needs to be communicated through insecure channel. Stored information may be accessed without proper authorization. Cryptography is a systematic way to make that harder.

Common Security Requirements Secrecy(encryption) Authenticity(signature/encryption) Integrity (signature/encryption) Non-repudiation (signature)

What Cryptography can do? Encryption: only the authorized party can understand the encrypted message. Signature: allow people to verify the authenticity of the message.

Classical Cryptography Shift Cipher (a special case used by Caesar) Substitution Cipher Affine Cipher Vigenere Cipher Hill Cipher Permutation Cipher

Cryptoanalysis Ciphertext-only attack Known plaintext attack Chosen plaintext attack Adaptive Chosen plaintext attack

Cryptoanalysis Shift Cipher: English histogram Substitution Cipher: histogram again Affine Cipher: histogram Vigenere Cipher: more complicated stat Hill Cipher: Known plaintext attack Permutation Cipher: histogram + semantics

Frequency of Letter Occurance

How to achieve perfect secrecy? One-pad: have a key as long as the plaintext For example, shift cipher is perfectly secure if the key is random and it is only used to encrypt one character! Spurious keys: S(n) >= |K|/(|P|^(n*R))-1 Unicity distance: that n to make S(n) zero

Modern Cryptography Two broad classes –1. Shared-key cryptography –2. Public-key cryptography

Shared-key cryptography Rooted in computational complexity Sender has M Sender sends (M XOR f(x, k), x) f is a random function Algorithms: –DES, Various fishes, Lucifer, Fiestel, AES standards (Rijendel),...

DES A round can be described as: –L i = R i-1 The key generation is performed –An initial permutation PC1 which selects 56 bits and divide them in two halves –In each round Select 24 bits from each half using a permutation function PC2 Rotate left each half by one or two position

Rich theory on pseudorandomness Pseudorandom number/bit generator Pseudorandom functions (ideal cryptographic hash functions) Stretch a small completely random string into a longer but less random string Though less random, indistinguishable to “naked eyes”

Public Key Cryptography Public/private key pair Only the owner knows the private key, but everyone knows the public key If the message is encrypted with the private key, then everyone with the public key can recover the message, but only the owner can generate the encrypted message

Continued If the message is encrypted with the public key, only the owner can decrypted it using its private key The first property can be used for signature and the second property can be used for encryption.

Digital signature Sender sends M, T=E(hash(M), private) The receiver compares E(T, public) and compares it with hash(M) M is considered genuine if they match

RSA Find two big prime numbers p and q Let B = p*q Choose private key C to be a number that is coprime with (p-1)*(q-1) Choose public key D such that C*D=1 mod (p-1)*(q-1)

Continued Encrypt M: T=M^C (or M^D) Decrypt M: M = T^D (or T^C) Theorem: (M^C)^D = M mod B Why: all the numbers that is coprime with B form a group, and the size of that group is (p-1)(q-1)

Security of RSA Hinge upon how hard the factorization is If one can break down B into p and q then finding C: C*D = 1 mod (p-1)(q-1) is easy Factorization is found to be quite hard, at least for now.

Cryptographic Protocols System needs are more complicated than what the primitives can provide Improperly designed, be broken even if none of the underlying primitives are broken Hard to check whether it is properly designed (proof logic/model checking/theorem proving methods are involved)

Key exchange Diff-Hellman Based on the assumption that knowing prime p and p^n, finding n will be hard Allow two party to share a key A senders B p^a and remembers a B senders A p^b and remembers b Both sides can generate p^(ab) Third party can not do that!

Man in the middle C can establish a key with both A and B, by posing as B and A respectively Solution: introduce public key or using return address as authentication method

Public Key Infrastructure Need this infrastructure to prevent A from claiming that B uses the public key that A generates Both hierachical and flat infrastructure are proposed Revocation list a major headache

Advanced Issues Group encryption/signature Forward security Everlasting security