Bộ mô phỏng cạn kiệt các giao thức không kiến ​​thức trong mô hình Oracle ngẫu nhiên


13

Trong một bài báo có tiêu đề "Về khả năng từ chối trong chuỗi tham chiếu chung và mô hình Oracle ngẫu nhiên", Rafael Pass viết:

Chúng tôi lưu ý rằng khi chứng minh bảo mật theo định nghĩa không kiến ​​thức chuẩn trong mô hình RO [Random Oracle], trình giả lập có hai lợi thế so với mô phỏng mô hình đơn giản, cụ thể là,

  1. Trình mô phỏng có thể thấy những giá trị mà các bên truy vấn nhà tiên tri trên.
  2. Trình mô phỏng có thể trả lời các truy vấn này theo bất kỳ cách nào nó chọn miễn là câu trả lời "nhìn" OK.

Kỹ thuật đầu tiên, cụ thể là khả năng "giám sát" các truy vấn đối với RO, rất phổ biến trong tất cả các bài viết đề cập đến khái niệm kiến ​​thức không trong mô hình RO.

Bây giờ, hãy xem xét định nghĩa về kiến thức không hộp đen ( PPT là viết tắt của máy Turing có xác suất, thời gian đa thức ):

S V *x L r một trình giả lập PPT , sao cho (có thể gian lận) Trình xác minh PPT , đầu vào chung và ngẫu nhiên , những điều sau đây không thể phân biệt được:SVxLr

  • quan điểm của trong khi tương tác với người hoạt động trên đầu vào và sử dụng tính ngẫu nhiên ; VPxr
  • đầu ra của trên đầu vào và , khi được cấp quyền truy cập hộp đen vào . SxrSV

Ở đây, tôi muốn trưng bày một trình xác minh gian lận , công việc của họ là làm cạn kiệt bất kỳ trình giả lập nào cố gắng theo dõi các truy vấn RO:V

Đặt là trình giả lập được đảm bảo bởi bộ định lượng tồn tại trong định nghĩa về kiến ​​thức không hộp đen và để là một đa thức có giới hạn thời gian chạy của trên đầu vào . Giả sử rằng cố gắng theo dõi các truy vấn của đến RO.Sq(|x|)SxSV

Bây giờ, hãy xem xét một gian lận , lần đầu tiên truy vấn RO cho lần (trên các đầu vào tùy ý của sự lựa chọn của nó), sau đó hành động độc hại tùy ý.Vq(|x|)+1

Rõ ràng, cạn kiệt giả lập . Một cách đơn giản cho là từ chối hành vi độc hại đó, nhưng theo cách đó, một người phân biệt có thể dễ dàng phân biệt sự tương tác thực sự với mô phỏng. (Vì trong tương tác thực tế, người hoạt ngôn không thể theo dõi các truy vấn của và do đó sẽ không từ chối dựa trên thực tế là đang truy vấn quá nhiều.)VSSPVV

Cách giải quyết cho vấn đề trên là gì?

Biên tập:

Một nguồn tốt để nghiên cứu ZK trong mô hình RO là:

Martin Gagné, Một nghiên cứu về Mô hình Oracle ngẫu nhiên, Ph.D. Luận văn, Đại học California, Davis , 2008, 109 trang. Có sẵn trên ProQuest: http://gradworks.umi.com/33/38/3336254.html

Đặc biệt, nó đưa ra các định nghĩa về ZK hộp đen trong Mô hình RO trong phần 3.3 (trang 20), được quy cho Yung và Zhao:

Moti Yung và Yunlei Zhao. Không có kiến ​​thức tương tác với các phép lạ ngẫu nhiên bị hạn chế. Trong Lý thuyết về Mật mã học - TCC 2006 , LNCS 3876, trang 21-40, 2006.


Tôi nghĩ bạn có thể có nghĩa là "kiệt sức" thay vì "kiệt sức".
Dave Clarke

Tôi có ý kiến ​​khác. Ý tôi là tôi đã tìm ra cách "làm cạn kiệt" trình giả lập các giao thức ZK ... Không có thứ gọi là giả lập "toàn diện".
MS Dousti

Lỗi của tôi. Tôi đọc mệt mỏi như một tính từ, không phải động từ.
Dave Clarke

Câu trả lời:


10

Có một câu hỏi tại sao người ta muốn định nghĩa ZK hộp đen trong mô hình nhà tiên tri ngẫu nhiên. Có ít nhất hai lý do tại sao mọi người đề xuất định nghĩa về kiến ​​thức không có hộp đen:

1) Đối với một kết quả tích cực, khi bạn nói rằng một mô phỏng là "hộp đen không hiểu biết" nó sẽ tự động cung cấp cho bạn một ID tốt ràng buộc về thời gian chạy của nó (ví dụ, như trái ngược với p o l y ( t i m đ ( V * ) ) ) và nó cũng có thể hữu ích để biết rằng trình mô phỏng không "nhìn vào ruột của V * và không quan tâm nếu V *poly(|x|)time(V)poly(time(V))VVđược thực hiện sử dụng RAM, mạch, vv ... Trong khi một mô hình ngẫu nhiên oracle mô phỏng có thể hiệu quả, đó là rõ ràng không phải hộp đen, bởi vì nó là nghĩa vụ phải bằng cách nào đó nhìn vào việc thực hiện các và hiểu từ khi V * đang đánh giá một hàm băm. Vì lý do này, có một ý nghĩa trong đó không có nghĩa gì khi nói rằng một trình mô phỏng mô hình ngẫu nhiên là "hộp đen".VV

2) Để có kết quả âm tính, mọi người sử dụng "trình giả lập hộp đen" để nắm bắt một lớp lớn các kỹ thuật chứng minh. Trong trường hợp này, bạn có thể định nghĩa trình giả lập hộp đen trong mô hình nhà tiên tri ngẫu nhiên và định nghĩa có ý nghĩa là những gì David nói. Trong thực tế, đối với một kết quả âm ngay cả trong mô hình nhà tiên tri ngẫu nhiên, tốt nhất là nếu kết quả giữ được ngay cả khi bạn cho phép trình giả lập thời gian chạy. Trên thực tế, mặc dù nó không phải lúc nào cũng tuyên bố, kết quả tiêu cực Tôi nhận thức được tất cả đều có thuộc tính này, vì gian lận verifier V *poly(time(V))V thường là một thuật toán đa thức cố định chạy một số hàm giả ngẫu nhiên, trong khi trình giả lập có thể có bất kỳ thời gian chạy đa thức nào.


1
Liệu cùng giữ cho ZK "mô phỏng phổ quát"? Sau khi tất cả, hộp đen ZK là một loại phổ biến mô phỏng ZK, có thời gian chạy là cố định trước khi được xác định. (Tuy nhiên, ZK không phải hộp đen là một loại ZK mô phỏng phổ quát, trong đó S có thể nhìn vào "ruột" của V *)V
MS Dousti

Xin vui lòng xem câu hỏi chỉnh sửa cho một số tài liệu tham khảo.
MS Dousti

1
Đối với một (không hộp đen) mô phỏng vũ trụ, người ta phải cho phép thời gian chạy đa thức trong thời gian chạy của vì nếu không mô phỏng không có thời gian để invoke V * . Nhưng nhìn chung, điểm tôi đang nói là "kiến thức không hộp đen" không phải là một định nghĩa chính tắc mà là một công cụ và công cụ đó có thể được sử dụng khác nhau trong bối cảnh kết quả tích cực hoặc tiêu cực để làm cho kết quả có ý nghĩa hơn. VV
Boaz Barak

1
Tôi đã trì hoãn trả lời bình luận của bạn vì tôi muốn đọc thêm. Cụ thể, tôi đã đọc bài báo của Yung và Zhao (được trích dẫn ở trên) và lưu ý rằng họ đã sử dụng ZK hộp đen trong mô hình RO cho kết quả khả quan, trong khi bạn nói "không có ý nghĩa gì khi nói rằng mô hình nhà tiên tri ngẫu nhiên giả lập là 'hộp đen'. " Là kết quả của họ có vấn đề về mặt triết học, hay chúng ta nên nới lỏng định nghĩa của hộp đen?
MS Dousti

4

Đây là vấn đề của tôi. Gần đây tôi chưa đọc bất kỳ bài báo nào liên quan đến kiến ​​thức không hộp đen trong mô hình nhà tiên tri ngẫu nhiên (RO), vì vậy tôi chỉ đoán ý nghĩa của chúng chứ không phải những gì được viết ở đó. Câu trả lời ngắn gọn (đoán) là BB-ZK trong mô hình RO sẽ cho phép trình giả lập chạy theo đa thức thời gian trong | x | và số lượng truy vấn RO do V *, trình xác minh gian lận.

Hãy cố gắng biện minh cho dự đoán đó. Một quan sát ban đầu là thuật ngữ "bằng chứng không kiến ​​thức hộp đen trong mô hình nhà tiên tri ngẫu nhiên" cần xem xét kỹ hơn để xác định đúng. Trình mô phỏng hộp đen được xác định để hoạt động với bất kỳ nhà tiên tri nào (nghĩa là trình xác minh gian lận dưới dạng hộp đen) và giao diện duy nhất của chúng là thông qua đầu vào / đầu ra của nhà tiên tri. Nếu chúng ta chỉ tăng mô hình này để cung cấp RO cho tất cả các bên (có lẽ bằng cách cho phép các mạch của họ có cổng RO), thì chúng ta sẽ có một mô hình trong đó trình giả lập không thể lập trình RO - trên một truy vấn orory, mọi thứ (bao gồm cả truy vấn RO) xảy ra "bên trong" của nhà tiên tri V *, và sau đó nó trả về tin nhắn tiếp theo của nó. Nếu chúng ta muốn cho phép lập trình RO, thì chúng ta cần sửa đổi các giao diện: Trình mô phỏng hiện có một orory đầu vào / đầu ra cho V * và không có orest ngẫu nhiên. Trên mỗi cuộc gọi đến nhà tiên tri V *, thay vì tạo thông điệp tiếp theo, thay vào đó, nhà tiên tri có thể tạo ra truy vấn tiếp theo cho RO và trình giả lập có thể cung cấp cho nó phản hồi RO bằng cách gọi lại nhà tiên tri. Bây giờ điều này cho phép lập trình RO và chúng tôi cũng có thể cho phép thời gian chạy của trình giả lập phụ thuộc vào số lượng truy vấn của RO.

Bất kỳ khám phá thêm về ý nghĩa của các định nghĩa này được để lại cho người đọc. Tôi đang suy nghĩ cú pháp.


1
Cảm ơn câu trả lời David. Bất kể khả năng của trình giả lập để lập trình RO, nó sẽ có thể "giám sát" chúng. Vì vậy, mọi truy vấn tiên tri từ V * đều lãng phí thời gian của M ít nhất là thời gian. Ý tưởng lớn của bạn là thay đổi mô hình thành "để trình giả lập chạy theo thời gian đa thức trong | x | và số lượng truy vấn RO do V * đưa ra." Đó không phải là mô hình chuẩn, nhưng tôi thấy đó là một giải pháp hợp lý. Tuy nhiên, tôi nghĩ rằng "những người khổng lồ" trong cộng đồng phải thừa nhận tính xác thực của mô hình đó trước tiên ...
MS Dousti

1
Bạn có thể trích dẫn một nguồn xác định chính xác "mô hình chuẩn" không? (Thuật ngữ đó thường được sử dụng như một từ đồng nghĩa với "không có phép lạ ngẫu nhiên hoặc các sửa đổi như vậy có trong mô hình tính toán", nhưng tôi không nghĩ rằng đây là ý của bạn.) Tôi kỳ vọng là tôi đã phác thảo định nghĩa về những gì sẽ được coi là tiêu chuẩn, và nếu không, thì chúng ta có thể tìm ra điều đó mà không có bất kỳ "đại gia" nào chủ động chứng nhận lý lẽ của chúng ta.
David Cash

1
Chắc chắn, theo "mô hình chuẩn" tôi có nghĩa là "định nghĩa tiêu chuẩn" của ZK theo mô hình RO. Bạn có thể tham khảo bài viết của Rafael Pass (được trích dẫn trong câu hỏi) hoặc luận án thạc sĩ của anh ấy (có tiêu đề "Biến thể thay thế của bằng chứng không kiến ​​thức"), hoặc bài báo của Weekly trong AsiaCrypt 2009 ("Kiến thức không trong mô hình Oracle ngẫu nhiên, được xem xét lại") . Không ai trong số họ định nghĩa ZK "hộp đen" trong mô hình RO (tất cả họ đều đề cập đến ZK đầu vào phụ), mặc dù không có tham chiếu nào là "chạy đa thức thời gian trong | x | và số lượng truy vấn RO được tạo bởi V *". Do đó, tôi nghĩ rằng bạn đang đưa ra một định nghĩa mới (Google nó!)
MS Dousti

Xin vui lòng xem câu hỏi chỉnh sửa cho một số tài liệu tham khảo.
MS Dousti
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.