2009-02-04 33 views
5

Tôi gặp sự cố khi hiểu bước MixColumn được mô tả here.Kết hợp các cột MixColumns

Tôi biết về sự khuếch tán và tất cả đều có ý nghĩa về điểm mà nó nói rằng mỗi cột được coi như một đa thức và nhân modulo trên GF (2^8).

NHƯNG .. đa năng trong GF (2^8). Mặc dù tên miền vẫn như cũ, nó không thể đảo ngược do mod .... và nó phải được đảo ngược vì đó là toàn bộ điểm của nó.

Theo như bit đầu tiên, cách tiếp cận của tôi là lấy A, B, C và D là 4 byte của một cột và A1, A2, ..., A8 dưới dạng các bit và E, F, G và H là byte đầu ra. Tôi đã đi để thiết lập

E = A1,B2,C3,D4,A5,B6,C7,D8 
F = D1,A2,B3,C4,D5,A6,B7,C8 
G = C1,D2,A3,B4,C5,D6,A7,B8 
H = B1,C2,D3,A4,B5,C6,D7,A8 

Và do đó nó có thể đảo ngược, one-to-one, tuyến tính và phân phối

sau Nó nói rằng nó có thể được xem như là một phép nhân ma trận nhưng như các yếu tố của ma trận phải là byte và đầu ra là byte thì mỗi phần tử của ma trận phải là modulo 256 và do đó không thể đảo ngược và không tuyến tính.

Tôi đã hiểu điều này sai chưa? Tôi đấu tranh với toán học và đang cố gắng hiểu những gì cần phải được thực hiện để tôi có thể chuyển đổi nó thành logic.

Trả lời

5

MixColumns có lẽ là phần khó nhất đối với AES, nhưng thật thú vị khi tôi tính toán và thực sự thấy các con số xuất phát từ đâu. Tôi đã tính toán chi tiết trong bài đăng trên blog của tôi "A Stick Figure Guide to the Advanced Encryption Standard (AES)". Cụ thể, nhìn vào Act 4, Scene 16. Tôi cũng đặt ngược lại nó trên tấm nôi trong cảnh tiếp theo (17). Nếu bạn có thêm bất kỳ câu hỏi nào, vui lòng để lại nhận xét về bài đăng đó hoặc tại đây.

+0

Truyện tranh hay, cảm ơn. Bây giờ tôi hiểu cách thức hoạt động của AES :-) –

4

Các nhân trong MixColumns thực sự có thể đảo ngược, và nó không được modulo 256. samiam.org/mix-column.html có một lời giải thích tốt của bước MixColumns, và samiam.org/galois.html hiện một công việc tuyệt vời của việc giải thích làm thế nào để làm phép tính trong lĩnh vực hữu hạn AES của.

Các vấn đề liên quan