ECE 4331, Fall, 2009 Zhu Han Department of Electrical and Computer Engineering Class 21 Nov.5 th, 2009.

Slides:



Advertisements
Similar presentations
Chapter 3 Public Key Cryptography and Message authentication.
Advertisements

Cyclic Code.
Error Control Code.
Computer Networking Error Control Coding
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Computer Science 101 Data Encryption And Computer Networks.
1 Wireless Sensor Networks Akyildiz/Vuran Administration Issues  Take home Mid-term Exam  Assign April 2, Due April 7  Individual work is required 
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (4) Information Security.
22C:19 Discrete Structures Integers and Modular Arithmetic
Chapter 6 Errors, Error Detection, and Error Control.
Cellular Communications
Coding and Error Control
Chapter 6: Errors, Error Detection, and Error Control
McGraw-Hill©The McGraw-Hill Companies, Inc., Security PART VII.
Chapter 6 Errors, Error Detection, and Error Control
Department of Electrical and Computer Engineering
Security Module – Part 1 Spring 2006 V.T. Raja, Ph.D., Oregon State University.
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Encryption. Introduction Computer security is the prevention of or protection against –access to information by unauthorized recipients –intentional but.
1 Introduction to Codes, Ciphers, and Cryptography Michael A. Karls Ball State University.
Chapter 12 Cryptography (slides edited by Erin Chambers)
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
3.1 SERVICES AND MECHANISMS SERVICES AND MECHANISMS The International Telecommunication Union- Telecommunication Standardization Section (ITU-T) provides.
Channel Coding and Error Control
ECE 4371, Fall, 2014 Introduction to Telecommunication Engineering/Telecommunication Laboratory Zhu Han Department of Electrical and Computer Engineering.
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
CSC 335 Data Communications and Networking Lecture 5: Error Detection, Error Correction, and Data Security Dr. Cheer-Sun Yang.
Cryptography, Authentication and Digital Signatures
ECE 4371, Fall, 2015 Introduction to Telecommunication Engineering/Telecommunication Laboratory Zhu Han Department of Electrical and Computer Engineering.
Day 18. Concepts Plaintext: the original message Ciphertext: the transformed message Encryption: transformation of plaintext into ciphertext Decryption:
ECE 6332, Spring, 2014 Wireless Communication Zhu Han Department of Electrical and Computer Engineering Class 18 March. 26 th, 2014.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D.
CODING/DECODING CONCEPTS AND BLOCK CODING. ERROR DETECTION CORRECTION Increase signal power Decrease signal power Reduce Diversity Retransmission Forward.
30.1 Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Cyclic Code. Linear Block Code Hamming Code is a Linear Block Code. Linear Block Code means that the codeword is generated by multiplying the message.
MIMO continued and Error Correction Code. 2 by 2 MIMO Now consider we have two transmitting antennas and two receiving antennas. A simple scheme called.
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
Unit 5 Lecture 2 Error Control Error Detection & Error Correction.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, October 2011.
Basic Characteristics of Block Codes
Public Key Encryption.
EE 6331, Spring, 2009 Advanced Telecommunication Zhu Han Department of Electrical and Computer Engineering Class 20 Apr. 9 th, 2009.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
Error Detection and Correction
Chapter 6: Errors, Error Detection, and Error Control Data Communications and Computer Networks: A Business User’s Approach Third Edition.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
Wireless. Wireless hosts: end system devices; may or may not be mobile Wireless links: A host connects to a base station or host through a communication.
CHAPTER 3: DATA LINK CONTROL Flow control, Error detection – two dimensional parity checks, Internet checksum, CRC, Error control, Transmission efficiency.
Error Detection. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. An error-detecting code can.
Error Detection and Correction – Hamming Code
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
1 Cryptography Troy Latchman Byungchil Kim. 2 Fundamentals We know that the medium we use to transmit data is insecure, e.g. can be sniffed. We know that.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
Data Link Layer 1. 2 Single-bit error 3 Multiple-bit error 4.
Chapter Nine: Data Transmission. Introduction Binary data is transmitted by either by serial or parallel methods Data transmission over long distances.
Communication Networks: Technology & Protocols
DATA COMMUNICATION AND NETWORKINGS
The Three Main Sources of Transmission Errors
Advanced Computer Networks
Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 6.
PART VII Security.
Chapter Nine: Data Transmission
Coding and Error Control
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Presentation transcript:

ECE 4331, Fall, 2009 Zhu Han Department of Electrical and Computer Engineering Class 21 Nov.5 th, 2009

Encryption Encryption is a translation of data into a secret code. Encryption is the most effective way to achieve data security. To read an encrypted file, you must have access to a secret key that enables you to decrypt it. Unencrypted data is called plain text; encrypted data is referred to as cipher (text). Encryption can be used to ensure secrecy, but other techniques are still needed to make communications secure: authentication, authorization, and message integrity.

Encryption Message integrity - both parties will always wish to be confident that a message has not been altered during transmission. The encryption makes it difficult for a third party to read a message, but that third party may still be able to alter it in a useful way. Authentication is a way to ensure users are who they say they are - that the user who attempts to perform functions in a system is in fact the user who is authorized to do so. Authorization protects computer resources (data, files, programs, devices) by allowing those resources to be used by resource consumers having been granted authority to use them. Digital rights management etc.

Encryption – cipher taxonomy CIPHERS MODERN CIPHERS CLASSICAL CIPHERS PUBLIC KEY PRIVATE KEY SUPERPOSITION TRANSPOSITION ROTOR MACHINES Quantum CIPHERS Wireless Physical Layer Security

Transposition Method Da Vinci’s code Ex. I am a student I m s u e t a a t d n

Substitution Method Shift Cipher (Caesar’s Cipher) I CAME I SAW I CONQUERED H BZLD H TZV H BNMPTDSDC Julius Caesar to communicate with his army Language, wind talker

Rotor Machine The primary component is a set of rotors, also termed wheels or drums, which are rotating disks with an array of electrical contacts on either side. The wiring between the contacts implements a fixed substitution of letters, scrambling them in some complex fashion. On its own, this would offer little security; however, after encrypting each letter, the rotors advance positions, changing the substitution. By this means, a rotor machine produces a complex polyalphabetic substitution cipher.electrical contactssubstitutionpolyalphabetic substitution German Enigma machine usedEnigma machine during World War II for submarine. Movie U571, Italian Job

Key

Public Key System - RSA Named after its inventors Ron Rivest, Adi Shamir and Len Adleman Base on Number Theory y=e x (mod N) => x=?? If the size of N is 100, it takes 100 billion years to decipher with 1GHz computer. Applications –Digital Signatures –Digital Cash: Movie, swordfish –Timestamping Services: Movie, entrapment –Election Movie, mercury rising

Encryption – cipher taxonomy Historical pen and paper ciphers used in the past are sometimes known as classical ciphers. They include substitution ciphers and transposition ciphers. During the early 20th century, more sophisticated machines for encryption were used, rotor machines, which were more complex than previous schemes. Encryption methods can be divided into symmetric key algorithms and asymmetric key algorithms. In a symmetric key algorithm (DES, AES), the sender and receiver must have a shared key set up in advance and kept secret from all other parties; the sender uses this key for encryption, and the receiver uses the same key for decryption. In an asymmetric key algorithm (RSA), there are two separate keys: a public key is published and enables any sender to perform encryption, while a private key is kept secret by the receiver and enables him to perform decryption.

Wireless Physical Layer Security Achieve zero information for the eavesdropper –Source transmits data rate of max(C 1 -C 2,0) –The eavesdropper can decode zero information about the source. –Limit due to the locations of source, destination and relay –Can cooperation help to improve SD E C1C1 C2C2

Quantum Cryptography Use physics law, if the signal is measured (eavesdropped), the receiver can always detected.

Mission is really impossible When you see it, the information has been already changed

Automatic Repeat-reQuest (ARQ) Alice and Bob on their cell phones –Both Alice and Bob are talking What if Alice couldn’t understand Bob? –Bob asks Alice to repeat what she said What if Bob hasn’t heard Alice for a while? –Is Alice just being quiet? –Or, have Bob and Alice lost reception? –How long should Bob just keep on talking? –Maybe Alice should periodically say “uh huh” –… or Bob should ask “Can you hear me now?”

ARQ Acknowledgments from receiver –Positive: “okay” or “ACK” –Negative: “please repeat that” or “NACK” Timeout by the sender (“stop and wait”) –Don’t wait indefinitely without receiving some response –… whether a positive or a negative acknowledgment Retransmission by the sender –After receiving a “NACK” from the receiver –After receiving no feedback from the receiver

Error Correcting Codes Adding redundancy to the original message To detect and correct errors Crucial when it’s impossible to resend the message (interplanetary communications, storage..) and when the channel is very noisy (wireless communication) Message = [ ] Noise = [ ] Message = [ ]

Types of Error Correcting Codes Repetition Code Linear Block Code, e.g. Hamming Cyclic Code, e.g. CRC BCH and RS Code Convolutional Code –Tradition, Viterbi Decoding –Turbo Code –LDPC Code Coded Modulation –TCM –BICM

Repetition Code Simple Example: reduce the capacity by 3 Simple Example: reduce the capacity by 3 Recovered state

Parity Check Add one bit so that xor of all bit is zero –Send, correction, miss –Add vertically or horizontally Applications: ASCII, Serial port transmission

ISDN Number ISBN 10 –a modulus 11 with weights 10 to 2, using X instead of 10 where ten would occur as a check digitmodulus –ISBN ISBN 13 –Calculating an ISBN 13 check digit requires that each of the first twelve digits of the 13- digit ISBN be multiplied alternately by 1 or 3. Next, take the sum modulo 10 of these products. This result is subtracted from 10.check digitmodulo –ISBN

Hammings Solution A type of Linear Block Code Encoding: H(7,4) Multiple Checksums Message=[a b c d] r= (a+b+d) mod 2 s= (a+b+c) mod 2 t= (b+c+d) mod 2 Code=[r s a t b c d] Coding rate: 4/7 –Smaller, more redundancy, the better protection. –Difference between detection and correction Message=[ ] r=(1+0+0) mod 2 =1 s=(1+0+1) mod 2 =0 t=(0+1+0) mod 2 =1 Code=[ ]

Error Detection Ability 100,000 iterations Add Errors to (7,4) data No repeat randoms Measure Error Detection Error Detection One Error: 100% Two Errors: 100% Three Errors: 83.43% Four Errors: 79.76% Stochastic Simulation: Results:

How it works: 3 dots Only 3 possible words Distance Increment = 1 One Excluded State (red) It is really a checksum. Single Error Detection No error correction ABC ABC AC Two valid code words (blue) This is a graphic representation of the “Hamming Distance”

Hamming Distance Definition: –The number of elements that need to be changed (corrupted) to turn one codeword into another. The hamming distance from: –[0101] to [0110] is 2 bits –[ ] to [ ] is 2 bits –“butter” to “ladder” is 4 characters –“roses” to “toned” is 3 characters

Another Dot The code space is now 4. The hamming distance is still 1. Allows: Error DETECTION for Hamming Distance = 1. Error CORRECTION for Hamming Distance =1 For Hamming distances greater than 1 an error gives a false correction.

Even More Dots Allows: Error DETECTION for Hamming Distance = 2. Error CORRECTION for Hamming Distance =1. For Hamming distances greater than 2 an error gives a false correction. For Hamming distance of 2 there is an error detected, but it can not be corrected.

Multi-dimensional Codes Code Space: 2-dimensional 5 element states Circle packing makes more efficient use of the code-space

Cannon Balls Efficient Circle packing is the same as efficient 2-d code spacing Efficient Sphere packing is the same as efficient 3-d code spacing Efficient n-dimensional sphere packing is the same as n-code spacing

Example Visualization of eight code words in a 6-typle space

Another Example: Encoding we multiply this matrix But why? You can verify that: To encode our message By our message Hamming[ ]=[ ] Hamming[ ]=[ ] Hamming[ ]=[ ] Hamming[ ]=[ ] Where multiplication is the logical AND And addition is the logical XOR

Example: Add noise If our message is Message = [ ] Our Multiplying yields Code = [ ] Lets add an error, so Pick a digit to mutate Code => [ ]

Example: Testing the message We receive the erroneous string: Code = [ ] We test it: Decoder*Code T =[0 1 1] And indeed it has an error The matrix used to decode is: To test if a code is valid: Does Decoder*Code T =[0 0 0] –Yes means its valid –No means it has error/s

Example: Repairing the message To repair the code we find the collumn in the decoder matrix whose elements are the row results of the test vector We then change We trim our received code by 3 elements and we have our original message. [ ] => [ ] Decoder*codeT is [ 0 1 1] This is the third element of our code Our repaired code is [ ]

Coding Gain Coding Rate R=k/n, k, no. of message symbol, n overall symbol Word SNR and bit SNR For a coding scheme, the coding gain at a given bit error probability is defined as the difference between the energy per information bit required by the coding scheme to achieve the given bit error probability and that by uncoded transmission.

Coding Gain Example

Encoder/Decoder of Linear Code Encoder: just xor gates Decoder: Syndrome

Interleaving Arrange data in a non-contiguous way in order to increase performancedatacontiguous Interleaving is mainly used in data communication, multimedia file formats, radio transmission (for example in satellites) or by ADSLmultimediafile formats radiotransmissionsatellitesADSL Protect the transmission against burst errorsburst errors Example –Without interleaving –With interleaving

ARQ, FEC, HEC ARQ Forward Error Correction (error correct coding) Hybrid Error Correction txrx Error detection code ACK/NACK txrx Error correction code txrx Error detection/ Correction code ACK/NACK