Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
523,93 KB
Nội dung
Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 103 BÀI 13 MÃ VÒNG 13.1 Gii thiu 13.2 Các tính cht ca mã vòng 13.3 Ma trn sinh và ma trn kim tra ca mã vòng 13.4 Mã BCH 13.1 Gii thiu nh ngha 13.1 Mt mã tuyn tính C(n, k) đc gi là mã vòng nu w = a 0 a 1 …a n–2 a n–1 là mt t mã thì v = a n–1 a 0 a 1 …a n–2 cng là mt t mã. Nói cách khác mã vòng là mã có tính vòng, có ngha là dch vòng mt t mã thì kt qu cng là mt t mã. Chú ý đây chúng ta thy vic dch vòng đc thc hin t trái sang phi (gi là dch phi), tuy nhiên vi t mã có chiu dài n bit thì vic dch vòng ngc li t phi sang trái i bit (gi là dch trái) thì kt qu cng ging vi vic dch phi (n – i) bit. Vì vy nu chúng ta dch trái (dch t phi sang trái) mt t mã thì kt qu cng là mt t mã. Tuy nhiên đây khi nói dch thì chúng ta hiu là dch phi. a thc mã Nu w = a 0 a 1 …a n–2 a n–1 là mt t mã thì w(x) = a 0 + a 1 x + … + a n–2 x n - 2 + a n–1 x n - 1 là đa thc mã tng ng vi t mã w. Vy chúng ta có mt song ánh gia các t mã vi các đa thc mã. Mi đa thc mã là mt đa thc trên trng GF(2) và có bc ≤ n – 1. Nh sau này chúng ta s thy, chúng ta s da vào các đa thc mã này đ chng minh các tính cht ca mã vòng. Ví d 13.1 Bng sau đây trình bày mt mã vòng C(7, 4). Các bn có th kim tra rng mã này là mt mã tuy n tính và có tính vòng. Thông báo u = a 0 … a k–1 T mã w = b 0 … b n–1 a thc mã w(x) = b 0 + b 1 x + … + b n–2 x n - 2 + b n–1 x n - 1 0000 0000000 0 1000 1101000 1 + x + x 3 0100 0110100 x + x 2 + x 4 1100 1011100 1 + x 2 + x 3 + x 4 0010 0011010 x 2 + x 3 + x 5 1010 1110010 1 + x + x 2 + x 5 0110 0101110 x + x 3 + x 4 + x 5 1110 1000110 1 + x 4 + x 5 0001 0001101 x 3 + x 4 + x 6 1001 1100101 1 + x + x 4 + x 6 0101 0111001 x + x 2 + x 3 + x 6 1101 1010001 1 + x 2 + x 6 0011 0010111 x 2 + x 4 + x 5 + x 6 1011 1111111 1 + x + x 2 + x 3 + x 4 + x 5 + x 6 Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 104 0111 0100011 x + x 5 + x 6 1111 1001011 1 + x 3 + x 5 + x 6 Chú ý Vì tng ca hai t mã là mt t mã nên tng ca hai đa thc mã là mt đa thc mã. w ( i ) , w ( i ) (x) w (i) là t mã do dch t mã w i bit, và w (i) (x) là đa thc mã tng ng ca w (i) . Chú ý chúng ta coi w chính là w (0) . Bây gi chúng ta s tìm mi liên h gia w (i) (x) vi w(x). Chúng ta da vào ví d trên đ tìm mi liên h này. i w (i) w (i) (x) 0 1101000 1 + x + x 3 1 0110100 x + x 2 + x 4 = x * (1 + x + x 3 ) = x * w(x) 2 0011010 x 2 + x 3 + x 5 = x 2 (1 + x + x 3 ) = x 2 * w(x) 3 0001101 x 3 + x 4 + x 6 = x 3 (1 + x + x 3 ) = x 3 * w(x) 4 1000110 1 + x 4 + x 5 = x 4 + x 5 + x 7 mod 7 5 0100011 x + x 5 + x 6 = x 5 + x 6 + x 8 mod 7 6 1010001 1 + x 2 + x 6 = x 6 + x 7 mod 7 + x 9 mod 7 Chúng ta thy rng w (i) (x) = x i * w(x) tuy nhiên nu w (i) (x) có x p vi p ≥ n thì x p đc thay bng x p mod n . Mc khác trên trng GF(2) chúng ta có x n + j = x j * (x n + 1) + x j hay x n + j mod (x n + 1) = x j T đây chúng ta có b đ sau v mi liên h gia w (i) (x) vi w(x). B đ 13.1 w (i) (x) = [x i * w(x)] mod (x n + 1) 13.2 Các tính cht ca mã vòng Trong phn này chúng ta s dn ra mt s tính cht ca mã vòng. nh lý 13.1 a thc mã khác 0 có bc nh nht là duy nht. Hay nói cách khác không tn ti hai đa thc mã khác 0, khác nhau và cùng có bc nh nht. Chng minh Gi s tn ti hai đa thc mã khác 0, khác nhau và cùng có bc nh nht là r, 0 < r < n. g(x) = g 0 + g 1 x + … + g r–1 x r - 1 + x r f(x) = f 0 + f 1 x + … + f r–1 x r - 1 + x r T đây suy ra đa thc mã g(x) + f(x) có bc nh hn r, mâu thun. Chng minh hoàn tt. Chúng ta kí hiu đa thc mã có bc nh nht là g(x) và kí hiu là g(x) = g 0 + g 1 x + … + g r–1 x r - 1 + x r nh lý 13.2 H s t do g 0 ca g(x) phi bng 1. Chng minh Gi s g 0 = 0. Suy ra g(x) = x * (g 1 + … + g r–1 x r - 2 + x r - 1 ) Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 105 t f(x) = (g 1 + … + g r–1 x n - 2 + x r - 1 ). Chúng ta suy ra f(x) cng là mt đa thc mã. Vì t mã tng ng vi f(x) là kt qu ca vic dch trái 1 bit hay dch phi (n – 1) bit t mã tng ng vi g(x). Mà bc ca f(x) bng r – 1 và d nhiên f(x) khác 0. iu này mâu thun vi đnh ngha ca g(x). T đây suy ra điu phi chng minh. nh lý 13.3 Mt đa thc v(x) trên trng GF(2) có bc ≤ n – 1 là đa thc mã nu và ch nu nó là mt bi s ca g(x). Tc là nó có th vit v(x) = q(x) * g(x). Chng minh Trc ht chúng ta chng minh nu v(x) = q(x) * g(x) và bc ca v(x) ≤ n – 1 thì v(x) là đa thc mã. Thc vy, chúng ta có v(x) = q(x) * g(x) = () ∑∑ == = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ p i i i p i i i gqgq 00 )x(*x)x(*x trong đó p là bc ca q(x) và p + r ≤ n – 1. Mà do x i * g(x) vi 0 ≤ i ≤ p là đa thc mã (tng ng vi t mã do t mã g(x) dch i bit). Nên v(x) là đa thc mã vì bng vi mt t hp tuyn tính ca các đa thc mã. Bây gi nu v(x) là đa thc mã thì chia v(x) cho g(x) chúng ta đc v(x) = q(x) * g(x) + r(x) trong đó r(x) là đa thc d và có bc nh hn b c ca g(x). Nhng đi vi các đa thc trên trng GF(2) chúng ta có th suy ra r(x) = q(x) * g(x) + v(x) Nên r(x) là mt đa thc mã. Vì vy do đnh ngha ca g(x) chúng ta suy ra r(x) = 0. Chng minh hoàn tt. T đnh lý này chúng ta gi tên đa thc g(x) là đa thc sinh, vì t g(x) có th sinh ra tt c các đa thc mã khác. nh lý 13.4 a thc sinh ca m t mã vòng C(n, k) có bc r = n – k. Chng minh Gi r là bc ca đa thc sinh g(x). T đnh lý trên chúng ta có mi đa thc mã v(x) là mt bi s ca g(x) v(x) = q(x) * g(x) Vì vy có bao nhiêu t mã thì có by nhiêu đa thc q(x). Trc ht chúng ta thy do bc ca v(x) ≤ n – 1 nên bc ca q(x) ≤ (n – 1) – r. Do đó có tng cng 2 n – r đa thc q(x) (vì q(x) có n – r h s thuc trng GF(2)) Mt khác s lng t mã là 2 k . T đây suy ra n – r = k hay r = n – k Chng minh hoàn tt. T đnh lý này chúng ta có th biu din đa thc sinh g(x) nh sau g(x) = g 0 + g 1 x + … + g n – k x n – k trong đó g 0 = g n – k = 1. nh lý 13.5 a thc sinh ca mt mã vòng C(n, k) là mt c s ca x n + 1. Chng minh T B đ 13.1 chúng ta suy ra g (i) (x) = [x i * g(x)] mod (x n + 1) Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 106 hay chúng ta có th vit x i * g(x) = q(x) * (x n + 1) + g (i) (x) Bây gi chn i = k và đ ý bc g(x) = n – k nên chúng ta suy ra q(x) = 1 tc là x k * g(x) = (x n + 1) + g (i) (x) T đây suy ra x n + 1 = x k * g(x) + g (i) (x) Mà do g (i) (x) là mt đa thc mã nên g (i) (x) phi là mt bi ca g(x), tc là chúng ta có th vit g (i) (x) = g(x) * a(x). Th vào trên chúng ta suy ra điu phi chng minh. x n + 1 = g(x) * (x k + a(x)) nh lý 13.6 Nu g(x) là mt đa thc có bc (n – k) và là c s ca (x n + 1) thì g(x) sinh ra mã vòng C(n, k), hay nói cách khác g(x) là đa thc sinh ca mt mã vòng C(n, k) nào đó. Chng minh Xét k đa thc g(x), x * g(x), …, x k – 1 * g(x). Các đa thc này đu có bc ≤ n – 1. Gi v(x) là mt t hp tuyn tính ca k đa thc này vi các h s a i ∈ GF(2). v(x) = a 0 g(x) + a 1 x * g(x) + … + a k – 1 x k – 1 * g(x) v(x) là mt đa thc có bc ≤ n – 1 và là bi s ca g(x). Có tt c 2 k đa thc v(x) khác nhau và to nên mt không gian tuyn tính ca các đa thc mã vi g(x), x * g(x), …, x k – 1 * g(x) là các đa thc làm c s. Vì vy 2 k t hp (a 0 a 1 … a k – 1 ) tng ng vi 2k đa thc này to nên mt mã tuyn tính C(n, k). Bây gi chúng ta chng minh mã này có tính vòng, tc là chng minh nu v là mt t mã thì dch v 1 bit chúng ta đc v (1) cng là mt t mã. iu này cng tng đng vi nu v(x) là mt đa thc mã thì v (1) (x) cng là mt đa thc mã. u tiên chúng ta biu din v(x) v(x) = b 0 + b 1 x + … + b n – 1 x n – 1 thì v (1) (x) = b n – 1 + b 0 x + b 1 x 2 + … + b n – 2 x n – 1 Theo B đ 13.1 chúng ta có v (1) (x) = [x * v(x)] mod (x n + 1) Da vào biu din ca v(x) và v (1) (x) chúng ta suy ra x * v(x) = b n – 1 (x n + 1) + v (1) (x) Do v(x) và (x n + 1) đu là bi ca g(x) nên v (1) (x) cng là bi ca g(x). Vì vy v (1) (x) cng là đa thc mã. Chng minh hoàn tt. 13.3 Ma trn sinh và ma trn kim tra ca mã vòng Ma trn sinh ca mã vòng T các đnh lý trên chúng ta suy ra mt t mã là mt t hp tuyn tính ca các t mã tng ng vi các đa thc mã g(x), x * g(x), …, x k – 1 * g(x). Và vi chú ý rng các đa thc g(x), x * g(x), …, x k – 1 * g(x) đc lp tuyn tính vi nhau. Vì vy ma trn sinh ca mã vòng C(n, k) s là, trong đó g 0 = g n – k = 1. Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 107 ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ −+− = − −−− − −− −− − × 44448444476 L MMMM L L L 44448444476 L MMMMM L L L 1 0 00 000 1 000 00 0 21 1 0 20 110 210 k ggg gg g kn g gg ggg gggg G kn knkn kn kn kn kn nk Ví d 13.2 Tìm mt mã vòng C(7, 4). Theo các tính cht ca mã vòng chúng ta suy ra đa thc sinh ca mã có bc bng 3 và là mt c s ca x 7 + 1. Phân tích đa thc này ra tha s chúng ta đc x 7 + 1 = (1 + x)(1 + x + x 3 )(1 + x 2 + x 3 ) đây chúng ta có hai tha s ca x 7 + 1 cùng có bc bng 3, mi tha s s sinh ra mt mã vòng C(7, 4). Bây gi chúng ta chn chng hn g(x) = (1 + x + x 3 ) T đây chúng ta suy ra ma trn sinh ca mã vòng này là ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1011000 0101100 0010110 0001011 74 G B mã này chính là b mã đc trình bày trong Ví d 13.1. Mã vòng dng h thng tìm mã vòng dng h thng, chúng ta bin đi t ma trn sinh thành ma trn sinh dng h thng. đây chúng ta chú ý rng do tính vòng nên t dng h thng loi 1 chúng ta có th dch vòng k bit đ bin đi sang dng h thng loi 2 và ngc li. Ví d t ma trn sinh trong Ví d 13.2 chúng ta bin đi nh sau thì đc ma trn sinh h thng dng 2: h 3 = h 3 + h 1 , h 4 = h 4 + h 1 + h 2 trong đó h i là hàng th i ca ma trn. ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1000101 0100111 0010110 0001011 )74(ht G Và t đây chúng ta có th có đc ma trn sinh h thng dng 1 bng cách dch vòng k = 4 bit. Kt qu chúng ta có ma trn sinh h thng dng 1 nh sau ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1011000 1110100 1100010 0110001 )74(ht G Mã hoá thành t mã h thng Ngoài vic dùng ma trn sinh h thng đ mã hoá mt thông báo thành t mã h thng chúng ta có th dùng cách sau đây đ mã hoá thông báo u = a 0 a 1 a k - 1 thành t mã h thng dng 2 w = b 0 b 1 b n–k–1 a 0 a 1 a k - 1 trong đó n – k bit b i là các n – k bit kim tra. Gi u(x) là đa thc tng ng vi thông báo u. Vì vy bc ca u(x) ≤ k – 1. Chia x n–k * u(x) cho g(x) chúng ta đc Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 108 x n–k * u(x) = q(x) * g(x) + a(x) T đây suy ra x n–k * u(x) + a(x) = q(x) * g(x) Vì x n–k * u(x) + a(x) là bi ca g(x) nên nó là đa thc mã. Và đ ý t mã tng ng vi đa thc mã này có k bit sau là k bit thông báo, đó chính là t mã h thng dng 2 tng ng vi thông báo u. Ví d 13.3 Cho mã vòng C(7, 4) có ma trn sinh là g(x) = (1 + x + x 3 ). Hãy mã hoá thông báo u = 1010 thành t mã h thng dng 2. Chúng ta có u(x) = 1 + x 2 . Nhân u(x) vi x n–k = x 3 ri chia cho g(x) chúng ta đc. x 3 * (1 + x 2 ) = x 3 + x 5 = x 2 * (1 + x + x 3 ) + x 2 T đây suy ra w(x) = x 2 + x 3 + x 5 là đa thc mã và t mã tng ng w = 0011010 là t mã h thng dng 2 tng ng vi u. Ma trn kim tra ca mã vòng tìm ma trn kim tra ca mã vòng chúng ta có th s dng cách đã bit là tìm ma trn kim tra t ma trn sinh hoc ma trn sinh h thng. Tuy nhiên đi vi mã vòng chúng ta có mt cách xác đnh ma trn kim tra nhanh chóng hn. Trc ht vì g(x) là mt c s ca x n + 1 nên chúng ta có th biu din x n + 1 = g(x) * h(x) Và chúng ta gi h(x) là đa thc đi ngu ca g(x). ý h(x) có bc k và có th đc biu din nh sau, trong đó h 0 = h k = 1 h(x) = h 0 + h 1 x + … + h k x k Gi v(x) = a 0 + a 1 x + … + a n – 1 x n – 1 là đa thc mã tng ng vi t mã v = (a 0 a 1 …a n – 1 ) Chúng ta có th biu din nh sau trong đó q(x) có bc ≤ k – 1 v(x) = q(x) * g(x) Bây gi chúng ta nhân v(x) vi h(x) và đc v(x) * h(x) = q(x) * g(x) * h(x) = q(x) * (x n + 1) = q(x) + x n * q(x) Do q(x) có bc ≤ k – 1 nên t đây chúng ta suy ra các h s ca x k , x k + 1 , …, x n–1 trong v(x) * h(x) bng 0. T cách tính h s ca x k , x k + 1 , …, x n–1 trong v(x) * h(x) theo các h s a i và h j ca v(x) và h(x) chúng ta suy ra n – k đng thc sau ∑ = − = k i iik ah 0 0 ∑ = +− = k i iik ah 0 1 0 M ∑ = −−+− = k i kniik ah 0 1 0 T các đng thc này chúng ta suy ra các tích vect sau bng 0 (a 0 a 1 … a n – 1 ) * (h k h k–1 … h 0 0 … 0) T = 0 (a 0 a 1 … a n – 1 ) * (0h k h k–1 … h 0 … 0) T = 0 M (a 0 a 1 … a n – 1 ) * (0 … 0h k h k–1 … h 0 ) T = 0 Vì vy nu chúng ta đt Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 109 ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ −−+ = −− − −− ×− 444844476 L MMMM L L L 44448444476 L MMMMM L L L 1 0 00 000 1 000 00 0 021 01 0 2 11 021 )( kn hhh hh h k h hh hhh hhhh H kkk k kk kkk nkn thì chúng ta suy ra v × H T = 0. T đây suy ra H là mt ma trn kim tra ca mã vòng. Ví d 13.4 Cho mã vòng C(7, 4) có ma trn sinh là g(x) = (1 + x + x 3 ). T đây suy ra h(x) = (1 + x + x 2 + x 4 ) Và chúng ta có ma trn kim tra ca b mã nh sau ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1110100 0111010 0011101 73 H Chú ý Mã vòng là mã cho phép thit k các mch mã hoá, sa sai và gii mã d dàng và hiu qu nên đc s dng rng rãi trong thc t. Bây gi chúng ta s trình bày ng dng ca trng GF(2 m ) trong vic xây dng các mã vòng. Trc ht chúng ta có đnh lý sau. nh lý 13.7 Cho a là mt phn t khác 0 ca trng GF(2 m ) có chu k là n, đa thc ti thiu f(x) ca a có bc là m. Thì mã có ma trn sau làm ma trn kim tra là mt mã vòng C(n, n – m), trong đó mi phn t trong ma trn bên di đc thay th bng vect m thành phn tng ng ca nó. H m× n = [1 a a 2 … a n – 2 a n–1 ] Hn na mã vòng này có đa thc sinh chính là f(x). Chng minh Trc ht chúng ta chng minh rng nu w = (b 0 b 1 b 2 …b n–2 b n–1 ) là mt t mã thì v = (b n– 1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã, t đó suy ra mã có tính vòng. Tht vy nu w là t mã thì chúng ta có w × H T = 0 hay b 0 + b 1 a + b 2 a 2 + … + b n–2 a n–2 + b n–1 a n–1 = 0 trong đó các b i ∈ GF(2) còn các a j ∈ GF(2 m ). Nhân a vào đng thc trên chúng ta suy ra b 0 a + b 1 a 2 + b 2 a 3 + … + b n–2 a n–1 + b n–1 a n = 0 hay b n–1 + b 0 a + b 1 a 2 + b 2 a 3 + … + b n–2 a n–1 = 0 tc là (b n–1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã. Th hai vì đa thc ti thiu ca a có bc là m nên m phn t 1, a, a 2 , …, a m–1 là đc lp tuyn tính. T đó suy ra m hàng ca H là đc lp tuyn tính. Vì vy mã thc s là mã vòng C(n, n – m). Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 110 Cui cùng nu biu din f(x) = f 0 + f 1 x + f 2 x 2 + … + f m–1 x m–1 + f m x m–1 (vi chú ý f 0 = f m = 1) thì do f(a) = 0 nên chúng ta suy ra w = (f 0 f 1 … f m 0 … 0) (gm n thành phn) là mt t mã. Và không tn ti đa thc mã v(x) nào có bc nh hn m, vì nu ngc li lúc đó chúng ta có do v × H T = 0 suy ra v(a) = 0. iu này mâu thun vi đnh ngha f(x) là đa thc ti thiu ca a. Chng minh hoàn tt. Ví d 13.5 Xét trng GF(2 4 ) và a có đa thc ti thiu là f(x) = 1 + x + x 4 nh trong Ví d 11.7. Chú ý a có chu k là 15. Thì ma trn sau là ma trn kim tra ca mã vòng C(15, 11) có đa thc sinh chính là f(x) ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 111101011001000 011110101100100 001111010110010 111010110010001 154 H Nu đa thc ti thiu ca a là f(x) = 1 + x + x 2 + x 3 + x 4 thì a có chu k là 5 và các phn t 1, a, , a 4 đc biu din di dng vect nh sau: 1 = (1000) a = (0100) a 2 = (0010) a 3 = (0001) a 4 = 1 + a + a 2 + a 3 = (1111) T đây suy ra ma trn sau là ma trn kim tra ca mã vòng (5, 1) ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 11000 10100 10010 10001 54 H 13.4 Mã BCH nh phân Mã BCH có tên vit tt ca ba ngi sáng lp ra nó đó là Bose, Chaudhuri và Hocquenghem. ây là mã vòng có kh nng sa đc nhiu li. Bây gi chúng ta s đa ra qui trình đ xây dng mã BCH nh phân có kh nng sa đc nhiu li. i vi các s nguyên dng m và t bt k chúng ta s xây dng mt mã BCH nh phân có các thông s sau: dài t mã: n = 2 m – 1 S bit kim tra: n – k ≤ mt Khong cách Hamming: d min ≥ 2t + 1 Trc ht chúng ta chng minh đnh lý sau đây. nh lý 13.8 Cho a là mt phn t ca trng GF(2 m ) có đa thc ti thiu là mt đa thc cn bn bc m. Thì mã có ma trn sau làm ma trn kim tra là mt mã vòng có khong cách Hamming ≥ 2t + 1, trong đó mi phn t trong ma trn bên di đc thay th bng vect m thành phn tng ng ca nó. Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 111 ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = −−−−−− −− −− −− )1)((12()2)((12()12(212 )1(5)2(5105 )1(3)2(363 122 1 1 1 1 ntnttt nn nn nn aaaa aaaa aaaa aaaa H L MMMMMM L L L Hn na đa thc sinh g(x) ca b mã là đa thc bi s chung nh nht ca các đa thc ti thiu ca các phn t a, a 3 , a 5 , …, a 2t–1 . Chng minh T đnh lý chúng ta suy ra a có chu k là n = 2 m – 1 và vì vy a là mt phn t c s ca trng GF(2 m ). Trc ht chúng ta chng minh rng nu w = (b 0 b 1 b 2 …b n–2 b n–1 ) là mt t mã thì v = (b n– 1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã, t đó suy ra mã có tính vòng. Tht vy nu w là t mã thì chúng ta có w × H T = 0 hay vit ngc li H × w T = 0 Nhân ma trn B sau vi H ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = −12 5 3 000 000 000 000 t a a a a B L MMMMM L L L chúng ta đc ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ =× −−−−− − − − 1 1 1 1 )1)((12()12(3)12(212 )1(515105 )1(3963 132 ntttt n n n aaaa aaaa aaaa aaaa HB L MMMMMM L L L Chúng ta có (B×H)×w T = B×(H×w T ) = B×0 = 0 Mà chúng ta đ ý nu dch vòng ma trn (B×H) 1 ct theo chiu t trái sang phi đc thì kt qu là ma trn H. T đây suy ra H×v T = 0 vi v là kt qu ca vic dch vòng w 1 bit (theo chiu t trái sang phi). Hay nói cách khác v × H T = 0. T đây suy ra mã có tính vòng. Th hai đ chng minh b mã có khong cách Hamming ≥ 2t + 1 chúng ta ch cn chng minh mi tp 2t ct ca ma trn H là đc lp tuyn tính. Tht vy gi s tn ti r ct có các phn t đi đu là 1 k a , 2 k a , …, r k a là có tng bng 0 trong đó r ≤ 2t. T đây chúng ta suy ra h sau, gi là h (1) 1 k a + 2 k a + … + r k a = 0 3 1 ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ k a + 3 2 ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ k a + … + ( ) 3 r k a = 0 M Lý thuyt Thôngtin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 112 12 1 − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ t k a + 12 2 − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ t k a + … + ( ) 12 − t k r a = 0 Mi phng trình trong h 1 có dng p(a) = 0 trong đó p(a) là đa thc ca a. t i k a = y i vi i = 1, 2, …, r. T đây chúng ta nhn đc h (2) sau y 1 + y 2 + … + y r = 0 y 1 3 + y 2 3 + … + y r 3 = 0 M y 1 2t - 1 + y 2 2t - 1 + … + y r 2t - 1 = 0 ý trong trng GF(2 m ) thì (y 1 + y 2 + … + y r ) 2 = y 1 2 + y 2 2 + … + y r 2 Vì vy chúng ta có h (3) sau y 1 + y 2 + … + y r = 0 y 1 2 + y 2 2 + … + y r 2 = 0 y 1 3 + y 2 3 + … + y r 3 = 0 y 1 4 + y 2 4 + … + y r 4 = 0 M y 1 2t - 1 + y 2 2t - 1 + … + y r 2t - 1 = 0 y 1 2t + y 2 2t + … + y r 2t = 0 Chúng ta ch ly r phng trình đu và vit di dng ma trn sau, gi là (4) ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ × ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ −−− 0 0 0 0 111 3 2 1 11 2 1 1 22 2 2 1 21 M M L MMMM L L L r r r rr r r y y y y yyy yyy yyy Phng trình (4) có dng Ay = 0, trong đó các phn t ca ma trn A và ca vect y là các phn t ca trng GF(2 m ). Các phn t y 1 , y 2 , …, y r là khác phn t 0 vì vy phng trình Az = 0 là có nghim không tm thng trong trng GF(2 m ). Vì vy det A = 0 (là phn t 0 ca trng GF(2 m )). Mà theo B đ 13.2 chúng ta có det A = ∏ > − ji ji yy )( vi i, j ∈ {1, 2, …, r}. (Chú ý trong trng GF(2 m ) phép tr ging vi phép cng). Mà do các phn t a q vi q = 1, 2, …, n = 2 m – 1 là phân bit nhau nên (y i – y j ) ≠ 0 ∀ i ≠ j (Chú ý y i = i k a ). Vì vy det A = ∏ > − ji ji yy )( ≠ 0. Mâu thun. T đây suy ra điu phi chng minh. Cui cùng gi g(x) = g 0 + g 1 x + g 2 x 2 + … + g n–1 x n–1 là đa thc sinh ca b mã. Do (g 0 g 1 g 2 … g n–1 ) là t mã và (g 0 g 1 g 2 … g n–1 )× H T = 0, nên suy ra g(a) = 0 g(a 3 ) = 0 g(a 5 ) = 0 M g(a 2t–1 ) = 0 Nu đt f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x) là các đa thc ti thiu ln lt ca các phn t a, a 3 , a 5 , …, a 2t–1 . T B đ 11.5 chúng ta suy ra g(x) chia ht cho f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x). t p(x) là bi s chung nh nht ca f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x). Suy ra g(x) chia ht cho p(x). Suy ra bc ca g(x) ≥ bc ca p(x). Mt khác nu biu din p(x) bng p(x) = p 0 + p 1 x + p 2 x 2 + … + p n–1 x n–1 [...]... n th ng là dùng c c xi niêm phong Cu c cách m ng máy tính và thôngtin i n t ã tác ng lên xã h i và làm thay i cách th c truy n thôngthông th ng c a dân chúng Chính ph M ã s m nh n ra r ng cùng v i s bùng n c a cu c cách m ng máy tính, s là s bùng n và t ng tr ng c a các d ch v truy n thông, tài chính i n t … Lúc ó nhu c u b o m t thôngtin c a các c quan và dân chúng s ngày càng t ng và s m ra m... các thông báo G i pi là xác su t thông báo mi và vi c ch n khóa c l p v i thông báo c g i i T hai s phân b xác su t này chúng ta suy ra s phân b xác su t c a chu i m t mã c n P (c ) pi k j i 1 trong ó v ph i c tính t ng trên t t c các c p thông báo - khóa (mi, kj) sao cho e(mi, kj) = c n ây chúng ta có th coi vi c m t mã hóa t ng t nh m t kênh truy n thông c trình bày trong BÀI 9, trong ó t p thông. .. n m t mã hóa là vi c “ng y trang” hay “che d u” thông báo, v n b n d i m t d ng khác cho nh ng ng i “ngoài cu c” không th xác nh c thông báo, v n b n g c Phép m t mã hóa th ng c kí hi u là e(m), v i m là thông báo c n m t mã hóa Trong th c t , m t mã hoá c xem nh là m t hàm, m t ánh x hay m t gi i thu t v i m t t p các thông s (ngoài thông s c n có là thông báo c n mã hoá) T ây chúng ta có khái ni m... thu t b gãy c ng ngày càng phát tri n và tinh vi h n ây có th xem là m t tr ng h p i n hình c a quá trình chi n u và phát tri n không ng ng c a hai m t c a m t v n Quay tr l i v i vi c b gãy, nh ng chuyên gia m t mã hay nh ng k t n công th ng c gi thi t bi t y thôngtin v hàm mã hoá e, hàm gi i mã d và khóa mã hóa ke Thêm vào ó, h c ng có th có nhi u thôngtin h tr nh các th ng kê v ngôn ng , ki n... tr ng m i, môi tr ng i n t Tuy nhiên chúng ta c n nh n m nh r ng i kèm v i s phát tri n c a khoa c các thôngtin ang h c k thu t, các thi t b i n t hi n i hoàn toàn có th “b t” c truy n i trên m ng, trên internet hay qua i n tho i vô tuy n, h u tuy n, sóng v tinh, … Vì v y nhu c u b o m t thôngtin ngày càng tr nên quan tr ng và c p thi t Trong các bài h c sau ây chúng ta ch y u trình bày nh ng nét... Khoa CNTT - H Bách Khoa Tp.HCM 122 Lý thuy t Thông tin S không ch c ch n v khóa l n h n ho c b ng s không ch c ch n v thông báo Vì H(M | C) là b t ng trung bình v thông báo m khi nh n c chu i m t mã c nên chúng ta có th nói r ng m t h m t mã (M, K, C) là hoàn h o n u H(M | C) = H(M) Có ngh a là vi c nh n c chu i m t mã c không giúp chúng ta bi t thêm gì v thông báo m Hay nói cách khác ngu n M và C c... P(m | c) = P(m) v i m i thông báo m M và chu i m t mã c C H qu 14.2 M t h m t mã (M, K, C) là hoàn h o n u và ch n u P(c | m) = P(c) v i m i thông báo m M và chu i m t mã c C nh lý 14.3 i u ki n c n m t h m t mã (M, K, C) là hoàn h o là nó có s l nh t là b ng s l ng thông báo ng khóa ít Ch ng minh nh Khóa này s ánh x các Xét t p thông báo M = {m1, m2, …, mn} và m t khóa k c thông báo mi khác nhau thành... cu c chi n tranh c i và sau ó kéo dài cho n t n bây gi Tuy nhiên t khi chi c máy tính u tiên ra i và kéo theo sau ó là c m t cu c cách m ng d d i v thông tin và truy n thông ã làm thay i cu c s ng c a con ng i Chúng ta không còn trao i và x lý thôngtin theo nh ng cách th c truy n th ng t n nhi u th i gian và công s c mà càng ngày càng chuy n nhi u trao i qua nh ng môi tr ng i n t nhanh chóng và hi... m khoá Khoá (key), khóa mã hóa, khóa gi i mã Khoá là m t thông s u vào c a phép mã hoá ho c gi i mã (nó không ph i là thông báo c ng nh là chu i m t mã) Khóa dùng mã hóa kí hi u là ke và khóa dùng gi i mã kí hi u là kd Trong m t s h m t mã hóa 2 khóa này chính là m t lúc Ng i so n H V n Quân - Khoa CNTT - H Bách Khoa Tp.HCM 115 Lý thuy t Thông tin ó chúng ta g i chung là k, ng c l i trong m t s h m... ng Ng i so n H V n Quân - Khoa CNTT - H Bách Khoa Tp.HCM 120 Lý thuy t Thông tin V i nh ng chu i m t mã có chi u dài 30 kí t ho c h n bi u di n cho nh ng chu i thông báo có ngh a trong ti ng Anh thì g n nh ch c ch n có th tìm ra khóa c a nó trong các ph ng pháp mã hóa nói trên Tóm l i có th nói r ng n u ã cho m t chi u dài v a c a thông báo và chu i m t mã, b t k h th ng hay ph ng pháp m t mã trên u . sau đó là c mt cuc cách mng d di v thông tin và truyn thông đã làm thay đi cuc sng ca con ngi. Chúng ta không còn trao đi và x lý thông tin theo nhng cách thc truyn th ng tn. toàn có th “bt” đc các thông tin đang đc truyn đi trên mng, trên internet hay qua đin thoi vô tuyn, hu tuyn, sóng v tinh, … Vì vy nhu cu bo mt thông tin ngày càng tr nên quan. thut vi mt tp các thông s (ngoài thông s cn có là thông báo cn mã hoá). T đây chúng ta có khái nim khoá. Khoá (key), khóa mã hóa, khóa gii mã Khoá là mt thông s đu vào ca phép