Cryptography Reference
In-Depth Information
By permuting the first two vectors of the canonical base of F 2 , we obtain a new
generator matrix of the same parity check code:
G = 011
101
In this example, we have just seen that the generator matrix of a block code is
not unique. By permuting the rows or the columns of a generator matrix or by
adding one or several other rows to a row, which means considering a new base
in F 2 , it is always possible to write a generator matrix of a block code in the
following form:
10
···
0
p 0 , 1
···
p 0 ,l
···
p 0 ,n−k
01
···
0
p 1 , 1
···
p 1 ,l
···
p 1 ,n−k
G = I k
P =
(4.6)
.
.
.
.
.
.
···
···
···
00 ...
1
p k− 1 , 1
...
p k− 1 ,l
...
p k− 1 ,n−k
where I k is the identity matrix k
×
k and P amatrix k
×
( n
k ) used to calculate
the ( n
k ) redundancy symbols.
Written thus, the generator matrix G is in a reduced form and produces code-
words of the form:
c = dd P
(4.7)
The code is therefore systematic. Following 4.7, the code is said to be systematic
when there exist k indices i 0 ,i 1 ,...,i k− 1 , such that for any data word d ,the
associated codeword c satisfies the relation:
c i q = d q ,
q =0 , 1 ,
···
,k
1 .
4.1.2 Dual code and parity check matrix
Before tackling the notion of dual code, let us define the orthogonality between
two vectors made up of n symbols. Two vectors x =[ x 0 ···
x j ···
x n− 1 ] and
y =[ y 0 ···
y j ···
y n− 1 ] are orthogonal ( x
y ) if their scalar product denoted
x , y
is null.
n− 1
x
y
x , y
=
x j y j = 0
j =0
With each linear block code C ( n, k ) , we can associate a dual linear block
code that verifies that any word of the dual code is orthogonal to any word of
the code C ( n, k ) . The dual of code C ( n, k ) is therefore a vector subspace of F 2
made up of 2 n−k codewords of n symbols. This vector subspace is the orthogonal
Search WWH ::




Custom Search