1 / 45

450 likes | 611 Views

EE 6331, Spring, 2009 Advanced Telecommunication. Zhu Han Department of Electrical and Computer Engineering Class 20 Apr. 9 th , 2009. Outline. Review ARQ Linear Code Scrambler Cyclic Code Encryption Basics. Automatic Repeat-reQuest (ARQ). Alice and Bob on their cell phones

Download Presentation
## EE 6331, Spring, 2009 Advanced Telecommunication

**An Image/Link below is provided (as is) to download presentation**
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.
Content is provided to you AS IS for your information and personal use only.
Download presentation by click this link.
While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

**EE 6331, Spring, 2009Advanced Telecommunication**Zhu Han Department of Electrical and Computer Engineering Class 20 Apr. 9th, 2009**Outline**Review ARQ Linear Code Scrambler Cyclic Code Encryption Basics ECE6331**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?” ECE6331**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 = [1 1 1 1] Message = [1 1 0 1] Noise = [0 0 1 0] ECE6331**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 ECE6331**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. ECE6331**Another Example: Encoding**To encode our message But why? we multiply this matrix You can verify that: Hamming[1 0 0 0]=[1 0 0 0 0 1 1] Hamming[0 1 0 0]=[0 1 0 0 1 0 1] Hamming[0 0 1 0]=[0 0 1 0 1 1 0] Hamming[0 0 0 1]=[0 0 0 1 1 1 1] By our message Where multiplication is the logical AND And addition is the logical XOR ECE6331**Example: Add noise**• If our message is Message = [0 1 1 0] • Our Multiplying yields Code = [0 1 1 0 0 1 1] Lets add an error, so Pick a digit to mutate Code => [0 1 0 0 0 1 1] ECE6331**Example: Testing the message**The matrix used to decode is: To test if a code is valid: • Does Decoder*CodeT =[0 0 0] • Yes means its valid • No means it has error/s • We receive the erroneous string: Code = [0 1 0 0 0 1 1] • We test it: Decoder*CodeT =[0 1 1] • And indeed it has an error ECE6331**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. [0 1 1 0 0 1 1] => [0 1 1 0] • Decoder*codeT is [ 0 1 1] • This is the third element of our code • Our repaired code is [0 1 1 0 0 1 1] ECE6331**Coding Gain Example**ECE6331**ARQ, FEC, HEC**• ARQ • Forward Error Correction (error correct coding) • Hybrid Error Correction Error detection code tx rx ACK/NACK Error correction code tx rx Error detection/ Correction code tx rx ACK/NACK ECE6331**Important Hamming Codes**• Hamming (7,4,3)-code. It has 16 codewords of length 7. It can be used to send 27=128 messages and can be used to correct1 error. • Golay (23,12,7) -code. It has 4 096 codewords. It can be usedto transmit 8 3888 608 messages and can correct 3 errors. • Quadratic residue (47,24,11)-code. It has16 777 216codewords and can be used to transmit 140 737 488 355 238messages and correct 5 errors. ECE6331**Reed–Muller code**ECE6331**Scrambling**• Example 7.2 • Exercise: 100000000000 ECE6331**Scrambling Example**• Scrambler • Descrambler ECE6331**Cyclic code**• Cyclic codes are of interest and importance because • They posses rich algebraic structure that can be utilized in a variety of ways. • They have extremely concise specifications. • They can be efficiently implemented using simple shift register • Many practically important codes are cyclic • In practice, cyclic codes are often used for error detection (Cyclic redundancy check, CRC) • Used for packet networks • When an error is detected by the receiver, it requests retransmission • ARQ ECE6331**BASICDEFINITION of Cyclic Code**ECE6331**FREQUENCY of CYCLIC CODES**ECE6331**EXAMPLE of a CYCLIC CODE**ECE6331**POLYNOMIALS over GF(q)**ECE6331**EXAMPLE**ECE6331**Cyclic Code Encoder**ECE6331**Cyclic Code Decoder**• Divider • Similar structure as multiplier for encoder ECE6331**Cyclic Redundancy Checks (CRC)**ECE6331**Example of CRC**ECE6331**Checking for errors**ECE6331**Capability of CRC**• An error E(X) is undetectable if it is divisible by G(x). The following can be detected. • All single-bit errors if G(x) has more than one nonzero term • All double-bit errors if G(x) has a factor with three terms • Any odd number of errors, if P(x) contain a factor x+1 • Any burst with length less or equal to n-k • A fraction of error burst of length n-k+1; the fraction is 1-2^(-(-n-k-1)). • A fraction of error burst of length greater than n-k+1; the fraction is 1-2^(-(n-k)). • Powerful error detection; more computation complexity compared to Internet checksum ECE6331**BCH Code**• Bose, Ray-Chaudhuri, Hocquenghem • Multiple error correcting ability • Ease of encoding and decoding • Page 653 • Most powerful cyclic code • For any positive integer m and t<2^(m-1), there exists a t-error correcting (n,k) code with n=2^m-1 and n-k<=mt. • Industry standards • (511, 493) BCH code in ITU-T. Rec. H.261 “video codec for audiovisual service at kbit/s” a video coding a standard used for video conferencing and video phone. • (40, 32) BCH code in ATM (Asynchronous Transfer Mode) ECE6331**BCH Performance**ECE6331**Reed-Solomon Codes**• An important subclass of non-binary BCH • Page 654 • Wide range of applications • Storage devices (tape, CD, DVD…) • Wireless or mobile communication • Satellite communication • Digital television/Digital Video Broadcast(DVB) • High-speed modems (ADSL, xDSL…) ECE6331**1971: Mariner 9**• Mariner 9 used a [32,6,16] Reed-Mullercode to transmit its grey images of Mars. camera rate: 100,000 bits/second transmission speed:16,000 bits/second ECE6331**1979+: Voyagers I & II**• Voyagers I & II used a [24,12,8] Golay code to send its color images of Jupiter and Saturn. • Voyager 2 traveled further to Uranus and Neptune. Because of the higher error rate it switched to the more robust Reed-Solomon code. ECE6331**Modern Codes**• More recently Turbo codeswere invented, which are used in 3G cell phones, (future) satellites,and in the Cassini-Huygens spaceprobe [1997–]. • Other modern codes: Fountain, Raptor, LT, online codes… • Next, next class ECE6331**Error Correcting Codes**imperfectness of a given code as the difference between the code's required Eb/No to attain a given word error probability (Pw), and the minimum possible Eb/No required to attain the same Pw, as implied by the sphere-packing bound for codes with the same block size k and code rate r. ECE6331**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. • 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. ECE6331**Encryption – cipher taxonomy**CIPHERS ROTORMACHINES CLASSICALCIPHERS MODERN CIPHERS PRIVATE KEY SUPERPOSITION PUBLIC KEY Quantum CIPHERS TRANSPOSITION ECE6331**Transposition Method**• Da Vinci’s code • Ex. I am a student I m s u e t a a t d n ECE6331**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 ECE6331**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. • German Enigma machine used during World War II for submarine. Movie U571, Italian Job ECE6331**Key**ECE6331**Public Key System - RSA**• Named after its inventors Ron Rivest, Adi Shamir and Len Adleman • Base on Number Theory y=ex (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 ECE6331**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. ECE6331**Quantum Cryptography**• Use physics law, if the signal is measured (eavesdropped), the receiver can always detected. ECE6331**Mission is really impossible**When you see it, the information has been already changed ECE6331

More Related