Cryptography This week we are going to use OpenSSL

Slides:



Advertisements
Similar presentations
“Advanced Encryption Standard” & “Modes of Operation”
Advertisements

Encipherment Using Modern Symmetric-Key Ciphers. 8.2 Objectives ❏ To show how modern standard ciphers, such as DES or AES, can be used to encipher long.
Modern Symmetric-Key Ciphers
Modern Symmetric-Key Ciphers
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
Cryptography & Security Presented April 16, 2010 By Dave Stycos, Zocalo Data Systems.
Cryptography1 CPSC 3730 Cryptography Chapter 6 Triple DES, Block Cipher Modes of Operation.
Modes of Operation CS 795. Electronic Code Book (ECB) Each block of the message is encrypted with the same secret key Problems: If two identical blocks.
McGraw-Hill©The McGraw-Hill Companies, Inc., Security PART VII.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 5 Wenbing Zhao Department of Electrical and Computer Engineering.
Computer Networking Lecture 21: Security and Cryptography Thanks to various folks from , semester’s past and others.
Lecture 23 Symmetric Encryption
Feb 19, 2002Mårten Trolin1 Previous lecture Practical things about the course. Example of cryptosystem — substitution cipher. Symmetric vs. asymmetric.
CS470, A.SelcukModes of Operation1 Encrypting with Block Ciphers CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Cryptography Block Ciphers and Feistel Functions.
Block Cipher Transmission Modes CSCI 5857: Encoding and Encryption.
Modes of Operation. Topics  Overview of Modes of Operation  EBC, CBC, CFB, OFB, CTR  Notes and Remarks on each modes.
Cryptography and Network Security Chapter 6. Multiple Encryption & DES  clear a replacement for DES was needed theoretical attacks that can break it.
Lecture 4: Using Block Ciphers
TE/CS 536 Network Security Spring 2006 – Lectures 6&7 Secret Key Cryptography.
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
Professional Encryption Software FINECRYPT 8.1. Contents Introduction Introduction Features Features Installation Installation Tests Tests Results Results.
Cryptography Chapter 7 Part 2 Pages 781 to 812. Symmetric Cryptography Secret Key Figure 7-10 on page 782 Key distribution problem – Secure courier Many.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
3DES and Block Cipher Modes of Operation CSE 651: Introduction to Network Security.
Multiple Encryption & DES  clearly a replacement for DES was needed Vulnerable to brute-force key search attacks Vulnerable to brute-force key search.
Chapter 9: Algorithms Types and Modes Dulal C. Kar Based on Schneier.
Feb 17, 2003Mårten Trolin1 Previous lecture Practical things about the course. Example of cryptosystem — substitution cipher. Symmetric vs. asymmetric.
More About DES Cryptography and Network Security Reference: Sec 3.1 of Stallings Text.
Lecture 4 Page 1 CS 236 Stream and Block Ciphers Stream ciphers convert one symbol of plaintext immediately into one symbol of ciphertext Block ciphers.
1.1 Chapter 8 Encipherment Using Modern Symmetric-Key Ciphers Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
BLOCK CIPHER SYSTEMS OPERATION MODES OF DATA ENCRYPTION STANDARD (DES)
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Security.
Modes of Usage Dan Fleck CS 469: Security Engineering These slides are modified with permission from Bill Young (Univ of Texas) 11 Coming up: Modes of.
Modes of Operation INSTRUCTOR: DANIA ALOMAR. Modes of Operation A block cipher can be used in various methods for data encryption and decryption; these.
Stream Ciphers and Block Ciphers A stream cipher is one that encrypts a digital data stream one bit or one byte at a time. Examples of classical stream.
Lecture 23 Symmetric Encryption
Lecture 4 Page 1 CS 236 Stream and Block Ciphers Stream ciphers convert one symbol of plaintext immediately into one symbol of ciphertext Block ciphers.
Cipher Transmission and Storage Modes Part 2: Stream Cipher Modes CSCI 5857: Encoding and Encryption.
Block Cipher Modes Last Updated: Aug 25, ECB Mode Electronic Code Book Divide the plaintext into fixed-size blocks Encrypt/Decrypt each block independently.
Modes of Operation block ciphers encrypt fixed size blocks – eg. DES encrypts 64-bit blocks with 56-bit key need some way to en/decrypt arbitrary amounts.
Block Cipher Encrypting a large message Electronic Code Book (ECB) message m1 m2 m3 m4 m5 m6 c1 c2 c3 c4 c5 c6 E E E Secret.
CS480 Cryptography and Information Security
Modes of Operation.
Algorithm Modes ECB, CBC, CFB, OFB.
Computer and Network Security
Row Transposition Ciphers
Network Security.
Outline Desirable characteristics of ciphers Stream and block ciphers
Lecture 3: Symmetric Key Encryption
Block Cipher Modes CS 465 Make a chart for the mode comparisons
مروري برالگوريتمهاي رمز متقارن(كليد پنهان)
Block cipher and modes of encryptions
PART VII Security.
Algorithm Types & Algorithm Modes
Security Of Wireless Sensor Networks
Symmetric-Key Encryption
Block vs Stream Ciphers
SOFTWARE IMPLEMENTATION OF OCB MODE
Network Security.
Block Ciphers: DES and AES
Block Ciphers (Crypto 2)
Security of Wireless Sensor Networks
Homework #2 J. H. Wang Oct. 18, 2018.
Encryption Basics Types of ciphers Algorithms Modes Key Length
Counter Mode, Output Feedback Mode
Elect. Codebook, Cipher Block Chaining
Review of Cryptography: Symmetric and Asymmetric Crypto Advanced Network Security Peter Reiher August, 2014.
Secret-Key Encryption
Presentation transcript:

Cryptography This week we are going to use OpenSSL We will begin to introduce some cryptographic concepts Cryptography takes a long time to learn properly There are many idiosyncrasies that must be considered (and we will not cover) Just to compound the idiosyncrasies: They cover many topics from algorithm implementation to use… This lab will not introduce everything - I find the topic immensely interesting and I hope you do as well Further Reading (not expensive): Bruce Schneier’s Applied Cryptography You will compare unencrypted data with encrypted data You are going to evaluate Code Books for fault tolerance. You will also look for patterns in encrypted material

Analysis Tools Available to you C Programming language Spreadsheet that can read a CSV format Data Input, Encrypted Material, Date Output Histograms You know how to write text files – add commas and newlines where necessary Comma-separated Values (CSV) Generate plots to illustrate what you deem important A tool for visualizing images IJ can help with that Do you need anything else? Statistics is helpful, although you will not need for this assignment

Applied Cryptography Principles What properties cryptography principles seem important? What if you see patterns in encrypted material? Those patterns could have interesting occurrences Does the encrypted material change greatly if the input data is changes by a small amount? What about the same data encrypted twice – does it look the same? Is it still “encrypted” if it is? What about the time it takes to decrypt data? Is faster always better? Much more needs to be considered, but you are already equipped to analyze the topics above.

Actual Cryptography run Time How would you analyze how long an algorithm takes? What cryptography steps are the most important relative to time? What steps do you think are necessary? Where do you need to call the clock? What math will you need to perform? You should analyze timing information as a function of the input length.

Ciphers Block Ciphers: We are going to be looking here Stream Ciphers DES: Developed back 70’s; people are starting to get away from vanilla DES. IDEA: Designed in 1991 as a DES replacement. Algebraic weaknesses have been discovered. AES: NIST adopted in 2001. Considered secure. Many More… Stream Ciphers RC4: Created in 1997, should be avoided… Many more…

Code Books Typically used for block cipher algorithms – some can make a block cipher look more like a a stream cipher Electronic Code Book (ECB) Cipher-Block Chaining (CBC) Cipher Feedback (CFB) Output Feedback (OFB) Initialization Vector (IV): block of bits to randomize the encryption and produce distinct cipher texts even if the same plaintext is encrypted multiple times http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation

Avalanche Effect For every input bit that is changed the encrypted output should change dramatically. (Applied Math) Deviations and variances between Encrypted data should be high

Electronic Code Book (ECB) Really simple design The message is divided into blocks and each block is encrypted separately.

Cipher Block Chaining (CBC) Starting to get more interesting. IV is XORed with the input What does an error in the encrypted material do to the output (post decryption)?

Cipher Feedback (CFB) This code book doesn’t even encrypt the plaintext! This looks like it could save a small amount of time in certain circumstances What happens if the encrypted material is corrupted?

Output Feedback (OFB) Okay this code book doesn’t run plaintext through the cipher at all… Does it save time? This algorithm could be run in parallel in ways the others could not! What happens if there is an error in the encrypted material?

Pulling it together Good Cryptography means good algorithms, code books, keys, and IV Output Feedback (OFB) does not work well with a bad key (Good IV is also not enough) Idea does has since been removed from OpenSSL Can you find a weak key that will give you similar results?

What do you need to do for the lab? This Lab: two components that are not graded equally Practical component implementing the concepts discussed Graded as 1 lab Documentation Component Describing what you are seeing with graphics you generated Graded as 2 labs You cannot complete the documentation without the code We have not discussed histograms Histograms should be an array that is as large is the dynamic range The data type should be large enough to not roll over You can write it out as a CSV file and use bar plot in excel I’m not saying you need to use a bar plot, bar plots are just traditional

The analysis has three components… Part 1: Analyze code books to see what happens if an encrypted material bit is corrupted Part 2: Analyze the run time of specific code books How does it change relative to the number of blocks passed in? Part 3: Analyze encrypted spatial patterns This should be done with imagery and histograms So… Verify you are writing out the correct amount of data Size of data in / Block Size should not have a remainder Why is this important?