Linear codes of good error control performance Tsonka Baicheva Institute of Mathematics and Informatics Bulgarian Academy of Sciences Bulgaria.

Slides:



Advertisements
Similar presentations
Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Advertisements

Cyclic Code.
Applied Algorithmics - week7
Error Control Code.
II. Linear Block Codes. © Tallal Elshabrawy 2 Last Lecture H Matrix and Calculation of d min Error Detection Capability Error Correction Capability Error.
Information Theory Introduction to Channel Coding Jalal Al Roumy.
IV054 CHAPTER 2: Linear codes ABSTRACT
Error Detection and Correction
Transmission Errors Error Detection and Correction
Error Detection and Correction
Error detection/correction FOUR WEEK PROJECT 1 ITEMS TO BE DISCUSSED 1.0 OVERVIEW OF CODING STRENGTH (3MINS) Weight/distance of binary vectors Error detection.
Transmission Errors1 Error Detection and Correction.
Chapter 11 Error-Control CodingChapter 11 : Lecture edition by K.Heikkinen.
Error detection and correction
Error Correcting Codes To detect and correct errors Adding redundancy to the original message Crucial when it’s impossible to resend the message (interplanetary.
7/2/2015Errors1 Transmission errors are a way of life. In the digital world an error means that a bit value is flipped. An error can be isolated to a single.
Error Detection and Correction Rizwan Rehman Centre for Computer Studies Dibrugarh University.
Hamming Code Rachel Ah Chuen. Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted.
exercise in the previous class (1)
Hamming Codes 11/17/04. History In the late 1940’s Richard Hamming recognized that the further evolution of computers required greater reliability, in.
Linear codes 1 CHAPTER 2: Linear codes ABSTRACT Most of the important codes are special types of so-called linear codes. Linear codes are of importance.
Transmission Errors Error Detection and Correction
Some optimization problems in Coding theory S. M. Dodunekov Institute of Mathematics and Informatics, Bulgarian Academy of Sciences 8 “G. Bonchev” Str.,
Linear Codes.
DIGITAL COMMUNICATION Error - Correction A.J. Han Vinck.
Channel Coding Part 1: Block Coding
It is physically impossible for any data recording or transmission medium to be 100% perfect 100% of the time over its entire expected useful life. As.
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
Information and Coding Theory Linear Block Codes. Basic definitions and some examples. Juris Viksna, 2015.
On the least covering radius of the binary linear codes of dimension 6 Tsonka Baicheva and Iliya Bouyukliev Institute of Mathematics and Informatics, Bulgaria.
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
Data Link Layer: Error Detection and Correction
Codes Codes are used for the following purposes: - to detect errors - to correct errors after detection Error Control Coding © Erhan A. Ince Types: -Linear.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
ERROR CONTROL CODING Basic concepts Classes of codes: Block Codes
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.
Practical Session 10 Error Detecting and Correcting Codes.
Introduction to Coding Theory. p2. Outline [1] Introduction [2] Basic assumptions [3] Correcting and detecting error patterns [4] Information rate [5]
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
CS717 Algorithm-Based Fault Tolerance Matrix Multiplication Greg Bronevetsky.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
§6 Linear Codes § 6.1 Classification of error control system § 6.2 Channel coding conception § 6.3 The generator and parity-check matrices § 6.5 Hamming.
DIGITAL COMMUNICATIONS Linear Block Codes
ADVANTAGE of GENERATOR MATRIX:
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
Information and Coding Theory Cyclic codes Juris Viksna, 2015.
Information Theory Linear Block Codes Jalal Al Roumy.
Channel Coding Binit Mohanty Ketan Rajawat. Recap…  Information is transmitted through channels (eg. Wires, optical fibres and even air)  Channels are.
The parity bits of linear block codes are linear combination of the message. Therefore, we can represent the encoder by a linear system described by matrices.
10.1 Chapter 10 Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and.
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
Some Computation Problems in Coding Theory
Error Detection and Correction
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
INFORMATION THEORY Pui-chor Wong.
Transmission Errors Error Detection and Correction.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
Network Layer4-1 Chapter 5: The Data Link Layer Our goals: r understand principles behind data link layer services: m error detection, correction m sharing.
Exercise in the previous class (1) Define (one of) (15, 11) Hamming code: construct a parity check matrix, and determine the corresponding generator matrix.
Practical Session 10 Computer Architecture and Assembly Language.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Computer Architecture and Assembly Language
Communication Networks: Technology & Protocols
Chapter 10 Error Detection And Correction
II. Linear Block Codes.
Standard Array.
Computer Architecture and Assembly Language
Chapter 10 Error Detection and Correction
Presentation transcript:

Linear codes of good error control performance Tsonka Baicheva Institute of Mathematics and Informatics Bulgarian Academy of Sciences Bulgaria

 Biham E., Shamir A., Differential fault analysis of secret key cryptosistems, LNCS, vol. 1294, pp ,  Boneh D., DeMillo R.A., Lipton R.J., On the importance of checking cryptographic protocols for faults, LNCS, vol. 1233, pp , »The erroneous output of the cryptographic algorithm could be used to perform an attack.

Basic definitions F q =GF(q) »Linear code C is a k-dimensional subspace of F q n »Minimum distance d(C) = min d(c 1,c 2 ), c 1,c 2 є C, c 1 ≠c 2 t=|(d-1)/2| [n,k,d] q linear code with length n, dimension k, minimum distance d, over F q

Basic definitions A i the number of codewords of C of weight i. {A i | i=0, …, n} a weight distribution/spectrum of the code C. The polynomial is called weight enumerator of the code C.

Basic definitions x+C={x+c | c є C} a coset of the code C determined by the vector x є F q n. »Coset leader is a vector with the smallest weight in the coset.  i the number of coset leaders of weight i.  {  i | i=0, …,n} a coset leaders weight distribution/spectrum of the code C.

Communication system transmitterreceiverchannel error vector

Decoding to the nearest codeword through a BSC 1. Find the unique code word v for which the Hamming distance d(v,w) is minimal and to decode correctly w to v. The probability of correct decoding The probability of error

Decoding to the nearest codeword through a BSC 2. To detect an error if there are more than one codewords with minimal Hamming distance d(v,w). 3. To decode erroneously to a different codeword v' if the channel error have changed v in such a way that the closest codeword to w is v', i.e. to have an undetectable error.

Undetected error probability v+e=w=v’+e’ => v’=v+e-e’ =v+e’’ Undetected error occurs iff e’’ is a nonzero codeword. »The probability of undetected error

Undetected error probability after t-error correction Q h,l the number of vectors of weight l in the cosets of minimum weight h, excluding the coset leaders. » Probability of an undetected error after t-error correction » Optimal code P ue (t) (C,ε) is minimal

Criteria whether a code is suitable for error correction A code C is called t-proper (or proper when t=0 and the code is only used for error detection) if P ue (t) (C,ε) is monotonous A code C is called t-good if P ue (t) (C,ε) ≤ P ue (t) (C,(q-1)/q) for all ε є [0,(q-1)/q]

Discrete sufficient conditions Dodunekova and Dodunekov’98 Theorem If then C is t-good for error correction. Theorem If then C is t-proper for error correction. A i (t) the weight distribution of the vectors in the cosets with coset leaders of weight at most t, excluding the leaders. V q (t) the volume of the q-ary sphere of radius t in F q n m (i) =m(m-1)…(m-i+1)

Complexity of checking t-goodness and t-properness » The problem of finding the weight distribution of C is NP hard. » The determination of  i and Q h,l are computationally hard problems.

Results All binary cyclic codes of n ≤ 33 (Downie&Sloane’85) Some binary distance-optimal codes of n ≤ 33 (Jaffe’97) »Having A i (B i ),  i and Q h,l determined the values of P ue (t) and P corr can be calculated and compared in a linear time.

Examples [21,10,4] binary cyclic code, P ue (t) for t=0, t=1

Examples [21,10,5] binary cyclic code, P ue (t) t=0, t=1, t=2

Examples [25,5,12] binary distance-optimal codes, P ue (t)

Examples [25,5,12] binary distance-optimal codes, P ue (t)

 Wright A., Kinast J., McCarty J., Low-Latency Cryptographic Protection for SCADA Communications, LNCS, vol. 3089, pp , »Cryptographic protocol that uses the Cyclic Redundancy Check (CRC) transmitted by the existing SCADA (Supervisory Control And Data Acquisition) equipment to achieve string integrity while introducing minimal latency.

Cyclic Redundancy Check Codes Let C be a cyclic code If c 0,c 1,…,c n-1 є C, then c n-1,c 0,…,c n-2 є C »C and all its shortenings C` are CRC codes or polynomial codes C` are almost always non cyclic It is possible to use the same fast encoders and decoders as can be used with the original cyclic code

Error detection performance of CRC »g(x) is the generator polynomial of the CRC code of degree p ‼ g(x) is not divisible by x  has at least 2 nonzero coefficients Theorem 1 A CRC code with generator polynomial of degree p can detect any single error.

Burst error detection »Burst-error pattern of length d+1. All corrupted bits are concentrated between bits j and d+j Theorem 2 A CRC code with generator polynomial of degree p can detect all burst errors of length p or less.

Burst error detection Let f(b) be the fraction of undetected burst errors of length b  If b<p+1  If b=p+1  If b>p+1

8-bits CRC code  DARC x 8 +x 5 +x 4 +x 3 +1 ‼ Standardized polynomial might not be good for most lengths Optimal for 9≥n≥17 (d=5), but with d=2 for n≥18 It is used for 24≤n≤56, where performs far from the optimal

Comparison between some CRCs for n=17 P ue for DARK-8, CRC-8, ATM HEC-8, C 1

Comparison between some CRCs for n=56 P ue for DARK-8, CRC-8, CRC-7, P 1 (7-bit CRC)

Notes The usual practice is to select a standardized CRC polynomial, but very often they provide less error control capability than may be achieved for the given number of CRC bits. Even if a good published polynomial is available, there is generally no published guidance on what range of data word lengths it is good.

‼ Complete investigations of all possible polynomials with given degree will help in selecting the most effective polynomial for any particular application all CRC codes of up to 10 bit redundancy are classified and their orders are determined weight spectra of the duals coset leaders weight spectra minimum distances of all codes and of all its shortenings are computed

Procedure for polynomial selection Fix the degree p of the polynomial. Choose polynomials of ord (g(x)) ≥ max n. Consider only the polynomials of maximum minimum distance. If they are too much, choose only those having the smallest number of codewords of minimum weight. For the particular channel error probability ε at which the code will operate, choose the code with smallest P ue. If the code will be used for error correction, choose the one with the biggest P corr.

t=| ̱( d-1)/2 ̱ |, Covering radius R

Quasi-perfect codes »t=R Perfect codes [n,n,1] q 0 codes for n≥1; [2s+1,1,2s+1] q s repetition codes for s≥1; Hamming codes; binary and ternary Golay codes; »t=R+1 Quasi-perfect codes

Classification of binary linear quasi-perfect codes k/n ? 11 ?? 12 ? 13 ????? 14 ???