Xây dựng các ma trận MDS từ mã Gabidulin
Trong tài liệu [1], tác giả Thierry P. Berger và các cộng sự đưa ra phương pháp xây dựng các mã MDS bằng cách mở rộng các mã Gabidulin. Phương pháp này sử dụng các mã tối ưu trên một trường cơ sở bên dưới.
Khoảng cách hạng
Khoảng cách hạng được giới thiệu bởi E. Gabidulin vào năm 1985, chi tiết về độ đo này được trình bày trong [2].
Cho K = GF(qm) là một mở rộng bậc m của trường hữu hạn GF (q), q = pr không cần là nguyên tố, trường GF(q) được xét như “trường cơ sở” trong phương pháp này. Cho E = Kn là không gian vectơ n chiều trên K.
Định nghĩa 1 ([1]). Với trọng số hạng rk (a) của a là số chiều của không gian vectơ được sinh bởi { a1,...an}, tức là bằng số các phần tử của a độc lập tuyến tính.
Vì nên với
Tương đương, trọng số hạng của a là hạng của ma trận m x n trên GF(q) được tạo bằng cách mở rộng mọi tọa độ ai trên cơ sở của K/ GF (q). Giá trị của trọng số hạng là độc lập với cơ sở được chọn.
Ví dụ 1. Cho (mở rộng của GF(2) theo đa thức x3 + x +1). Khi đó, nếu là nghiệm của đa thức đó thì . Cho n = 5. Đặt . Trong các thành phần của a, chỉ có hai trong chúng là độc lập tuyến tính, vì vậy rk(a) =2.
Xét ma trận do khai triển mỗi tọa độ ai theo cơ sở của K là (viết theo cột):
nó cũng có hạng là 2.
Cho a và b là hai phần tử của E. Quan hệ dr(a,b) = rk (a - b) xác định một khoảng cách trên E. Theo định nghĩa này, có thể định nghĩa khoảng cách hạng tối thiểu dr của một mã C, cũng giống như độ đo Hamming. Nếu dh chỉ khoảng cách Hamming truyền thống, thì với mọi a,b trong E, khoảng cách hạng thoả mãn bất phương trình: .
Như vậy, với mọi , hạng của x thoản mãn .
Tồn tại một giới hạn đối với khoảng cách hạng tối thiểu của một mã, tương tự như giới hạn Singleton đối với khoảng cách Hamming:
Mệnh đề 1 ([2]): Nếu C là một mã tuyến tính độ dài n, số chiều k và khoảng cách hạng dr, thì:
- Nếu
- Nếu .
Một mã khoảng cách hạng cực đại (MRD) là một mã đạt được giới hạn trên, Lưu ý rằng, nếu thì mã MRD cũng là một mã MDS.
Mã Gabidulin
Trong bài [2], Gabidulin đã mô tả một lớp các mã MRD với , còn được gọi là mã Gabidulin.
Định nghĩa 2 ([1]). Cho , với và chúng độc lập tuyến tính trên GF (q). Mã Gabidulin có giá và số chiều k, là một mã được sinh bởi ma trận:
trong đó
Định nghĩa này gần với mã Reed-Solomon (RS): tập các phần tử khác nhau được thay thế bởi một tập các phần tử độc lập tuyến tính và lũy thừa truyền thống được thay thế bởi “lũy thừa Frobenius” . Mã đã được xem như ước lượng của các đa thức bậc nhỏ hơn k trên một tập gồm n phần tử. Có thể có sự giải thích tương đương về mã Gabidulin như là ước lượng của các đa thức tuyến tính hóa trên một tập gồm n phần tử độc lập tuyến tính:
Định nghĩa 3 ([1]). Một đa thức tuyến tính hóa là một đa thức có dạng:
Nếu bậc của đa thức tuyến tính hóa f(X) là [r], thì r được gọi là bậc tuyến tính của f(X) và được ký hiệu là .
Tập các đa thức được tuyến tính hóa là đẳng cấu với tập các ứng dụng tuyến tính - GF(q) của K vào chính nó [3].
Mã Gabidulin là tập các giá trị từ trong đó f(X) là đa thức tuyến tính hóa bất kỳ với bậc tuyến tính nhỏ hơn k (f(X) là biểu diễn của thông báo: Từ mã =”thông báo”.).
Các tác giả đưa ra chứng minh ngắn gọn của định lý sau ([84]):
Định lý 1 ([1]). Mã Gabidulin là MRD.
Chứng minh:
Cho là một phần tử của gắn với đa thức tuyến tính hóa f(X). Cho là nhân của và là không gian vectơ trên GF(q) được sinh bởi . Hạng của x là số chiều của
Vì bậc tuyến tính của f(X) nhỏ hơn k nên số chiều của V nhỏ hơn k. Điều này kéo theo . Khoảng cách hạng của mã này là lớn hơn hoặc bằng n - k +1 , nghĩa là . Từ giới hạn của Mệnh đề 1, suy ra .
Mở rộng của mã Gabidulin
Độ dài của các mã Gabidulin tương đối ngắn (độ dài của mã nhiều nhất bằng m) so với qm Mục tiêu của các tác giả trong [1] là mở rộng các mã Gabidulin bằng cách thêm vào điểm ước lượng của đa thức tuyến tính hóa.
Cho là một tập gồm n phần tử khác nhau (tập a chưa chắc độc lập tuyến tính). Có thể n>m. Xét một mã tuyến tính Ca,k nhận được bằng cách ước lượng các đa thức được tuyến tính hóa với bậc tuyến tính nhỏ hơn k trên tập a:: đa thức tuyến tính hóa,
Đặt .
(Giả thiết rằng .)
Mệnh đề 2 ([1]). Khoảng cách hạng dr của mã .
Chứng minh:
Không mất tính tổng quát, giả sử rằng vectơ có hạng (tập á độc lập tuyến tính). Khi đó mã Cák là một mã Gabidulin với khoảng cách hạng là r - k +1. Vì tất cả các cột ma trận sinh của Cak là các tổ hợp tuyến tính trên GF(q) của các cột trong ma trận sinh của Cák, khi đó khoảng cách hạng tối thiểu của Cak sẽ bằng với khoảng cách hạng tối thiểu của Cák.
Khoảng cách hạng là cực đại nếu a là một hệ sinh của K, nghĩa là rk(a) = m. Tuy nhiên khoảng cách hạng của các mã như vậy bị chặn trên bởi m - k + 1.
Đối với khoảng cách Hamming khoảng cách hạng được mở rộng hơn, bởi vì .
Hệ quả 1 ([1]). Khoảng cách Hamming dh của mã Cak lớn hơn hoặc bằng rk(a) - k +1.
Tuy nhiên, có thể xây dựng một mã Cak với khoảng cách Hamming tốt.
Bổ đề 1 ([1]). Giả sử f(X) là một đa thức tuyến tính hóa và . Trọng số Hamming của f(a) bằng n - s, trong đó s là số lượng các phần tử của a trong V.
Các tác giả tiếp tục đưa ra mệnh đề sau:
Mệnh đề 3 ([1]). Khoảng cách Hamming tối thiểu của mã Ca,k là dh = n - s, trong đó s là số lượng cực đại của các phần tử của a được chứa trong cùng không gian vectơ V với số chiều k-1.
Chứng minh:
Giả sử rằng chính xác phần tử của a là trong cùng không gian vectơ V với số chiều k -1. Định nghĩa , là một đa thức tuyến tính hóa với bậc tuyến tính là k-1. Rõ ràng f(a) là nằm trong Cak . Từ bổ đề 1, có . Điều này có nghĩa rằng .
Ngược lại, giả sử là một phần tử của Cak và. Nếu là số lượng các phần tử của a trong V, khi đó . Vì nên . Kéo theo , khi đó ta có dh = n-s.
Định lý sau đây khẳng định đặc trưng của các mã Cak để là MDS.
Định lý 2 ([1]). Một mã Cak là MDS nếu và chỉ nếu tập bất kỳ gồm k phần tử của a là độc lập tuyến tính.
Chứng minh:
Nếu tập bất kỳ gồm k phần tử của a là độc lập tuyến tính thì số lượng cực đại của các phần tử của a được chứa trong một không gian vectơ k-1 chiều bằng s=k-1. Khi đó, khoảng cách tối thiểu của một mã như thế sẽ bằng dh=n-(k-1) = n-k+1. Do vậy, đây là một mã MDS.
Ngược lại, nếu Cak là mã MDS thì dh =n-(k-1). Có nghĩa là s=k-1 , hay không gian vectơ k-1 chiều bất kỳ V chứa nhiều nhất k-1 phần tử của a. Điều này tương đương với khẳng định “tập bất kỳ k phần tử của a là độc lập tuyến tính”.
Xây dựng ma trận MDS có tính chất MRD
Cố định q=2 và m=2r. Chọn cơ sở B={b1,b2,...bm} của K trên F=GF(2) và n=m. Khi đó mã Gabidulin GB,r là mã MRD và có các tham số [m=2r,r,r+1] (GB,r cũng là mã MDS) trên K (r là độ dài tin k).
Nếu A là ma trận vuông cỡ r trên K sao cho [Ir,A] là ma trận sinh chuẩn của GB,r thì A là ma trận MDS trên K. Ma trận này cho độ khuếch tán cực đại trên r khối có cỡ m=2r nhưng lại có thêm tính chất MRD.
Ví dụ 2. Chọn m=8, r=4. Giả sử là nghiệm của đa thức nguyên thủy x8+x4+x3+x2+1. Đặt B={1,a, a2,…, a7} là cơ sở của K trên F. Ma trận MDS A được xác định từ mã Gabidulin GB,4 là:
Ma trận A này có cùng các tham số như MixColumns, r=4 là cỡ cực đại của ma trận MDS có tính chất MRD trên GF(28).
Có thể chọn n<m điểm độc lập tuyến tính của K, khi đó ta nhận được ma trận khuếch tán r x r trên K với n = 2r. Ví dụ nếu cố định m=16, có thể thiết lập ma trận khuếch tán MDS có cỡ .
Giả sử n>m và n=2k, khi đó mã MRD không nhất thiết là MDS (nói chung không là MDS). Trước đây, người ta đã thiết lập mã MDS có độ dài n>m bằng cách mở rộng các điểm ước lượng của đa thức tuyến tính hóa. Tuy nhiên, các mã này không còn là MRD nữa, các tham số của chúng bị hạn chế nên không thể vượt qua tỷ lệ ½ (tức là mã tuyến tính có n=2k). Những mã Gabidulin mở rộng này dường như không thích hợp để xây dựng các tầng khuếch tán MDS và không có tính chất bổ sung so với mã Reed-Solomon.
So sánh các phương pháp xây dựng ma trận MDS từ mã MDS
Sau đây, tác giả bài báo đưa ra bảng so sánh hai phương pháp xây dựng các ma trận MDS từ các mã MDS, bao gồm mã RS và mã Gabidulin.
Bảng 1. So sánh phương pháp từ mã RS và mã Gabidulin
Bài báo này giới thiệu một phương pháp xây dựng các mã MDS bằng cách mở rộng các mã Gabidulin để từ đó có thể trích rút ra được các ma trận MDS từ các mã MDS này. Phương pháp này sử dụng các mã tối ưu trên một trường cơ sở bên dưới do tác giả Thierry P. Berger và các cộng sự đã đưa ra trong tài liệu [1]. Bài báo cũng đưa ra so sánh các phương pháp xây dựng ma trận MDS từ các mã MDS như mã RS và mã Gabidulin. Việc nghiên cứu các phương pháp khác nhau trong việc xây dựng các ma trận MDS sẽ hữu ích cho các nhà nghiên cứu để tìm ra những ma trận MDS tốt nhất theo nhiều tiêu chí khác nhau nhằm xây dựng các mã khối an toàn, hiệu quả trong thực thi.
TÀI LIỆU THAM KHẢO [1] Thierry P. Berger, Alexei V. Ourivski, Construction of new MDS codes from Gabidulin codes, LACO, University of Limoges, France, 2013. [2] E. M. Gabidulin. Theory of codes with maximal rank distance. Problems of Information Transmission, 21:1-12, July 1985. [3] R. Lidl, H. Niederreiter. Finite fields and their applications. Cambridge University Press. [4] R. F. Babindamana and C. T. Gueye, Gabidulin Codes that are Generalized Reed Solomon Codes, International Journal of Algebra, Vol. 4, 2010, no. 3, Insert Cell After119 – 142. |
TS. Trần Thị Lượng (Học viện Kỹ thuật mật mã)