Điểm:0

Tăng khả năng song song hóa của Triple-DES

lá cờ in
Jim

Mã hóa Triple-DES bằng khóa đầu tiên, sau đó là khóa thứ hai, sau đó là khóa thứ ba. Hai chìa khóa đang ngồi xung quanh chờ đợi. Tại sao không mã hóa bằng cả ba khóa cùng một lúc?

Bạn lấy 192 bit của văn bản gốc (ba khối phụ 64 bit) và chạy toàn bộ 192 bit thông qua ma trận MDS làm bước chuẩn bị. Sau đó, song song, bạn mã hóa đồng thời khối đầu tiên bằng khóa đầu tiên, khối thứ hai bằng khóa thứ hai và khối thứ ba bằng khóa thứ ba.

Bạn lặp lại ma trận MDS 192 bit. Sau đó, song song, bạn mã hóa khối thứ ba bằng khóa đầu tiên, khối đầu tiên bằng khóa thứ hai và khối thứ hai bằng khóa thứ ba.

Bạn lặp lại ma trận MDS 192 bit. Sau đó, song song, bạn mã hóa khối thứ hai bằng khóa đầu tiên, khối thứ ba bằng khóa thứ hai và khối đầu tiên bằng khóa thứ ba.

Khối1 = Khóa1, Khóa2, Khóa3

Khối2 = Key2, Key3, Key1

Khối3 = Khóa3, Khóa1, Khóa2

Mã hóa bằng khóa thứ ba, khóa thứ hai rồi đến khóa thứ nhất không khác gì mã hóa bằng khóa thứ nhất, khóa thứ hai rồi đến khóa thứ ba, do đó sẽ không mất bảo mật. Điều này cũng sẽ chống lại cuộc tấn công kích thước khối 64 bit. Hiệu suất thực tế sẽ tăng bao nhiêu từ việc mã hóa song song cả ba khóa? Nó có làm phức tạp việc triển khai đến mức không đáng không?

kodlu avatar
lá cờ sa
Ma trận MDS là từ thiết kế lớp trộn AES, nó không liên quan gì đến DES nên việc sử dụng nó phải có mục đích, chính xác là gì? Khi bạn nói mã hóa k1,k2,k3 (diễn giải cho nhận xét) không khác gì mã hóa k2,k3,k1, thì đó là một ánh xạ mã hóa khác. vui lòng đặt câu hỏi rõ ràng, thay vì "bạn cũng làm như vậy", v.v.
lá cờ ph
Điều đó có nghĩa là gì cho một chìa khóa để ngồi xung quanh chờ đợi? Khi bạn nói về tính song song, bạn thường có nghĩa là các lõi bộ xử lý sẽ ngồi chờ đợi. Tại sao điều này tốt hơn chạy 3DES trên nhiều khối cùng một lúc?
Điểm:0
lá cờ my

Chà, đây thực sự là một mật mã khối 192 bit; thay đổi bất kỳ một bit nào của đầu vào sẽ có tác động không thể đoán trước đối với tất cả 192 bit đầu ra. Một số lưu ý:

  • 192 là mật mã khối có kích thước lẻ; nếu tôi là người thiết kế, tôi rất muốn thêm một làn đường khác và biến nó thành mật mã khối 256 bit.

  • MDS ban đầu là vô nghĩa về mặt mật mã - đó là một hoạt động công khai và do đó, nhà phân tích mật mã có thể dễ dàng tìm ra nó hơn.

  • Thoạt nhìn, có vẻ như bạn sẽ không thu được gì bằng cách xoay các phím giữa các lớp; các đầu vào (giả sử) một DES cụ thể ở lớp hai là một hàm tuyến tính của cả ba đầu ra DES ở lớp trước. Theo một nghĩa nào đó, cả ba chức năng DES ở một lớp cụ thể là tương đương nhau; Tôi sẽ đơn giản hóa nó bằng cách tạo từng cấp độ "phím 1, phím 2, phím 3" (và có thể thêm "phím 4" nếu bạn sử dụng ý tưởng khối 256 bit ở trên).

  • "Mã hóa bằng khóa thứ ba, khóa thứ hai và sau đó là khóa đầu tiên không khác gì mã hóa bằng khóa thứ nhất, khóa thứ hai và sau đó là khóa thứ ba, do đó sẽ không mất bảo mật." - giữ nó ngay tại đó, bucko - thêm các hoạt động ở giữa ảnh hưởng đến bảo mật và nó có thể làm giảm nó. Nó có thể an toàn (nghĩa là ít nhất cũng an toàn như 3DES thông thường), tuy nhiên đó là điều cần được thể hiện chứ không chỉ giả định.

  • Cách tấn công tốt nhất xảy ra với tôi (không phải đây là bằng chứng cho thấy không có cách nào tốt hơn): cách tiếp cận dựa trên độ bão hòa (trong đó bạn giữ hai trong số các khối đầu vào không đổi và duyệt qua tất cả các khả năng của khối thứ ba - vâng , đó là $2^{64}$ khối đầu vào); sau ma trận MDS thứ hai, tổng trên tất cả $2^{64}$ các khối của đầu vào cho bất kỳ khối DES nào của vòng cuối cùng sẽ bằng 0 - điều này sẽ cho phép bạn kiểm tra dự đoán về khóa DES, với chi phí khoảng $2^{64}$ giải mã thử nghiệm, nghĩa là, $2^{112}$ giải mã để thực hiện tìm kiếm đầy đủ. Không biết liệu bạn có thể thực hiện một cuộc tấn công hiệu quả hơn hay không.

Đối với hiệu suất, điều đó sẽ phụ thuộc khá nhiều vào phần cứng (hiệu suất luôn là như vậy) - rõ ràng, nếu bạn có một triển khai phần mềm chỉ có thể thực hiện một thao tác DES tại một thời điểm, thì bạn không nhanh hơn 3DES bình thường (và thực sự chậm hơn một chút; cả do hoạt động IP/FP trung gian và hoạt động MDS). Giả sử bạn có phần cứng có thể thực hiện song song nhiều thao tác DES, thì bạn có thể nhận được một số lợi ích - tuy nhiên (để thực hiện tính toán BOTE) mã hóa 48 byte sẽ mất 6 thao tác DES (song song 3 lần); mã hóa cùng 48 byte bằng AES sẽ mất 3 thao tác AES - tôi hy vọng thao tác sau sẽ nhanh hơn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.