Cryptography and Coding Theory

Slides:



Advertisements
Similar presentations
Chapter 4 Systems of Linear Equations; Matrices
Advertisements

Chapter 4 Systems of Linear Equations; Matrices
296.3Page :Algorithms in the Real World Error Correcting Codes II – Cyclic Codes – Reed-Solomon Codes.
15-853:Algorithms in the Real World
Computer Science 101 Data Encryption And Computer Networks.
22C:19 Discrete Structures Integers and Modular Arithmetic
An Introduction to Cryptography TEA fellows February 9, 2012 Dr. Kristen Abernathy.
Cellular Communications
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
DIGITAL COMMUNICATION Coding
Chapter 3 Coding Theory.
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
Chapter 11 Algebraic Coding Theory. Single Error Detection M = (1, 1, …, 1) is the m  1 parity check matrix for single error detection. If c = (0, 1,
DIGITAL COMMUNICATION Coding
15-853Page :Algorithms in the Real World Error Correcting Codes I – Overview – Hamming Codes – Linear Codes.
Faculty of Computer Science © 2006 CMPUT 229 Special-Purpose Codes Binary, BCD, Hamming, Gray, EDC, ECC.
4-5 Matrix Inverses and Solving Systems Warm Up Lesson Presentation
Finding the Inverse of a Matrix
Hamming Codes 11/17/04. History In the late 1940’s Richard Hamming recognized that the further evolution of computers required greater reliability, in.
Copyright © Cengage Learning. All rights reserved. 7.8 Applications of Matrices and Determinants.
MAT 1000 Mathematics in Today's World Winter 2015.
4-6 3x3 Matrices, Determinants, & Inverses
2.4 Inverse of Linear Transformations For an animation of this topic visit: Is the transformation.
USING THE MATLAB COMMUNICATIONS TOOLBOX TO LOOK AT CYCLIC CODING Wm. Hugh Blanton East Tennessee State University
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall.
Systems of Equations as Matrices and Hill Cipher.
Information and Coding Theory Linear Block Codes. Basic definitions and some examples. Juris Viksna, 2015.
Exercise in the previous class p: the probability that symbols are delivered correctly C: 1 00 → → → → What is the threshold.
Holt Algebra Matrix Inverses and Solving Systems A matrix can have an inverse only if it is a square matrix. But not all square matrices have inverses.
Chapter 9 Matrices and Determinants Copyright © 2014, 2010, 2007 Pearson Education, Inc Multiplicative Inverses of Matrices and Matrix Equations.
Using Inverse Matrices in Real Life
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
DIGITAL COMMUNICATIONS Linear Block Codes
22C:19 Discrete Structures Integers and Modular Arithmetic Fall 2014 Sukumar Ghosh.
ADVANTAGE of GENERATOR MATRIX:
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
Information Theory Linear Block Codes Jalal Al Roumy.
Word : Let F be a field then the expression of the form a 1, a 2, …, a n where a i  F  i is called a word of length n over the field F. We denote the.
Error control coding – binary linear codes Background material for linear error control codes.
4.4 Identity and Inverse Matrices
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Basic Concepts of Encoding Codes and Error Correction 1.
Learning Objectives for Section 4.5 Inverse of a Square Matrix
Copyright © Cengage Learning. All rights reserved. 7 Linear Systems and Matrices.
Matrices Digital Lesson. Copyright © by Houghton Mifflin Company, Inc. All rights reserved. 2 A matrix is a rectangular array of real numbers. Each entry.
INFORMATION THEORY Pui-chor Wong.
Notes Over 4.4 Finding the Inverse of 2 x 2 Matrix.
Cryptography Cryptography is the use of mathematics to encode messages and prevent them from being read by anyone who doesn’t know the code. One way that.
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
Warm UP: Review of Inequalities What do each of the symbols represent: 1. > 2. < Greater Than 2. Less than 3. Less than or equal to 4. Greater.
Error Detecting and Error Correcting Codes
Warm Up Multiple the matrices. 1. Find the determinant –1 0.
Matrices CHAPTER 8.9 ~ Ch _2 Contents  8.9 Power of Matrices 8.9 Power of Matrices  8.10 Orthogonal Matrices 8.10 Orthogonal Matrices 
Investigating Identity and Inverse Matrices QUESTION: What are some properties of identity and inverse matrices? 1 Let A =, B =, and C=. Consider the 2.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Chapter 4 Systems of Linear Equations; Matrices
Warm-up 1. Find A-1 , A = 2. Solve AX = B when B =
CHAPTER 8.9 ~ 8.16 Matrices.
Applications of Matrices
Section 6.4 Multiplicative Inverses of Matices and Matrix Equations
Applications of Inverse Matrices
Information Redundancy Fault Tolerant Computing
DIGITAL COMMUNICATION Coding
Section 9.4 Multiplicative Inverses of Matices and Matrix Equations
Learning Objectives for Section 4.5 Inverse of a Square Matrix
What Is Wrong With This Simple Code?
Chapter 4 Systems of Linear Equations; Matrices
Hill Cipher The Hill Cipher uses matrix multiplication to encrypt a message. First, you need to assign two numbers to each letter in the alphabet and also.
Chapter 4 Systems of Linear Equations; Matrices
Presentation transcript:

Cryptography and Coding Theory An application of linear systems By: Daniel Drugan, Desira Haliman, Joni Nofchissey

Linear Applications Method One : Cryptography Invertible matrices Matrix multiplication Method Two : Coding Theory Modular arithmetic Error correcting code Binary code

Cryptography Study of encoding and decoding secret messages Useful in sending sensitive information so that only the intended receivers can understand the message A common use of cryptography is to send government secrets.

O 15 P 16 Q 17 R 18 S 19 T 20 U 21 V 22 W 23 X 24 Y 25 Z 26 _ 27 ‘ 28 A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13 N 14 Encoding First we will assign numbers to represent each letter of the alphabet. We then create a “plaintext” matrix that holds the message in terms of numbers. Then we pick an invertible square matrix, which can be multiplied with the “plaintext matrix”.

Encrypting the Message x = Encoding matrix Plaintext Ciphertext

Deciphering the Message In order to decode the message, we would have to take the inverse of the encoding matrix to obtain the decoding matrix. Multiplying the decoding matrix with the ciphertext would result in the plaintext version. Then the arbitrarily assigned number scheme can be used to retrieve the message.

x Decrypting the Message = O 15 A 1 P 16 B 2 Q 17 C 3 R 18 D 4 S 19 U 21 V 22 W 23 X 24 Y 25 Z 26 _ 27 ‘ 28 A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13 N 14 Decrypting the Message x = Explain how the number-alphabet scheme can be changed to make decrypting even harder (starting at a different number, or using odd/even numbers or even assign random numbers to alphabets. Explain how it works - explain invertible matrices. AX = A-1AX

YOU MIGHT WANT TO READ THIS. P 16 Q 17 R 18 S 19 T 20 U 21 V 22 W 23 X 24 Y 25 Z 26 _ 27 ‘ 28 A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13 N 14

Coding Theory Have the ability to detect the presence of errors, as well as reconstruct the original, error-free data Coding Theory applications exist in many forms of digital technology. An example would be sending a message across a noisy channel with perfect reception.

Theorem 3.34 (Basic Ideas) standard generator matrix G = standard parity (error-detecting matrix) check matrix P = P is the parity check matrix associated with G if and only if A = B. The corresponding (n, k) binary code is (single) error-correcting if and only if the columns of P are nonzero and distinct. Note: most digital messages are written in sequences of 0’s and 1’s in binary code

(7, 4) Hamming Code n – k = 3 and k = n – 3 We will use three parity check equations: n – k = 3 and k = n – 3 P = Therefore, theorem 3.34 states G = Eq’n 1 Eq’n 2 Eq’n 3 3 x 7 matrix 7 x 4 matrix (7,4) Hamming Code

Encoding We want to encode x = So, C = G•x = = T =

Parity Check Pc’=0 for this code to be a correct code Pc’= = =

SUCCESS! Since Pc’=0, our code is correct, however had we made an error in multiplying our first batch of matrices to obtain c, Pc’ ≠ 0…say we had the incorrect C vector (0 1 1 1 0 1 0) and did our parity check…

Parity Check Dos Pc’=0 for this code to be a correct code Pc’= = =

Thanks for listening! 