1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Khảo sát một số mã Xiclic vành đa thức X9+1 docx

8 595 1
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Khảo sát một số mã xiclic trên vành đa thức x9 + 1
Tác giả PGS.TS. Nguyễn Bình, KS. Ngô Đức Thiện
Trường học Học viện Công nghệ BCVT
Chuyên ngành Công nghệ thông tin
Thể loại Bài báo hội nghị
Định dạng
Số trang 8
Dung lượng 199,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chúng đợc xây dựng trên các Ideal của vành đa thức, tuy nhiên số Ideal trên một vành đa thức ít nên số bộ tạo ra cũng hạn chế.. Để mở rộng khả năng tạo thêm các mã trên một vành đa thức

Trang 1

Khảo sát một số mã xiclic trên vành đa thức x 9 + 1

PGS.TS Nguyễn Bình, KS Ngô Đức Thiện

Khoa Kỹ thuật điện tử 1

Tóm tắt: Các mã xyclic đã có nhiều ứng dụng rất hiệu quả trong thực tiễn Chúng đợc xây

dựng trên các Ideal của vành đa thức, tuy nhiên số Ideal trên một vành đa thức ít nên số bộ tạo ra cũng hạn chế Để mở rộng khả năng tạo thêm các mã trên một vành đa thức, bài báo

đề cập đến phơng pháp phân hoạch vành đa thức (cụ thể trên vành đa thức [ ] 9

2

trên cơ sở đó khảo sát một số bộ mã xyclic không có trên vành X 9 +1 theo quan điểm xây dựng mã xyclic truyền thống.

1 Một sô khái niệm

1.1 Vành đa thức

Nếu R là một vành giao hoán thì vành đa thức R[x] là một vành đợc tạo bởi tập tất cả các đa thức của biến x có các hệ số trong R Hai phép toán là phép cộng và phép nhân đa thức thông thờng với số học các hệ số đợc thực hiện trong vành R

Trong trờng nhị phân, vành đa thức đợc ký hiệu:

(f(x); f, •) = Z2[x]/ xn + 1

e(x) = 0 gọi là phần tử đơn vị, deg e(x) = 0 (bậc của e(x) = 0)

(f(x), +) là một nhóm đối với phép cộng, thỏa mãn các tiên đề của nhóm

(f(x), *) là nửa nhóm đối với phép nhân, không tồn tại f(x), g(x) mà f(x).g(x) = 0

Cấp của một đa thức, ký hiệu ord a(x), là số nguyên dơng (m) nhỏ nhất sao cho:

a m(x) = e(x) mod (x n +1)

Trong đó: e(x) là một lũy đẳng nào đó

1.2 Nhóm nhân

Tập các đa thức f(x) trong vành đa thức Z2[x]/ xn +1 với một phép toán nhân đa thức tạo nên một nhóm nhân G

Nếu g(x), f(x) ∈ G thì g(x).f(x) = d(x) ∈ G Trong nhóm nhân tồn tại phần tử đơn vị e(x) với f(x).e(x) = f(x)

Các phần tử đơn vị e(x) thỏa mãn điều kiện: e(x) = e2(x) = e(x2) đợc gọi là lũy đẳng Trong một vành Z2[x]/xn +1 có thể tồn tại nhiều lũy đẳng khác nhau

a) Nhóm nhân xyclic (CMG - Cyclic Multiplicate Groups)

Nhóm nhân xyclic trong vành đa thức là tập hợp các phần tử đều bằng lũy thừa của một phần

tử gọi là phần tử sinh Trong vành đa thức có nhiều nhóm nhân xyclic, số nhóm nhân bằng số các lũy đẳng có thể có trong vành

A = {α, α2 , α3 , }

Trong đó: A là nhóm nhân xyclic; α là phần tử sinh (đa thức sinh), cấp của phần tử sinh là cấp của nhóm (cấp của nhóm là tổng số các phần tử của nhóm) Phần tử đơn vị của nhóm chính là một lũy đẳng e(x)

Trang 2

b) Nhóm nhân xyclic đơn vị

Nhóm nhân xyclic đơn vị là một nhóm bao gồm mọi đơn thức và có cấp là n Ký hiệu là I , hay nhóm nhân xyclic đơn vị là nhóm nhân xyclic với phần tử sinh là x

I = {x, (x)2, (x)3, , (x)n-1, 1}

c) Nhóm nhân xyclic với phần tử sinh a(x)

Nhóm nhân xyclic với phần tử sinh là đa thức a(x) bao gồm các phần tử là lũy thừa của phần tử sinh và có thể viết dới dạng: A = {a(x), (a(x))2, (a(x))3, }

1.3 Cấp số nhân xyclic (CGP - Cyclic Geometic Progressions) trên vành đa thức

Cấp số nhân xyclic trên vành đa thức là một tập hợp con có dạng sau:

A(a,q) = {a(x), a(x).q(x), a(x).q2(x), , a(x).qm -1(x)}

Trong đó: m là số các số hạng của cấp số nhân; a(x) là số hạng đầu của cấp số nhân; q(x) là công bội; a(x).qm(x) ≡ a(x) mod xn + 1

Giá trị của m đợc xác định bởi cấp của nhóm nhân xyclic

2 Cấu trúc các nhóm nhân xyclic trong vành đa thức Z2[x] /x 9 + 1

2.1 Cấu trúc các nhóm nhân

Với vành Z2[x]/ x9 + 1, ta có n = 9 (là số lẻ)

+ Khai triển nhị thức: x9 + 1 = (1 + x)(1 + x + x2)(1 + x3 + x6)

Vành đa thức này có có 29 - 1 = 511 phần tử khác 0

Trong đó có: 256 phần tử có trọng số lẻ

255 phần tử có trọng số chẵn

+ Cấp cực đại của đa thức a(x) đợc xác định nh sau:

Max ord(a(x)) = 2m -1 = 26 - 1 = 63

ở đây m cũng chính bằng max ms = 6, hay cấp lớn nhất của đa thức bất khả quy trong khai triển nhị thức x9 +1

+ Phân tích max ord(a(x)) ra thừa số nguyên tố để xác định các ớc của nó:

Max ord(a(x)) = 63 = 3.3.7

+ Cấp các phần tử trong vành là các ớc số của max ord(a(x)), tơng ứng các nhóm nhân trong vành có các cấp là: 1, 3, 7, 9, 21, 63

+ Xác định các chu trình Cs

Các chu trình Cs đợc xác định nh sau:

, 2, 2 , , 2m s

s

C = s s s s − trong đó s.2m s− 1≡s mod n

C1 = {1, 2, 4, 8, 7, 5} → |C1| = m1 = 6

C3 = {3, 6} → |C3| = m3 = 2

Đa thức e(x) là một lũy đẳng khi và chỉ khi tập các hệ số khác không của nó là hợp một số các chu trình Cs nào đó Các lũy đẳng chính là các phần tử đơn vị của các nhóm nhân xyclic trong vành đa thức Ta tìm đợc các lũy đẵng nh sau:

Bảng 1: Các lũy đẳng của vành đa thức Z 2 [x]/ x 9 + 1

Trang 3

Các lũy đẳng Dạng số mũ

của đa thức

Các chu trình tơng ứng

e1(x) = 1 + x + x2 + x4 + x5 + x7 + x8 (0124578) C0∪ C1

e3(x) = e0(x) = 1 + x + x2 + x3 + x4 + x5 + x6 + x7 + x8 (012345678) C0∪ C1∪ C3

e7(x) = x + x2 + x3 + x4 + x5 + x6 + x7 + x8 (12345678) C1∪ C3

256 phần tử có trọng số lẻ bao gồm:

1 nhóm nhân cấp 63 với phần tử sinh a1(x) = (012), với lũy đẳng e1(x) = (0124578)

1 nhóm nhân cấp 3 với phần tử sinh a2(x) = (147), với lũy đẳng e2(x) = (036)

1 nhóm nhân cấp 1 với phần tử sinh a3(x) = e3(x) = (012345678)

3 nhóm nhân cấp 63 với phần tử sinh a4(x) = (014), a5(x) = (016), a6(x) = (02357) với lũy

đẳng e4(x) = (0)

1 nhóm nhân cấp 21 với phần tử sinh b1(x) = (12345), với lũy đẳng e4(x) = (0)

3 nhóm nhân cấp 21 với phần tử sinh a7(x) = (124), a8(x) = (245), a9(x) = (128) với lũy đẳng

e4(x) = (0)

Một nhóm nhân cấp 7 với phần tử sính b2(x) = (12345) với lũy đẳng e4(x) = (0)

2.2 Phơng pháp phân hoạch vành đa thức thành nhóm nhân xyclic

Các bớc phân hoạch vành đa thức để xây dựng các nhóm nhân xyclic có thể khái quát nh sau:

- Tìm cấp cực đại của nhóm nhân xyclic trong vành

- Tìm phần tử sinh có cấp lớn nhất

Do vành đa thức có cấu trúc đối xứng, một nửa vành gồm các phần tử có trọng số lẻ, một nửa vành gồm các phần tử có trọng số chẵn Hơn nữa do vành đối xứng nên khi biết nửa vành có thể suy ra nửa vành kia Vì vậy trớc tiên ta đi xác định các phần tử có trọng số lể Trong các phần tử có trọng số lẻ xác định các phần tử sinh có cấp lớn nhất

Sau đó xây dựng tất cả các nhóm nhân chứa các phần tử có trọng số lẻ Để xây dựng đợc tất cả các nhóm nhân ta phải thực hiện các bớc:

o Xác định tất cả các đa thức lũy đẳng trong vành, trên cơ sở phân tích các chu trình

o Chọn các đa thức lũy đẳng có trọng số lẻ để xây dựng các nhóm nhân chứa chúng

-Xây dựng tất cả các nhóm nhân xyclic có thể có của vành Tùy theo từng lũy đẳng mà mỗi lũy đẳng có thể tham gia trong nhiều nhóm nhân

-Lấy đối xứng tất cả các nhóm nhân có chứa các phần tử có trọng số lẻ sẽ tạo đợc tất cả các nhóm nhân có chứa các phần tử có trọng số chẵn

3 Khảo sát một số mã xyclic và xyclic cục bộ trên vành đa thức X 9 + 1

3.1 Khái niệm mã xyclic cục bộ (XCB)

Mã xyclic cục bộ là mã hệ thống tuyến tính (n, k) trong đó:

Trang 4

k dấu thông tin đợc chọn là k đơn thức có dạng x i i( =0,1, 2, ,k−1)và là nhóm nhân xyclic cấp k của vành Z x2[ ]/(x n +1)

r n k= − dấu kiểm tra đợc chọn là một tập con không trống tùy ý nào đó các lớp kề của nhóm nhân này

Tập các trởng lớp kề tạo mã sẽ cho ta mô tả đầy đủ của mã xyclic cục bộ

3.2 Mối quan hệ giữa mã xyclic và xyclic cục bộ

Theo quan điểm xây dựng mã xyclic thông thờng: mã xyclic là một Ideal của vành đa thức; trong đó mỗi từ mã là một phần tử của Ideal đó trên vành đa thức

Theo quan điểm xây dựng mã XCB mối dấu mã là một phần tử của Ideal; toàn bộ từ mã là một bộ phận của vành gồm n phần tử xác định của Ideal

Nh vậy, ta hoàn toàn có thể dùng lý thuyết xây dựng các đa thức sinh của mã xyclic để tạo các trởng lớp kề cho các mã XCB Với quan điểm đó: lớp kề đợc xây dựng theo cách sau đây

sẽ tạo nên một mã xyclic:

Mã XCB đợc xây dựng từ:

+ Trởng lớp kề là một đa thức sinh g(x) thỏa mãn:

− Đa thức sinh là ớc của x n+1; g x x( ) n+1

− Bậc của đa thức sinh bằng r với r = n – k

− Sử dụng r dấu thông tin giả khi tạo lớp kề này; tức là cho trớc:

x = =x x = =x − =

Trên cơ sở phân tích nh vậy thì mã xyclic là một lớp kề đặc biệt của mã XCB Hay mã xyclic

là một dạng đặc biệt của mã XCB

3.3 Khảo sát một số mã xyclic và xyclic cục bộ trên vành đa thức x 9 + 1

a) Khảo sát mã xyclic (n, k) với k = m.

Trong một vành đa thức luôn tồn tại mã xyclic (m, m) có d0 = 1, mã này đợc xây dựng từ nhóm nhân đơn vị I ={x i i, =1,m−1}

Mã này không có khả năng phát hiện và sửa sai Do số dấu thông tin k = m, nên để tạo các mã có khả năng phát hiện và sửa sai xây dựng trên các nhóm nhân xyclic thì yêu cầu phải thỏa mãn

điều kiện n > m Hay nói cách khác là cấp của nhóm nhân xyclic tạo mã phải lớn hơn và bằng bội của m, nhóm nhân đơn vị I phải là nhóm nhân con của nhóm nhân xyclic tạo mã

Nhóm nhân xyclic tạo mã (n, m) phải thỏa mãn 2 điều kiện:

− Nhóm nhân xyclic đơn vị có cấp m phải là một nhóm con của nhóm nhân xyclic cấp n

(n mM hoặc m n).

− Cấp của nhóm nhân xyclic tạo mã (n, m) phải là ớc nào đó của cấp số lớn nhất các phần

tử trong vành: n max ord a( )x

Trong vành Z2[x]/ x9 + 1, ta có m = 9

9 1 1 1 2 1 3 6

Ta có max ord a(x) = 26 - 1 = 63 = 1.3.3.7

Trang 5

Do đó, trong vành này tồn tại các nhóm nhân có cấp: 1, 3, 7, 9, 21, 63 Nhng chỉ có các nhóm nhân có cấp 9 và 63 mới tạo đợc mã xyclic Mã xyclic đợc xây dựng trên các nhóm nhân có cấp 9 và 63 là 2 loại mã xyclic (9, 9) và (63, 9)

Mã (9, 9) ⇔ I ={x i i, =0,8} , mã (63, 9) ⇔ A={a x i i( ), =0,62} .

* Mã xyclic (63, 9) xây dựng trên nhóm nhân cấp 63

Xét đa thức sinh a = (1 + x2 + x3 + x5 + x7), đa thức này có cấp 63 Cấu trúc của nhóm nhân là

A = {ai = (1 + x2 + x3 + x5 + x7); i = 0, 1, 2, , 62}.…

Đánh giá:

Số tổng kiểm tra (TKT) tự trực giao của mã này: J = 17, do đó khoảng cách tối thiểu d0 = 18 Theo giới hạn dới của độ dài từ mã (giới hạn Griesmer):

1 0

0 2

k j j

d

n

=

 

ta có:

8

0

18

18 9 5 3 2 1 1 1 1 41

2j j

n

=

 

Với mã này có độ dài từ mã là n = 63 > 41 ⇒ mã không tối u

b) Khảo sát các mã xyclic (n, k) với k < m.

* Mã xyclic (63, 7).

Chọn nhóm nhân xyclic theo modulo h x( ) = + + + + +1 x x3 x4 x6 x7 với phần tử sinh của

Nhóm nhân này có dạng nh sau:

( )

{ imod , 0,1, 2, ,62} { (014 mod)i ( ), 0,1, 2, ,62}

Do mã này là mã xyclic có khả năng trực giao, cho nên phải giải mã 2 cấp ở cấp ngỡng thứ nhất giải mã ra các cặp dấu thông tin, sau đó qua bớc giải mã cấp ngỡng thứ hai mới giải mã

đợc toàn bộ các dấu thông tin

Đánh giá:

Số TKT tự trực giao của mã này là: J = 30, do đó khoảng cách tối thiểu d0 = 31

2

M = + =

Theo giới hạn Griesmer:

0

31

31 16 8 4 2 1 1 63

m

d

n

 

c) Khảo sát mã xyclic cục bộ.

* Mã XCB (27, 9)

Mã XCB (27 9) đợc xây dựng từ 3 cấp số nhân (CGP) xyclic lấy trong phân hoạch vành đa

2 / 1

Z x x + thành các CGP cấp 9 CGP1 chính là nhóm nhân xyclic đơn vị (là đa thức thông tin) Chọn CGP2 (trởng lớp kề là (7)) và CGP3 (trởng lớp là (11)) làm các dấu kiểm tra Do CGP2 và CGP3 là 2 lớp kề lẻ liên tiếp, cho nên mã này sẽ là mã XCB có khả năng trực giao

Trang 6

Cấu trúc từ mã XCB (27,9) này nh sau: (các dấu mã biểu diễn ở dạng thập phân).

1 2 4 8 16 32 64 128256 7 14 28 56 112224448385259 11 22 44 88 176352193386261 Nếu biểu diển mã XCB này theo trởng lớp kề thì có dạng {1, 7, 11}

Số TKT có khả năng trực giao J = 6 ⇒ d0 = 7 Theo giới hạn Griesmer thì mã này cũng không tối u:

3.4 Phơng pháp giải mã ngỡng

Có các phuơng pháp giải mã nguỡng sử dụng cho việc giải mã XCB:

+ Giải mã nguỡng theo đa số (GMĐS)

+ Giải mã nguỡng đại số khác: giải mã nguỡng trên đa số 1 biểu quyết (GMĐS + 1), giải mã nguỡng trên đa số 2 biểu quyết (GMĐS +2)

* Phơng pháp giải mã ngỡng theo đa số (GMĐS)

Giả sử ta xét một bộ mã tự trực giao nào đó, với bộ mã này ta có thể xây dựng đ ợc J tổng kiểm tra trực giao cho một dấu mã nào đó

Nếu

1

1 2

J

m

m

J S

=

+

≥  

, trong đó x  là số nguyên nhỏ nhất lớn hơn hoặc bằng x

Thì coi ei = 1 có sai ở dấu thứ i, ngợc lại ei = 0: dấu thứ i thu đúng

Mỗi tổng kiểm tra (TKT) trong hệ J TKT này cho phép đa ra các dấu ai ở dạng tổ hợp tuyến tính của các dấu khác mà nó không nằm trong một TKT Vì vậy có 2t TKT (2t = d0 –1 = J)

để giải mã đúng các dấu ai theo biểu quyết đa số

Do các TKT phải thỏa mãn với bất kỳ từ mã nào thì tính chất tuần hoàn của bộ mã mới có hiệu quả để giải mã các dấu tiếp theo Do vậy ta dịch chuyển tuần hoàn từ mã và lại áp dụng biểu quyết theo đa số Cứ nh vậy sẽ thực hiện giải mã cho tất cả các dấu mã

Nh vậy với mã xyclic tự trực giao thì phơng pháp giải mã ngỡng đơn giản hơn nhiều so với các phơng pháp giải mã khác về thiết bị giải mã với bộ mã có cùng chiều dài Thiết bị giải mã chỉ gồm bộ ghi, bộ cộng và thiết bị ngỡng theo đa số Chính có u điểm này nên việc thực hiện kỹ thuật sẽ đơn giản

Đối với các mã có khả năng trực giao, ta có thể thiết lập đợc hệ TKT có khả năng trực giao Một hệ TKT có khả năng trực giao nếu tồn tại một tổ hợp tuyến tính các dấu mã:

1 2

M =x +x + +x thỏa mãn điều kiện sau:

+ Tổ hợp tuyến tính các dấu mã M có mặt trong mọi TKT

+ Các dấu còn lại: x jM chỉ nằm ở nhiều nhất một TKT.

Trên cơ sở đó ta có thể coi tập M đóng vai trò nh một dấu mã x trong hệ TKT trực giao Theo nguyên tắc giải mã theo đa số, ta có thể giải mã cho tập M hay có thể nói đây là hệ TKT trực giao với tập M Thông thờng tập M là một cặp dấu mã

4 Chơng trình mô phỏng mã hóa và giải mã một số mã xyclic và xyclic cục bộ trên vành đa thức X 9 + 1

Chơng trình mô phỏng đợc viết trên phần mềm MATLAB, với u điểm:

− Chơng trình đơn giản, tốc độ tính toán nhanh

Trang 7

− Có thể mô phỏng thêm các bộ mã khác dựa trên các hàm mà chơng trình mô phỏng

đã lập

Giao diện của chơng trình mô phỏng mã hóa và giải mã.

4.1 Mã có độ dài 63

4.2 Mã có độ dài 27

Kết luận

Mã xyclic là một trong các mã dễ thực hiện và đã đợc ứng dụng nhiều trong thực tế

Ưu điểm của mã xyclic đó là: là loại mã có cấu trúc đại số tờng tận, có nhiều phơng pháp giải mã hiệu quả, lập mã và giải mã đơn giản Để xây dựng mã xyclic ngời ta tiến hành phân hoạch vành đa thức thành các Ideal, Ideal thực chất là một nhóm con của nhóm cộng trong vành Tuy nhiên, số Ideal trong một vành đa thức ít nên khả năng tạo các bộ mã xyclic cũng

bị hạn chế

Để mở rộng khả năng tạo mã có thể xây dựng các mã xyclic cục bộ trên vành đa thức Bằng cách phân hoạch vành đa thức thành các nhóm nhân xyclic hoặc các cấp số nhân xyclic, trên cơ sở các nhóm nhân và cấp số nhân xyclic này xây dựng các mã xyclic và xyclic cục bộ Khác với các mã xyclic thông thờng (mỗi từ mã là một phần tử có cấu trúc đại số), với mã xyclic cục bộ mỗi dấu mã trong một từ mã là một phần tử có cấu trúc đại số Do đó mã xyclic cục bộ có cấu trúc đại số tinh tế hơn và cũng vì thế mà khả năng sửa sai của nó tốt hơn

Trang 8

Tài liệu tham khảo

[1] F.J Mac Williams, N.J.A Sloane: The theory of error-correcting codes North-Holland

Publisher Com 1977

[2] A.J Menezes, P.C Van Oorchot, S.A Vanstone: Handbook of Applied Cryptography

CRC Press 1998

[3] Ass.Prof Nguyễn Bình, Nguyễn Quốc Hng: Circuland Crypto-System based on

polynominal ring with two cycloctomic cosets

[4] PGS TS Nguyễn Bình, ThS Vũ Việt, KS Trần Đức Sự: Các vành đa thức có hai lớp kề

xyclic trong lý thuyết mã hóa

[6] Vũ Việt: Phân hoạch vành đa thức Chuyên đề tiến sĩ, 2001

[7] Nguyen Binh Tran Duc Su, Pham Viet Trung.

"Decomposition of polynomial ring according to the classes of conjugate elements" ATC - 26 Hanoi, 10.2001

[8] Nguyen Binh, Vu Viet, Pham Viet Trung.

"Decomposition of polynomial ring and coding with random clock" CAFEO 2000 Hanoi, 22-24 Nov, 2000

Ngày đăng: 24/01/2014, 00:20

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w