Intro to Analysis of Algorithm
Intro to Analysis of Algorithm CSCI 350
Popular in Course
Popular in ComputerScienence
verified elite notetaker
This 10 page Class Notes was uploaded by Laurianne Mante on Saturday October 3, 2015. The Class Notes belongs to CSCI 350 at Bucknell University taught by Staff in Fall. Since its upload, it has received 24 views. For similar materials see /class/218091/csci-350-bucknell-university in ComputerScienence at Bucknell University.
Reviews for Intro to Analysis of Algorithm
Report this Material
What is Karma?
Karma is the currency of StudySoup.
Date Created: 10/03/15
CSC1350 Spring 2006 Slide Set 12 PublicKey Cryptography Background Why Encrypt 0 Communication model Alice and Bob send messages across a channel Problem Eavesdroppers Codes versus Cyphers A code hides information by replacing each word of the text with with a character or sequence of characters The process of replacing text with code words is encoding A cipher hides information by replacing each character by another A key provides the speci c information needed to use a general cipher rule for encipherin g We will focus on ciphers Encryption Encryption is the process of converting text into enciphered or encoded form The process of converting encrypted text back to the original plain text is decryption The encryptiondecryption process depends on a secret The secret may be the key used in the encryption process but could also include the details of the encryption process Note that the secret is not the transmitted text The Computational Perspective Mathematically encryption is done via an invertible function e and decryption is done via its inverse d e39l We assume that we have programs E and D that compute e and 0 respectively 0 Given a message M the encrypted version is EM We can decrypt this using DEM1 Elam1 M Desired Encryption Properties Often E and D take the secret as an argument though it could also be built into the computations What computational properties do we want E and D to have E and D should be easy to compute if you know the secret D should be hard to compute if you don t know the secret Examples Using Ciphers 0 We can write encryption functions for the following ciphers shift characters a fixed amount throught the alphabet cyclical shift apply a sequence of maps Enigma use a randomized map onetime pad XOR a random byte with each character 0 How good are these approaches Attacks Consider the following ways to attack the ciphers on the previous page brute force try all single character shifts statistical analysis use letter and word frequencies plain text attack compare known plain text with encrypted version of that text Onetime pad holds up against these attacks note that we need real randomness not C rand functionl But coordination is an issue Other Attacks 0 Spoo ng issue authentication Denial of service 0 Message modi cation Problems with Shared Secrets 0 Key transmission 0 Key security Dealing with multiple parties