Điểm:2

OTP vẫn hoàn toàn an toàn nếu chúng tôi giới hạn không gian tin nhắn và khóa

lá cờ cn

Nếu chúng ta có một không gian tin nhắn M {0,1,2,3,4,5,6} và tương tự như vậy không gian khóa là K = {0,1,2,3,4,5,6} (trình tạo chọn các khóa đồng nhất k)

Chúng tôi xác định mã hóa của mình là XOR của đại diện bitwise của họ trên K và M bằng cách sử dụng 4 bit {0000, 0001, 0010, 0011, 0100, 0101, 0110}

Đây là pad một lần phải không? Bởi vì chúng tôi đang XORing và sử dụng khóa có cùng độ dài.

Tuy nhiên, ở đây, thông báo và không gian khóa được biểu diễn bằng 4 bit; nó cũng bị giới hạn ở các giá trị trong phạm vi bao gồm từ 0000 đến 0110.

Điều đó có vi phạm bí mật hoàn hảo theo bất kỳ cách nào không? Bảo mật hoàn hảo cho biết bất kể thông tin trước đó mà kẻ tấn công đã biết, bản mã sẽ không làm rò rỉ bất kỳ thông tin bổ sung nào.

Điểm:21
lá cờ my

Điều đó có vi phạm bí mật hoàn hảo theo bất kỳ cách nào không?

Vâng, rõ ràng. Hạn chế không gian tin nhắn không gây hại gì (kẻ tấn công không thể lấy thêm bất kỳ thông tin nào về tin nhắn, ngay cả khi anh ta đã biết khá nhiều về nó); hạn chế chìa khóa làm.

OTP sử dụng thao tác nhóm để kết hợp tin nhắn và khóa; một điều mà nó cần giả định là các thành viên nhóm tạo nên khóa được chọn ngẫu nhiên thống nhất từ ​​tất cả các thành phần nhóm có thể - với ví dụ của bạn, đây không phải là trường hợp.

Cụ thể, nếu chúng ta thấy trong bản mã giá trị 0111, chúng ta có thể suy ra từ đó là giá trị bản rõ tương ứng không phải là 0000; xét cho cùng, đối với trường hợp đó, giá trị chính sẽ là 0111, và chúng tôi biết đó không phải là trường hợp. Đó là những giá trị mà kẻ tấn công có thể suy ra không phải là thông báo và điều này vi phạm tính bảo mật hoàn hảo.

Bây giờ, nếu bạn đã có thông báo và khóa bao gồm các giá trị từ 0 đến 6, điều hiển nhiên cần làm là thay đổi thao tác nhóm thành 'thêm modulo 7'; nghĩa là, để mã hóa, bạn thêm thông báo vào khóa, sau đó nếu giá trị đó là 7 trở lên, hãy trừ đi 7 - sẽ cho bạn bản mã. Và, để giải mã, bạn thực hiện 'phép trừ modulo 7'; bạn trừ khóa khỏi bản mã và nếu giá trị đó âm, hãy thêm 7. Đây là một phép toán nhóm hoàn toàn hợp lệ và vì tất cả các giá trị của khóa đều có thể (và có lẽ là có thể xác định được), nên nó có thể đáp ứng các yêu cầu về tính bí mật hoàn hảo.

Jack avatar
lá cờ cn
Xin chào, tại sao nếu giá trị bản mã là 0111 thì chúng ta biết rằng bản rõ sẽ không phải là 0000? Có phải vì khóa và tin nhắn không thể giống nhau? Tuy nhiên, nếu chúng tôi không hạn chế không gian khóa đối với cùng một bộ giá trị với không gian tin nhắn như đã đề cập ở trên, điều này có được phép không? Tôi bị bối rối.
Chris Peikert avatar
lá cờ in
Bản mã 0111 không thể có bản rõ bên dưới 0000 vì 0111 không phải là khóa được phép trong hệ thống bạn đã trình bày; bản rõ 0000 chỉ có thể tạo ra bản mã 0111 nếu khóa là 0111.
SAI Peregrinus avatar
lá cờ si
Tôi cũng lưu ý rằng một phép toán modulo ngây thơ sử dụng phép trừ có điều kiện như được mô tả có thể dẫn đến rò rỉ dữ liệu ở kênh bên. "Bí mật hoàn hảo" toán học không bị vi phạm nhưng bí mật trong thế giới thực có thể bị vi phạm!
poncho avatar
lá cờ my
@SAIPeregrinus: vâng; Tôi đã viết ra phương pháp "hiển nhiên" vì tôi mong đợi OP có nền tảng toán học tương đối tối thiểu (và tôi xin lỗi nếu tôi hiểu sai) - một triển khai thực tế sẽ muốn sử dụng các phương pháp tốt hơn (nhưng khó giải thích hơn)
Nobody avatar
lá cờ in
@SAIPeregrinus Kênh phụ nào? Sức mạnh/thời gian? Vâng, chắc chắn rồi, nhưng điều đó khác xa với câu hỏi ở đây nên lúc đầu tôi khá bối rối trước nhận xét của bạn.
lá cờ jp
Vì vậy, chỉ cần làm rõ: điều làm cho lược đồ này không an toàn thực sự *không phải* là *giảm* trong không gian khóa, như đã hỏi trong câu hỏi, mà là *phân phối* các khóa. Chính xác?
poncho avatar
lá cờ my
@JörgWMittag: đúng vậy; thay đổi phân phối sao cho tất cả các giá trị khóa đều có thể nhưng một số có xác suất khác nhau sẽ làm rò rỉ một số thông tin xác suất về bản rõ.
fgrieu avatar
lá cờ ng
Để bảo mật tuyệt đối với thông báo và không gian khóa này, một thứ gì đó gần với OTP ban đầu là $C\gets(K-M)\bmod7$ [C = (K+7-M)%7` trong C] với giải mã bởi $M\gets( K-C)\bmod7$ [M = (K+7-M)%7` trong C]. Điều đó có ưu điểm là mã hóa và giải mã giống nhau, giống như trong OTP truyền thống.
Jack avatar
lá cờ cn
Tôi hơi bối rối với ý nghĩa của k ngẫu nhiên thống nhất khi người ta nói rằng k = {0000, 0001, 0010, 0011, 0100, 0101, 0110} nếu nó là ngẫu nhiên thống nhất thì điều này có ổn không? @poncho
Jack avatar
lá cờ cn
@ChrisPeikert nhưng kẻ tấn công sẽ làm thế nào để khóa đó không được phép trong không gian khóa được chỉ định? tôi bị bối rối
Chris Peikert avatar
lá cờ in
@Jack Chúng tôi tuân theo nguyên tắc Kerckhoffâ và cho rằng đối thủ biết tất cả các thuật toán và phân phối (của khóa và thông báo), nhưng không biết chính khóa đã chọn. Điều này thực sự được phản ánh trong định nghĩa chính thức về bí mật hoàn hảo.
Jack avatar
lá cờ cn
@ChrisPeikert Ví dụ về việc có 0111 hợp lệ như thế nào? Khi chúng ta nói rằng cả k và m là {0000, 0001, 0010, 0011, 0100, 0101, 0110}. bạn không bao giờ có thể có một tin nhắn 0111
Chris Peikert avatar
lá cờ in
@Jack Khóa thực và tin nhắn có thể là 0110 và 0001 (tương ứng), tạo ra bản mã 0111. Khi kẻ nghe trộm nhìn thấy bản mã này, nó có thể suy ra rằng tin nhắn không phải là 0000. Tuy nhiên, trước khi bản mã được gửi, 0000 có thể là thông điệp. Cùng với nhau, đây là một sự vi phạm bí mật hoàn hảo.

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