Taehyung Kim HPC Lab. POSTECH

Slides:



Advertisements
Similar presentations
Using Cryptography to Secure Information. Overview Introduction to Cryptography Using Symmetric Encryption Using Hash Functions Using Public Key Encryption.
Advertisements

CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (4) Information Security.
Public Key Encryption Algorithm
Creating Secret Messages. 2 Why do we need to keep things secret? Historically, secret messages were used in wars and battles For example, the Enigma.
Public-key Cryptography Montclair State University CMPT 109 J.W. Benham Spring, 1998.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Public Encryption: RSA
RSA Exponentiation cipher
McGraw-Hill©The McGraw-Hill Companies, Inc., Security PART VII.
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.
CS526Topic 2: Classical Cryptography1 Information Security CS 526 Topic 2 Cryptography: Terminology & Classic Ciphers.
Chapter 2 – Classical Encryption Techniques
Encryption. Introduction Computer security is the prevention of or protection against –access to information by unauthorized recipients –intentional but.
Codes, Ciphers, and Cryptography-RSA Encryption
Public Key Model 8. Cryptography part 2.
1 Introduction to Codes, Ciphers, and Cryptography Michael A. Karls Ball State University.
Chapter 12 Cryptography (slides edited by Erin Chambers)
Cryptography Week-6.
Chapter 2 Basic Encryption and Decryption. csci5233 computer security & integrity 2 Encryption / Decryption encrypted transmission AB plaintext ciphertext.
CSCE 201 Introduction to Information Security Fall 2010 Data Protection.
Network Security7-1 Chapter 8: Network Security Chapter goals: r understand principles of network security: m cryptography and its many uses beyond “confidentiality”
Day 37 8: Network Security8-1. 8: Network Security8-2 Symmetric key cryptography symmetric key crypto: Bob and Alice share know same (symmetric) key:
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
Section 4.4: The RSA Cryptosystem Practice HW Handwritten and Maple Exercises p at end of class notes.
Darci Miyashiro Math 480 April 29, 2013
Cryptography Part 1: Classical Ciphers Jerzy Wojdyło May 4, 2001.
Cryptograpy By Roya Furmuly W C I H D F O P S L 7.
Tractability & Cryptography Strange Symbiosis Points of Reference: Oskars Rieksts.
24-Nov-15Security Cryptography Cryptography is the science and art of transforming messages to make them secure and immune to attacks. It involves plaintext,
POON TENG HIN.  RSA  Shamir’s Three-Pass Protocol  Other issues.
K. Salah1 Cryptography Module I. K. Salah2 Cryptographic Protocols  Messages should be transmitted to destination  Only the recipient should see it.
1 Cryptography Troy Latchman Byungchil Kim. 2 Fundamentals We know that the medium we use to transmit data is insecure, e.g. can be sniffed. We know that.
CS526Topic 2: Classical Cryptography1 Information Security CS 526 Topic 2 Cryptography: Terminology & Classic Ciphers.
Public Key Cryptography. Asymmetric encryption is a form of cryptosystem in which Encryption and decryption are performed using the different keys—one.
CRYPTOGRAPHY G REEK WORD MEANING “ SECRET WRITING ”
CMSC 414 Computer (and Network) Security Lecture 3 Jonathan Katz.
Cryptography By: Nick Belhumeur. Overview What is Cryptography? What is Cryptography? 2 types of cryptosystems 2 types of cryptosystems Example of Encryption.
Public Key Cryptography
Public Key Encryption.
Chapter 8: Network Security
Asymmetric-Key Cryptography
RSA Slides by Kent Seamons and Tim van der Horst
Chapter 2 Basic Encryption and Decryption
Introduction CS 303 Algorithmic Number Theory and Cryptography
Public Key Encryption and Digital Signatures
Public-key Cryptography
Fundamental Concepts in Security and its Application Cloud Computing
Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Cryptography.
Chapter 8: Network Security
Chapter 8: Network Security
Cryptography Survey.
PART VII Security.
Rivest, Shamir and Adleman
Cryptography: Basics (2)
Cryptography Survey.
Unit 2: Cryptography & Cryptographic Algorithm
Basic of Modern Cryptography
Introduction to Algorithms Second Edition by
Introduction to Cryptography
Oblivious Transfer.
Computer Security Chapter Two
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Chapter 8: Network Security
Security: Public Key Cryptography
Symmetric Encryption or conventional / private-key / single-key
Chapter 8: Network Security
LAB 3: Digital Signature
Presentation transcript:

Taehyung Kim HPC Lab. POSTECH Cryptography Taehyung Kim HPC Lab. POSTECH

Goals To know To exercise simple cryptography algorithms What is the cryptography? What is a key in cryptography system? What is a symmetric key system? What is a public key system? What is the base of the Public-key cryptography? To exercise simple cryptography algorithms

Cryptography Definition Objective The art of secret writing Crypto(hidden) + graphy(writing) Objective To enable two people to communicate over an insecure channel in such a way that opponent cannot understand what is being said These two word, crypto and graphy, are from Greek Crypto means ‘hidden’ and graphy means ‘writing’ so cryptography is ‘hidden writing’ Here, an insecure channel can be a cyber space or a real world.

Cryptography The mostly used tool for securing information and services Relies on ciphers: mathematical functions used for encryption and decryption of a message Encryption – the process of disguising a message in such a way as to hide its substance Ciphertext – an encrypted message Decryption – the process of returning an ecrypted message back into plaintext Cryptography is a kind of mathematics. Cipher has same meaning with encrypt. So we call an encrypted message as a ciphertext. And we call an original message as a plaintext.

Ciphers For some message M Let’s denote Notice, the encryption of that message into cipher text as Ek(M) = C the decryption into plain text as Dk(C) = M Notice, Symmetric-key algorithm Dk(Ek(M)) = M Public-key algorithm Dk1(Ek2(M))= M M is a plaintext. Ciphertext is generate by putting a plaintext into an encryption algorithms as its parameter. And we denote that like this. Also we can get the plaintext using a decryption algorithm Actually, there are two kinds of crypto algorithms. One is the symmetric-key algorithm and the other is the public-key algorithm Symmetric-key algorithms use the same key in encryption and decryption But public-key algorithms don’t. They use different keys.

Cryptosystem Algorithm + Key The reason for having a key to an algorithm Difficult to devising new algorithms Difficult to quickly explain a newly devised algorithm to the person with whom you’d like to start communication securely A good cryptosystem Perfectly OK to have everyone know the algorithm Knowledge of the algorithm without the key does not help unmangle the information A crypto algorithm and keys constitute crypto system. Mangle means spoil or broke. Unmangle is opposite of mangle.

Classical Cryptography Transposition (permutation) cipher Simple transposition Substitution cipher shift cipher Polyalphabetic cipher

Simple Transposition Grouping the plaintext into blocks of t characters Applying to each block a single permutation  on the numbers 1 through t Encryption C = E(M) = m(1) …m(t), (M=m1…mt) Decryption M = D(C) = E-1(C) = c-1(1) …c-1(t), (C = c1…ct)

Example T = 6,  = (6 4 1 3 5 2) M = CAESAR Exercise Simple Transposition Example T = 6,  = (6 4 1 3 5 2) M = CAESAR m1 = C, m2 = A, m3 = E, m4 = S, m5 = A, m6 = R C = m6m4m1m3m5m2 = RSCEAA Exercise C = OPCYTRYPGAHR , M = ? -1 = (3 6 4 2 5 1) M = D(C) = D({OPCYTR})D({YPGAHR}) = CRYPTOGRAPHY

Shift Cipher A kind of simple substitution ciphers Example M = CAESAR m1 = C, m2 = A, m3 = E, m4 = S, m5 = A, m6 = R Ci = ( mi + 3) % 26 C = FDHVDU General shift cipher Ci = (a·mi + k) % 26 A simple substitution is a one-to-one correspondence of an alphabet with itself

Polyalphabetic (Vigenere) cipher Grouping the plaintext into blocks of n characters -> block size = 5 = n Let E1,E2,…,En be distinct substitution ciphers. To encrypt a plaintext message M, apply the Ei( i=1,2,…,n) cyclically to the message characters Encryption C = E(M) = E1(m1)E2(m2)…En(mn)E1(mn+1)…. (M=m1…mt) Decryption M = D(C) = E1-1(c1)E2-1(c2)…En-1(cn)E1-1(cn+1)…(C = c1…ct)

Polyalphabetic Cipher Example Block size = 3 E1, E2, E3 are shift ciphers with Key = { 2, 16, 5 } M = CRYPTOGRAPHY C = E1(C)E2(R)E3(Y)E1(P)E2(T)E3(O) E1(G)E2(R)E3(A)E1(P)E2(H)E3(Y) = EHDRJTIHFRXD

Cryptanalysis of a substitution cipher Letter-frequency in English can be broken into 5 groups: e (0.127 most common occurrence); t, (0.091), a (0.082), o (0.075), i (0.070), n (0.067), s (0.063), h (0.061), r (0.060); d (0.043), l (0.040) ; c (0.028), u (0.028), m (0.024), w (0.023), f (0.022), g (0.020), y (0.020), p (0.019), b (0.015); v (0.010), k (0.008), j (0.002), x (0.001), q (0.001), z (0.001 least common)

Exercise Decipher a given ciphertext Key = { 5, 17, 4, 20 } C = IVGCUYILFXMPJEGCUYILYVBN

Exercise Decipher a given ciphertext. ( you first find the block size. Look at the letters applied same substitution cipher, and see which letter occurs most frequently And using letter frequency in English, decipher. ) CHREEVOAHMAERATBIAXXWTNXBEEOPHBSBQMQEQERBWRVXUOAKXAOSXXWEAHBWGJMMQMNKGRFVGXWTRZXWIAKLXFPSKAUTEMNDCMGTSXMXBTUIADNGMGPSRELXNJELXVRVPRTULHDNQWTWDTYGBPHXTFALJHASVBFXNGLLCHRZBWELEKMSJIKNBHWRJGNMGJSGLXFEYPHAGNRBIEQJTAMRVLCRREMNDGLXRRIMGNSNRWCHRQHAEYEVTAQEBBIPEEWEVKAKOEWADREMXMTBHHCHRTKDNVRZCHRCLQOHPWQAIIWXNRMGWOIIFKEE

Public Key Cryptography Problem with symmetric key algorithms A secure method of telling your partner the key A separate key for everyone you might communicate with Public-Key algorithms use a public-key and private-key pair over a message

Encryption Public Key Cryptography Public Key is opened to everyone. But private key is a hidden key.

Public Key Cryptography Authentication

RSA Public-key encryption Proposed by Rivest, Shamir, and Adleman in 1977 Mostly widely used public-key cryptosystem The security is based on the intractability of the integer factorization problem

Key Generation Generate two large random primes p and q. RSA Public Key Cryptography Key Generation Generate two large random primes p and q. Compute n = pq and  = (p-1)(q-1). Select a random integer e, 1 < e < , such that gcd(e, ) = 1. Compute the unique integer d, 1 < d < , such that ed  1 (mod ). Public key : (n, e) Private key : d

Encryption Bob encrypts a message m for Alice RSA Public Key Cryptography Encryption Bob encrypts a message m for Alice Obtain Alice’s public key (n, e) Represent the message as an integer m in the interval [0, n-1] Compute C Me (mod n) Alice recovers plaintext m from c as follows: M  Cd (mod n)

Theorem: C  Md (mod n) Proof C d  (Me)d (mod n)  Med (mod n) RSA Public Key Cryptography Theorem: C  Md (mod n) Proof C d  (Me)d (mod n)  Med (mod n)  Mk+1 (mod n)  MMk (mod n)  MMk(p-1)(q-1) (mod n)  M (mod n)

Example p = 2357, q = 2251 n = pq = 6012707,  = (p-1)(q-1) = 6007800 RSA Public Key Cryptography Example p = 2357, q = 2251 n = pq = 6012707,  = (p-1)(q-1) = 6007800 Choose e = 3674911, then d = 422191 Public key (n = 6012707, e = 3674911) Private key d = 422191 Plaintext m = 5234673 C = me mod n = 52346733674911 mod 6012707 = 3650502 Label the English characters A,B,… Z as integers 0,1,2,……,25

Exercise Public key (119, 5), private key d = 77 Plaintext M = 19 RSA Public Key Cryptography Exercise Public key (119, 5), private key d = 77 Plaintext M = 19 Ciphertext C = ? What about manual decryption ?

Exercise Find five prime integer more than 1000 RSA Public Key Cryptography Exercise Find five prime integer more than 1000 Make a public key and a private key Two primes, p and q, must be less than 1000 Select a plaintext and cipher it using your public key Decipher the other group’s ciphertext

Cryptography The cipher system is just a part of a protecting system. Although the cipher system is obviously safe, it doesn't guarantee security of a protecting system. When all parts of protecting system (include a Security manager) are secure, we can say that "This system is secure against hacker's attack". Cryptography is not magic word for security. It is most important that the security manager must be concerned about the security. That’s it.

How to determine a block size Kasiski's method: 1. Find all repeated strings in ciphertext of length at least 3 2. Compute distances between them 3. Block size will be a common divisor of those numbers

Letter-frequency e (0.127 most common occurrence); t, (0.091), a (0.082), o (0.075), i (0.070), n (0.067), s (0.063), h (0.061), r (0.060); d (0.043), l (0.040) ; c (0.028), u (0.028), m (0.024), w (0.023), f (0.022), g (0.020), y (0.020), p (0.019), b (0.015); v (0.010), k (0.008), j (0.002), x (0.001), q (0.001), z (0.001 least common)

Answer A:7 B:6 C:6 D:4 E:1 F:2 G:0 H:0 I:1 J:2 K:1 L:0 M:2 N:4 O:0 P:1 Q:4 R:3 S:0 T:2 U:1 V:1 W:9 X:5 Y:0 Z:0 A:3 B:1 C:0 D:3 E:9 F:2 G:3 H:5 I:3 J:0 K:0 L:0 M:2 N:6 O:6 P:1 Q:0 R:3 S:7 T:5 U:1 V:1 W:1 X:0 Y:0 Z:0 A:5 B:2 C:1 D:0 E:2 F:0 G:4 H:3 I:3 J:3 K:0 L:2 M:0 N:5 O:1 P:2 Q:4 R:13 S:1 T:2 U:2 V:4 W:0 X:1 Y:2 Z:0 A:1 B:1 C:1 D:0 E:10 F:0 G:1 H:3 I:4 J:2 K:4 L:4 M:8 N:0 O:0 P:3 Q:2 R:3 S:1 T:1 U:0 V:3 W:3 X:4 Y:1 Z:2 A:3 B:5 C:0 D:0 E:2 F:2 G:7 H:6 I:0 J:0 K:4 L:6 M:5 N:0 O:0 P:1 Q:0 R:2 S:0 T:4 U:0 V:1 W:3 X:10 Y:0 Z:1 THEALMONDTREEWASINTENTATIVEBLOSSOMTHEDAYSWERELONGEROFTENENDINGWITHMAGNIFICENTEVENINGSOFCORRUGATEDPINKSKIESTHEHUNTINGSEASONWASOVERWITHHOUNDSANDGUNSPUTAWAYFORSIXMONTHSTHEVINEYARDSWEREBUSYAGAINASTHEWELLORGANIZEDFARMERSTREATEDTHEIRVINESANDTHEMORELACKADAISICALNEIGHBORSHURRIEDTODOTHEPRUNINGTHEYSHOULDHAVEDONEINNOVEMCALORBUSINESSRIVALSE