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

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

Jan 05, 2016

Download

Documents

Cori Watts
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Linear codes of good error control performance Tsonka Baicheva Institute of Mathematics and Informatics Bulgarian Academy of Sciences Bulgaria.

Linear codes of good error control performance

Tsonka Baicheva

Institute of Mathematics and Informatics Bulgarian Academy of Sciences

Bulgaria

Page 2: 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. 513-525, 1997.

Boneh D., DeMillo R.A., Lipton R.J., On the importance of checking cryptographic protocols for faults, LNCS, vol. 1233, pp. 37-51, 1997.

» The erroneous output of the cryptographic algorithm could be used to perform an attack.

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

Basic definitions

• Fq=GF(q) » Linear code C is a k-dimensional subspace

of Fqn

» Minimum distance d(C) = min d(c1,c2), c1,c2 є C, c1≠c2

t=|(d-1)/2|

• [n,k,d]q linear code with length n, dimension k, minimum distance d, over Fq

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

Basic definitions

• Ai the number of codewords of C of weight i. {Ai | i=0, …, n} a weight distribution/spectrum of the code C.

• The polynomial is called weight enumerator of the code C.

n

i

ii zAzA

0

)(

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

Basic definitions

• x+C={x+c | c є C} a coset of the code C determined by the vector x є Fq

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.

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

Communication system

transmitter receiverchannelv w

error vector

e

w v e

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

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 1err corrP P

0

(1 )1

in

n icorr i

i

Pq

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

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.

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

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

1

( , ) (1 )1

1 (1 )1

inn i

ue ii

k n ni

P C Aq

qq B

q

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

Undetected error probability after t-error correction

• Qh,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 Pue(t)(C,ε) is minimal

( ),

0 0

( , ) (1 )1

lt nt n l

ue h lh l

P C Qq

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

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

Pue(t)(C,ε) is monotonous

• A code C is called t-good if

Pue(t)(C,ε) ≤ Pue

(t)(C,(q-1)/q)

for all ε є [0,(q-1)/q]

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

Discrete sufficient conditionsDodunekova and Dodunekov’98

Theorem If

then C is t-good for error correction.Theorem If

then C is t-proper for error correction. Ai

(t) the weight distribution of the vectors in the cosets with coset leaders of weight at most t, excluding the leaders.

Vq(t) the volume of the q-ary sphere of radius t in Fqn

m(i)=m(m-1)…(m-i+1)

l

ti

l

ti

ti

i

iti

i

i ntlforAn

lqA

n

l

1

1

1

)(

)(

)()(

)(

)( ...2)1(

ntlforAn

lqtVqq

l

ti

ti

i

ilq

nkn ...1)(1

)(

)(

)()(

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

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 Qh,l are computationally hard problems.

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

Results

• All binary cyclic codes of n ≤ 33 (Downie&Sloane’85)

• Some binary distance-optimal codes of n ≤ 33 (Jaffe’97)

» Having Ai(Bi), i and Qh,l determined the values of Pue

(t) and Pcorr can be calculated and compared in a linear time.

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

Examples

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

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

Examples

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

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

Examples

[25,5,12] binary distance-optimal codes, Pue(t)

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

Examples

[25,5,12] binary distance-optimal codes, Pue(t)

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

Wright A., Kinast J., McCarty J., Low-Latency Cryptographic Protection for SCADA Communications, LNCS, vol. 3089 , pp.263-277, 2004.

» 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.

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

Cyclic Redundancy Check Codes

• Let C be a cyclic code If c0,c1,…,cn-1 є C, then cn-1,c0,…,cn-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

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

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.

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

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.

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

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

2 1

# of undetected errors of length p+1 1 1( )

total # of errors of length p+1 2 2b pf b

2

2

# of undetected errors of length > p+1 2 1( )

total # of errors of length > p+1 2 2

b p

b pf b

( ) 0f b

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

8-bits CRC code

DARC x8+x5+x4+x3+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

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

Comparison between some CRCs for n=17

Pue for DARK-8, CRC-8, ATM HEC-8, C1

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

Comparison between some CRCs for n=56

Pue for DARK-8, CRC-8, CRC-7, P1(7-bit CRC)

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

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.

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

‼ 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

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

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 Pue. If the code will be used for error correction, choose the one with the biggest Pcorr.

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

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

nqF

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

Quasi-perfect codes

» t=R Perfect codes

• [n,n,1]q0 codes for n≥1;

• [2s+1,1,2s+1]qs repetition codes for s≥1;

• Hamming codes;• binary and ternary Golay codes;

» t=R+1 Quasi-perfect codes

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

Classification of binary linear quasi-perfect codes

k/n 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

2

3

4

5

6

7

8

9

10 ?11 ? ?12 ?13 ? ? ? ? ?14 ? ? ?