Stream Ciphers) Ppfdrof

Total Page:16

File Type:pdf, Size:1020Kb

Stream Ciphers) Ppfdrof CS-630: Cyyyber and Network Security Lecture # 2: Introduction to Cryptography and Symmetric Ciphers (Stream Ciphers) PPfDrof. Dr. SSfiufian HHdameed Department of Computer Science FAST-NUCES FAST-NUCES Cryptog rap hy FAST-NUCES Examples FAST-NUCES Cryptosystem FAST-NUCES Attacks against Cryptosystems 1.))p Cipher text-only: Attacker ppgypossesses a string y of the cipher text 2. ) Known plaintext: Attacker possesses a string x of the plaintext and the corresponding cipher text y. The problem now is to find out the key which produces y from x 3.) Chosen plaintext: Attacker has access to the encryption machinery. Hence he can chose a plaintext string x and construct the corre spondi ng ci phe r te xt st ri ng y. 4.))p Chosen cipher text: Attacker has access to the decryption machinery. Hence, he can chose a cipher text string y and construct the corresponding plaintext string x. FAST-NUCES Security of Keys FAST-NUCES Cryptography is everywhere Secure communication: y web traffic: HTTPS y wireless traffic: 802.11i WPA2 (and WEP), GSM, Bluetooth EtiEncrypting files on dis k: y EFS (Encrypting File System) y TrueCrypt (open-source disk encryption software) Content protection y DVD --- Content Scramble System (CSS) is a Digital Rights Managg()ement (DRM) and encryp ypytion system em pyployed on almost all commercially produced DVD-Video y Easy to break y Blu-Ray --- Advance Access Content System (AACS) User authentication … and much much more FAST-NUCES Things to remember Cryptography is: y A tremendous tool y The basis for many security mechanisms Cryptography is not: y The solution to all security problems y Software bugs y Social engineering attacks y Reliable unless implemented and used properly y Wired Equivalent Privacy (WEP -- good example on how not to use cryptography) y SthihldttitSomething you should try to invent yourself • many examples of broken ad-hoc designs •Proppyp,riety ciphers, once re-enggyineered are easily broken FAST-NUCES History David Kahn, “The code breakers” (1996) FAST-NUCES Historical Cryptosystems y Monoalphabetic cipher: Each alphabetic character is mapped onto a unique alphabetic character y Examples: Shift Cipher, Substitution Cipher, Affine Cipher y Polyalphabetic cipher: Each alphabetic character is mapped onto various alphabetic characters y Examples: Vigenere Cipher, Hill Cipher, Permutation Cipher FAST-NUCES Symmetric Cryptosystems Formal Definition: Cryptosystem is defined over (K,M,C) and a pair of “efficient” algorithms (E, D) s.t. C: E(k, m) = c, D(k, E(k, m) ) = mאK and cאM, kא׊ m Effici ent means run i n pol ynomi al ti me FAST-NUCES Shift Cipher y Cipher in which each letter in the plaintext is replaced by a letter some fixed number of positions down the alphabet. Example includes Ceasar cipher, ROT13 y Ceasar Cipher y Each letter is replaced with a fixed shift of 3 letters Example of Ceasar cipher using left rotation of 3 places Plai n: ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC FAST-NUCES Source: wikipedia Shift Cipp(her (ROT13 ) y ROT13 y Each letter is replaced with a fixed shift of 13 letters The transformation can be done as follows Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher: NOPQRSTUVWXYZABCDEFGHIJKLM Modular arithmetic representation: • Encryption of a letter x by a shift n can be described mathematically as En(x) = (x+n) mod 26 • Decryption is performed in a similar manner Dn(x) = (x-n) mod 26 Key space is ridiculously small, very easy to break FAST-NUCES Source: wikipedia Substitution Cipher Idea: use a permutation over the set of characters as key to get a more flexible scheme as in the shift cipher • Keyypspace siggygnificantly larger • Character frequencies are preserved FAST-NUCES What is the size of key space in the substitution cipher assuming 26 letters? FAST-NUCES Breaking Monoalphabetic Ciphers Monoalphabetic ciphers preserve the frequency of alphabetic characters, pairs, etc. → Identify alphabetic characters due to their frequency Method to decipher natural languages: 1. Determine frequency of alphabetic characters of the cipher text 2. Iden tify al ph ab eti c ch aract ers accordi ng t o th ei r f requency: e, n, iti, s, r, a, t (in Germany: e, n, r, i, s, t, u, d, a, g, l, o, ...) 3. Determine frequency of pairs 4. Identify e.g. th he 5. Look at identified text, re-substitute, guess, ... FAST-NUCES Breaking Monoalphabetic Ciphers FAST-NUCES Vigenere Cipher Popular polyalphabetic substitution cipher • Known as “le chiffre indéchiffrable” (‘the indecipherable cipher’ );-) • Combination of simple substitution ciphers • Rotations determined by a word (key) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 FAST-NUCES Breaking Vigenere Cipher y Frequency analysis trivial if period can be guessed y Kasiski test y Repeated words may , by chance , sometimes be encrypted using the same key letters, leading to repeated groups in the ciphertext y Consider the following encryption using the keyword ABCD Key: ABCD ABCDABCD ABCD ABCD ABCD ABCD Plaintext: CRYP TOIS SHOR TFOR CRYP TOGR APHY Cip her text : CSAS TPKV SIQU TGQU CSAS TPIU AQJB y Repetitions of CSASTP is at a distance16 y Assuminggpgp that the repeated segments represent the same pg,plaintext segments, this implies that the key is 16, 8, 4, 2, or 1 characters long FAST-NUCES Source: wikipedia Rotor Machines (1870-1943) y The Hebern Machine (single rotor) y Easily broken (CT onl y) using letter freq uenc y, diagram frequency, trigram frequency A K E N B S K E C T S K . T S . T X R . Y N R . Z E N R key FAST-NUCES Rotor Machines (cont.) Most famous: the Enigma (3-5t5 rotors ) With 4 rotors keys = 264 =2= 218 (actually 2 36 due to optional plugboard) FAST-NUCES Turing Bombe FAST-NUCES Must watch “The Man Who Cracked Enigma” FAST-NUCES One Time Pad, Stream Cipher and Pseudorandom Generators FAST-NUCES Symmetric Cryptosystems Formal Definition: Cryptosy stem is defined over ( K, M, C) and a p air of “efficient” al gorithms (E, D) s.t. C: E(k, m) = c, D(k, E(k, m) ) = mאK and cאM, kא׊ m Efficient means run in polynomial time E is often randomized. D is always deterministic. FAST-NUCES One Time Pad (Vernam 1917) One Time Pad has perfect secrecy (i .e . no CT only attacks) Based on simple XOR operation n M=CC{,}=K={0,1} msg: 01101110 1 1 0 1 1 1 C:= E(k, m) = k ْ m key: 1 0 1 1 0 1 0 D(k, c) = k ْ c Indeed CT:1101101CT: 1 1 0 1 1 0 1 D(k, E(k, m)) = D(k, k ْ m) = k ْ (k ْ m) = (k ْ k) ْ m m = m ْ 0 = y One-time pad = XOR cipher with constraints: y Key length equals message length y KbittlKey bits are truly rand om ( (tnot pseud o-rand)dom) y Key is used only once and destroyed FAST-NUCES You are given a message (m) and its OTP encryption (c). Can you compute the OTP key from m and c ? No, I cannot compute the key. .Yes, the key is k = m ْ c I can only compute half the bits of the key . .Yes, the key is k = m ْ m FAST-NUCES The One Time Pad (Vernam 1917) Very fast enc/dec !! … blbut long k eys ( (las long as pl liaintext) Is the OTP secure? What is a secure cipher? FAST-NUCES What is a secure cipher? Attac ker ’s a bilities: CT on ly a ttac k (for now) Possible security requirements: attempt #1: attacker cannot recover secret key attempt #2: attacker cannot recover all of plaintext Shannon’s idea: CT should reveal no “info” about PT FAST-NUCES Information Theoretic Security Def: A cipher (E,D) over (K,M,C) has perfect secrecy if CאM (|( |m0||| = |m1|)| ) an d ׊cא ׊m0, m1 R Pr[ E(k,m0)=c ] = Pr[ E(k,m1)=c ] where k ึK • Given CT can’t tell if msg is m0 or m1 ( for all m0, m1) • MtMost power fldful adversary learns nothi thibtPTfng about PT from CT • no CT only attacks !!! (but other attacks possible) FAST-NUCES The bad news … • i.e. perfect secrecy Î key-len >= msg-len • Hard to use in practice !!! FAST-NUCES One Time Pad in practice y Intelligence and military services y Regular usage by KGB spies y Hotline between USA and USSR y Major problems y Key exchange difficult y True randomness required y Not very practical today y Inspiration for other methods, y e.g . stream ciphers FAST-NUCES Stream Ciphers: making OTP practical Idea: replace “random” key by “pseudorandom” key PRG is a Function G: {0,1}s {0,1}n s.t n >> s PRG is efficiently computable by a deterministic algorithm FAST-NUCES Stream Ciphers: making OTP practical K(K)ithdKey (K) is the seed use dbGtd by G to genera tthPRGte the PRG Security: PRG must be unpredictable FAST-NUCES Stream Ciphers y Stream ciphers y Bit-wise encryption and decryption of data y Application of pseudo-random number generator (PRG) y XOR operat ion on pseu do-random keystream y Security solely depends on randomness of PRG FAST-NUCES Stream Ciphers Stream ciphers cannot have perfect secrecy !! y Need a different definition of security y Security will depend on specific PRG FAST-NUCES PRG must be unpredictable FAST-NUCES PRG must be unpredictable We say that G: K ื {0, 1}n is predictable if: Def:PRGis: PRG is unpredictable if it is not predictable i: no “eff” adv.
Recommended publications
  • A Cipher Based on the Random Sequence of Digits in Irrational Numbers
    https://doi.org/10.48009/1_iis_2016_14-25 Issues in Information Systems Volume 17, Issue I, pp. 14-25, 2016 A CIPHER BASED ON THE RANDOM SEQUENCE OF DIGITS IN IRRATIONAL NUMBERS J. L. González-Santander, [email protected], Universidad Católica de Valencia “san Vicente mártir” G. Martín González. [email protected], Universidad Católica de Valencia “san Vicente mártir” ABSTRACT An encryption method combining a transposition cipher with one-time pad cipher is proposed. The transposition cipher prevents the malleability of the messages and the randomness of one-time pad cipher is based on the normality of "almost" all irrational numbers. Further, authentication and perfect forward secrecy are implemented. This method is quite suitable for communication within groups of people who know one each other in advance, such as mobile chat groups. Keywords: One-time Pad Cipher, Transposition Ciphers, Chat Mobile Groups Privacy, Forward Secrecy INTRODUCTION In cryptography, a cipher is a procedure for encoding and decoding a message in such a way that only authorized parties can write and read information about the message. Generally speaking, there are two main different cipher methods, transposition, and substitution ciphers, both methods being known from Antiquity. For instance, Caesar cipher consists in substitute each letter of the plaintext some fixed number of positions further down the alphabet. The name of this cipher came from Julius Caesar because he used this method taking a shift of three to communicate to his generals (Suetonius, c. 69-122 AD). In ancient Sparta, the transposition cipher entailed the use of a simple device, the scytale (skytálē) to encrypt and decrypt messages (Plutarch, c.
    [Show full text]
  • Cryptography in Embedded Systems CRYPTOGRAPHY in EMBEDDED SYSTEMS
    Cryptography in Embedded Systems CRYPTOGRAPHY IN EMBEDDED SYSTEMS 1INDERJIT SINGH, 2KHUSHBOO JHINGRAN, 3JEENAL SHAH Department of Electronics Engineering , Fr. Conceicao Rodrigues College of Engineering , Mumbai University Fr. Agnel Ashram, Bandstand, Bandra (W), Mumbai Abstract— It is widely recognized that data security will play a central role in the design of future IT systems. Many of those IT applications will be realized as embedded systems, which rely heavily on security mechanisms. Examples include security for wireless phones, wireless computing, pay-TV, and copy protection schemes for audio/video consumer products and digital cinemas. Note that a large share of those embedded applications will be wireless, which makes the communication channel especially vulnerable. All modern security protocols use symmetric-key and public key algorithms. This contribution surveys several important cryptographic concepts and their relevance to embedded system applications. The security requirements, such as authentication, confidentiality and integrity, always make computationally intensive processes and can easily become the bottleneck of the related applications. This paper presents implementation of KKJEIN algorithm on the ATMEL Microprocessor AT89C51. It shows how cryptography can be implemented for data transfer between two microprocessors using serial ports. Keywords— Cryptography, symmetric key cryptography, public key cryptography. The important criterion to check on a symmetric I. INRODUCTION encryption algorithm was the efficiency of the cipher Now a days embedded systems are increasingly in different platforms, including microcontrollers. used in many distributive applications due to which Since 2001, various implementations have the need for them to communicate among themselves consequently been proposed, exploring the different and other peripherals has risen in the same possible design tradeoffs ranging from the highest magnitude.
    [Show full text]
  • Modern Cryptanalysis.Pdf
    Contents Acknowledgments Introduction Chapter 1: Simple Ciphers 1.1 Monoalphabetic Ciphers 1.2 Keying 1.3 Polyalphabetic Ciphers 1.4 Transposition Ciphers 1.5 Cryptanalysis 1.6 Summary Exercises References Chapter 2: Number Theoretical Ciphers 2.1 Probability 2.2 Number Theory Refresher Course 2.3 Algebra Refresher Course 2.4 Factoring-Based Cryptography 2.5 Discrete Logarithm-Based Cryptography 2.6 Elliptic Curves 2.7 Summary Exercises References Chapter 3: Factoring and Discrete Logarithms 3.1 Factorization 3.2 Algorithm Theory 3.3 Exponential Factoring Methods 3.4 Subexponential Factoring Methods 3.5 Discrete Logarithms 3.6 Summary Exercises References Chapter 4: Block Ciphers 4.1 Operations on Bits, Bytes, Words 4.2 Product Ciphers 4.3 Substitutions and Permutations 4.4 Substitution–Permutation Network 4.5 Feistel Structures 4.6 DES 4.7 FEAL 4.8 Blowfish 4.9 AES / Rijndael 4.10 Block Cipher Modes 4.11 Skipjack 4.12 Message Digests and Hashes 4.13 Random Number Generators 4.14 One-Time Pad 4.15 Summary Exercises References Chapter 5: General Cryptanalytic Methods 5.1 Brute-Force 5.2 Time–Space Trade-offs 5.3 Rainbow Tables 5.4 Slide Attacks 5.5 Cryptanalysis of Hash Functions 5.6 Cryptanalysis of Random Number Generators 5.7 Summary Exercises References Chapter 6: Linear Cryptanalysis 6.1 Overview 6.2 Matsui’s Algorithms 6.3 Linear Expressions for S-Boxes 6.4 Matsui’s Piling-up Lemma 6.5 Easy1 Cipher 6.6 Linear Expressions and Key Recovery 6.7 Linear Cryptanalysis of DES 6.8 Multiple Linear Approximations 6.9 Finding Linear Expressions
    [Show full text]
  • Xor Decoder with Key
    Xor Decoder With Key In the x64 XOR encoder, there are several different suggestions for making signature-based detection of the encoder more difficult: Swapping registers—Using a non-hardcoded register to store the XOR key may make it more challenging to write signatures for the encoder, since the MOV RBX instruction would no longer be a permanent component. There is a slight problem with this. , a disk sector). After JMP-CALL- POP, we are inside the loop which runs over the whole encrypted shellcode (25 bytes). So the least significant bit is the output bit. So now we have 3 values, x, y and z which we can then send to our friend. Then based on knowledge of most frequent char and using frequency analysis it will be able to guess the key used to encrypt the data. Here Mudassar Ahmed Khan has explained with an example, how to encrypt and store Username or Password in SQL Server Database Table and then fetch, decrypt and display it in ASP. 101010101010101 (Encryption Key) 101100101100001 (Encoded) Breaking this down we get 10110 01011 00001, which gives the encoded word, VKA. // ksize is the key size. Therefore, the encoder encodes 2n input lines with 'n' bits. The key's SHA256 hash is saved in the input file, so that it can be compared with the provided password for decryption. For that, the software uses a secret key can be a number, a word, or just a string of random letters aiming at changing the content in a particular. Cipher import DES. The Morse code decoder can listen to your computer's microphone, extract any Morse code sound and write down what it hears.
    [Show full text]
  • Classic Ciphers (Mathematical Version)
    Cryptology Part I: Classic Ciphers (Mathematical Version) Klaus Pommerening Fachbereich Physik, Mathematik, Informatik der Johannes-Gutenberg-Universit¨at Saarstraße 21 D-55099 Mainz October 25, 1999|English version October 5, 2013|last change January 19, 2021 K. Pommerening, Classic Ciphers 1 Preliminary Note This text is somewhat incomplete. It focusses on the mathematical back- ground of Cryptology. People without mathematical ambitions may browse the HTML pages|these are informal and hopefully self-contained. Also for historical or motivational stuff I often refer to the accompanying web pages http://www.staff.uni-mainz.de/pommeren/Cryptology/ Motivational Hints Classical cryptography considers ciphers in use up to the 1970's, that is, in the precomputer era. Today no one seriously uses these ciphers. Why does it make sense dealing with them? • We get a feeling for the security of the basic encryption steps that are in use as components of the more complex ciphers of today. • The complexity of modern techniques becomes perspicuous. • Most of the mathematical foundations are relevant also for modern cryptologic techniques. • We may learn a lot from the failures of the past|many of the com- monly accepted principles of cryptology arose a long time ago. In short: The algorithms are out-of-date, the methods and principles are up-to- date. • Classical cryptology makes a good part of general education, not only for mathematicians or computer scientists. In particular it provides many interesting project ideas for undergraduates or even school chil- dren. • Classical cryptology provides intellectual challenges|better than chess, poker, or war games [:-)]. The puzzle corners of journals often contain puzzles whose cryptological background shines through.
    [Show full text]
  • An Efficient Symmetric Cipher Algorithm for Data Encryption
    International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056 Volume: 03 Issue: 05 | May-2016 www.irjet.net p-ISSN: 2395-0072 An Efficient Symmetric Cipher Algorithm for Data Encryption Prosper Kandabongee Yeng1, Joseph KobinaPanford2, James Ben Hayfron-Acquah3, Frimpong Twum4 1 Head of IT, IT, C and J Medicare Hospital, Accra, Ghana 2Lecturer, Computer Science, Kwame Nkrumah University of Science and Technology (KNUST), Kumasi, Ghana 3Senior Lecturer, Computer Science, Kwame Nkrumah University of Science and Technology (KNUST), Kumasi, Ghana 4Lecturer, Computer Science,Kwame Nkrumah University of Science and Technology (KNUST), Kumasi, Ghana ---------------------------------------------------------------------***-------------------------------------------------------------------- Abstract-This paper presents an efficient algorithm for a 1.0 INTRODUCTION symmetric cipher named, “YC1” that employs key spaces of varying lengths to encrypt and decrypt a plain text. Information Technology plays a very pivotal role in our The means to ensuring that parties maintain confidentiality businesses such as accomplishing complex tasks, speedy and privacy is by means of cryptography, even in the processing and many others but one very challenging presence of an adversary with access to the communication concern today has to do with security in data channel. One of the central goals of cryptography is to communications. Data security in databases can be maintain privacy. There are other goals of communication maintained by
    [Show full text]