Điểm:1

Mật mã khối có thể được coi là an toàn nếu thay đổi bit của đầu vào dẫn đến thay đổi 50% cơ hội cho mỗi bit đầu ra không? -> số làm tròn?

lá cờ at

Mật mã khối sử dụng tự nghịch đảo ($f(f(x)) = x $) mà sau đó sẽ được áp dụng cho bản rõ và rất có thể chứa một số hằng số có thể dựa trên một khóa. Để có được bảo mật, các hoạt động diễn giải đầu vào theo những cách khác nhau được liên kết với nhau. Quá trình này được lặp đi lặp lại nhiều vòng với các phím khác nhau. Trong trường hợp tối ưu, một đầu vào ngẫu nhiên nằm trong một chu kỳ khép kín (nếu mật mã khối được áp dụng lặp đi lặp lại) với kích thước chu kỳ ngẫu nhiên (đồng nhất, khóa ngẫu nhiên đã cho).

Bằng cách thử nghiệm xung quanh, tôi nhận thấy điều này có thể xảy ra chỉ với một số thao tác rất đơn giản của XOR, Bit-Rotation và phép cộng. (được gọi là ARX)

Ví dụ: cho một vòng có đầu vào $m$:

$$ m = XOR(m, R_i) \ m = RotateBit(m,5) \ m = m + K_i $$

$R_i, K_i$ là các phím tròn cho tròn $i$.

  • XOR một mình không an toàn vì hoạt động đó chỉ ở các bit đơn lẻ mà không ảnh hưởng lẫn nhau.

  • Vòng quay bit được thêm vào để tăng tác động của một bit đối với mọi bit khác. Bản thân nó cũng không an toàn vì nó chỉ tác động ở từng bit đơn lẻ

  • Bổ sung được thêm vào dưới dạng diễn giải đầu vào thứ 2 (dưới dạng số thay vì bit). Ở đây các bit có thể tác động lẫn nhau.

Với điều này, tôi đã nhận được một số phân phối đồng đều tốt (nhưng không hoàn hảo) về độ dài chu kỳ khác nhau (được cung cấp khóa và đầu vào ngẫu nhiên).


Câu hỏi đặt ra là cần phải áp dụng bao nhiêu vòng để bảo mật? Nó cần ít nhất bằng tổng kích thước bit để mọi bit có thể đạt đến mọi vị trí khác do xoay bit.

Đây là một số liên quan chủ đề cho AES.

Nhưng với tư cách là một số liệu tổng quát hơn (đối với mật mã khối tùy chỉnh), độ bảo mật có thể được đo bằng tác động của một thay đổi bit trong đầu vào đối với từng bit của đầu ra không?

Trong trường hợp tối ưu, mọi thay đổi bit có thể có của mọi đầu vào có thể sẽ dẫn đến 50% bit khác nhau ở đầu ra (với mỗi bit khác nhau với cùng một lượng).

Số vòng có thể được tăng lên cho đến khi đạt đến mức độ bảo mật phù hợp.

user2357 avatar
lá cờ us
Theo hiểu biết tốt nhất của tôi, độ nhạy với bản rõ là điều kiện cần, không phải điều kiện đủ.
kelalaka avatar
lá cờ in
Liên quan [Có mật mã khối nào an toàn cho n vòng nhưng không an toàn khi số vòng tăng lên](https://crypto.stackexchange.com/q/91929/18298)
Điểm:2
lá cờ si

Nhưng với tư cách là một số liệu tổng quát hơn (đối với mật mã khối tùy chỉnh), độ bảo mật có thể được đo bằng tác động của một thay đổi bit trong đầu vào đối với từng bit của đầu ra không?

tầm thường không. Nếu hàm vòng của mật mã khối là tuyến tính, thì không có số vòng nào làm cho việc đảo ngược nó trở nên khó khăn hơn.

Bạn cũng không mô tả liệu bạn đang nói về Nhầm lẫn, Khuếch tán hay cả hai.

Nhầm lẫn xác định mối quan hệ giữa Chìa khóa và bản mã: mỗi bit của bản mã phụ thuộc vào nhiều bit của khóa, vì vậy nếu bất kỳ bit nào của khóa bị thay đổi thì khoảng 50% số bit của bản mã sẽ thay đổi.

Sự khuếch tán xác định mối quan hệ giữa văn bản thô và bản mã: mỗi bit trong bản mã phụ thuộc vào nhiều bit của bản rõ, do đó nếu bất kỳ bit nào của bản rõ bị thay đổi thì khoảng 50% số bit của bản mã sẽ thay đổi.

Cả hai đều cần thiết, nhưng không đủ, để bảo mật. Khi được kết hợp với hàm vòng phi tuyến tính, bạn có thể nhận được một mật mã khối phù hợp, nhưng ngay cả khi đó, thông tin vẫn có thể bị rò rỉ dẫn đến mất an toàn.

Ngoài ra, bản thân các mật mã khối chỉ được bảo mật IND-CPA ở mức tốt nhất (hình thức bảo mật yếu nhất) nếu chính xác một khối được mã hóa bằng bất kỳ khóa cụ thể nào. Nhiều khối được mã hóa hơn có nghĩa là bất kỳ hai khối bản rõ giống hệt nhau nào cũng sẽ có bản mã giống hệt nhau, đây là điểm phá vỡ tính không thể phân biệt. Để IND-CPA bảo mật, cần có một chế độ hoạt động như chế độ CTR (biến nó thành mật mã dòng) hoặc chế độ CBC (xâu chuỗi các khối bản mã). Nhưng ngay cả điều đó cũng không "an toàn", vì kẻ tấn công có thể thay đổi bản mã và khiến nạn nhân giải mã để nhận được bản rõ không chính xác, do đó cần có chế độ Mã hóa được xác thực để bảo mật IND-CCA3 thích hợp. Đó sẽ là một cái gì đó giống như chế độ GCM, SIV, GCM-SIV hoặc OCB. Và thậm chí điều đó có một số cảnh báo, vì các chế độ như vậy yêu cầu "nonce" (Số được sử dụng MỘT LẦN) để loại bỏ (GCM, OCB) hoặc giảm bảo mật (GCM-SIV, SIV) nếu được sử dụng lại.

user2357 avatar
lá cờ us
Tôi nghĩ rằng sự nhầm lẫn có liên quan đến mối quan hệ giữa khóa/bản rõ và bản mã được bảo hiểm, trong khi sự khuếch tán có liên quan đến sự lan truyền của các thay đổi của khóa/bản rõ trong bản mã, tôi có đúng không?
J. Doe avatar
lá cờ at
Cảm ơn bạn đã phản hồi. Tôi vẫn chưa bị thuyết phục 100% (nhưng đủ để điều này không hiệu quả trong thực tế). Tôi đã mắc một số sai lầm khi không chỉ định chính xác những gì được cung cấp và những gì được mong muốn (được cung cấp: tối thiểu 1 phi tuyến tính + tối thiểu 1 thao tác khác diễn giải đầu vào khác nhau, ít nhất là nhiều vòng mà mỗi bit của văn bản gốc/khóa có thể có tác động ở mọi bit của mật mã, muốn:IND-CPA đủ bảo mật cho trường hợp này). Tuy nhiên, bạn đã thuyết phục tôi rằng số liệu thống kê cần phải được thực hiện chi tiết hơn nhiều so với dự kiến. Ví dụ, một bit đã cho luôn có thể là 1 nếu một bit khác của bản rõ/khóa cũng là 1.
J. Doe avatar
lá cờ at
Số liệu thống kê khôn ngoan sẽ không thể theo dõi điều này.Đối với một giá trị bit đã cho tại một vị trí nhất định, cơ hội thay đổi trong bản mã cần được theo dõi cho từng thành viên của tập hợp sức mạnh của tất cả các giá trị bit khác (ngoại trừ tập hợp đầy đủ) không khả thi trong ứng dụng thực. Ví dụ. cơ hội thay đổi bit đầu tiên từ 1 thành 0 với bit thứ 3 & 6 là 1 và 7 bit là 0. Giả sử loại thống kê này đã được thực hiện và đạt được khoảng 50% cho mỗi thành viên của bộ nguồn: bạn vẫn thấy khả năng thông tin bị rò rỉ (nếu có, một số ví dụ)?

Đă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.