1. Về mã khối
Các mã khối hiện đại đều tuân thủ hai nguyên lý thiết kế, đó là nguyên lý xáo trộn (confusion) và nguyên lý khuếch tán (diffusion). Hai nguyên lý này nhằm làm cho quá trình tìm kiếm mối quan hệ thống kê giữa bản gốc và bản mã trở nên “không thể”. Bên cạnh tầng phi tuyến, tầng khuếch tán đóng một vai trò quan trọng đối với độ an toàn của mã khối.
Mã khối có hai cấu trúc chính là cấu trúc Feistel và SPN (Substitution Permutation Networks), mỗi vòng của cấu trúc SPN gồm một tầng khuếch tán, tầng thay thế và tầng cộng khóa. Tầng khuếch tán đảm bảo rằng, sau một số vòng nhất định thì tất cả các bit đầu ra đều phụ thuộc vào tất cả các bit đầu vào, trong khi tầng thay thế hay tầng phi tuyến đảm bảo sự phụ thuộc này có tính chất phức tạp và phi tuyến. Hầu hết các tầng khuếch tán là các biến đổi tuyến tính có biểu diễn dạng ma trận trên GF(2m) hoặc GF(2).
Một biến đổi tuyến tính cung cấp sự khuếch tán nhằm đáp ứng độ an toàn cho hàm vòng của một mã khối bằng cách xáo trộn các bit của khối đầu vào có kích cỡ cố định để tạo ra khối đầu ra tương ứng có cùng kích cỡ [3].
Nhiều mã khối sử dụng mã tách có khoảng cách cực đại (Maximum Distance Separable - MDS) và mã tuyến tính nhị phân khoảng cách cực đại (Maximum Distance Binary Linear - MDBL) cho tầng khuếch tán của chúng. Chẳng hạn, một số mã nổi tiếng như AES và Khazad sử dụng các mã MDS, Camellia và ARIA sử dụng các mã MDBL. Các tầng khuếch tán của các mã khối này được chỉ ra trong bảng dưới đây.
2. Các phương pháp đo độ khuếch tán của mã khối hiện nay
Ảnh hưởng thác đổ [2]
Sau năm 2000, dự án NESSIE (sau khi NIST tuyển chọn xong AES) đã đưa ra tiêu chuẩn về mức độ ảnh hưởng thác đổ (The avalanche effect - AC) để đánh giá các mã khối. Dự án NESSIE đánh giá thống kê mã khối, trong đó kiểm tra mức độ của tiêu chuẩn AC, ký hiệu là da.
Xét vectơ:
và vectơ:
đạt được bằng cách lấy phần bù bit thứ i của vectơ x (với i = 1, ..., n).
- Hàm thỏa mãn tiêu chuẩn AC:
Hàm f: (GF(2))n -> (GF(2))m được gọi là thỏa mãn tiêu chuẩn ảnh hưởng thác đổ nếu trung bình có ½ các bit ra thay đổi mỗi khi một bit vào đơn được thay đổi hay:
Trọng số Hamming w(x) của x là số các thành phần khác 0 của vectơ x.
Ảnh hưởng thác đổ chặt [2]
Dự án NESSIE cũng đã đưa ra tiêu chuẩn về mức độ ảnh hưởng thác đổ chặt (The strict avalanche effect - SAC) để đánh giá các mã khối. Dự án NESSIE đánh giá thống kê mã khối, trong đó kiểm tra mức độ của tiêu chuẩn SAC, ký hiệu là dsa.
- Hàm thỏa mãn tiêu chuẩn SAC:
Hàm f: (GF(2))n -> (GF(2))m được gọi là thoả mãn tiêu chuẩn SAC nếu mỗi bit ra thay đổi với xác suất 1/2 mỗi khi một bit vào (đơn) được thay đổi, hay với mọi i = 1, ..., n và j = 1 , ..., m, ta có:
Thuộc tính đầy đủ [2]
Thuộc tính này là thuộc tính mong muốn của mỗi thuật toán mã hóa. Giả thuyết rằng, nếu chỉ có một vài bit đầu ra phụ thuộc vào một bit đầu vào, thì bằng cách quan sát một số lượng đáng kể của các cặp đầu ra, đầu vào, người thám mã có thể phát hiện được mối quan hệ thống kê và sử dụng thông tin này để tìm được khóa. Dự án NESSIE đã đưa ra tiêu chuẩn về mức độ của thuộc tính đầy đủ (the completeness property), ký hiệu là dc.
- Hàm thỏa mãn tiêu chuẩn về thuộc tính đầy đủ:
Hàm f: (GF(2))n -> (GF(2))m của n bit vào và m bit ra được gọi là thỏa mãn thuộc tính đầy đủ nếu mỗi bit ra phụ thuộc vào một bit vào, hay với mọi i = 1 ÷ n và j = 1 ÷ n ta được bit ra thứ j phụ thuộc vào bit vào thứ i tức là: tồn tại
sao cho (f(xi))j ≠ (f(x))j, ở đây có nghĩa là tồn tại vectơ
sao cho khi thay đổi bit vào thứ i thì sẽ làm thay đổi bit ra thứ j.
Số nhánh của biến đổi tuyến tính [1]
Số nhánh (branch number) của một biến đổi tuyến tính L được ký hiệu là B(L), là số tối thiểu của hộp S hoạt động trong hai vòng liên tiếp bất kỳ của một mã khối có cấu trúc SPN. Trong đó, một hộp S song ánh được gọi là hoạt động nếu cả hai đầu vào và đầu ra của nó đều khác 0 trong một đặc trưng tuyến tính hoặc lượng sai.
Số nhánh được tính như sau:
Giả sử: Z=(Z0, Z1,...,Zm-1) là một khối gồm mb bit được tạo thành bằng cách kết hợp m từ, mỗi từ gồm b bit.
Giả sử
ký hiệu vectơ nhị phân độ dài m. Trong đó
nếu Zi ≠ 0 và =0 nếu Zi=0
Giả sử
định nghĩa trọng số Hamming, Số nhánh của L được ký hiệu bởi B(L) được mô tả như sau:
Trong đó B(L) ≤ m+1.
Số nhánh B(L) là tối ưu nếu B(L)=m+1, mã tuyến tính được gắn với L sẽ có khoảng cách tối thiểu cực đại. Trong thực tế, để đạt được mã tuyến tính có khoảng cách tối thiểu cực đại, người ta xây dựng các mã MDS.
Điểm bất động trong biến đổi tuyến tính [1]
Xét các giá trị b-bit như là các phần tử thuộc trường F2b và ký hiệu S là tập tất cả các vectơ trong F2b với độ dài là:
Định nghĩa
là ma trận không suy biến với các phần tử thuộc F2q, là ma trận biểu diễn của một biến đổi tuyến tính L trên các phần tử của S. Trường F2q là tập con của F2b. Biến đổi tuyến tính L ánh xạ một phần tử
tới một phần tử
Với X = AZ được biểu diễn như sau:
Trong đó
Giả sử
biểu diễn ma trận cỡ m×m dựa trên ma trận đơn vị
Trong đó, I(0) = I. Các phần tử của ma trận I(l) được xác định bởi tham số dịch vòng
trong đó
Chẳng hạn, ma trận I(1) và I(2) với m=4 được biểu diễn như sau:
Tập tất cả các điểm bất động của một biến đổi tuyến tính L được biểu diễn bởi một ma trận không suy biến A, có thể thu được bằng cách giải phương trình sau:
Với l=0, phương trình trên trở thành (A – I) Z =0. Nghiệm của phương trình này chính là các khối đầu vào mà khi đi qua biến đổi tuyến tính L sẽ cho khối đầu ra không thay đổi (bằng chính nó).
Với l>0, nghiệm của phương trình trên chính là tập các khối đầu vào thỏa mãn: khi đi qua biến đổi tuyến tính L ta chỉ cần quay vòng lb bit sang trái của khối đầu vào đó thì có thể thu được khối đầu ra. Giả sử ^Z biểu diễn các khối đầu vào thỏa mãn phương trình (5), khi đó ta có:
Số các khối đầu vào mà thỏa mãn mối quan hệ (5) được cho bởi:
Khi đó, độ khuếch tán được đo bởi phương pháp dựa trên số điểm bất động được ký hiệu bởi hệ số D(A), được định nghĩa như sau:
Trong đó, 2-mb ≤ D(A) ≤ 1 và ma trận A biểu diễn dạng ma trận của biến đổi tuyến tính L. Hệ số D(A) biểu thị số trung bình của các khối đầu vào của L mà có mối quan hệ tuyến tính được cho bởi phương trình (5). Giá trị D(A) lớn nghĩa là có nhiều khối đầu vào không thay đổi bởi phép biến đổi tuyến tính L khi tạo khối đầu ra tương ứng. Giá trị số D(A) nhỏ nghĩa là có nhiều khối đầu vào được thay đổi hiệu quả bởi biến đổi tuyến tính L khi tạo ra các khối đầu ra tương ứng. Ngoài ra, hệ số D(A) còn biểu thị mức độ khuếch tán tốt đến đâu, nghĩa là nó có thể thể hiện biến đổi tuyến tính L thay đổi hiệu quả như thế nào các khối đầu vào khi tạo khối đầu ra tương ứng. Với phương pháp đo độ khuếch tán này, rõ ràng là không có sự khuếch tán đối với các kiểm bất động.
Kết luận
Để thiết kế một mã khối an toàn, người thiết kế phải quan tâm đến mọi thành phần của mã khối, trong đó tầng biến đổi tuyến tính vô cùng quan trọng quyết định độ an toàn của mã khối. Bài báo đã giới thiệu về tầng khuếch tán của một số mã khối và các phương pháp đánh giá mã khối cũng như đo độ khuếch tán của mã khối. Mỗi phương pháp thể hiện một góc nhìn khác nhau về toàn bộ mã khối và độ khuếch tán của tầng biến đổi tuyến tính trong mã khối và có thể là một sổ tay hữu ích cho các nhà nghiên cứu về mã khối.
TÀI LIỆU THAM KHẢO [1] M.R.Z’aba, Analysis of Linear Relationships in BlockCiphers. Ph.D. Thesis,Queensland University of Technology, Brisbane, Australia, 2010. [2] Pascale Serf: The degrees of completeness, of avalanche effect, and of strict avalabche criterion for MARS,RC6,Rijndael,Serpent, and Twofish with reduced number of rounds. – Siemens AG, ZT IK 3, April 3 – 2000. [3] Speaker M. Tolga Sakallı, Bora Aslan, Algebraic Construction of 16×16 Binary Matrices of Branch Number 7 with One Fixed Point, Computer Engineering Department, Trakya University, Edirne, Turkey. |
09:00 | 28/04/2024
Thời gian gần đây, lĩnh vực an toàn thông tin ghi nhận hình thức bảo mật Bug Bounty đang ngày càng nở rộ. Tuy nhiên, bên cạnh những số liệu khủng về giải thưởng, lỗ hổng được phát hiện, vẫn có những ý kiến trái chiều về hiệu quả thực sự mà Bug Bounty đem lại cho các tổ chức, doanh nghiệp.
08:00 | 21/12/2023
Theo số liệu của DataReportal, hiện Việt Nam đang có khoảng 49,9 triệu người sử dụng mạng xã hội TikTok, xếp thứ 6 trên 10 quốc gia có số người sử dụng TikTok nhiều nhất thế giới. Đáng chú ý là mạng xã hội này đang dần chiếm lĩnh thị trường nhờ vào những đoạn video có nội dung đa dạng mang tính "gây nghiện", thu hút mọi lứa tuổi trong đó có trẻ em. Tuy nhiên không như những mạng xã hội khác, TikTok thường xuyên bị cáo buộc việc gây ra những rủi ro nghiêm trọng về bảo mật và quyền riêng tư của người dùng. Thời gian qua đã có ít nhất 10 quốc gia cấm sử dụng ứng dụng này, trong đó có những nguyên nhân là do Tiktok gây ảnh hưởng nghiêm trọng tới suy nghĩ và hành động của trẻ em.
10:00 | 10/07/2023
Khi mạng viễn thông triển khai 5G trên toàn cầu, các nhà khai thác mạng di động ảo, nhà cung cấp dịch vụ truyền thông và các nhà cung cấp hạ tầng mạng đều đóng vai trò quan trọng trong việc thiết kế, triển khai và duy trì mạng 5G. Không giống như các thế hệ trước, nơi các nhà khai thác di động có quyền truy cập và kiểm soát trực tiếp các thành phần hệ thống, các nhà khai thác di động 5G đang dần mất toàn quyền quản lý bảo mật và quyền riêng tư.
14:00 | 22/06/2023
Việc áp dụng rộng rãi công nghệ 5G sẽ thay đổi thế giới theo nhiều cách. Với dữ liệu không giới hạn, tốc độ nhanh hơn và độ trễ thấp, 5G đang thúc đẩy những thay đổi cơ bản trong hành vi sử dụng dữ liệu của người dùng. Bài viết này sẽ giới thiệu về các yếu tố thúc đẩy việc áp dụng 5G hàng loạt, cạnh tranh của các nhà cung cấp dịch vụ truyền thông có liên quan và rủi ro mạng đang gia tăng trong thế giới 5G và tầm quan trọng của giải pháp Network Native Security trong việc quản lý rủi ro mạng của người tiêu dùng và đảm bảo sự phát triển liên tục của 5G.
Có rất nhiều khái niệm về Zero Trust nhưng bạn đã thực sự hiểu về nó? Bài báo này sẽ đưa ra khái niệm dễ hiểu sự hình thành của thuật ngữ Zero Trust, các tác nhân, khu vực cần triển khai Zero Trust...
13:00 | 13/08/2024
Các dạng tấn công web nói chung và tấn công thay đổi giao diện website nói riêng được xem là một trong các mối đe dọa chính đối với nhiều cơ quan, tổ chức có các hệ thống cung cấp dịch vụ trên nền web. Một cuộc tấn công thay đổi giao diện có thể để lại những hậu quả nghiêm trọng. Nhiều kỹ thuật, giải pháp và công cụ giám sát, phát hiện dạng tấn công này đã được nghiên cứu, phát triển và triển khai trên thực tế. Tuy vậy, một số giải pháp chỉ có khả năng hoạt động với các trang web có nội dung tĩnh hoặc ít thay đổi, hoặc yêu cầu cao về tài nguyên tính toán, hoặc có tỷ lệ phát hiện sai cao. Bài báo này đề xuất một mô hình học sâu cho phát hiện tấn công thay đổi giao diện website, trong đó có xem xét, xử lý ảnh chụp màn hình trang web.
13:00 | 28/08/2024