Công nghệ thông tin & Khoa học máy tính<br />
<br />
VỀ CÁC S-HỘP 44-BIT CÓ TÍNH CHẤT MẬT MÃ MẠNH<br />
Hoàng Văn Quân1*, Nguyễn Bùi Cương2<br />
<br />
Tóm tắt: Thông thường các hộp thế là thành phần phi tuyến duy nhất trong mã<br />
khối và đóng vai trò quan trọng trong việc bảo đảm khả năng kháng lại các thám<br />
mã. Vì vậy việc thiết kế và sử dụng các hộp thế trong một mã pháp cụ thể cần được<br />
xem xét cẩn thận. Trong bài viết này chúng tôi nghiên cứu chi tiết và bổ sung chứng<br />
minh một số tính chất của S-hộp 44 bit có tính chất mật mã mạnh. Trong đó, chúng<br />
tôi sinh và phân loại toàn bộ các hộp thế thỏa mãn các tính chất này.<br />
<br />
Từ khóa: Mã khối, S-hộp, Thám mã lượng sai, Thám mã tuyến tính, Hàm hầu phi tuyến hoàn thiện.<br />
<br />
<br />
1. MỞ ĐẦU<br />
Đối với một lớp lớn các mã khối, các S-hộp là tổ hợp các véc tơ hàm Bool song<br />
ánh S từ 2n vào 2n . Bài viết này tập trung vào các S-hộp 44-bit (n = 4) đã được<br />
sử dụng cho thuật toán mã GOST 28147-89 [8] và một số mã khối khác cùng với<br />
việc phân tích, đánh giá các tính chất mật mã mạnh. Để có thể đánh giá độ an toàn<br />
của các S-hộp ta phải đưa ra được các tiêu chí đánh giá cụ thể, bên cạnh các tính<br />
chất tối ưu chống lại tấn công lượng sai và tuyến tính còn phải quan tâm tới các<br />
tính chất khác như tính lan sai, bậc đại số,...Vì vậy, các khái niệm S-hộp mạnh đã<br />
được đề xuất [1]. Trong bài viết này, chúng tôi bổ sung và chứng minh một số nội<br />
dung cần thiết phục vụ cho việc tìm kiếm các S-hộp có tính chất mật mã mạnh và<br />
sau đó là tìm kiếm các hộp thế này bằng thực hành.<br />
<br />
2. CÁC HÀM HẦU PHI TUYẾN HOÀN THIỆN YẾU<br />
2.1. Khái niệm -đều yếu và l-chống bất biến mạnh<br />
n n<br />
2.1.1. Định nghĩa 1. [1] Cho hàm Bool f : 2 2 . Giả sử fˆu ( x) := f(x u) <br />
f(x). Khi đó định nghĩa:<br />
n n<br />
- Hàm f là -đều nếu |{x 2 : fˆu ( x) = v}| đối với mọi u <br />
2 \{0} và<br />
n<br />
đối với mọi v 2 ,<br />
n<br />
- Và nó là -đều yếu (weakly -uniform) nếu đối với mọi u 2 \{0} chúng<br />
ta có |Im( fˆu )| 2n-1/.<br />
Chú ý rằng định nghĩa 1 khác với định nghĩa trong [5] (|Im( fˆu )| 2n/(+2) + 1).<br />
Dễ thấy rằng nếu f là -đều thì cũng là -đều yếu. Thật vậy, nếu f là -đều thì với<br />
n<br />
mọi u 2 \{0} chúng ta có |Im( fˆu )| 2n/ > 2n-1/. Nếu một hàm f là 2r-đều<br />
yếu và ảnh Im( fˆu ) được chứa trong một không gian con W, thì ta có card(W) <br />
<br />
<br />
<br />
<br />
208 H.V. Quân, N. B. Cương, “Về các S-hộp 4x4 bit có tính chất mật mã mạnh.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
|Im( fˆu )| > 2n-1-r nên số chiều của W ít nhất là n – r. Đó là tính chất của f mà sẽ<br />
được cần đến trong chứng minh Định lý 4.4 [5].<br />
2.1.2. Mệnh đề 1. Tính -đều và -đều yếu là một bất biến affine.<br />
Chứng minh. Mệnh đề 1 trong [2] đã chứng minh rằng tính -đều là một bất<br />
biến affine. Tương tự như vậy, bây giờ ta chứng minh rằng tính chất -đều yếu là<br />
một bất biến affine. Đối với S-hộp S, ta đặt: naS,b S,1a b . Giả sử S1 và S2 là hai S-<br />
hộp tương đương affine, điều này có nghĩa là tồn tại các ma trận khả nghịch C, D<br />
GL(n, 2 ), c, d 2 n sao cho S2(x) = D(S1(Cx c)) d với mọi x. Giả sử:<br />
<br />
naS,b S21,a b # x 2n | S 2 x S 2 x a b .<br />
2<br />
<br />
<br />
<br />
<br />
Có S2(x) S2(x a) = b tương đương với D(S1(Cx c) d D(S1(C(x a)<br />
c)) d = b. Đặt y = Cx c ta có:<br />
D(S1(y)) D(S1(y Ca)) = b S1(y) S1(y Ca) = D-1b<br />
S 2<br />
S 1 <br />
Như vậy, na,b nCa,D1b . Điều này có nghĩa rằng b Im( S a1 ) D-1b Im( SCa<br />
2<br />
).<br />
<br />
Do vậy, |Im( S a1 ) | = |Im( SCa<br />
2<br />
)|, và vì thế S1 và S2 đồng thời thỏa mãn tính -đều<br />
yếu. ■<br />
m<br />
2.1.3. Định nghĩa 2. [1] Giả sử A = 2 . Khi đó:<br />
- f là l-chống bất biến (l-anti-invariant) nếu đối với không gian con bất kỳ U<br />
A sao cho f(U) = U, chúng ta có dim(U) < m - l hoặc U = A.<br />
- f là l-chống bất biến mạnh (strongly l-anti-invariant) nếu đối với 2 không<br />
gian con bất kỳ U, W A, sao cho f(U) = W, chúng ta có dim(U) = dim(W)<br />
< m - l hoặc U = W = A.<br />
Các mã pháp dựa trên dịch chuyển (Định nghĩa 3.1 [5]) tạo nên một lớp thú vị<br />
các mã khối lặp chẳng hạn AES. Theo Định lý 4.4 trong [5], nếu C là một mã pháp<br />
dựa trên dịch chuyển và các S-hộp của mỗi tầng thay thế thỏa mãn tính 2r-đều yếu<br />
và r-chống bất biến mạnh đối với r nào đó mà 1 r m/2, và tồn tại một vòng với<br />
tầng tuyến tính có tính chất tầng xáo trộn đúng cách thức (proper mixing layer)<br />
(trong [5] đã định nghĩa chính xác của tính chất này) thì (C) (tức là nhóm được<br />
sinh ra bởi các hàm vòng) là các nhóm nguyên thủy (nhóm hoán vị G tác động trên<br />
một tập X được gọi là nguyên thủy nếu nó tác động dịch chuyển trên X và G không<br />
bảo toàn phân hoạch không tầm thường nào của X). Đó chính là lý do vì sao tính -<br />
đều yếu và l-chống bất biến mạnh được quan tâm đến. Dường như là Định lý 4.4<br />
trong [5] yêu cầu các điều kiện quá mạnh để đảm bảo tính nguyên thủy, nhưng<br />
thực ra nó trở nên khá tự nhiên, như được chỉ ra ở các Hệ quả 4.6 và 4.7 của [5].<br />
Theo đó, AES, Serpent thỏa mãn các điều kiện đã nêu ra và có (Serpent) là các<br />
nhóm luân phiên trên các tập tương ứng. Trong trường hợp của các S-hộp 4 bit, do<br />
quan tâm đến các r thỏa mãn 1 r m/2 = 2, nên chỉ có 2 khả năng:<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san Viện Điện tử, 10 - 2015 209<br />
Công nghệ thông tin & Khoa học máy tính<br />
<br />
- r = 1, khi đó yêu cầu mỗi S-hộp thỏa mãn tính 2-đều yếu và 1-chống bất<br />
biến mạnh;<br />
- r = 2, khi đó yêu cầu mọi S-hộp là 4-đều yếu và 2-chống bất biến mạnh.<br />
Chúng ta quan tâm tới tính 2-đều yếu và tính 4-đều yếu. Chú ý rằng với < ’<br />
thì một hàm mà thỏa mãn tính -đều sẽ thỏa mãn tính ’-đều và một hàm thỏa mãn<br />
tính -đều yếu sẽ thỏa mãn tính ’-đều yếu. Hơn nữa, chúng ta chỉ xét các S-hộp<br />
tối ưu, có nghĩa là Diff(S) = 4 hay S có tính 4-đều và như thế nó có tính 4-đều yếu.<br />
Vì vậy, sau đây chúng ta chỉ quan tâm đến tính 2-đều yếu.<br />
Theo kết quả 1 trong [2], trên 24 không tồn tại hoán vị APN (Almost Perfect<br />
Nonlinear – hầu phi tuyến hoàn thiện) tức là không có các S-hộp thỏa mãn Diff(S)<br />
= 2 (đó chính là tính 2-đều).<br />
2.1.4. Định nghĩa 3. Chúng ta nói rằng một hàm Bool là một hàm phi tuyến hầu<br />
hoàn thiện yếu (weakly APN) nếu nó là 2-đều yếu.<br />
Một số kết quả lý thuyết được nêu trong [1] về các hàm APN yếu. Mệnh đề 2<br />
và mệnh đề 4 sau đây đưa ra 2 điều kiện đủ của một hàm Bool thỏa mãn APN yếu.<br />
4 4<br />
2.1.5. Mệnh đề 2 (Preposition 1, [1]) . Giả sử f : 2 2 là một hàm Bool sao<br />
cho f là 4-đều và là 2 – chống bất biến mạnh. Khi đó f là APN yếu.<br />
n n n<br />
Với f: 2 <br />
2 ta định nghĩa: nˆ (f) = max |{v <br />
2 \{0}: deg( fˆu , v) = 0}|.<br />
u( 2 )n \0<br />
<br />
<br />
2.1.6. Mệnh đề 3. nˆ (f) là một bất biến affine.<br />
Chứng minh: Giả sử f2(x) =Af1(x) + a với A GL(n, 2 ), a 2 . Khi đó,<br />
n<br />
<br />
<br />
f2(x u) f2(u), (AT)-1v = (Af1(x u) a) (Af1(x) a), (AT)-1v <br />
= A(f1(x u) f1(x)), (AT)-1v = f1(x u) f1(x), AT(AT)-1v = f1(x u)<br />
f1(x), v<br />
Vì thế, v 2 n \{0} : deg( fˆu1 , v) = 0} = {v 2 n \{0} : deg( fˆu2 , v) = 0}<br />
nên nˆ (f1) = (f2). Giả sử f2 = f1(Bx b) với B GL(n, 2 ), b 2 n . Khi đó, f2(x <br />
B-1u) f2(u), v = f1(B(x B-1u) b) f1(Bx b), v = f1(Bx b u) f1(Bx<br />
b), v Đặt Bx b = y thì f2(x B-1u) f2(u), v = f1(y u) f1(y), v . Vì thế<br />
{v 2 n \{0}: deg( fˆu1 , v) = 0} = {v 2 n \{0} : deg( fˆu2 , v) = 0} nên nˆ (f1) =<br />
nˆ (f2). ■<br />
2.2. Một số tính chất APN yếu của hàm Bool<br />
4 4<br />
Mệnh đề 4 (Preposition 2 [1]). Giả sử f : 2 2 là một hàm Bool sao cho nˆ (f)<br />
= 0. Khi đó f là một APN yếu.<br />
Mệnh đề ngược lại một phần của mệnh đề 4 đúng với mọi n 2, thật vậy:<br />
n n<br />
Bổ đề 1 [1]. Giả sử f : 2 2 là một hàm APN yếu. Khi đó nˆ (f) 1.<br />
<br />
<br />
<br />
210 H.V. Quân, N. B. Cương, “Về các S-hộp 4x4 bit có tính chất mật mã mạnh.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
4 4<br />
Định lý 1 [1]. Giả sử f : 2 2 là một hoán vị APN yếu. Khi đó, deg(f) = 3 và<br />
n3(f) {12, 14, 15}, trong đó n3(f) – là số lượng các tổ hợp tuyến tính của các hàm<br />
Bool thành phần có bậc đại số là 3.<br />
3. CÁC S-HỘP 44-BIT MẠNH<br />
3.1. Đại lượng đo độ kháng chống lại thám mã lượng sai và thám mã tuyến tính<br />
Để đo độ kháng chống lại thám mã lượng sai của một S-hộp từ 2n vào 2n ,<br />
người ta quan tâm đến đại lượng Diff(S) được xây dựng như sau: với a 2n , xét<br />
ánh xạ S,a : 2n 2n , x S(x) S(x a), ta có S,1a (b) {x : S ,a (x)=b} và<br />
Diff(S) = max S,1a (b) .<br />
a2n \0,b2n<br />
n 1<br />
Đối với 2 vecto a, b 2n , ký hiệu a, b ai bi là tích trong của a và b. Đối<br />
i 0<br />
<br />
với hàm bool có n biến f: 2 và phần tử a 2n chúng ta định nghĩa hệ số<br />
n<br />
2<br />
<br />
Walsh của f tại a bởi f (a) = (1) f ( x ) a , x<br />
. Bậc tuyến tính của f được định<br />
x2n<br />
<br />
nghĩa như là Lin(f) = max f (a) . Với một S-hộp có kích cỡ nn, ta ký hiệu đối<br />
a2n<br />
<br />
với vecto bất kỳ b 2n hàm thành phần (component function) Sb tương ứng: Sb<br />
: 2n 2 , x b, S(x). Chúng ta định nghĩa bậc tuyến tính (linearity) của S như là<br />
Lin(S) = max Sb ( a ) .<br />
a2n ,b2n \{0}<br />
<br />
Giá trị Lin(S) và Diff(S) càng nhỏ thì tương ứng các mã pháp sử dụng các hộp<br />
thế S này có khả năng kháng lại thám mã lượng sai và tuyến tính càng tốt. Trong<br />
[2] đã có xem xét chi tiết về định nghĩa của một S-hộp 44-bit tối ưu (các giá trị<br />
Lin(S) và Diff(S) đạt giá trị nhỏ nhất có thể), đó là những S-hộp song ánh thỏa mãn<br />
điều kiện Diff(S)=4 và Lin(S)=8. Nhưng ngoài tính chất tối ưu đó, người ta còn<br />
quan tâm tới các tính chất khác nữa, ví dụ như có thể cho rằng sai khác đầu vào 1<br />
bit bất kỳ gây ra sai khác đầu ra có ít nhất 2 bit (như đối với DES hoặc Serpent).<br />
Một điều kiện như vậy có thể được sử dụng để tăng số cực tiểu các S-hộp tích cực<br />
trong 2 vòng liên tiếp. Tính chất này được nghiên cứu thông qua các đại lượng:<br />
<br />
Diff1 S max n S,1a (b) | wt(a) = wt(b) =1 , với wt(a) là trọng số Hamming của a.<br />
a 0 ,b2<br />
<br />
Một S-hộp 44-bit tối ưu mà thỏa mãn điều kiện Diff1(S)=0 được gọi là một S-hộp<br />
kiểu Serpent.<br />
3.2. Các S-hộp 44 mạnh<br />
Một yêu cầu đối với thám mã tuyến tính là xác suất của một biểu thức xấp xỉ<br />
tuyến tính mà chỉ sử dụng 1 bit đầu vào và 1 bit đầu ra cần phải nhỏ một cách đặc<br />
biệt. Tính chất này được nghiên cứu thông qua đại lượng Lin1(S) =<br />
<br />
max Sb (a ) | wt(a) wt(b) 1 . Để xem xét các tính chất của S-hộp trong bài viết<br />
a ,b2n<br />
<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san Viện Điện tử, 10 - 2015 211<br />
Công nghệ thông tin & Khoa học máy tính<br />
<br />
này chúng tôi sẽ dựa trên một quan hệ tương đương đặc biệt sau:<br />
3.2.1. Định nghĩa 4 ([3]). Hai S-hộp S1, S2 được gọi là tương đương hoán vị khi<br />
tồn tại P0, P1 là hai ma trận hoán vị n n và a, b 2n sao cho: S2(x) = P1(S1(P0(x)<br />
a)) b x 2n .<br />
Trong đó, ma trận hoán vị M được định nghĩa thông qua một hoán vị của n<br />
1 nÕu i j<br />
phần tử là ma trận có các phần tử mij thỏa mãn: mi , j . Dễ thấy<br />
0 nÕu i j<br />
rằng định nghĩa 4 xác định một quan hệ tương đương của tập các S-hộp. Nếu hai<br />
S-hộp S1 và S2 là tương đương theo nghĩa ở trên chúng ta ký hiệu điều đó bởi S1 ~S<br />
S2. Trong [3] cũng đã nghiên cứu việc phân loại các S-hộp 44-bit kiểu Serpent<br />
thành 20 lớp theo tính tương đương hoán vị.<br />
3.2.2. Mệnh đề 5. Lin1(S) là bất biến trong một lớp tương đương kiểu Serpent.<br />
Chứng minh: Nếu S1 và S2 là 2 S-hộp tương đương theo kiểu Serpent thì tồn tại<br />
hai ma trận hoán vị C, D kích thước n n và c, 2n thỏa mãn:<br />
S 2 x D S1 Cx c d x 2n . Hệ số Walsh của hàm S2 tại điểm a<br />
b , S2 x a , x<br />
S2,wb a xn 1 . Xét tích trongb, S2(x) a, x = b, D(S1(Cx c))<br />
2<br />
<br />
<br />
d a, x, đặt y Cx c dẫn đến x = C-1 (y c) = C-1y C-1c. Khi đó, tích<br />
trong ở trên sẽ có dạng: b, D(S1(y)) d a, C-1x C-1c = b, D(S1(y)) a,<br />
C-1x b, d a, C-1c<br />
Theo tính chất của tích trong của hai vecto: x, Ay = xAT, y x, y 2n , A <br />
GL(n, 2n ), ta có: b, S2(x) a, x = bDT, S1(y) a(C-1)T, y b, d a, C-<br />
1<br />
c. Do các ma trận C, D là các ma trận khả nghịch nên khi biến x nhận một lượt<br />
tất cả các phần tử trên không gian vecto 2n thì giá trị y = Cx c nhận một lượt tất<br />
cả các phần tử trên không gian vecto 2n . Do đó, ta có hai tổng sau đây bằng nhau:<br />
T<br />
b , S2 x a , x <br />
bDT , S1 y a C 1 , y b , d a ,C 1c<br />
1<br />
x2n<br />
yn 1<br />
2<br />
hay<br />
<br />
<br />
S 2,wb a S1,wbDT a C 1 <br />
T<br />
. Nếu C, D là các ma trận hoán vị và wt(a) = wt(b) = 1 thì<br />
cũng có wt(bDT) = 1, wt(a(C-1)T) = 1, hơn nữa khi a, b chạy khắp tập wt(a) = wt(b)<br />
= 1 thì bDT, a(C-1)T cũng vậy. Đặt bDT = b’ và a(C-1)T = a’ ta có<br />
Lin1(S2)= max S 2,wb a | wt(a ) = wt(b) = 1 = max S1,wb ' a ' | wt(a ') = wt(b ') = 1 = Lin1(S1).<br />
Bằng cách lập trình, chúng tôi đã tính Lin1(S) cho 20 lớp S-hộp kiểu Serpent và<br />
thấy rằng không tồn tại S-hộp kiểu Serpent sao cho Lin1(S) = 0.<br />
<br />
<br />
Bảng 1. Lin1(S) cho tất cả 20 lớp S-hộp kiểu Serpent.<br />
<br />
<br />
212 H.V. Quân, N. B. Cương, “Về các S-hộp 4x4 bit có tính chất mật mã mạnh.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Lớp R0 R1 R2 R3 R4 R5 R6 R7 R8 R9<br />
Lin1(S) 4 4 8 4 4 4 4 4 4 8<br />
Lớp R10 R11 R12 R13 R14 R15 R16 R17 R18 R19<br />
Lin1(S) 8 8 8 4 4 4 4 8 4 4<br />
Vì thế, Lin1(S) nhỏ nhất có thể đạt được là bằng 4, tức là trong số 20 lớp S-hộp<br />
kiểu Serpent, chúng ta sẽ quan tâm hơn tới 14 lớp có tính chất này. Ngoài ra, để<br />
kháng lại tấn công đại số, người ta còn quan tâm đến các đại lượng<br />
ni(S) = |{ v 2 \{0} : deg(S, v) = i}|.<br />
n<br />
<br />
<br />
Theo kết quả 4.1 [4] thì ta luôn có deg(S, v) 3 nếu S là song ánh. Cũng theo<br />
Mệnh đề 2.1 [4] thì deg(S, v) là một đại lượng bất biến theo tương đương affine,<br />
và vì thế nó là bất biến trong một lớp các S-hộp kiểu Serpent. Chúng ta mong<br />
muốn deg(S, v) lớn nên sẽ quan tâm tới n3(S), n3(S) càng lớn càng tốt. Trong [3]<br />
đã tính đại lượng n3(S) cho 20 lớp S-hộp kiểu Serpent với kết quả là:<br />
Bảng 2. n3(S) cho tất cả 20 lớp S-hộp kiểu Serpent.<br />
Lớp R0 R1 R2 R3 R4 R5 R6 R7 R8 R9<br />
n3(S) 12 12 12 14 14 14 12 12 14 12<br />
Lớp R10 R11 R12 R13 R14 R15 R16 R17 R18 R19<br />
n3(S) 12 12 12 14 12 14 12 12 12 12<br />
<br />
Hệ quả 1. Đối với S-hộp kiểu Serpent S bất kỳ, tồn tại phần tử b 24 sao cho Sb là<br />
một hàm Bool bậc 2.<br />
4 4<br />
3.2.3.Định nghĩa 5.([1]) Chúng ta nói rằng một hoán vị Boolean f: 2 2 là<br />
một S-hộp mạnh nếu: f là APN yếu, Lin(f) = 8, Diff(f) = 4, Diff1(f) = 0, Lin1(f) =<br />
4, n3(f) 14.<br />
Trong định nghĩa trên, tính chất APN yếu có tính bất biến affine. Các đại lượng<br />
Lin và Diff cũng có tính chất bất biến affine. Tính chất Diff1(f) = 0 là bất biến dưới<br />
tương đương hoán vị. Đại lượng Lin1(f) là một đại lượng bất biến theo tương<br />
đương hoán vị, còn n3(f) có tính bất biến affine.<br />
Bảng 1 cho thấy rằng 14 lớp Serpent có Lin1(f) = 4 là R0, R1, R3, R4, R5, R6, R7,<br />
R8, R13, R14, R15, R16, R18 và R19. Bảng 2 ta thấy rằng các lớp Serpent có n3(f) 14<br />
là R3, R4, R5, R8, R13 và R15. Tức là các lớp Serpent mà thỏa mãn n3(f) 14 thì cũng<br />
thỏa mãn Lin1(f) = 4. Như vậy, trong 6 điều kiện của Định nghĩa 4, chỉ còn phải<br />
quan tâm đến điều kiện APN yếu. Chúng tôi đã lập trình kiểm tra các tính chất của<br />
16 lớp tối ưu sau:<br />
Bảng 3. Một số tính chất cho 16 lớp tối ưu.<br />
Lớp wAPN deg(f) n1(f) n2(f) n3(f) nˆ f Lớp wAPN deg(f) n1(f) n2(f) n3(f) nˆ f <br />
G0 - 3 0 3 12 1 G8 - 3 0 3 12 1<br />
G1 - 3 0 3 12 1 G9 + 3 0 1 14 1<br />
G2 - 3 0 3 12 1 G10 + 3 0 1 14 1<br />
G3 + 3 0 0 15 0 G11 + 3 0 0 15 0<br />
<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san Viện Điện tử, 10 - 2015 213<br />
Công nghệ thông tin & Khoa học máy tính<br />
<br />
G4 + 3 0 0 15 0 G12 + 3 0 0 15 0<br />
G5 + 3 0 0 15 0 G13 + 3 0 0 15 0<br />
G6 + 3 0 0 15 0 G14 + 3 0 1 14 1<br />
G7 + 3 0 0 15 0 G15 + 3 0 1 14 1<br />
<br />
Chú ý rằng, tất cả các đại lượng trong bảng thống kê trên đều có tính bất biến<br />
affine (deg(f), ni(f) tính bất biến của tập {degf, v}). Bảng trên cũng minh họa các<br />
kết quả lý thuyết (Bổ đề 1 và định lí 1 ở trên) cho 16 lớp tương đương affine của<br />
các S-hộp tối ưu. Từ bảng trên, ta có thể kiểm tra thấy khẳng định sau:<br />
4 4<br />
Khẳng định 1 [1]. Giả sử f: 2 2 là một hoán vị Boolean sao cho Lin(f) = 8,<br />
Diff(f) = 4, n3(f) 14. Khi đó f là một APN yếu.<br />
Rõ ràng, như đã nhắc tới ở trên, các S-hộp kiểu Serpent là các S-hộp tối ưu và<br />
vì thế mỗi lớp S-hộp tương đương kiểu Serpent Ri cần phải thuộc một lớp tương<br />
đương theo affine Gj nào đó. Trong [3] đã đưa ra kết quả rằng 20 lớp tương đương<br />
kiểu Serpent chỉ thuộc vào 7 lớp tương đương affine, cụ thể là:<br />
Bảng 4. Quan hệ giữa các lớp Serpent và các lớp tối ưu.<br />
Lớp tối ưu G0 G1 G2 G9 G10 G14 G15<br />
Lớp R9, R11, R16, R0, R1, R2, R6, R17, R18 R7, R10, R12, R14 R4, R13 R 3, R 5 R15 R8<br />
Serpent R19<br />
<br />
Bằng lập trình, chúng tôi tính cả 6 lớp R3, R4, R5, R8, R13 và R15 đều có lực<br />
lượng bằng 147.456. Vì thế số các S-hộp mạnh sẽ là 147.456 6 = 844.736. Hơn<br />
nữa, một số đại lượng chặt hơn được xem xét đó là nd là số các đặc trưng mà tại đó<br />
đạt được độ đo lượng sai nhỏ nhất (bằng 1/4) và nl là số các xấp xỉ tuyến tính mà<br />
đạt được độ đo tuyến tính nhỏ nhất (bằng 1/4). Ta có, tính chất sau:<br />
3.2.4. Mệnh đề 6. nd và nl là các đại lượng được bảo toàn qua biến đổi affine.<br />
Chứng minh. Trong chứng minh tính chất bất biến của Lin(S) và Diff(S), chúng ta<br />
rút ra <br />
S 2,wb a S1,wbDT a C 1 <br />
T<br />
và n S2<br />
a ,b<br />
S1<br />
nCa , D 1b<br />
. Vì vậy, các đại lượng nd và nl là<br />
bất biến trong một lớp tương đương affine.■<br />
Vì người ta muốn đạt tới số nhánh cực đại nên sẽ chỉ quan tâm tới các lớp có<br />
chứa S-hộp mà có số nhánh (đại lượng thể hiện khả năng khuếch tán của hộp thế,<br />
xem [6]) bằng 3. Trong số những lớp như vậy, giá trị nd cực tiểu là 18, giá trị nl cực<br />
tiểu là 32. Chỉ có 4 lớp tương đương affine có các tính chất mong muốn, đó là G9,<br />
G10, G14 và G15. Nếu ta quan tâm tới các S-hộp có tính Serpent, thì sẽ chỉ có 6 lớp<br />
đó là R3, R4, R5, R8, R13 và R15. Như vậy, xuất phát từ mối quan tâm đến các đại<br />
lượng nd, nl và số nhánh bằng 3, chúng ta cũng đi đến đúng 6 lớp Serpent như định<br />
nghĩa của S-hộp mạnh. Trong [7] đã đưa ra thống kê cho các S-hộp có tính chất tối<br />
ưu (bảng 5). Điều này đã được chúng tôi kiểm tra lại bằng lập trình:<br />
<br />
<br />
<br />
214 H.V. Quân, N. B. Cương, “Về các S-hộp 4x4 bit có tính chất mật mã mạnh.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Bảng 5. Tính chất của 16 lớp tối ưu.<br />
Đại diện chuẩn tắc Thành viên & DL LC Số nhánh<br />
0123456789ABCDEF nghịch đảo p nd nl cực đại<br />
0123468A5BCF79DE G2, G01 1/4 24 1/4 36 3<br />
0123468A5BCF7D9E G15, G 1<br />
14<br />
1/4 18 1/4 32 3<br />
0123468A5BCF7E9D G0, G 1<br />
2<br />
1/4 24 1/4 36 3<br />
0123468A5BCFDE79 G8, G 1<br />
8<br />
1/4 24 1/4 36 2<br />
0123468A5BCFED97 G1, G 1<br />
1<br />
1/4 24 1/4 36 3<br />
0123468B59CED7AF G9, G91 1/4 18 1/4 32 3<br />
0123468B59CEDA7F G13, G131 1/4 15 1/4 30 2<br />
0123468B59CF7DAE G14, G151 1/4 18 1/4 32 3<br />
0123468B5C9DE7AF G12, G121 1/4 15 1/4 30 2<br />
0123468B5C9DEA7F G4, G 1<br />
4<br />
1/4 15 1/4 30 2<br />
0123468B5CD79FAE G6, G 1<br />
6<br />
1/4 15 1/4 30 2<br />
0123468B5CD7AF9E G5, G 1<br />
5<br />
1/4 15 1/4 30 2<br />
0123468B5CD7F9EA G3, G 1<br />
3<br />
1/4 15 1/4 30 2<br />
0123468C59BDE7AF G10, G101 1/4 18 1/4 32 3<br />
0123468C59BDEA7F G7, G01 1/4 15 1/4 30 2<br />
0123468C59DFA7BE G11, G111 1/4 15 1/4 30 2<br />
<br />
<br />
4. KẾT LUẬN<br />
Nội dung bài viết đã phân tích chi tiết và chứng minh chặt chẽ một số tính chất<br />
đối với các S-hộp có tính chất mật mã mạnh (mệnh đề 1,3,5,6). Bằng lập trình<br />
chúng tôi đã xác định toàn bộ 844.736 S-hộp thỏa mãn các tính chất này. Kết quả<br />
này cho phép chúng ta chủ động thay đổi tham số S-hộp trong các mã khối có kích<br />
thước khối là 64 bit sử dụng các S-hộp 4 bit. Nhất là đối với các thuật toán có<br />
nguyên lý thiết kế đặc biệt như giữ bí mật hộp thế (GOST 28147-89) thì hộp thế<br />
đóng vai trò cực kì quan trọng trong việc đảm bảo độ an toàn của thuật toán kháng<br />
lại các tấn công thám mã. Do đó, các tiêu chuẩn hộp thế cần được xem xét, đánh<br />
giá chặt chẽ cũng như luôn luôn được cập nhật bởi người sử dụng thuật toán.<br />
TÀI LIỆU THAM KHẢO<br />
[1]. Fontanari, Claudio, et al. "On weakly APN functions and 4-bit S-Boxes." Finite<br />
Fields and Their Applications 18.3 (2012): 522-528.<br />
[2]. N. V. Long, N. B. Cương, T. D. Lai – “Về định nghĩa S-hộp tối ưu chống thám<br />
mã tuyến tính và lượng sai” – Tạp chí Nghiên cứu khoa học và Công nghệ<br />
quân sự (Số chuyên đề - Tuyển tập các Báo cáo khoa học hội nghị –<br />
ATTT&CNTT’12).<br />
[3]. N. B. Cương, T. D. Lai – “Về phân loại các S-hộp 44-bit kiểu Serpent” – Tạp<br />
chí Nghiên cứu khoa học và Công nghệ quân sự (Số chuyên đề - Tuyển tập<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san Viện Điện tử, 10 - 2015 215<br />
Công nghệ thông tin & Khoa học máy tính<br />
<br />
các báo cáo khoa học hội nghị – ATTT&CNTT’13).<br />
[4]. N. B. Cương, N. V. Long, T. D. Lai, “Một số đặc trưng đại số của các S-hộp<br />
44-bit chống thám mã lượng sai và tuyến tính”, Tạp chí Ứng dụng toán học,<br />
số 10, ISSN 1858-4492, 9/2012.<br />
[5]. Caranti, A., Francesca Dalla Volta, and M. Sala. "On some block ciphers and<br />
imprimitive groups." Applicable algebra in engineering, communication and<br />
computing 20.5-6 (2009): 339-350.<br />
[6]. Leander, Gregor, and Axel Poschmann. "On the Classification of 4 Bit S-<br />
boxes." Arithmetic of Finite Fields. Springer Berlin Heidelberg, 2007. 159-<br />
176.<br />
[7]. Saarinen, Markku-Juhani O. "Cryptographic analysis of all 44-bit s-boxes".<br />
Selected Areas in Cryptography. Springer Berlin Heidelberg, 2012.<br />
[8]. Http://en.wikipedia.org/wiki/GOST_(block_cipher).<br />
<br />
ABSTRACT<br />
<br />
ON STRONGLY CRYPTOGRAPHIC 44-BIT S-BOXES<br />
<br />
<br />
Often S-boxes are the only nonlinear component in a block cipher and as<br />
such play an important role in ensuring its resistance to cryptanalysis. Thus,<br />
the design and use of the S-box in a specific cipher should be considered<br />
carefully. In this paper, we discuss some properties of strongly cryptographic<br />
44 S-boxes. Morever, we have generated and classified all the S-boxes<br />
satisfying these properties.<br />
Keywords: Block cipher, Differential cryptanalysis, Linear cryptanalysis, Weakly APN function, Strongly S-<br />
boxes<br />
<br />
Nhận bài ngày 21 tháng 07 năm 2015<br />
Hoàn thiện ngày 10 tháng 08 năm 2015<br />
Chấp nhận đăng ngày 07 tháng 09 năm 2015<br />
<br />
<br />
<br />
1<br />
Địa chỉ: Cục Cơ yếu – BTTM; *Email: hoangvanquan@gmail.com;<br />
2<br />
Viện KHCN Mật mã/Ban Cơ yếu Chính phủ<br />
<br />
<br />
<br />
<br />
216 H.V. Quân, N. B. Cương, “Về các S-hộp 4x4 bit có tính chất mật mã mạnh.”<br />