C = E(p) = (p + k) mod (n) p = D(C) = (C k) mod (n)

Size: px
Start display at page:

Download "C = E(p) = (p + k) mod (n) p = D(C) = (C k) mod (n)"

Transcription

1 Substitutions ciphers (monoalphabetic) A substitution technique is one in which the characters of plaintext are replaced by other characters or by numbers or symbols. If the plaintext is viewed as a sequence of bits, then substitution involves replacing plaintext bit patterns with ciphertext bit patterns. Caesar cipher (Shifted alphabet) A simplest type of substitution cipher shifts each letter in the English alphabet forward by K positions cyclically (shifts past Z cycle back to A). K is the key to the cipher. This type of cipher is often called a Caesar cipher because Julius Caesar used it with k=3. Caesar cipher as: C = E(p) = (p + k) mod (n) p = D(C) = (C k) mod (n) Where k is the number of positions to be shifted, P is a single character of the plaintext, C is a single character of the ciphertext, and n is the size of the alphabet (for English alphabet n=26). If k = 3 then we can encrypt the following message as: Plaintext: this is a secret message Ciphertext: wklv lv d vhfuhw phvvdjh The Caesar code program: 1

2 namespace seclab2 public partial class Form1 : Form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) public string Encryption(string plian,int key ) char[] temp = new char[plian.length]; for (int i = 0; i < plian.length; i++) temp[i] = (char)(plian[i]+key); if (temp[i] > 'z') temp[i] = (char)(temp[i] - 26); string cipher = new string(temp); return cipher; public string Decryption(string cipher, int key) char[] temp = new char[cipher.length]; for (int i = 0; i < cipher.length; i++) temp[i] = (char)(cipher[i] - key); if (temp[i] < 'a') temp[i] = (char)(temp[i] + 26); string plian = new string(temp); return plian; private void button1_click(object sender, EventArgs e) int key =(int) numericupdown1.value; string output = Encryption(textBox1.Text,key); textbox2.text = output; private void button2_click(object sender, EventArgs e) int key = (int)numericupdown1.value; string output = Decryption(textBox2.Text,key); textbox3.text = output; 2

3 Multiplicative cipher Multiplicative cipher is encrypted by multiply each character in plaintext by multiplicative key k modulo 26. The key and 26 are relatively prime (GCD (key, 26)=1). To decrypt, the modular inverse of the key is the number that is multiplied. The modular inverse of key is a number X such that (key *X) mod 26= 1. Multiplicative cipher as: C = E(p) = (p * k) mod (n) p = D(C) = (C *invk) mod (n) Where k and n are relatively prime in order to produce a complete set of residues and invk is multiplicative inverse number to key. If k and n are not prime, several letters will encipher to the same ciphertext letter, and not all letters will appear in the ciphertext. Notice that only 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, and 25 have multiplicative inverses modulo 26. Here are the possible multipliers and their inverses: Number Multiplicative inverse *1= 1mod 26, 3* 9=1 mod 26, 5*21=1 mod 26 and so on, but, 2, for example, does not have an inverse, there is no number mod 26 that 2 can be multiplied by that will result in 1. Example: Plaintext: this is a secret message Ciphertext: fvyc yc a cmgzmf kmccasm 3

4 The Multiplicative code program: namespace seclab2multiplicative public partial class Form1 : Form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) public static int MultiplicativeInverse(int key) int x = 0; while (((key * x) % 26!= 1)) x++; return x; public static int GCD(int p, int q) if (q == 0) return p; int r = p % q; return GCD(q, r); 4

5 public string Encryption(string plian, int key) char[] temp = new char[plian.length]; for (int i = 0; i < plian.length; i++) temp[i] = (char)((((plian[i]-97) * key)% 26)+97); string cipher = new string(temp); return cipher; public string Decryption(string cipher, int invkey) char[] temp = new char[cipher.length]; for (int i = 0; i < cipher.length; i++) temp[i] = (char)((((cipher[i] - 97) * invkey) % 26) + 97); string plian = new string(temp); return plian; private void button1_click(object sender, EventArgs e) int key = (int)numericupdown1.value; if (GCD(key, 26)!= 1) MessageBox.Show("invalid cipher key. please try again "); string output = Encryption(textBox1.Text, key); textbox2.text = output; private void button2_click(object sender, EventArgs e) int invkey = MultiplicativeInverse((int)numericUpDown1.Value); string output = Decryption(textBox2.Text, invkey); textbox3.text = output; 5

6 Affine cipher The key for the Affine cipher consists of two numbers, we'll call them key1and key2. Key1 should be chosen to be relatively prime to n (26 character alphabet), and key2 is the number of positions to be shifted. The encryption and decryption function for a single letter is: C = E(p) = ((key1 * p) + key2 ) mod (n) p = D(C) = (C key2)*invkey1 mod (n) Where invkey1 is the multiplicative inverse of key1 in the group of modulo n Example: using key1=5, key2=8 (notes that the invkey will be 21) Plaintext: this is a secret message Ciphertext: zrwu wu i ucspcz qcuuimc The Affine code program: 6

7 namespace seclab2affine public partial class Form1 : Form public Form1() InitializeComponent(); public static int MultiplicativeInverse(int key1) int x = 0; while (((key1 * x) % 26!= 1)) x++; return x; public static int GCD(int p, int q) if (q == 0) return p; int r = p % q; return GCD(q, r); public string Encryption(string plian, int key1, int key2) char[] temp = new char[plian.length]; for (int i = 0; i < plian.length; i++) temp[i] =(char)(((((plian[i] - 97) * key1) + key2) % 26) + 97); string cipher = new string(temp); return cipher; public string Decryption(string cipher, int invkey,int key2) char[] temp = new char[cipher.length]; for (int i = 0; i < cipher.length; i++) temp[i] =(char)((((((cipher[i] - 97) -key2)+26)* invkey) % 26) + 97); string plian = new string(temp); return plian; 7

8 private void button1_click(object sender, EventArgs e) int key1 = (int)numericupdown1.value; if (GCD(key1, 26)!= 1) MessageBox.Show("invalid cipher key. please try again "); int key2 = (int)numericupdown2.value; string output = Encryption(textBox1.Text, key1,key2 ); textbox2.text = output; private void button2_click(object sender, EventArgs e) int invkey = MultiplicativeInverse((int)numericUpDown1.Value); int key2 = (int)numericupdown2.value; string output = Decryption(textBox2.Text, invkey,key2); textbox3.text = output; 8

9 Vigenere Cipher (polyalphabetic) In cryptography, a Vigenere cipher is a method of encrypting alphabetic text by using a series of different Caesar ciphers based on the letters of a keyword. It is a simple form of polyalphabetic substitution. This scheme of cipher uses a text string as a key, which is then used for doing a number of shifts on the plaintext. Vigenere cipher as: Example: C i = E(p i ) = (p i + k i ) mod (n) p i = D(C i ) = (C i k i ) mod (n) The sender and the receiver decide on a key. For example, let s assume the key is 'cipher'. Each alphabet of the key is converted to its respective numeric value: In this case: c 2, i 8, p 15, h 7, e 4, r 17. Thus, the numeric representation of this key is ' ' The sender wants to encrypt the message, for example 'cryptography'. He will arrange plaintext and numeric key as follows: c r y p t o g r a p h y He now shifts each plaintext alphabet by the number written below it to create ciphertext as shown below : c r y p t o g r a p h y e z n w x f i z p w l p Here, each plaintext character has been shifted by a different amount and that amount is determined by the key. The key must be less than or equal to the size of the message. For decryption, the receiver uses the same key and shifts received ciphertext in reverse order to obtain the plaintext. 9

10 e z n w x f i z p w l p c r y p t o g r a p h y The Vigenere code program: namespace Vigenere public partial class Form1 : Form public Form1() InitializeComponent(); public string Encryption(string plian) char[] key = textbox1.text.tochararray(); char[] temp = new char[plian.length]; int j = 0; // counter for key for (int i = 0; i < plian.length; i++) temp[i] = (char)(plian[i] +( key[j]-97)); if (temp[i] > 'z') temp[i] = (char)(temp[i] - 26); j++; if (j == key.length) j = 0; string cipher = new string(temp); return cipher; 10

11 public string Decryption(string cipher) char[] key = textbox1.text.tochararray(); char[] temp = new char[cipher.length]; int j = 0; for (int i = 0; i < cipher.length; i++) temp[i] = (char)(cipher[i] - (key[j]-97)); if (temp[i] < 'a') temp[i] = (char)(temp[i] + 26); j++; if (j == key.length) j = 0; string plian = new string(temp); return plian; private void button1_click(object sender, EventArgs e) string output = Encryption(textBox2.Text); textbox3.text = output; private void button2_click(object sender, EventArgs e) string output = Decryption(textBox3.Text); textbox4.text = output; Playfair Cipher (polygraphic) In this scheme, pairs of letters are encrypted, instead of single letters as in the case of simple substitution cipher. The playfair cipher starts with creating a key table. The key table is a 5 5 grid of letters that will act as the key for encrypting the plaintext. Each of the 25 letters must be unique and one letter of the alphabet is omitted from the table (as there are 25 spots and 26 letters in the alphabet). The algorithm first, split a plaintext message into pairs of two letters, and if the second letter of a pair is the same as the first letter, 'X' is inserted.. If there is an odd number of letters, 'X' is added to the last letter. 11

12 The sender and the receiver decide on a particular key, for example hello world as the key. The first characters (going left to right) in the table will be the phrase, with duplicate letters removed. The rest of the table will be filled with the remaining letters of the alphabet, in order. The key table would look like this: h e l o w r d a b C f g i k m n p q s t u v x y z The Playfair cipher uses a few simple rules relating to where the letters of each digraph are in relation to each other. The rules are: If both letters are in the same column, take the letter below each one (going back to the top if at the bottom). If both letters are in the same row, take the letter to the right of each one (going back to the left if at the farthest right). If neither of the preceding two rules are true, form a rectangle with the two letters and take the letters on the horizontal opposite corner of the rectangle. The Playfair code program: namespace playfair public partial class Form1 : Form public Form1() InitializeComponent(); 12

13 public char[,] KeyGenerator(string input) char[,] key = new char[5, 5]; int count = 0; char[] inputkey = input.tochararray(); char[] alphabet = "abcdefghiklmnopqrstuvwxyz".tochararray(); char[] tempkey = inputkey.union(alphabet).toarray(); for (int i = 0; i < 5; i++) for (int j = 0; j < 5; j++) key[i,j] = tempkey[count]; count++; return key; private int[] GetPosition(char[,] key, char ch) int[] position = new int[2]; for (int i = 0; i < 5; ++i) for (int j = 0; j < 5; ++j) if (key[i, j] == ch) position[0] = i; position[1] = j; return position; public string Encryption(string plian,char[,] key) int[] p1 = new int[2]; int[] p2 = new int[2]; //If the second letter of pair is the same as the first letter, 'x' is inserted. for (int i = 0; i < plian.length - 1; i++) if (plian[i] == plian[i + 1]) plian = plian.insert(i + 1, "x"); // If the length of the string is odd, x' is appended to make it an even length. if (plian.length % 2!= 0) plian += "x"; char[] temp = new char[plian.length]; for (int i = 0; i <= plian.length-2; i+=2) p1 = GetPosition(key,plian[i]); //get position of the first char p2 = GetPosition(key,plian[i + 1]);//get position of the second char 13

14 // check if the pair of char at the same row. if (p1[0] == p2[0]) temp[i] = key[p1[0], (p1[1]+1) % 5]; temp[i + 1] = key[p2[0], (p2[1] + 2) % 5]; // check if the pair of char at the same col. else if (p1[1] == p2[1]) temp[i] = key[ (p1[0] + 1) % 5, p1[1]]; temp[i + 1] = key[ (p2[0] + 2) % 5, p2[1]]; // check if the pair of char at rectangle shape. else temp[i] = key[p1[0],p2[1]]; temp[i + 1] = key[p2[0], p1[1]]; string cipher = new string(temp); return cipher; public string Decryption(string cipher, char[,] key) int[] p1 = new int[2]; int[] p2 = new int[2]; char[] temp = new char[cipher.length]; for (int i = 0; i <= cipher.length - 2; i += 2) p1= GetPosition(key,cipher[i]); //get position of the first char p2= GetPosition(key,cipher[i+1]); //get position of the second char // check if the pair of char at the same row. if (p1[0] == p2[0]) temp[i] = key[p1[0], ((p1[1] - 1)+5) % 5]; temp[i + 1] = key[p2[0], ((p2[1] - 2)+5) % 5]; // check if the pair of char at the same col. else if (p1[1] == p2[1]) temp[i] = key[((p1[0] - 1)+5) % 5, p1[1]]; temp[i + 1] = key[((p2[0] - 2)+5) % 5, p2[1]]; 14

15 // check if the pair of char at rectangle shape. else temp[i] = key[p1[0], p2[1]]; temp[i + 1] = key[p2[0], p1[1]]; string plian = new string(temp); return plian; private void button1_click(object sender, EventArgs e) char[,] key = KeyGenerator(textBox1.Text); string output = Encryption(textBox2.Text,key); textbox3.text = output; private void button2_click(object sender, EventArgs e) char[,] key = KeyGenerator(textBox1.Text); string output = Decryption(textBox3.Text, key); textbox4.text = output; 15

16 Linear Feedback Shift Register (LFSR) A linear feedback shift register is composed of a shift register R which contains a sequence of bits and a feedback function f which is the bit sum (Exclusive OR (XOR) of a subset of the entries of the shift register. The shift register contains n cells, labeled R 0, R 1,.....,R n 1 each holding one bit. Each time a bit is needed the LFSR performs step operations that: Entry in cell R n-1 is output. Entry in cell R i is passed to cell R i+1 (Shift the bits one position). The cell R 0 is updated with the value f(r) (Exclusive OR (XOR) of the bit shifted off and the bit at a given tap position in the register). An LFSR has three parameters that characterize the sequence of bits it produces: the number of bits N, the initial Seed (the sequence of bits that initializes the register), and the tap position. The figure below illustrates one step of an 11-bit LFSR with initial seed and tap position 8 and 10. Encryption and decryption applications The unusual sequence of values generated by an LFSR can be employed in the encryption and decryption of data. A stream of data bits can be encrypted by XOR them with the output from an LFSR. 16

17 The LFSR code program: namespace LFSR public partial class Form1 : Form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) public int [] LfsrGgenerator( int len, string seed) int[] lfsr = new int[seed.length]; int[] key = new int[len]; int tap1 = lfsr[4]; int tap2 = lfsr[2]; // lfsr initialization vector for (int i = 0; i < lfsr.length; i++) if (seed[i] == '1') lfsr[i] = 1; else lfsr[i] = 0; 17

18 for (int a = 0; a < len; a++) int[] temp = new int[seed.length]; temp[0] = tap1 ^ tap2; // shift lfsr for (int i = 0; i < lfsr.length - 1; i++) temp[i + 1] = lfsr[i]; key[a] = lfsr[lfsr.length - 1]; lfsr = temp; return key; public string Encryption(string plian, int [] key) int[] temp = new int[plian.length]; char[] cipher = new char[plian.length]; for (int i = 0; i < plian.length; i++) if (plian[i] == '1') temp[i] = 1; else temp[i] = 0; for (int i = 0; i < temp.length; i++) temp[i] = temp[i]^key[i]; for (int i = 0; i < temp.length; i++) if (temp[i] == 1) cipher[i] = '1'; else cipher[i] = '0'; return new string(cipher); public string Decryption(string cipher, int[] key) int[] temp = new int[cipher.length]; char[] plian = new char[cipher.length]; for (int i = 0; i < cipher.length; i++) if (cipher[i] == '1') temp[i] = 1; else temp[i] = 0; 18

19 for (int i = 0; i < temp.length; i++) temp[i] = temp[i] ^ key[i]; for (int i = 0; i < temp.length; i++) if (temp[i] == 1) plian[i] = '1'; else plian[i] = '0'; return new string(plian); private void button1_click(object sender, EventArgs e) int[] key = LfsrGgenerator(textBox2.Text.Length, textbox1.text); string output = Encryption(textBox2.Text, key); textbox3.text = output; private void button2_click(object sender, EventArgs e) int[] key = LfsrGgenerator(textBox2.Text.Length, textbox1.text); string output = Decryption(textBox3.Text, key); textbox4.text = output; 19

20 RSA Algorithm (Public-Key) The RSA scheme is a cipher in which the plaintext and ciphertext are integers between 0 and n - 1 for some n. Encryption and decryption are of the following form, for some plaintext block M and ciphertext block C. C = M e mod n M = C d mod n Both sender and receiver must know the value of n. The sender knows the value of e, and only the receiver knows the value of d. This is a public-key encryption algorithm with a public key of PU = e, n and a private key of PR = d, n. The algorithm of RSA: The example of RSA : 20

21 For this example, the keys were generated as follows: 1. Select two prime numbers, p = 17 and q = Calculate n = p*q = 17 * 11 = Calculate f (n) = (p - 1)(q - 1) = 16 * 10 = Select e such that e is relatively prime to f (n) = 160 and less than f(n); we choose e = Determine d such that (d*e) mod 160=1 and d < 160. The correct value is d = 23, because 23 * 7 = 161 mod 160=1. The resulting keys are public key PU = 7, 187 and private key PR = 23, 187. The example shows the use of these keys for a plaintext input of M = 88. For encryption: calculate C = 88 7 mod 187 that will be 894,432 mod 187 = 11 For decryption: calculate M = mod 187 that will be 79,720,245 mod 187 = 88 The RSA code program: namespace RSA public partial class Form1 : Form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) 21

22 public static int GCD(int p, int q) if (q == 0) return p; int r = p % q; return GCD(q, r); public static bool Prime(int no) for (int i = 2; i < no - 1; i++) if (no % i == 0) return false; return true; public static int PRKey (int fn) int e = 2; while (GCD(e,fn)!= 1) e++; return e; public static int PUKey(int fn) int e = PRKey(fn); int d = 1; while (((e * d) % fn!= 1)) d++; return d; 22

23 public double Encryption(int M, int p,int q) int n = p * q; if (int.parse(textbox3.text) >= n) MessageBox.Show("invalid plian number.please try anthor one "); int fn = (p - 1) * (q - 1); // calculate private key int e = PRKey(fn); double C= ( Math.Pow(M, e)) % n; return C; public double Decryption(int C, int p, int q) int n = p * q; int fn = (p - 1) * (q - 1); // calculate public key int d = PUKey(fn); double M = (Math.Pow(C, d)) % n; return M; private void button1_click(object sender, EventArgs e) int keyp = int.parse(textbox1.text); int keyq = int.parse(textbox2.text); if ((!Prime(keyp)!Prime(keyq)) (keyp==keyq)) MessageBox.Show("invalid cipher key. please try again "); double output = Encryption(int.Parse(textBox3.Text), keyp,keyq); textbox4.text = output.tostring(); private void button2_click(object sender, EventArgs e) int keyp = int.parse(textbox1.text); int keyq = int.parse(textbox2.text); double output = Decryption(int.Parse(textBox4.Text), keyp,k eyq); textbox5.text = output.tostring(); 23

Sankalchand Patel College of Engineering, Visnagar B.E. Semester V (CE/IT) INFORMATION SECURITY Practical List

Sankalchand Patel College of Engineering, Visnagar B.E. Semester V (CE/IT) INFORMATION SECURITY Practical List 1. IMPLEMENT CAESAR CIPHER WITH VARIABLE KEY It is an encryption technique in which each plaintext letter is to be replaced with one a fixed number of places (in following implementation, key) down the

More information

A Modified Playfair Encryption Using Fibonacci Numbers

A Modified Playfair Encryption Using Fibonacci Numbers A Modified Playfair Encryption Using Fibonacci Numbers Mohd Vasim Ahamad 1, Maria Masroor 2, Urooj Fatima 3 Aligarh Muslim University (India) ABSTRACT With the technology advancements and easy availability

More information

Traditional Symmetric-Key Ciphers. A Biswas, IT, BESU Shibpur

Traditional Symmetric-Key Ciphers. A Biswas, IT, BESU Shibpur Traditional Symmetric-Key Ciphers A Biswas, IT, BESU Shibpur General idea of symmetric-key cipher The original message from Alice to Bob is called plaintext; the message that is sent through the channel

More information

Chapter 3 Traditional Symmetric-Key Ciphers 3.1

Chapter 3 Traditional Symmetric-Key Ciphers 3.1 Chapter 3 Traditional Symmetric-Key Ciphers 3.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 3 Objectives To define the terms and the concepts of symmetric

More information

CRYPTOLOGY KEY MANAGEMENT CRYPTOGRAPHY CRYPTANALYSIS. Cryptanalytic. Brute-Force. Ciphertext-only Known-plaintext Chosen-plaintext Chosen-ciphertext

CRYPTOLOGY KEY MANAGEMENT CRYPTOGRAPHY CRYPTANALYSIS. Cryptanalytic. Brute-Force. Ciphertext-only Known-plaintext Chosen-plaintext Chosen-ciphertext CRYPTOLOGY CRYPTOGRAPHY KEY MANAGEMENT CRYPTANALYSIS Cryptanalytic Brute-Force Ciphertext-only Known-plaintext Chosen-plaintext Chosen-ciphertext 58 Types of Cryptographic Private key (Symmetric) Public

More information

2.3 SUBTITUTION CIPHERS.

2.3 SUBTITUTION CIPHERS. Lec 5 : Data Security Substitution Cipher Systems 1 2.3 SUBTITUTION CIPHERS. 2.3.1 SIMPLE SUBTTTUION CIPHERS: In simple substitution (or monoalphabetic) ciphers, each character of the plaintext is replaced

More information

Cryptosystems. Truong Tuan Anh CSE-HCMUT

Cryptosystems. Truong Tuan Anh CSE-HCMUT Cryptosystems Truong Tuan Anh CSE-HCMUT anhtt@hcmut.edu.vn 2 In This Lecture Cryptography Cryptosystem: Definition Simple Cryptosystem Shift cipher Substitution cipher Affine cipher Cryptanalysis Cryptography

More information

L2. An Introduction to Classical Cryptosystems. Rocky K. C. Chang, 23 January 2015

L2. An Introduction to Classical Cryptosystems. Rocky K. C. Chang, 23 January 2015 L2. An Introduction to Classical Cryptosystems Rocky K. C. Chang, 23 January 2015 This and the next set of slides 2 Outline Components of a cryptosystem Some modular arithmetic Some classical ciphers Shift

More information

Introduction to cryptography

Introduction to cryptography Chapter 1 Introduction to cryptography 1.1 From caesar cipher to public key cryptography Cryptography: is the practical means for protecting information transmitted through public communications networks,

More information

File and Disk Encryption

File and Disk Encryption File and Disk Encryption Alex Applegate 1 Overview Common Weak Encryption Stronger Methods Threat From File Encryption Full Disk Encryption (FDE) Threat From FDE 2 Common Types of Weak File Encryption

More information

Classical Encryption Techniques. CSS 322 Security and Cryptography

Classical Encryption Techniques. CSS 322 Security and Cryptography Classical Encryption Techniques CSS 322 Security and Cryptography Contents Terminology and Models Requirements, Services and Attacks Substitution Ciphers Caesar, Monoalphabetic, Polyalphabetic, One-time

More information

Cryptography Symmetric Cryptography Asymmetric Cryptography Internet Communication. Telling Secrets. Secret Writing Through the Ages.

Cryptography Symmetric Cryptography Asymmetric Cryptography Internet Communication. Telling Secrets. Secret Writing Through the Ages. Telling Secrets Secret Writing Through the Ages William Turner Department of Mathematics & Computer Science Wabash College Crawfordsville, IN 47933 Tuesday 4 February 2014 W. J. Turner Telling Secrets

More information

Cryptography Part II Introduction to Computer Security. Chapter 8

Cryptography Part II Introduction to Computer Security. Chapter 8 Cryptography Part II Introduction to Computer Security Chapter 8 Vigènere Cipher Like Cæsar cipher, but use phrase Example Message: THE BOY HAS THE BALL Key: VIG Encipher using Cæsar cipher for each letter:

More information

Fall 2017 CIS 3362 Final Exam. Last Name: First Name: 1) (10 pts) Decrypt the following ciphertext that was encrypted using the shift cipher:

Fall 2017 CIS 3362 Final Exam. Last Name: First Name: 1) (10 pts) Decrypt the following ciphertext that was encrypted using the shift cipher: Fall 2017 CIS 3362 Final Exam Last Name: First Name: 1) (10 pts) Decrypt the following ciphertext that was encrypted using the shift cipher: mubsecujejxuvydqbunqc 2) (10 pts) Consider an affine cipher

More information

Module 13 Network Security. Version 1 ECE, IIT Kharagpur

Module 13 Network Security. Version 1 ECE, IIT Kharagpur Module 13 Network Security Lesson 40 Network Security 13.1.1 INTRODUCTION Network Security assumes a great importance in the current age. In this chapter we shall look at some of the security measures

More information

10/3/2017. Cryptography and Network Security. Sixth Edition by William Stallings

10/3/2017. Cryptography and Network Security. Sixth Edition by William Stallings Cryptography and Network Security Sixth Edition by William Stallings 1 Chapter 2 Classical Encryption Techniques "I am fairly familiar with all the forms of secret writings, and am myself the author of

More information

Cryptography and Network Security 2. Symmetric Ciphers. Lectured by Nguyễn Đức Thái

Cryptography and Network Security 2. Symmetric Ciphers. Lectured by Nguyễn Đức Thái Cryptography and Network Security 2. Symmetric Ciphers Lectured by Nguyễn Đức Thái Outline Symmetric Encryption Substitution Techniques Transposition Techniques Steganography 2 Symmetric Encryption There

More information

CSEC 507: APPLIED CRYPTOLOGY Historical Introduction to Cryptology

CSEC 507: APPLIED CRYPTOLOGY Historical Introduction to Cryptology CSEC 507: APPLIED CRYPTOLOGY Middle East Technical University Ankara, Turkey Last Modified: December 9, 2015 Created: August 5, 2015 What is Cryptology, Cryptography, and Cryptanalysis? (A Short) Definition

More information

Cryptographic Methods for Deciphering/Identifying Ciphers in MATLAB

Cryptographic Methods for Deciphering/Identifying Ciphers in MATLAB Cryptographic Methods for Deciphering/Identifying Ciphers in MATLAB 1 Christian Pinto, BTech, 2 Harrison Carranza, MIS 1 The New York City College of Technology CUNY, USA, christian.pinto@mail.citytech.cuny.edu

More information

Cryptographic Techniques. Information Technologies for IPR Protections 2003/11/12 R107, CSIE Building

Cryptographic Techniques. Information Technologies for IPR Protections 2003/11/12 R107, CSIE Building Cryptographic Techniques Information Technologies for IPR Protections 2003/11/12 R107, CSIE Building Outline Data security Cryptography basics Cryptographic systems DES RSA C. H. HUANG IN CML 2 Cryptography

More information

CHAPTER 17 INFORMATION SCIENCE. Binary and decimal numbers a short review: For decimal numbers we have 10 digits available (0, 1, 2, 3, 9) 4731 =

CHAPTER 17 INFORMATION SCIENCE. Binary and decimal numbers a short review: For decimal numbers we have 10 digits available (0, 1, 2, 3, 9) 4731 = Math 167 Ch 17 Review 1 (c) Janice Epstein, 2013 CHAPTER 17 INFORMATION SCIENCE Binary and decimal numbers a short review: For decimal numbers we have 10 digits available (0, 1, 2, 3, 9) 4731 = Math 167

More information

Modern Cryptography Activity 1: Caesar Ciphers

Modern Cryptography Activity 1: Caesar Ciphers Activity 1: Caesar Ciphers Preliminaries: The Caesar cipher is one of the oldest codes in existence. It is an example of a substitution cipher, where each letter in the alphabet is replaced by another

More information

ECE 646 Fall 2008 Multiple-choice test

ECE 646 Fall 2008 Multiple-choice test ECE 646 Fall 2008 Multiple-choice test 1. (1 pt) Arrange the following ciphers in the order of the increasing measure of roughness for the ciphertext obtained by encrypting 1000-letter message with a given

More information

Chapter 2: Classical Encryption Techniques

Chapter 2: Classical Encryption Techniques CPE 542: CRYPTOGRAPHY & NETWORK SECURITY Chapter 2: Classical Encryption Techniques Dr. Lo ai Tawalbeh Computer Engineering Department Jordan University of Science and Technology Jordan Introduction Basic

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security CPSC 467b: Cryptography and Computer Security Michael J. Fischer Lecture 3 January 13, 2012 CPSC 467b, Lecture 3 1/36 Perfect secrecy Caesar cipher Loss of perfection Classical ciphers One-time pad Affine

More information

2

2 1 2 3 4 5 Basic Terminology plaintext - the original message ciphertext - the coded message cipher - algorithm for transforming plaintext to ciphertext key - info used in cipher known only to sender/receiver

More information

Classical Cryptography

Classical Cryptography Classical Cryptography Chester Rebeiro IIT Madras STINSON : chapter 1 Ciphers Symmetric Algorithms Encryption and Decryption use the same key i.e. K E = K D Examples: Block Ciphers : DES, AES, PRESENT,

More information

Hardware Design and Software Simulation for Four Classical Cryptosystems

Hardware Design and Software Simulation for Four Classical Cryptosystems Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 21 (2013 ) 500 505 The 4 th International Conference on Emerging Ubiquitous Systems and Pervasive Networks (EUSPN-2013)

More information

Encryption Details COMP620

Encryption Details COMP620 Encryption Details COMP620 Encryption is a powerful defensive weapon for free people. It offers a technical guarantee of privacy, regardless of who is running the government It s hard to think of a more

More information

Cryptography and Network Security

Cryptography and Network Security Cryptography and Network Security CRYPTOGRAPHY AND NETWORK SECURITY PRAKASH C. GUPTA Former Head Department of Information Technology Maharashtra Institute of Technology Pune Delhi-110092 2015 CRYPTOGRAPHY

More information

CSCE 715: Network Systems Security

CSCE 715: Network Systems Security CSCE 715: Network Systems Security Chin-Tser Huang huangct@cse.sc.edu University of South Carolina 01/20/2015 2 Cryptography Study of schemes used for encryption Can be characterized by type of encryption

More information

Cryptography and Network Security. Lecture 02 Symmetric Encryption. Ediz ŞAYKOL

Cryptography and Network Security. Lecture 02 Symmetric Encryption. Ediz ŞAYKOL Cryptography and Network Security Lecture 02 Symmetric Encryption Ediz ŞAYKOL Symmetric Encryption or conventional / private-key / single-key sender and recipient share a common key all classical encryption

More information

Cryptography. What is Cryptography?

Cryptography. What is Cryptography? Cryptography What is Cryptography? Cryptography is the discipline of encoding and decoding messages. It has been employed in various forms for thousands of years, and, whether or not you know it, is used

More information

Public Key Cryptography

Public Key Cryptography graphy CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 29 December 2011 CSS322Y11S2L07, Steve/Courses/2011/S2/CSS322/Lectures/rsa.tex,

More information

Cryptography. Submitted to:- Ms Poonam Sharma Faculty, ABS,Manesar. Submitted by:- Hardeep Gaurav Jain

Cryptography. Submitted to:- Ms Poonam Sharma Faculty, ABS,Manesar. Submitted by:- Hardeep Gaurav Jain Cryptography Submitted to:- Ms Poonam Sharma Faculty, ABS,Manesar Submitted by:- Hardeep Gaurav Jain Cryptography Cryptography, a word with Greek origins, means "secret writing." However, we use the term

More information

Classical Encryption Techniques

Classical Encryption Techniques Encryption CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 29 December 2011 CSS322Y11S2L02, Steve/Courses/2011/S2/CSS322/Lectures/classical.tex,

More information

Conventional Encryption Principles Conventional Encryption Algorithms Cipher Block Modes of Operation Location of Encryption Devices Key Distribution

Conventional Encryption Principles Conventional Encryption Algorithms Cipher Block Modes of Operation Location of Encryption Devices Key Distribution Ola Flygt Växjö University, Sweden http://w3.msi.vxu.se/users/ofl/ Ola.Flygt@vxu.se +46 470 70 86 49 1 Conventional Encryption Principles Conventional Encryption Algorithms Cipher Block Modes of Operation

More information

Math236 Discrete Maths with Applications

Math236 Discrete Maths with Applications Math236 Discrete Maths with Applications P. Ittmann UKZN, Pietermaritzburg Semester 1, 2012 Ittmann (UKZN PMB) Math236 2012 1 / 1 Block Ciphers A block cipher is an encryption scheme in which the plaintext

More information

Substitution Ciphers, continued. 3. Polyalphabetic: Use multiple maps from the plaintext alphabet to the ciphertext alphabet.

Substitution Ciphers, continued. 3. Polyalphabetic: Use multiple maps from the plaintext alphabet to the ciphertext alphabet. Substitution Ciphers, continued 3. Polyalphabetic: Use multiple maps from the plaintext alphabet to the ciphertext alphabet. Non-periodic case: Running key substitution ciphers use a known text (in a standard

More information

Classic Cryptography: From Caesar to the Hot Line

Classic Cryptography: From Caesar to the Hot Line Classic Cryptography: From Caesar to the Hot Line Wenyuan Xu Department of Computer Science and Engineering University of South Carolina Overview of the Lecture Overview of Cryptography and Security Classical

More information

UNIT - II Traditional Symmetric-Key Ciphers. Cryptography & Network Security - Behrouz A. Forouzan

UNIT - II Traditional Symmetric-Key Ciphers. Cryptography & Network Security - Behrouz A. Forouzan UNIT - II Traditional Symmetric-Key Ciphers 1 Objectives To define the terms and the concepts of symmetric key ciphers To emphasize the two categories of traditional ciphers: substitution and transposition

More information

For decimal numbers we have 10 digits available (0, 1, 2, 3, 9) 10,

For decimal numbers we have 10 digits available (0, 1, 2, 3, 9) 10, Math 167 Ch 17 WIR 1 (c) Janice Epstein and Tamara Carter, 2015 CHAPTER 17 INFORMATION SCIENCE Binary and decimal numbers a short review: For decimal numbers we have 10 digits available (0, 1, 2, 3, 9)

More information

Module 1: Classical Symmetric Ciphers

Module 1: Classical Symmetric Ciphers Module 1: Classical Symmetric Ciphers Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University E-mail: natarajan.meghanathan@jsums.edu Introduction to Cryptography Terms and Concepts

More information

Cryptography BITS F463 S.K. Sahay

Cryptography BITS F463 S.K. Sahay Cryptography BITS F463 S.K. Sahay BITS-Pilani, K.K. Birla Goa Campus, Goa S.K. Sahay Cryptography 1 Terminology Cryptography: science of secret writing with the goal of hiding the meaning of a message.

More information

Java Applets for a Cryptology Course. Ulrich A. Hoensch Rocky Mountain College Billings, Montana

Java Applets for a Cryptology Course. Ulrich A. Hoensch Rocky Mountain College Billings, Montana Java Applets for a Cryptology Course Ulrich A. Hoensch Rocky Mountain College Billings, Montana www.rocky.edu/~hoenschu San Antonio, Texas January 2006 1 Plaintext + Can be any keyboard-entered or cut-and-paste

More information

ENGR/CS 101 CS Session Lecture 5

ENGR/CS 101 CS Session Lecture 5 ENGR/CS 101 CS Session Lecture 5 No programming today Submission system will be demonstrated at the end of class. Lecture 5 ENGR/CS 101 Computer Science Session 1 Outline Problem: How to send a secret

More information

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 11 Basic Cryptography

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 11 Basic Cryptography Security+ Guide to Network Security Fundamentals, Third Edition Chapter 11 Basic Cryptography Objectives Define cryptography Describe hashing List the basic symmetric cryptographic algorithms 2 Objectives

More information

A nice outline of the RSA algorithm and implementation can be found at:

A nice outline of the RSA algorithm and implementation can be found at: Cryptography Lab: RSA Encryption and Decryption Lab Objectives: After this lab, the students should be able to Explain the simple concepts of encryption and decryption to protect information in transmission.

More information

LECTURE NOTES ON PUBLIC- KEY CRYPTOGRAPHY. (One-Way Functions and ElGamal System)

LECTURE NOTES ON PUBLIC- KEY CRYPTOGRAPHY. (One-Way Functions and ElGamal System) Department of Software The University of Babylon LECTURE NOTES ON PUBLIC- KEY CRYPTOGRAPHY (One-Way Functions and ElGamal System) By College of Information Technology, University of Babylon, Iraq Samaher@itnet.uobabylon.edu.iq

More information

JNTU World JNTU World. JNTU World. Cryptography and Network Security. Downloaded From JNTU World (http://(http:// )(http:// )JNTU World

JNTU World JNTU World. JNTU World. Cryptography and Network Security. Downloaded From JNTU World (http://(http:// )(http:// )JNTU World Cryptography and Network Security )(http:// ) Downloaded From (http://(http:// )(http:// ) Downloaded From (http://(http:// Introduction The art of war teaches us not on the likelihood of the enemy s not

More information

UNIT 2 CLASSICAL ENCRYPTION TECHNIQUES

UNIT 2 CLASSICAL ENCRYPTION TECHNIQUES CRYPTOGRAPHY AND NETWORK SECURITY UNIT 2 UNIT 2 CLASSICAL ENCRYPTION TECHNIQUES SYMMETRIC ENCRYPTION SOME BASIC TERMINOLOGY or conventional / private-key / single-key sender and recipient share a common

More information

Cryptography and Network Security

Cryptography and Network Security Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown Basic Terminology plaintext - the original message ciphertext - the coded message cipher - algorithm

More information

Channel Coding and Cryptography Part II: Introduction to Cryptography

Channel Coding and Cryptography Part II: Introduction to Cryptography Channel Coding and Cryptography Part II: Introduction to Cryptography Prof. Dr.-Ing. habil. Andreas Ahrens Communications Signal Processing Group, University of Technology, Business and Design Email: andreas.ahrens@hs-wismar.de

More information

Recap. Definition (Encryption: Caesar Cipher)

Recap. Definition (Encryption: Caesar Cipher) Recap Definition (Encryption: Caesar Cipher) + 3 = mod 26 Recap Definition (Encryption: Caesar Cipher) + 3 = mod 26 Definition (Encryption: Shift Cipher) + d = mod 26, d anumber Recap Definition (Encryption:

More information

CS61A Lecture #39: Cryptography

CS61A Lecture #39: Cryptography Announcements: CS61A Lecture #39: Cryptography Homework 13 is up: due Monday. Homework 14 will be judging the contest. HKN surveys on Friday: 7.5 bonus points for filling out their survey on Friday (yes,

More information

Introduction to Cryptology. Lecture 2

Introduction to Cryptology. Lecture 2 Introduction to Cryptology Lecture 2 Announcements Access to Canvas? 2 nd Edition vs. 1 st Edition HW1 due on Tuesday, 2/7 Discrete Math Readings/Quizzes on Canvas due on Tuesday, 2/14 Agenda Last time:

More information

Polyalphabetic cyphers

Polyalphabetic cyphers Unit 7 January 26, 2011 1 Polyalphabetic cyphers Let E 1, E 2,..., E n be distinct substitution cyphers. To encrypt a plaintext message P = p 1 p 2 p 3... apply the E i (i = 1,..., n) cyclically to the

More information

Cryptography Symmetric Encryption Class 2

Cryptography Symmetric Encryption Class 2 Cryptography Symmetric Encryption Class 2 Stallings: Ch 3 & 6 Stallings: Ch 4 CEN-5079: 18.January.2018 1 Symmetric Cryptosystems Encryption Key Decryption Key Plaintext Plaintext Encryption Algorithm

More information

MEP: Codes and Ciphers, UNIT 16 Modern Encryption

MEP: Codes and Ciphers, UNIT 16 Modern Encryption 16 Modern ncryption NON n the mid-wentieth entury encryption had to be done using mechanical devices such as the nigma machine. Now we have powerful computers with software which allows us to encrypt quickly.

More information

Security: Cryptography

Security: Cryptography Security: Cryptography Computer Science and Engineering College of Engineering The Ohio State University Lecture 38 Some High-Level Goals Confidentiality Non-authorized users have limited access Integrity

More information

2/7/2013. CS 472 Network and System Security. Mohammad Almalag Lecture 2 January 22, Introduction To Cryptography

2/7/2013. CS 472 Network and System Security. Mohammad Almalag Lecture 2 January 22, Introduction To Cryptography CS 472 Network and System Security Mohammad Almalag malmalag@cs.odu.edu Lecture 2 January 22, 2013 Introduction To Cryptography 1 Definitions Cryptography = the science (art) of encryption Cryptanalysis

More information

A Proposed Method for Cryptography using Random Key and Rotation of Text

A Proposed Method for Cryptography using Random Key and Rotation of Text Volume 6, No.2, March - April 2017 Mousumi Ghanti et al., International Journal of Advanced Trends in Computer Science and Engineering, 6(2), March - April 2017, 18-22 Available Online at http://www.warse.org/ijatcse/static/pdf/file/ijatcse03622017.pdf

More information

Cryptography and secure channel. May 17, Networks and Security. Thibault Debatty. Outline. Cryptography. Public-key encryption

Cryptography and secure channel. May 17, Networks and Security. Thibault Debatty. Outline. Cryptography. Public-key encryption and secure channel May 17, 2018 1 / 45 1 2 3 4 5 2 / 45 Introduction Simplified model for and decryption key decryption key plain text X KE algorithm KD Y = E(KE, X ) decryption ciphertext algorithm X

More information

Cryptography Worksheet

Cryptography Worksheet Cryptography Worksheet People have always been interested in writing secret messages. In ancient times, people had to write secret messages to keep messengers and interceptors from reading their private

More information

CLASSICAL CRYPTOGRAPHY. A Brief Reference for Self Build Crypto assignment

CLASSICAL CRYPTOGRAPHY. A Brief Reference for Self Build Crypto assignment CLASSICAL CRYPTOGRAPHY A Brief Reference for Self Build Crypto assignment CLASSICAL CRYPTOGRAPHY Cryptography is the study of secret (crypto-) writing (-graphy) Concerned with developing algorithms which

More information

CIS 3362 Final Exam 12/4/2013. Name:

CIS 3362 Final Exam 12/4/2013. Name: CIS 3362 Final Exam 12/4/2013 Name: 1) (10 pts) Since the use of letter frequencies was known to aid in breaking substitution ciphers, code makers in the Renaissance added "twists" to the standard substitution

More information

Introduction to Cryptography CS 136 Computer Security Peter Reiher October 9, 2014

Introduction to Cryptography CS 136 Computer Security Peter Reiher October 9, 2014 Introduction to Cryptography CS 136 Computer Security Peter Reiher October 9, 2014 Page 1 Outline What is data encryption? Cryptanalysis Basic encryption methods Substitution ciphers Permutation ciphers

More information

EEC-484/584 Computer Networks

EEC-484/584 Computer Networks EEC-484/584 Computer Networks Lecture 23 wenbing@ieee.org (Lecture notes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline 2 Review of last lecture Introduction to

More information

Overview of Conventional Encryption Techniques

Overview of Conventional Encryption Techniques Overview of Conventional Encryption Techniques Shadab Pasha CDGI,Indore shadabpasha@gmail.com Abstract: Symmetric Encryption or Single-key Encryption or Conventional Encryption was only the type of encryption

More information

PART I Symmetric Ciphers

PART I Symmetric Ciphers PART I Symmetric Ciphers CHAPTER 2 Classical Encryption Techniques Cryptography, Cryptanalysis Caesar cipher, Monoalphabetic ciphers Playfair cipher, Hill cipher Polyalphabetic ciphers One-time Pad 2.3

More information

The Caesar Cipher Informatics 1 Functional Programming: Tutorial 3

The Caesar Cipher Informatics 1 Functional Programming: Tutorial 3 The Caesar Cipher Informatics 1 Functional Programming: Tutorial 3 Heijltjes, Wadler Due: The tutorial of week 5 (23/24 Oct.) Reading assignment: Chapters 8 and 9 (pp. 135-166) Please attempt the entire

More information

Introduction to Network Security Missouri S&T University CPE 5420 Cryptology Overview

Introduction to Network Security Missouri S&T University CPE 5420 Cryptology Overview Introduction to Network Security Missouri S&T University CPE 5420 Cryptology Overview Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science

More information

Secret Key Cryptography

Secret Key Cryptography Secret Key Cryptography General Block Encryption: The general way of encrypting a 64-bit block is to take each of the: 2 64 input values and map it to a unique one of the 2 64 output values. This would

More information

EE 595 (PMP) Introduction to Security and Privacy Homework 1 Solutions

EE 595 (PMP) Introduction to Security and Privacy Homework 1 Solutions EE 595 (PMP) Introduction to Security and Privacy Homework 1 Solutions Assigned: Tuesday, January 17, 2017, Due: Sunday, January 28, 2017 Instructor: Tamara Bonaci Department of Electrical Engineering

More information

Assignment 9 / Cryptography

Assignment 9 / Cryptography Assignment 9 / Cryptography Michael Hauser March 2002 Tutor: Mr. Schmidt Course: M.Sc Distributed Systems Engineering Lecturer: Mr. Owens CONTENTS Contents 1 Introduction 3 2 Simple Ciphers 3 2.1 Vignère

More information

Lecture 6: Overview of Public-Key Cryptography and RSA

Lecture 6: Overview of Public-Key Cryptography and RSA 1 Lecture 6: Overview of Public-Key Cryptography and RSA Yuan Xue In this lecture, we give an overview to the public-key cryptography, which is also referred to as asymmetric cryptography. We will first

More information

Nature Sunday Academy Lesson Plan

Nature Sunday Academy Lesson Plan Title Computer Security Description: Nature Sunday Academy Lesson Plan 2013-14 The objective of the lesson plan aims to help students to understand the general goals of security, the essential concerns

More information

Encryption Algorithms

Encryption Algorithms Encryption Algorithms 1. Transposition Ciphers 2. Substitution Ciphers 3. Product Ciphers 4. Exponentiation Ciphers 5. Cryptography based on Discrete Logarithms 6. Advanced Encryption Standard (AES) 1.

More information

ECE 646 Fall 2009 Final Exam December 15, Multiple-choice test

ECE 646 Fall 2009 Final Exam December 15, Multiple-choice test ECE 646 Fall 2009 Final Exam December 15, 2009 Multiple-choice test 1. (1 pt) Parallel processing can be used to speed up the following cryptographic transformations (please note that multiple answers

More information

Chapter 9. Public Key Cryptography, RSA And Key Management

Chapter 9. Public Key Cryptography, RSA And Key Management Chapter 9 Public Key Cryptography, RSA And Key Management RSA by Rivest, Shamir & Adleman of MIT in 1977 The most widely used public-key cryptosystem is RSA. The difficulty of attacking RSA is based on

More information

NUMB3RS Activity: Creating Codes. Episode: Backscatter

NUMB3RS Activity: Creating Codes. Episode: Backscatter Teacher Page 1 NUMB3RS Activity: Creating Codes Topic: Codes Grade Level: 10-12 Objective: Explore several coding methods Time: 30+ minutes Materials: TI-83/84 Plus calculator Introduction While lecturing

More information

Chapter 3. Cryptography. Information Security/System Security p. 33/617

Chapter 3. Cryptography. Information Security/System Security p. 33/617 Chapter 3 Cryptography Information Security/System Security p. 33/617 Introduction A very important tool for security is cryptography Cryptography is the (art and) science of keeping information secure

More information

Cryptology Part 1. Terminology. Basic Approaches to Cryptography. Basic Approaches to Cryptography: (1) Transposition (continued)

Cryptology Part 1. Terminology. Basic Approaches to Cryptography. Basic Approaches to Cryptography: (1) Transposition (continued) Cryptology Part 1 Uses of Cryptology 1. Transmission of a message with assurance that the contents will be known only by sender and recipient a) Steganography: existence of the message is hidden b) Cryptography:

More information

OVE EDFORS ELECTRICAL AND INFORMATION TECHNOLOGY

OVE EDFORS ELECTRICAL AND INFORMATION TECHNOLOGY 1 Information Transmission Chapter 6 Cryptology OVE EDFORS ELECTRICAL AND INFORMATION TECHNOLOGY Learning outcomes After this lecture the student should undertand what cryptology is and how it is used,

More information

Introduction to Cryptography

Introduction to Cryptography T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A Introduction to Cryptography EECE 412 Session 3 Copyright 2004 Konstantin Beznosov Session Outline Historical background Caesar and Vigenère

More information

Block Ciphers and Data Encryption Standard. CSS Security and Cryptography

Block Ciphers and Data Encryption Standard. CSS Security and Cryptography Block Ciphers and Data Encryption Standard CSS 322 - Security and Cryptography Contents Block Cipher Principles Feistel Structure for Block Ciphers DES Simplified DES Real DES DES Design Issues CSS 322

More information

T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A. Introduction to Cryptography

T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A. Introduction to Cryptography T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A Introduction to Cryptography 1 Module Outline Historical background Classic ciphers One-time pad The Random Oracle model Random functions: Hash

More information

Cryptography. Historical Encoding. Encryption Media. Intro to Encryption 8/24/2010. COMP620 Information Privacy & Security 1

Cryptography. Historical Encoding. Encryption Media. Intro to Encryption 8/24/2010. COMP620 Information Privacy & Security 1 Cryptography Encryption COMP620 Information Privacy & Security Cryptography in general represents the process of encrypting a plain text file into an unreadable cipher so that it can be stored and decrypted

More information

Chapter 17: Information Science Lesson Plan

Chapter 17: Information Science Lesson Plan Lesson Plan For All Practical Purposes Binary Codes Mathematical Literacy in Today s World, 7th ed. Encoding with Parity Check Sums Cryptography Web Searches and Mathematical Logic 2006, W.H. Freeman and

More information

Algebraic Solutions of Caesar and Multiplicative Ciphers

Algebraic Solutions of Caesar and Multiplicative Ciphers Spring 2015 Chris Christensen MAT/CSC 483 Algebraic Solutions of Caesar and Multiplicative Ciphers The Caesar cipher and the multiplicative cipher each involve one algebraic operation addition modulo 26

More information

Blum-Blum-Shub cryptosystem and generator. Blum-Blum-Shub cryptosystem and generator

Blum-Blum-Shub cryptosystem and generator. Blum-Blum-Shub cryptosystem and generator BBS encryption scheme A prime p is called a Blum prime if p mod 4 = 3. ALGORITHM Alice, the recipient, makes her BBS key as follows: BBS encryption scheme A prime p is called a Blum prime if p mod 4 =

More information

Information Systems Security

Information Systems Security Information Systems Security Dr. Ayman Abdel-Hamid College of Computing and Information Technology Arab Academy for Science & Technology and Maritime Transport Chapter 2 Classical Encryption Techniques

More information

Security Analysis and Modification of Classical Encryption Scheme

Security Analysis and Modification of Classical Encryption Scheme Indian Journal of Science and Technology, Vol 8(S8), 542 548, April 205 ISSN (Print) : 0974-6846 ISSN (Online) : 0974-5645 DOI: 0.7485/ijst/205/v8iS8/7506 Security Analysis and Modification of Classical

More information

CS 556 Spring 2017 Project 3 Study of Cryptographic Techniques

CS 556 Spring 2017 Project 3 Study of Cryptographic Techniques CS 556 Spring 2017 Project 3 Study of Cryptographic Techniques Project Due Dates: Part A: Due before class on CANVAS by Thursday, March 23, 2017 Part B: Due before class on CANVAS by Thursday April 6,

More information

CSC 580 Cryptography and Computer Security

CSC 580 Cryptography and Computer Security CSC 580 Cryptography and Computer Security Encryption Concepts, Classical Crypto, and Binary Operations January 30, 2018 Overview Today: Cryptography concepts and classical crypto Textbook sections 3.1,

More information

Quantum Encryption Keys

Quantum Encryption Keys Quantum Technology PROGRAMME ACTIVITY SHEETS Quantum Encryption Keys SHARING DECRYPTION KEYS AND DECODING MESSAGES Every time you send an email or you pay for something online, or with your debit card,

More information

Lecture IV : Cryptography, Fundamentals

Lecture IV : Cryptography, Fundamentals Lecture IV : Cryptography, Fundamentals Internet Security: Principles & Practices John K. Zao, PhD (Harvard) SMIEEE Computer Science Department, National Chiao Tung University Spring 2012 Basic Principles

More information

CRYPTOGRAPHY & DIGITAL SIGNATURE

CRYPTOGRAPHY & DIGITAL SIGNATURE UNIT V CRYPTOGRAPHY & DIGITAL SIGNATURE What happens in real life? We have universal electronic connectivity via networks of our computers so allowing viruses and hackers to do eavesdropping. So both the

More information

Keywords: Playfair, Matrix, XOR operation

Keywords: Playfair, Matrix, XOR operation Modified Playfair Cipher for Encrypting Images Faisal Mohammed Abdalla 1, Khadiga Mohammed Adam Babiker 2 1 Collage of computer science and information technology, Karary University, Omdurman, Sudan 2

More information

CSCI 454/554 Computer and Network Security. Topic 2. Introduction to Cryptography

CSCI 454/554 Computer and Network Security. Topic 2. Introduction to Cryptography CSCI 454/554 Computer and Network Security Topic 2. Introduction to Cryptography Outline Basic Crypto Concepts and Definitions Some Early (Breakable) Cryptosystems Key Issues 2 Basic Concepts and Definitions

More information