Điểm:2

Việc sử dụng lại IV trong AES-CBC có làm suy yếu nó không?

lá cờ cn

Rsynccrypto được cho là sử dụng AES-CBC với một bước ngoặt: Nếu một vài byte cuối cùng của văn bản gốc đáp ứng một điều kiện*, thì hãy dừng lại, đệm khối hiện tại và bắt đầu mã hóa khối mới từ vị trí hiện tại trong tệp trong khi sử dụng lại IV. Ví dụ tốt hơn có thể ở dạng mã giả:

if (kích hoạt (bộ đệm, i)) {
  mã hóa_next_block(bộ đệm, i);
  init_encryption(iv);
} khác nếu (is_block_boundary(i)) {
  mã hóa_next_block(bộ đệm, i)
}

Bạn có thể kiểm tra mã đây

Điều đó làm suy yếu mã hóa bằng cách nào đó? Nếu vậy, làm thế nào?

* Điều kiện chính xác là tổng của 8196 byte cuối mod 4096 bằng 0.

Điểm:3
lá cờ us

Chúng tôi thậm chí không cần phải phân tích cẩn thận biến thể của chế độ CBC. Trang web cho rsyncrypto nói lên tất cả:

Sửa đổi này đảm bảo rằng hai tệp gần như giống hệt nhau, chẳng hạn như cùng một tệp trước một thay đổi sau khi được mã hóa bằng rsyncrypto và cùng một khóa, sẽ tạo ra các tệp được mã hóa gần như giống hệt nhau

Dù họ đang làm gì (tái sử dụng IV, v.v.) và cho rằng họ thực sự thành công với các mục tiêu đã nêu, rõ ràng họ đã rò rỉ một số thông tin tương tự về các bản rõ. Vì vậy: vâng, chúng làm suy yếu chế độ CBC, chế độ này không làm rò rỉ bất cứ điều gì về bản rõ (ngoại trừ độ dài) khi được sử dụng đúng cách.


Về biến thể CBC cụ thể của họ: CBC duy trì giá trị chuỗi từ khối này sang khối khác. Ban đầu, giá trị chuỗi được đặt thành IV và đối với các khối tiếp theo, giá trị chuỗi là khối bản mã. Rõ ràng khi một điều kiện nhất định được thỏa mãn, họ sẽ đặt lại giá trị chuỗi về IV ban đầu.

Ai cũng biết rằng việc sử dụng lại IV trong chế độ CBC sẽ làm rò rỉ độ dài của tiền tố chung của bản rõ. Nói cách khác, nếu lần đầu tiên $k$ khối của $M$$M'$ giống hệt nhau thì cái đầu tiên $k$ khối của $\textsf{CBC}_k(IV,M)$$\textsf{CBC}_k(IV,M')$ sẽ giống hệt nhau. Có thể chỉ ra rằng đây là chỉ có thông tin về các bản rõ bị rò rỉ. (Đây là giả định IV ngẫu nhiên; nhiều IV có thể bị rò rỉ hơn nếu đối thủ có thể dự đoán/chọn IV).

Lý do tương tự áp dụng cho biến thể CBC này. Giả sử IV chỉ được sử dụng cho một mã hóa (nhưng giá trị chuỗi có thể được đặt lại thành IV đó trong quá trình mã hóa đó), các bản mã bị rò rỉ tiền tố chung sau bất kỳ bước "đặt lại IV" nào. Vì vậy, một kẻ nghe lén xem một bản mã và thấy rằng các khối 12,13,14 bằng các khối 22,23,24 có thể kết luận rằng các khối 11 và 21 của bản rõ chắc chắn đã gây ra sự thiết lập lại IV, và bản rõ bổ sung đó các khối 12,13,14 bằng nhau khối bản rõ 22,23,24.

Kryštof Vosyka avatar
lá cờ cn
Tôi đã chỉnh sửa câu hỏi để cung cấp rõ ràng hơn.
lá cờ us
Tôi đã cập nhật phản hồi của mình.
Điểm:0
lá cờ vu

Có thể nó thực sự không phải là dầu rắn, nhưng tốt nhất là nó thừa.

Phần đầu tiên của nó chi tiết mà tôi gọi là thừa là thực tế là nó sử dụng RSA để mã hóa khóa trên mỗi tệp mà vì lý do nào đó họ gọi là khóa "phiên".

Tôi tin rằng có một chế độ hoạt động của mật mã khối thân thiện với rsync và đó là chế độ mã hóa đĩa XTS.Có, nếu bạn có thể mã hóa một thiết bị khối và có quyền truy cập đọc-ghi trực tiếp vào các khối riêng lẻ, thì không có lý do gì mà công nghệ tương tự không thể được áp dụng cho các phân đoạn tệp.

Kryštof Vosyka avatar
lá cờ cn
Trên thực tế, nếu dữ liệu không được bù đắp theo toàn bộ khối, thì nó không còn thân thiện với rsync nữa. Ít nhất đó là cách tôi hiểu 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.