Điểm:2

Có thực tế để xây dựng một mật mã mã hóa đối xứng cần thay đổi khóa "chính" cho mỗi bản rõ không?

lá cờ us

Tôi đã đọc về một mật mã mã hóa cần thay đổi khóa "chính" để mã hóa từng bản rõ. Đôi khi sự thay đổi này phụ thuộc vào bản rõ và được thực hiện tự động.

Câu hỏi: Có thực tế để xây dựng một mật mã mã hóa đối xứng cần thay đổi khóa "chính" cho mỗi bản rõ không?

[Chỉnh sửa] Một số mật mã lấy một số khía cạnh của bản rõ và đưa nó vào khóa, đó là một ví dụ về việc được tự động hóa. Điều này không ổn sao?

Lưu ý: Tôi xin lỗi, tôi nghĩ rằng câu hỏi vẫn phải được tinh chỉnh.

Nat avatar
lá cờ de
Nat
Ví dụ rõ ràng sẽ là bàn phím một lần (OTP).
user2357 avatar
lá cờ us
@Nat Nhưng pad một lần không thực tế lắm
Nat avatar
lá cờ de
Nat
Tùy thuộc vào những gì bạn đang đánh giá tính thực tế -- không thực sự để phát trực tuyến YouTube, nhưng đối với hai người bạn muốn giữ liên lạc, việc chia sẻ trước một bảng cho hộp thoại văn bản cần ít không gian và có xu hướng dễ thực hiện.
user2357 avatar
lá cờ us
@Nat Cảm ơn bạn.
Điểm:3
lá cờ ng

Có thực tế để xây dựng một mật mã mã hóa đối xứng cần thay đổi khóa cho mỗi quy trình không?

Như là, tuyên bố này là một mâu thuẫn của Định nghĩa của một mật mã và nó là chìa khóa. Khóa được định nghĩa là đầu vào của mật mã, do đó bản thân mật mã không thể thay đổi nó. Quan trọng hơn, các mô hình tấn công (chỉ bản mã, bản rõ đã biết, bản rõ đã chọn, bản mã đã chọn) giả sử sử dụng lại khóa, do đó không có thay đổi khóa nào đối với các thông báo khác nhau. Giả định quan trọng đó phù hợp với việc sử dụng trường thực tế và được cho là bắt nguồn từ Kerckhoffs.

Nó tuân theo One Time Pad không khớp với định nghĩa của mật mã. OTP tốt nhất là một phương thức mã hóa. Nếu một cái gì đó trong đầu vào của một mật mã phải được thay đổi từ tin nhắn này sang tin nhắn khác (điều này là phổ biến), đó không phải là chìa khóa, đó là một Vector khởi tạo. Nếu một cái gì đó không phải là đầu vào của mật mã thay đổi khi tin nhắn được xử lý, thì đó không phải là khóa của mật mã, đó là liên bang của mật mã (có thể là khóa của mật mã nội bộ).

Vì vậy, chúng ta cần thực hiện một hoặc nhiều điều sau đây để hiểu rõ câu hỏi:

  1. Thay thế từ Chìa khóa qua trạng thái bên trong ban đầu được thiết lập cho khóa của mật mã, rằng mật mã bây giờ có thể tự do thay đổi. Đó là một kết hợp công bằng cho những gì được hỏi, là thực tế, nhưng không hoàn toàn phổ biến. Ví dụ, bạn nên thay đổi khóa của mật mã khối sau mỗi khối để ngăn chặn một số cuộc tấn công DPA.
  2. Thay thế từ Chìa khóa qua trạng thái bên trong ban đầu được thiết lập như chức năng của khóa mật mã (và có thể là đầu vào khác của mật mã, như IV). Bây giờ điều đó là thực tế và chủ đạo (như đã chỉ ra trong câu trả lời này): trạng thái bên trong có thể là khóa phiên, được sử dụng làm khóa của mật mã phụ bên trong, được lấy từ khóa của mật mã tổng thể và được thay đổi sau một số byte văn bản gốc của mật mã tổng thể. Tuy nhiên, điều đó không phù hợp với những gì được hỏi, vì những gì thay đổi là khóa nội bộ, không bao giờ khớp với khóa của mật mã tổng thể.
  3. Biến đổi mật mã đến phương pháp hoặc thiết bị. Điều đó cho phép chúng tôi tự do thay đổi khóa của mật mã và bỏ qua các vấn đề thực tế đã được thử nghiệm trong trận chiến mà người dùng sẽ sử dụng lại khóa ban đầu được cung cấp cho phương pháp hoặc thiết bị, bất kể quy định chống lại điều đó được đưa ra. Để minh họa sự nguy hiểm của việc tái sử dụng đó, xem ví dụ: đây là gizmo trong bao phấn trả lời. Mặc dù nó sử dụng Phân phối khóa lượng tử, nó vẫn cần một khóa bí mật ban đầu (nguồn) được gửi bằng phương tiện truyền thống như chuyển phát nhanh đáng tin cậy. Nếu bí mật đó được sử dụng lại vì liên kết QKD không đồng bộ, thì yêu cầu bảo mật của gizmo sẽ không còn nữa.

Đôi khi sự thay đổi này phụ thuộc vào bản rõ và được thực hiện tự động.

Điều đó không có gì lạ, và ít nhất là ổn trong lý thuyết.Một mật mã khối trong CBC hoặc CFB mode, và một số mật mã khác, thay đổi trạng thái bên trong của chúng theo bản rõ và khóa. Tuy nhiên, việc trộn bản rõ và khóa phải được phân tích cẩn thận, vì nó có thể dẫn đến một số cuộc tấn công.

Paul Uszak avatar
lá cờ cn
Không có khóa phiên?
fgrieu avatar
lá cờ ng
@Paul Uszak: khóa phiên không phải là "khóa" (của mật mã). Họ là một trạng thái nội bộ. Tôi sẽ làm rõ điều đó.
user2357 avatar
lá cờ us
@fgrieu Một số mật mã lấy một số khía cạnh của văn bản gốc và đưa nó vào khóa, đó là một ví dụ về việc được tự động hóa. Điều này không ổn sao?
user2357 avatar
lá cờ us
@fgrieu điều này không mở ra cơ hội xây dựng các hệ thống mã hóa bằng cách tạo kết quả prng và xor với bản rõ và thay đổi khóa trong mỗi quy trình, như hầu hết các mật mã hỗn loạn đều làm? Thực ra họ dùng ở khóa chính chứ không phải khóa nội.
fgrieu avatar
lá cờ ng
@ThePrince: Theo định nghĩa tôi sử dụng, "khóa" của mật mã không thể thay đổi bằng mật mã. Mật mã chỉ có thể thay đổi trạng thái bên trong ban đầu được đặt thành "khóa".
user2357 avatar
lá cờ us
@fgrieu Vậy còn việc tự động thay đổi khóa chính cho mỗi bản rõ mới thì sao?
fgrieu avatar
lá cờ ng
@ThePrince: "Tự động thay đổi khóa chính cho mọi bản rõ mới" không thể _đối với mật mã_, theo định nghĩa hiện đại về mật mã và khóa, vì trong một mật mã, cùng một khóa phải được sử dụng lại với các bản rõ khác nhau. Đó là lý do tại sao OTP không phải là mật mã. Không có gì ngăn cản _thiết bị mã hóa_ hoặc _phương thức mã hóa_ tự động thay đổi khóa của nó cho mỗi văn bản gốc; tuy nhiên, nếu phương pháp đó được sử dụng trong một mật mã, thì khóa của phương thức đó là trạng thái bên trong của mật mã, ban đầu được đặt thành khóa của mật mã. Và mật mã bị hỏng nếu nó không thể được sử dụng một cách an toàn cho các bản rõ khác nhau với cùng một khóa.
user2357 avatar
lá cờ us
@fgrieu Cảm ơn rất nhiều. Tôi đang lên kế hoạch chỉnh sửa câu hỏi. Đầu tiên, tôi phải xem lại một số tài liệu và ít nhất là kèm theo một ví dụ. Tôi sẽ mất một thời gian để làm cho nó trở thành một câu hỏi nghiêm ngặt hơn. Thật khó để đặt một câu hỏi chắc chắn về hệ thống lỏng lẻo, tức là. e., Mật mã dựa trên hỗn loạn. Tôi không phải là người hâm mộ chúng, nhưng tôi phải phân tích chúng. Nói chung, tôi đang làm việc để chỉnh sửa câu hỏi. Cảm ơn sự kiên nhẫn của bạn
Điểm:2
lá cờ de
Nat

tl;drâ Ví dụ phổ biến về chuyển đổi tiền điện tử đối xứng sử dụng một khóa khác nhau mỗi lần sẽ là phần đệm một lần (OTP), trong đó khóa là tập hợp con chưa được sử dụng của phần đệm một lần là bí mật được chia sẻ giữa các bên giao tiếp . Các sơ đồ ratcheting có thể thay đổi các khóa của chúng theo từng bước và các sơ đồ khác cũng có thể thay đổi các khóa của chúng.


Mật mã đối xứng với các khóa thay đổi.

Khóa đối xứng là một bí mật được cả hai bên biết đến. Nếu điều đó được thay đổi trong mỗi lần mã hóa, thì làm sao mỗi bên biết được bí mật mới?

Khả năng:

  1. Họ đã biết bộ khóa sẽ được sử dụng. Đây là cách thức hoạt động của sơ đồ bảng một lần (OTP).

    • Mọi người thường không nghĩ về sơ đồ one-time-pad như một mật mã khối vì nó không giới hạn hoạt động trên các khối. Tuy nhiên, nó cũng có thể hoạt động trên các khối.
  2. Họ thay đổi các bí mật trước đó để tạo ra những bí mật mới. Ví dụ: có thể băm khóa đối xứng trước. Điều này sẽ ăn khớp.

    • Thường thì ý tưởng là để có được chuyển tiếp bí mật, thuộc tính của một thỏa hiệp khóa mới không ảnh hưởng đến tính bảo mật của các thư cũ hơn.
  3. Họ chia sẻ thông tin qua một kênh khác.

  4. Họ thay đổi khóa dựa trên thông tin thu được từ thông báo trước đó.

Hoặc một số kết hợp của chúng.


Các khái niệm liên quan.

Các khái niệm liên quan bao gồm:

  1. Giá trị khởi tạo (IV).
    Giá trị khởi tạo là các giá trị thay đổi từng thông báo để giúp cải thiện mã hóa. Tuy nhiên, những giá trị như vậy không được coi là bí mật, vì vậy chúng thường không được coi là một phần của khóa.

  2. Nhập lại khóa.
    Các bên có thể thực hiện trao đổi khóa bất đối xứng để đồng ý về các khóa mới. Họ có thể chọn thực hiện việc này trước mỗi thông báo đối xứng mới nếu họ muốn.


Lưu ý: Điều này có thể yêu cầu một sơ đồ đặt hàng.

Trong một số ngữ cảnh, tiền điện tử đối xứng cơ bản ngụ ý các thông điệp không có thứ tự. Điều này có nghĩa là, người giải mã sẽ có thể giải mã các bản mã ngay cả khi họ không biết các bản mã đó được tạo theo thứ tự nào.

Tuy nhiên, các sơ đồ thay đổi khóa thường cần giải quyết vấn đề về thứ tự vì các khóa đang thay đổi. Có lẽ họ có thể cho rằng một kênh cung cấp đặt hàng; có lẽ họ có thể gắn thẻ tin nhắn; hoặc có thể một cái gì đó khác.

Nó thường không phải là một vấn đề khó giải quyết, mặc dù đó là điều cần lưu ý.

user2357 avatar
lá cờ us
Nhưng pad một lần không thực tế như vậy.
Nat avatar
lá cờ de
Nat
@ThePrince: OTP chắc chắn có công dụng của nó; nó có các đảm bảo bảo mật mạnh mẽ và yêu cầu rất ít tính toán để mã hóa/giải mã. Nếu bạn có hai điểm cuối có một chút dung lượng lưu trữ, thì OTP có thể là một công cụ hữu ích. Tất nhiên, nó không phù hợp với mọi thứ, nhưng thông thường chúng tôi chọn các phương thức tiền điện tử trong từng trường hợp cụ thể.
user2357 avatar
lá cờ us
Cảm ơn rất nhiều.
Điểm:1
lá cờ cn

Đúng.

Tôi đã đọc về một mật mã mã hóa cần thay đổi khóa cho mỗi quy trình mã hóa.

Không hoàn toàn chắc chắn những gì một "tiến trình" là, nhưng vâng, thay đổi/xoay phím tự động ngày càng phổ biến. Như:-

qkdn

Các khóa (lượng tử) được phân phối giữa các trang A và B với tốc độ giả sử là 10 kbit/s. Các khóa đó sau đó được chuyển vào các thiết bị mã hóa vật lý. Các thiết bị này sử dụng mã hóa thông thường (có thể là AES hoặc Thuật toán mã hóa ánh sáng) để truyền phần lớn dữ liệu với tốc độ cao hơn nhiều so với sử dụng kênh lượng tử (40 Gbit/s).

Sau đó, các khóa mã hóa có thể được thay đổi cứ sau vài giây. Khóa 256 bit có thể được chia sẻ trong vòng 26 ms. Vì vậy, nó không hoàn toàn là một thay đổi trước khi xử lý, mà là thay đổi định kỳ. Sẽ không nằm ngoài giới hạn khả năng thay đổi khóa mã hóa trên mỗi đợt/phiên dữ liệu như bạn đề xuất. Rốt cuộc, các thiết bị chuyển mạch cung cấp khả năng quản lý chất lượng dịch vụ (QoS). Đây có thể là một phần mở rộng của điều đó. Và hoàn toàn thiết thực.

Vì vậy, không phải mật mã thực tế yêu cầu thay đổi khóa liên tục, mà là việc triển khai sử dụng nó. Đủ gần?


Những chi tiết này dựa trên Clavis300 bộ dụng cụ.

Điểm:1
lá cờ cr

Vâng, đó là thông lệ. Thật vậy, đây là ví dụ về cách thức hoạt động của TLS. Đối với TLS, quy trình này được giải thích trên trang này trong bước "Tính toán khóa mã hóa ứng dụng khách".

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