Lí thuyết thông tin BKHCM

34 224 0
Lí thuyết thông tin BKHCM

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Lý thuyt Thông tin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 103 BÀI 13 MÃ VÒNG 13.1 Gii thiu 13.2 Các tính cht ca mã vòng 13.3 Ma trn sinh và ma trn kim tra ca mã vòng 13.4 Mã BCH 13.1 Gii thiu nh ngha 13.1 Mt mã tuyn tính C(n, k) đc gi là mã vòng nu w = a 0 a 1 …a n–2 a n–1 là mt t mã thì v = a n–1 a 0 a 1 …a n–2 cng là mt t mã. Nói cách khác mã vòng là mã có tính vòng, có ngha là dch vòng mt t mã thì kt qu cng là mt t mã. Chú ý  đây chúng ta thy vic dch vòng đc thc hin t trái sang phi (gi là dch phi), tuy nhiên vi t mã có chiu dài n bit thì vic dch vòng ngc li t phi sang trái i bit (gi là dch trái) thì kt qu cng ging vi vic dch phi (n – i) bit. Vì vy nu chúng ta dch trái (dch t phi sang trái) mt t mã thì kt qu cng là mt t mã. Tuy nhiên  đây khi nói dch thì chúng ta hiu là dch phi. a thc mã Nu w = a 0 a 1 …a n–2 a n–1 là mt t mã thì w(x) = a 0 + a 1 x + … + a n–2 x n - 2 + a n–1 x n - 1 là đa thc mã tng ng vi t mã w. Vy chúng ta có mt song ánh gia các t mã vi các đa thc mã. Mi đa thc mã là mt đa thc trên trng GF(2) và có bc ≤ n – 1. Nh sau này chúng ta s thy, chúng ta s da vào các đa thc mã này đ chng minh các tính cht ca mã vòng. Ví d 13.1 Bng sau đây trình bày mt mã vòng C(7, 4). Các bn có th kim tra rng mã này là mt 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 thc 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ý thuyt Thông tin Ngi son H Vn 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ì tng ca hai t mã là mt t mã nên tng ca hai đa thc mã là mt đa thc mã. w ( i ) , w ( i ) (x) w (i) là t mã do dch t mã w i bit, và w (i) (x) là đa thc mã tng ng ca w (i) . Chú ý chúng ta coi w chính là w (0) . Bây gi chúng ta s tìm mi liên h gia w (i) (x) vi w(x). Chúng ta da vào ví d trên đ tìm mi 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 thy rng w (i) (x) = x i * w(x) tuy nhiên nu w (i) (x) có x p vi p ≥ n thì x p đc thay bng x p mod n . Mc khác trên trng 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 mi liên h gia w (i) (x) vi w(x). B đ 13.1 w (i) (x) = [x i * w(x)] mod (x n + 1) 13.2 Các tính cht ca mã vòng Trong phn này chúng ta s dn ra mt s tính cht ca mã vòng. nh lý 13.1 a thc mã khác 0 có bc nh nht là duy nht. Hay nói cách khác không tn ti hai đa thc mã khác 0, khác nhau và cùng có bc nh nht. Chng minh Gi s tn ti hai đa thc mã khác 0, khác nhau và cùng có bc nh nht 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 thc mã g(x) + f(x) có bc nh hn r, mâu thun. Chng minh hoàn tt. Chúng ta kí hiu đa thc mã có bc nh nht là g(x) và kí hiu 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 ca g(x) phi bng 1. Chng minh Gi s g 0 = 0. Suy ra g(x) = x * (g 1 + … + g r–1 x r - 2 + x r - 1 ) Lý thuyt Thông tin Ngi son H Vn 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) cng là mt đa thc mã. Vì t mã tng ng vi f(x) là kt qu ca vic dch trái 1 bit hay dch phi (n – 1) bit t mã tng ng vi g(x). Mà bc ca f(x) bng r – 1 và d nhiên f(x) khác 0. iu này mâu thun vi đnh ngha ca g(x). T đây suy ra điu phi chng minh. nh lý 13.3 Mt đa thc v(x) trên trng GF(2) có bc ≤ n – 1 là đa thc mã nu và ch nu nó là mt bi s ca g(x). Tc là nó có th vit v(x) = q(x) * g(x). Chng minh Trc ht chúng ta chng minh nu v(x) = q(x) * g(x) và bc ca v(x) ≤ n – 1 thì v(x) là đa thc mã. Thc vy, 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à bc ca q(x) và p + r ≤ n – 1. Mà do x i * g(x) vi 0 ≤ i ≤ p là đa thc mã (tng ng vi t mã do t mã g(x) dch i bit). Nên v(x) là đa thc mã vì bng vi mt t hp tuyn tính ca các đa thc mã. Bây gi nu v(x) là đa thc 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 thc d và có bc nh hn b c ca g(x). Nhng đi vi các đa thc trên trng GF(2) chúng ta có th suy ra r(x) = q(x) * g(x) + v(x) Nên r(x) là mt đa thc mã. Vì vy do đnh ngha ca g(x) chúng ta suy ra r(x) = 0. Chng minh hoàn tt. T đnh lý này chúng ta gi tên đa thc g(x) là đa thc sinh, vì t g(x) có th sinh ra tt c các đa thc mã khác. nh lý 13.4 a thc sinh ca m t mã vòng C(n, k) có bc r = n – k. Chng minh Gi r là bc ca đa thc sinh g(x). T đnh lý trên chúng ta có mi đa thc mã v(x) là mt bi s ca g(x) v(x) = q(x) * g(x) Vì vy có bao nhiêu t mã thì có by nhiêu đa thc q(x). Trc ht chúng ta thy do bc ca v(x) ≤ n – 1 nên bc ca q(x) ≤ (n – 1) – r. Do đó có tng cng 2 n – r đa thc q(x) (vì q(x) có n – r h s thuc trng GF(2)) Mt khác s lng t mã là 2 k . T đây suy ra n – r = k hay r = n – k Chng minh hoàn tt. T đnh lý này chúng ta có th biu din đa thc 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 thc sinh ca mt mã vòng C(n, k) là mt c s ca x n + 1. Chng minh T B đ 13.1 chúng ta suy ra g (i) (x) = [x i * g(x)] mod (x n + 1) Lý thuyt Thông tin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 106 hay chúng ta có th vit x i * g(x) = q(x) * (x n + 1) + g (i) (x) Bây gi chn i = k và đ ý bc g(x) = n – k nên chúng ta suy ra q(x) = 1 tc 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à mt đa thc mã nên g (i) (x) phi là mt bi ca g(x), tc là chúng ta có th vit g (i) (x) = g(x) * a(x). Th vào trên chúng ta suy ra điu phi chng minh. x n + 1 = g(x) * (x k + a(x)) nh lý 13.6 Nu g(x) là mt đa thc có bc (n – k) và là c s ca (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 thc sinh ca mt mã vòng C(n, k) nào đó. Chng minh Xét k đa thc g(x), x * g(x), …, x k – 1 * g(x). Các đa thc này đu có bc ≤ n – 1. Gi v(x) là mt t hp tuyn tính ca k đa thc này vi 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à mt đa thc có bc ≤ n – 1 và là bi s ca g(x). Có tt c 2 k đa thc v(x) khác nhau và to nên mt không gian tuyn tính ca các đa thc mã vi g(x), x * g(x), …, x k – 1 * g(x) là các đa thc làm c s. Vì vy 2 k t hp (a 0 a 1 … a k – 1 ) tng ng vi 2k đa thc này to nên mt mã tuyn tính C(n, k). Bây gi chúng ta chng minh mã này có tính vòng, tc là chng minh nu v là mt t mã thì dch v 1 bit chúng ta đc v (1) cng là mt t mã. iu này cng tng đng vi nu v(x) là mt đa thc mã thì v (1) (x) cng là mt đa thc mã. u tiên chúng ta biu din 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) Da vào biu din ca 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à bi ca g(x) nên v (1) (x) cng là bi ca g(x). Vì vy v (1) (x) cng là đa thc mã. Chng minh hoàn tt. 13.3 Ma trn sinh và ma trn kim tra ca mã vòng Ma trn sinh ca mã vòng T các đnh lý trên chúng ta suy ra mt t mã là mt t hp tuyn tính ca các t mã tng ng vi các đa thc mã g(x), x * g(x), …, x k – 1 * g(x). Và vi chú ý rng các đa thc g(x), x * g(x), …, x k – 1 * g(x) đc lp tuyn tính vi nhau. Vì vy ma trn sinh ca mã vòng C(n, k) s là, trong đó g 0 = g n – k = 1. Lý thuyt Thông tin Ngi son H Vn 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 mt mã vòng C(7, 4). Theo các tính cht ca mã vòng chúng ta suy ra đa thc sinh ca mã có bc bng 3 và là mt c s ca x 7 + 1. Phân tích đa thc này ra tha 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 tha s ca x 7 + 1 cùng có bc bng 3, mi tha s s sinh ra mt mã vòng C(7, 4). Bây gi chúng ta chn chng hn g(x) = (1 + x + x 3 ) T đây chúng ta suy ra ma trn sinh ca 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 dng h thng  tìm mã vòng dng h thng, chúng ta bin đi t ma trn sinh thành ma trn sinh dng h thng.  đây chúng ta chú ý rng do tính vòng nên t dng h thng loi 1 chúng ta có th dch vòng k bit đ bin đi sang dng h thng loi 2 và ngc li. Ví d t ma trn sinh trong Ví d 13.2 chúng ta bin đi nh sau thì đc ma trn sinh h thng dng 2: h 3 = h 3 + h 1 , h 4 = h 4 + h 1 + h 2 trong đó h i là hàng th i ca ma trn. ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1000101 0100111 0010110 0001011 )74(ht G Và t đây chúng ta có th có đc ma trn sinh h thng dng 1 bng cách dch vòng k = 4 bit. Kt qu chúng ta có ma trn sinh h thng dng 1 nh sau ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1011000 1110100 1100010 0110001 )74(ht G Mã hoá thành t mã h thng Ngoài vic dùng ma trn sinh h thng đ mã hoá mt thông báo thành t mã h thng 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 thng dng 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 kim tra. Gi u(x) là đa thc tng ng vi thông báo u. Vì vy bc ca u(x) ≤ k – 1. Chia x n–k * u(x) cho g(x) chúng ta đc Lý thuyt Thông tin Ngi son H Vn 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à bi ca g(x) nên nó là đa thc mã. Và đ ý t mã tng ng vi đa thc mã này có k bit sau là k bit thông báo, đó chính là t mã h thng dng 2 tng ng vi thông báo u. Ví d 13.3 Cho mã vòng C(7, 4) có ma trn sinh là g(x) = (1 + x + x 3 ). Hãy mã hoá thông báo u = 1010 thành t mã h thng dng 2. Chúng ta có u(x) = 1 + x 2 . Nhân u(x) vi x n–k = x 3 ri 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 thc mã và t mã tng ng w = 0011010 là t mã h thng dng 2 tng ng vi u. Ma trn kim tra ca mã vòng  tìm ma trn kim tra ca mã vòng chúng ta có th s dng cách đã bit là tìm ma trn kim tra t ma trn sinh hoc ma trn sinh h thng. Tuy nhiên đi vi mã vòng chúng ta có mt cách xác đnh ma trn kim tra nhanh chóng hn. Trc ht vì g(x) là mt c s ca x n + 1 nên chúng ta có th biu din x n + 1 = g(x) * h(x) Và chúng ta gi h(x) là đa thc đi ngu ca g(x).  ý h(x) có bc k và có th đc biu din nh sau, trong đó h 0 = h k = 1 h(x) = h 0 + h 1 x + … + h k x k Gi v(x) = a 0 + a 1 x + … + a n – 1 x n – 1 là đa thc mã tng ng vi t mã v = (a 0 a 1 …a n – 1 ) Chúng ta có th biu din nh sau trong đó q(x) có bc ≤ k – 1 v(x) = q(x) * g(x) Bây gi chúng ta nhân v(x) vi 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ó bc ≤ k – 1 nên t đây chúng ta suy ra các h s ca x k , x k + 1 , …, x n–1 trong v(x) * h(x) bng 0. T cách tính h s ca x k , x k + 1 , …, x n–1 trong v(x) * h(x) theo các h s a i và h j ca v(x) và h(x) chúng ta suy ra n – k đng thc 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 thc này chúng ta suy ra các tích vect sau bng 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ì vy nu chúng ta đt Lý thuyt Thông tin Ngi son H Vn 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à mt ma trn kim tra ca mã vòng. Ví d 13.4 Cho mã vòng C(7, 4) có ma trn 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 trn kim tra ca b mã nh sau ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = × 1110100 0111010 0011101 73 H Chú ý Mã vòng là mã cho phép thit k các mch mã hoá, sa sai và gii mã d dàng và hiu qu nên đc s dng rng rãi trong thc t. Bây gi chúng ta s trình bày ng dng ca trng GF(2 m ) trong vic xây dng các mã vòng. Trc ht chúng ta có đnh lý sau. nh lý 13.7 Cho a là mt phn t khác 0 ca trng GF(2 m ) có chu k là n, đa thc ti thiu f(x) ca a có bc là m. Thì mã có ma trn sau làm ma trn kim tra là mt mã vòng C(n, n – m), trong đó mi phn t trong ma trn bên di đc thay th bng vect m thành phn tng ng ca nó. H m× n = [1 a a 2 … a n – 2 a n–1 ] Hn na mã vòng này có đa thc sinh chính là f(x). Chng minh Trc ht chúng ta chng minh rng nu w = (b 0 b 1 b 2 …b n–2 b n–1 ) là mt t mã thì v = (b n– 1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã, t đó suy ra mã có tính vòng. Tht vy nu 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 thc 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 tc là (b n–1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã. Th hai vì đa thc ti thiu ca a có bc là m nên m phn t 1, a, a 2 , …, a m–1 là đc lp tuyn tính. T đó suy ra m hàng ca H là đc lp tuyn tính. Vì vy mã thc s là mã vòng C(n, n – m). Lý thuyt Thông tin Ngi son H Vn Quân - Khoa CNTT - H Bách Khoa Tp.HCM 110 Cui cùng nu biu din f(x) = f 0 + f 1 x + f 2 x 2 + … + f m–1 x m–1 + f m x m–1 (vi 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) (gm n thành phn) là mt t mã. Và không tn ti đa thc mã v(x) nào có bc nh hn m, vì nu ngc li lúc đó chúng ta có do v × H T = 0 suy ra v(a) = 0. iu này mâu thun vi đnh ngha f(x) là đa thc ti thiu ca a. Chng minh hoàn tt. Ví d 13.5 Xét trng GF(2 4 ) và a có đa thc ti thiu là f(x) = 1 + x + x 4 nh trong Ví d 11.7. Chú ý a có chu k là 15. Thì ma trn sau là ma trn kim tra ca mã vòng C(15, 11) có đa thc sinh chính là f(x) ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 111101011001000 011110101100100 001111010110010 111010110010001 154 H Nu đa thc ti thiu ca a là f(x) = 1 + x + x 2 + x 3 + x 4 thì a có chu k là 5 và các phn t 1, a, , a 4 đc biu din di dng 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 trn sau là ma trn kim tra ca mã vòng (5, 1) ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = × 11000 10100 10010 10001 54 H 13.4 Mã BCH nh phân Mã BCH có tên vit tt ca ba ngi sáng lp ra nó đó là Bose, Chaudhuri và Hocquenghem. ây là mã vòng có kh nng sa đc nhiu li. Bây gi chúng ta s đa ra qui trình đ xây dng mã BCH nh phân có kh nng sa đc nhiu li. i vi các s nguyên dng m và t bt k chúng ta s xây dng mt mã BCH nh phân có các thông s sau:  dài t mã: n = 2 m – 1 S bit kim tra: n – k ≤ mt Khong cách Hamming: d min ≥ 2t + 1 Trc ht chúng ta chng minh đnh lý sau đây. nh lý 13.8 Cho a là mt phn t ca trng GF(2 m ) có đa thc ti thiu là mt đa thc cn bn bc m. Thì mã có ma trn sau làm ma trn kim tra là mt mã vòng có khong cách Hamming ≥ 2t + 1, trong đó mi phn t trong ma trn bên di đc thay th bng vect m thành phn tng ng ca nó. Lý thuyt Thông tin Ngi son H Vn 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 Hn na đa thc sinh g(x) ca b mã là đa thc bi s chung nh nht ca các đa thc ti thiu ca các phn t a, a 3 , a 5 , …, a 2t–1 . Chng minh T đnh lý chúng ta suy ra a có chu k là n = 2 m – 1 và vì vy a là mt phn t c s ca trng GF(2 m ). Trc ht chúng ta chng minh rng nu w = (b 0 b 1 b 2 …b n–2 b n–1 ) là mt t mã thì v = (b n– 1 b 0 b 1 …b n–3 b n–2 ) cng là mt t mã, t đó suy ra mã có tính vòng. Tht vy nu w là t mã thì chúng ta có w × H T = 0 hay vit ngc li H × w T = 0 Nhân ma trn B sau vi 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 đ ý nu dch vòng ma trn (B×H) 1 ct theo chiu t trái sang phi đc thì kt qu là ma trn H. T đây suy ra H×v T = 0 vi v là kt qu ca vic dch vòng w 1 bit (theo chiu t trái sang phi). Hay nói cách khác v × H T = 0. T đây suy ra mã có tính vòng. Th hai đ chng minh b mã có khong cách Hamming ≥ 2t + 1 chúng ta ch cn chng minh mi tp 2t ct ca ma trn H là đc lp tuyn tính. Tht vy gi s tn ti r ct có các phn t đi đu là 1 k a , 2 k a , …, r k a là có tng bng 0 trong đó r ≤ 2t. T đây chúng ta suy ra h sau, gi 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ý thuyt Thông tin Ngi son H Vn 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 Mi phng trình trong h 1 có dng p(a) = 0 trong đó p(a) là đa thc ca a. t i k a = y i vi i = 1, 2, …, r. T đây chúng ta nhn đ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 trng GF(2 m ) thì (y 1 + y 2 + … + y r ) 2 = y 1 2 + y 2 2 + … + y r 2 Vì vy 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 ly r phng trình đu và vit di dng ma trn sau, gi 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 Phng trình (4) có dng Ay = 0, trong đó các phn t ca ma trn A và ca vect y là các phn t ca trng GF(2 m ). Các phn t y 1 , y 2 , …, y r là khác phn t 0 vì vy phng trình Az = 0 là có nghim không tm thng trong trng GF(2 m ). Vì vy det A = 0 (là phn t 0 ca trng GF(2 m )). Mà theo B đ 13.2 chúng ta có det A = ∏ > − ji ji yy )( vi i, j ∈ {1, 2, …, r}. (Chú ý trong trng GF(2 m ) phép tr ging vi phép cng). Mà do các phn t a q vi q = 1, 2, …, n = 2 m – 1 là phân bit nhau nên (y i – y j ) ≠ 0 ∀ i ≠ j (Chú ý y i = i k a ). Vì vy det A = ∏ > − ji ji yy )( ≠ 0. Mâu thun. T đây suy ra điu phi chng minh. Cui cùng gi g(x) = g 0 + g 1 x + g 2 x 2 + … + g n–1 x n–1 là đa thc sinh ca 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 Nu đt f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x) là các đa thc ti thiu ln lt ca các phn t a, a 3 , a 5 , …, a 2t–1 . T B đ 11.5 chúng ta suy ra g(x) chia ht cho f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x). t p(x) là bi s chung nh nht ca f 1 (x), f 3 (x), f 5 (x), …, f 2t–1 (x). Suy ra g(x) chia ht cho p(x). Suy ra bc ca g(x) ≥ bc ca p(x). Mt khác nu biu din p(x) bng 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ông tin i n t ã tác ng lên xã h i và làm thay i cách th c truy n thông thô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ông tin 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ông tin 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ông tin 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ông tin 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ông tin 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ông tin 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 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ông tin theo nhng cách thc truyn th ng tn. toàn có th “bt” đc các thông tin đang đ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ông tin ngày càng tr nên quan. 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 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

Ngày đăng: 24/05/2014, 08:54

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan