Buộc một hành vi trung thực


9

Làm thế nào bạn có thể buộc một bên phải trung thực (tuân theo các quy tắc giao thức)?

Tôi đã thấy một số cơ chế như cam kết, bằng chứng, v.v., nhưng đơn giản là chúng dường như không giải quyết được toàn bộ vấn đề. Dường như với tôi rằng cấu trúc của thiết kế giao thức và các cơ chế như vậy phải thực hiện công việc. Có ai có một phân loại tốt về điều đó.
Chỉnh sửa
Khi thiết kế các giao thức bảo mật, nếu bạn buộc một bên phải trung thực, thiết kế sẽ dễ dàng hơn nhiều mặc dù việc thực thi này có phần thưởng riêng. Tôi đã thấy khi thiết kế các giao thức bảo mật, các nhà thiết kế giả định một cái gì đó không thực tế đối với tôi, ví dụ như giả sử tất cả các bên trung thực trong trường hợp xấu nhất hoặc giả sử sự trung thực của máy chủ duy trì dữ liệu người dùng. Nhưng khi nhìn vào thiết kế các giao thức trong các mô hình chặt chẽ hơn, bạn hiếm khi thấy các giả định như vậy (ít nhất là tôi chưa thấy nó - tôi chủ yếu nghiên cứu các giao thức quaKhung UC của Canetti mà tôi nghĩ nó chưa hoàn toàn chính thức). Tôi đã tự hỏi, có sự phân loại tốt nào về những cách mà bạn có thể buộc một bên phải trung thực hay có trình biên dịch nào có thể chuyển đổi giao thức đầu vào thành một bên với các bên trung thực không?
Bây giờ tôi sẽ giải thích lý do tại sao tôi nghĩ rằng điều này chỉ không làm công việc mặc dù nó có vẻ không liên quan. Khi thiết kế các giao thức trong khung UC, được hưởng lợi từ mô hình lý tưởng / thực tế, mọi liên kết giao tiếp trong mô hình lý tưởng đều được xác thực, điều này không đúng trong mô hình thực. Vì vậy, các nhà thiết kế giao thức tìm kiếm các phương pháp thay thế để thực hiện kênh này thông qua giả định PKI hoặc CRS (Chuỗi tham chiếu chung). Nhưng khi thiết kế các giao thức xác thực, giả sử các kênh xác thực là sai. Giả sử rằng chúng ta đang thiết kế một giao thức xác thực trong khung UC, có một cuộc tấn công trong đó đối thủ giả mạo danh tính của một bên, nhưng do giả định các liên kết được xác thực trong mô hình lý tưởng mà cuộc tấn công này không được giả định trong khung này! Bạn có thể tham khảoMô hình hóa các cuộc tấn công nội bộ trên các giao thức trao đổi khóa nhóm . Bạn có thể nhận thấy rằng Canetti trong công việc bán kết của mình Các khái niệm có thể kết hợp toàn diện về trao đổi khóa và các kênh bảo mật đề cập đến một khái niệm bảo mật trước đây gọi là SK-Security, đơn giản là đủ để đảm bảo an toàn cho các giao thức xác thực. Ông bằng cách nào đó thú nhận (bằng cách nói rằng đây là vấn đề kỹ thuật) rằng định nghĩa của UC trong bối cảnh này quá hạn chế và cung cấp một biến thể thoải mái được gọi là nhà tiên tri phi thông tin (khiến tôi bối rối, vì tôi chưa thấy mô hình bảo mật này ở đâu , Tôi không thể kết hợp mẫu bảo mật này với bất kỳ mẫu bảo mật nào khác, có thể là sự thiếu hiểu biết của tôi: D).

[Là một lưu ý phụ, Bạn gần như có thể có bất kỳ giao thức Sk-safe nào được chuyển đổi thành giao thức bảo mật UC bất kể thời gian giả lập. Chẳng hạn, bạn chỉ có thể xóa các bản hợp đồng của tin nhắn và giả lập mô phỏng toàn bộ các tương tác theo cách giả. Xem bằng chứng trao đổi khóa nhóm đóng góp toàn cầu để chứng minh! Bây giờ giả sử đây là một giao thức trao đổi khóa nhóm với nhiều bên, thì hiệu quả của trình giả lập là gì ?? Đây là nguồn gốc của câu hỏi khác của tôi trong diễn đàn này .]

Dù sao, do thiếu sự cam kết trong mô hình đơn giản (trên UC), tôi đã tìm kiếm các phương tiện khác để làm cho giao thức được an toàn bằng cách bỏ qua nhu cầu thư giãn đó. Ý tưởng này rất cơ bản trong đầu tôi và đã nảy ra trong đầu tôi khi chỉ nghiên cứu sơ đồ cam kết mới nhất của canetti trong mô hình đơn giản: Độ cứng thích ứng và Bảo mật có thể kết hợp trong Mô hình Đồng bằng từ Giả định Chuẩn .
BTW, tôi không tìm kiếm bằng chứng không có kiến ​​thức vì lý do mà tôi không biết, bất cứ khi nào ai đó sử dụng một trong số chúng trong giao thức đồng thời (trên khung UC), những người khác đã đề cập đến giao thức là không hiệu quả (có thể là do tua lại của trình giả lập).


2
Bạn có thể xem cái này: Wis.weizmann.ac.il/~oding/gmw2.html . Trong bài báo đó, các bên không trung thực buộc phải hành động trung thực bằng cách chứng minh (không có kiến ​​thức) rằng họ tuân theo giao thức ở bước trước.
MS Dousti

4
Tôi nghĩ rằng "buộc hành vi trung thực" là định nghĩa có thể có đối với mật mã hiện đại (không chỉ là che giấu thông tin). Trong trường hợp đó, mọi khu vực phụ của mật mã học có thể được coi là một cách tiếp cận cho câu hỏi đó.
Marc

Tôi đã định viết điều tương tự như Marc. . không có cách một kích cỡ phù hợp để thực thi một hành vi trung thực trong các tình huống khác nhau.
Tsuyoshi Ito

1
Bạn có ý nghĩa chính xác bởi "nhưng đơn giản là chúng dường như không giải quyết được toàn bộ vấn đề?" Bạn có thể đặc sắc hơn không?
Alon Rosen

@Sadeq: Xem đoạn cuối! @Marc & Tsuyoshi lto: Vui lòng xem phần Chỉnh sửa. nó có thể giúp.
Yasser Sobhdel

Câu trả lời:


6

Than ôi, bạn không thể ép mọi người làm những gì giao thức nói họ nên làm.

Ngay cả những người có ý nghĩa tốt, những người có ý định theo giao thức đôi khi cũng mắc lỗi.

Dường như có ít nhất 3 cách tiếp cận:

  • Lý thuyết về tiền điện tử: giả sử các tác nhân "tốt" luôn tuân theo giao thức, trong khi các tác nhân "độc hại" cố gắng lật đổ giao thức. Thiết kế giao thức tiền điện tử sao cho các tác nhân tốt có được thứ họ cần, trong khi các tác nhân độc hại không nhận được gì.
  • lý thuyết trò chơi: giả sử mọi đại lý chỉ nhìn ra vì lợi ích cá nhân của mình. Sử dụng thiết kế cơ chế để tối đa hóa tổng lợi ích cho mọi người.
  • mạng chịu lỗi phân tán: giả sử mọi tác nhân đều thỉnh thoảng mắc lỗi và một vài 'tác nhân bot phát ra nhiều thông điệp độc hại. Phát hiện và cô lập các nút 'bot cho đến khi chúng được cố định; sử dụng phát hiện và sửa lỗi (EDAC) để sửa lỗi thỉnh thoảng xảy ra; sử dụng các giao thức hội tụ mà cuối cùng sẽ chuyển sang trạng thái hữu ích cho dù thông tin sai ban đầu được lưu trữ trong các bảng định tuyến.

Thiết kế cơ chế Trong lý thuyết trò chơi, thiết kế một tình huống (như thiết lập các quy tắc đấu giá) sao cho những người ích kỷ chỉ tìm kiếm lợi ích cá nhân của họ kết thúc việc làm mà nhà thiết kế muốn họ làm được gọi là "thiết kế cơ chế" . Đặc biệt, bằng cách sử dụng lý thuyết thực hiện , các tình huống có thể được thiết kế sao cho kết quả cuối cùng tối đa hóa toàn bộ lợi ích cho mọi người, tránh các tình huống được thiết kế kém như "bi kịch của chung" hoặc "tình huống khó xử của tù nhân" khi mọi thứ không xảy ra với bất kỳ ai quan tâm lâu dài.

Một số quy trình mạnh mẽ nhất như vậy được thiết kế để tương thích khuyến khích .

Lý thuyết trò chơi thường đưa ra giả định đơn giản hóa rằng tất cả các tác nhân có liên quan là "hợp lý". Trong lý thuyết trò chơi, "hợp lý" có nghĩa là một tác nhân thích một số kết quả hơn các kết quả khác, sẵn sàng và có thể thay đổi hành động của mình theo cách mà anh ta mong đợi (cung cấp thông tin có sẵn cho anh ta) sẽ dẫn đến kết quả được ưu tiên hơn (của chính anh ta lợi ích cá nhân hẹp hòi), và anh ta đủ thông minh để nhận ra rằng các tác nhân hợp lý khác sẽ hành động tương tự để cố gắng đạt được kết quả được ưu tiên nhất trong số tất cả các kết quả có thể xảy ra do lựa chọn hành động đó.

Một nhà thiết kế có thể tạm thời đưa ra giả định đơn giản hóa rằng tất cả mọi người chỉ hành động theo lợi ích cá nhân hẹp hòi của chính họ. Giả định đó giúp dễ dàng thiết kế một tình huống bằng lý thuyết thực hiện. Tuy nhiên, sau khi thiết kế kết thúc, việc mọi người hành động theo lợi ích cá nhân hẹp hòi của họ (" Homo economus ") không quan trọng, hoặc họ có vị tha và muốn tối đa hóa tổng lợi ích ròng cho mọi người hay không - trong một Tình huống được thiết kế hợp lý, cả hai loại người đều đưa ra chính xác các lựa chọn giống nhau và kết quả cuối cùng tối đa hóa tổng lợi ích cho mọi người.

giao thức hội tụ

Khi thiết kế một giao thức định tuyến , mỗi nút trong mạng sẽ gửi tin nhắn đến các hàng xóm của nó truyền thông tin về những nút khác có thể truy cập được từ nút đó.

Than ôi, đôi khi những tin nhắn này có lỗi. Tồi tệ hơn, đôi khi một nút được cấu hình sai và phát ra nhiều thông điệp sai lệch và thậm chí có thể gây hại.

Mặc dù con người chúng ta biết tin nhắn có thể không chính xác, chúng ta thường thiết kế giao thức để một nút hoạt động đúng sẽ tin tưởng mọi thông báo và lưu trữ thông tin trong bảng định tuyến của nó và đưa ra quyết định như thể tin rằng thông tin đó hoàn toàn đúng.

Khi một số người tắt một nút xấu (hoặc ngắt kết nối nó khỏi mạng), chúng tôi thường thiết kế giao thức để nhanh chóng truyền thông tin tốt để loại bỏ thông tin bị hỏng và nhanh chóng hội tụ về trạng thái hữu ích.

phương pháp kết hợp

Thiết kế cơ chế thuật toán dường như cố gắng kết hợp phương pháp mạng chịu lỗi và phương pháp cơ chế lý thuyết trò chơi.

@Yoichi Hirai và Aaron, cảm ơn bạn đã chỉ ra một số nỗ lực thú vị để kết hợp lý thuyết trò chơi và mật mã.


4

Joe Halpern có một slide về chủ đề đó. http://games2009.dimi.uniud.it/Halpern.pdf

Đây là về việc khuyến khích các bên để họ tuân theo một giao thức. Những cơ chế đó đòi hỏi sự hợp lý của các bên và các lập luận dựa trên lý thuyết trò chơi.


1
Đây là một bài báo liên quan để đi cùng với các slide: theory.stanford.edu/~vteague/STOC04.pdf - Cách tiếp cận này không "buộc" mọi người tuân theo giao thức, nhưng cố gắng thiết kế giao thức để khuyến khích các cá nhân muốn làm như vậy. Tất nhiên, để làm điều này, bạn phải đưa ra một số giả định về chính xác những người theo giao thức muốn làm gì ...
Aaron Roth

nếu có thể bạn có thể giải thích "hợp lý" nghĩa là gì trong bối cảnh này? ví dụ, điều đó có nghĩa là tuân thủ một tập hợp tiên đề toàn cầu cơ bản không? hoặc nó có nghĩa là các bên liên quan chia sẻ cùng một tập hợp tiên đề cơ bản? lời giải thích trước đây khiến tôi vô lý trong bất kỳ kịch bản thực tế nào, vì các cá nhân thường có những động lực cơ bản khác nhau, và do đó có thể được dự kiến ​​sẽ đối xử với 'ưu đãi' theo những cách rất khác nhau.
s8soj3o289

@blackkantara: một người chơi hợp lý tối đa hóa (kỳ vọng) một chức năng tiện ích. vì lý do bạn chỉ ra, nó luôn luôn là một cuộc đấu tranh để đưa ra các tiên đề đúng mà các tiện ích cần phải đáp ứng. nhưng chúng tôi luôn cố gắng cho các tiên đề tối thiểu. bất kỳ cuốn sách kinh tế vi mô tốt nào cũng sẽ đi vào chi tiết về vấn đề này
Sasho Nikolov

@blackkantara: về bài báo Halpern: anh ta giả định rằng các bên trong giao thức (chia sẻ bí mật) thích biết bí mật để không biết về nó, và thích rằng ít hơn các bên khác biết bí mật. Ngoài ra, khái niệm về trạng thái cân bằng mà anh ta sử dụng là trạng thái cân bằng Nash đối với các chiến lược không được đề cao (tức là một người chơi sẽ không chơi chiến lược nếu người khác luôn luôn ít nhất là tốt, miễn là những người chơi khác không thay đổi chiến lược của họ và chiến lược hiện tại của cô ta là không tệ hơn bất kỳ ai khác, cô cũng sẽ không thay đổi nó).
Sasho Nikolov
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.