-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotes.txt
33 lines (23 loc) · 1.04 KB
/
notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
k = message length (223)
s = error correcting power (16)
n = k + 2s total message length (255)
j = number of distinct digit values (for each digit in message/codeword) (256)
k digit message:
m_0, m_1, ..., m_(k-1)
message polynomial:
m(x) = m_0 + m_1 x + m_2 x^2 + ... + m_(k-1) x^(k-1)
map all distinct digit values (all j of them) to elements in a field F
F[x] = set of polynomials with coefficients in F
g(x) = (x - alpha) * (x - alpha^2) ... (x - alpha^(2s)) generator polynomial
where alpha is a primitive (generator) element of GF(p^r)
Has 32 roots, alpha through alpha^32
k digit messages are mapped to a multiple of g(x). All codewords are multiples
of g(x)
R(x) = C(x) + E(x)
E(x) = E_0 + E_1 x + ... + E_(n-1) x^(n-1)
Non-zero error polynomial coefficients are errors.
position of errors held in an array that's up to 16 elements large:
j_1, j_2, ..., j_s
each j_i is a distinct integer between 0 and n-1 (254)
X_i = alpha^(j_i), the j_ith power of alpha, a GF256 number between 1 and 255
Y_i = E_(j_i), the GF256 magnitude of the ith error