0
Tải bản đầy đủ (.docx) (96 trang)

xuất lược đồ khóa 128-bit

Một phần của tài liệu NGHIÊN CỨU TÌM HIỂU ĐÁNH GIÁ CHẤT LƯỢNG MỘT SỐ LƯỢC ĐỒ KHÓA TRONG MÃ KHỐI (Trang 88 -90 )

, The linked image cannot be displayed The file may have been moved renamed or deleted Verify that the link points to the correct

3.7.3.1 xuất lược đồ khóa 128-bit

Một lược đồ khóa đề xuất cho khóa 128-bit được trình bày chi tiết trong Bảng 8, trong đó NR = 10 là số vòng của mã AES, a, b là các giá trị 128-bit,

a = a0|a1|… |a15 (ai là các giá trị 8-bit và | biểu diễn sự ghép nối), r là số vòng và KRr là khóa con vòng 128-bit cho vòng r. Nó dẫn đến việc sinh mỗi khóa con vòng một cách độc lập với các khóa con vòng khác. Mỗi khóa con vòng là một đầu ra 128-bit sau khi thực thi 3 vòng của thuật toán mã, sử dụng khóa chính (cùng với phép cộng các hằng số vòng khác nhau) cho cả đầu vào dữ liệu và đầu vào khóa.

Bảng 11. Đề xuất lược đồ khóa cho 128-bit khóa. for r = 0 to NR for j = 0 to 15 aj = bj = MKjS[r∗16+j] for i = 1 to 2 ByteSub(a) ShiftRow(a) MixColumn(a) AddRoundKey(a,b) KRr = a

Bảng 12 đưa ra các kết quả kiểm tra CryptX đối với việc tạo một khóa con đơn với số vòng mã AES sử dụng trong phép sinh đặt trong cột đầu tiên. Các kết quả này nói lên rằng, với khóa con vòng 128-bit đã tạo ra sử dụng lược đồ khóa đề xuất, sự xáo trộn bit và khuyếch tán bit hoàn thiện nhận được sau 3 vòng; theo đó để làm rõ sự quyết định việc dùng 3 vòng phép mã để tạo ra từng khóa con vòng.

Bảng 12. Các kết quả kiểm tra thống kê CryptX trên lược đồ khóa 128-bit đã đề xuất

Vòng Tần số (p) SAC (D*) 2 0.1557 15.775

3 4

0.8757

0.3498 1.2121.689 1.689

Bảng 13. Các kết quả kiểm tra thống kê CryptX trên thuật toán mã chỉnh sửa AES

Vòng Tần số (p) SAC (D*) 2 3 4 0.0000 0.2663 0.3110 21.113 1.282 1.347

Lý do mà kiểm tra SAC không được thỏa mãn đến tận vòng thứ 4 của phép mã AES (Bảng 11) đó là phép MixColumn bị xóa trong vòng cuối cùng. Bảng 13 đưa ra các kết quả kiểm tra CryptX với thuật toán mã đã được đan xen phép MixColumn trong vòng cuối cùng. Các tác giả AES phát biểu rằng hàm MixColumn bị xóa trong vòng cuối “với mục đích làm cho mã pháp và phép ngược của nó có cấu trúc giống nhau nhiều hơn”.

Ưu điểm quan trọng nhất của lược đồ khóa đề xuất đó là các kiểm tra tần số và SAC được thỏa mãn, do đó bảo đảm sự khuyếch tán và xáo trộn bit hoàn thiện được thỏa mãn với mọi khóa con. Điều này trái ngược hoàn toàn với lược đồ khóa AES không thỏa mãn kiểm tra tần số trong phần lớn các khóa con đã tạo ra và cũng không khóa con nào thỏa mãn kiểm tra SAC.

Chú ý rằng bản thân khóa chính cũng được XOR theo bit lần lượt trong 3 vòng (thay vì 3 khóa con vòng riêng biệt được XOR như trong trường hợp của phép mã). Lý do đó cốt để mỗi lược đồ khóa riêng lẻ là không cần thiết. Phép XOR theo bit khóa chính (thay bởi các khóa con vòng đã tạo ra) không làm giảm sự an toàn của lược đồ khóa theo bất kỳ cách nào. Phép cộng với các hằng số khởi đầu mỗi phép tạo khóa con vòng không những tách biệt từng khóa con tạo ra với các khóa con khác, mà còn phá bỏ các khóa yếu có thể; ví

dụ, nếu tất cả các byte khóa chính giống nhau. Quan tâm về tính công khai và đơn giản, các hằng số sử dụng là các hằng số S-box.

Chú ý rằng, điểm đặc trưng cơ bản của lược đồ khóa là nó xác định một khóa con 128-bit từ một khóa chính 192-bit hoặc 256-bit, như vậy sẽ có các va chạm khóa (với một va chạm khóa được định nghĩa ở đây là tìm được 2 khóa chính 192-bit/256-bit tạo ra các khóa con vòng 128-bit giống nhau). Điều này là không thể tránh được vì từ số lượng lớn hơn các bit khóa trong khóa chính đã bị rút gọn về số lượng nhỏ hơn các bit khóa trong khóa con. Điều mà lược đồ khóa cố gắng ngăn ngừa đó là các lớp lớn các khóa chính, mà nó sẽ cho phép tạo ra khóa chính thứ 2 thỏa mãn sự va chạm khóa, sau đó nó có thể được sử dụng trong một ngữ cảnh tấn công nào đó. Trong trường hợp lược đồ khóa đề xuất thì mỗi khóa con đều thỏa mãn kiểm tra SAC. Điều này có nghĩa là, thậm trí nếu một bit của khóa chính bị thay đổi, thì xấp xỉ một nửa số bit của khóa con sẽ bị thay đổi. Đây là tính khuyếch tán tốt nhất mà nó có thể đạt được; do đó sự va chạm khóa bất kỳ chỉ xuất hiện một lần với 2 khóa chính lựa chọn ngẫu nhiên, và sẽ không tạo thành một lớp khóa yếu.

Một phần của tài liệu NGHIÊN CỨU TÌM HIỂU ĐÁNH GIÁ CHẤT LƯỢNG MỘT SỐ LƯỢC ĐỒ KHÓA TRONG MÃ KHỐI (Trang 88 -90 )

×