Điểm:3

Triển khai thực tế Tư cách thành viên nhóm riêng

lá cờ cn

Báo cáo vấn đề

Hãy tưởng tượng bạn có một tập hợp (không có phần tử trùng lặp), ví dụ: S1 = {'a', 'b', 'c'}.

Bạn muốn chia sẻ một đại diện riêng tư (và lý tưởng nhất là có kích thước nhỏ và được bảo vệ toàn vẹn) của tập hợp này với một bên khác (những người có thể có khóa chia sẻ trước với bạn), nơi họ có thể xác minh (có hoặc không) nếu một số yếu tố mà họ lựa chọn ví dụ. 'b' là một phần của tập hợp S1.

Sự kết hợp đơn giản nhất của các nguyên hàm mật mã mà bạn có thể sử dụng để giải quyết vấn đề này là gì?

Chỉ đường cho đến nay

Có vẻ như việc băm tập hợp sẽ là lý tưởng (trái ngược với việc mã hóa đơn giản) do các hạn chế về kích thước.

Nếu chúng tôi muốn thực hiện kiểm tra tư cách thành viên không rõ ràng thì có thể cần phải có một số loại mã hóa đồng hình.

Tôi đã đọc trên Private-Set-Intersection và Private-Set-Membership, tuy nhiên, các triển khai tôi thấy không phải là tối thiểu và có chức năng "bồn rửa nhà bếp" khác không được mong muốn.

Một số đọc cho đến nay

knaccc avatar
lá cờ es
Một phương pháp dễ thực hiện là sử dụng EC El Gamal và "nhân rộng" như được mô tả trong phần 2.1 và 3 trong bài viết này https://eprint.iacr.org/2005/043.pdf (Chỉ cần nhìn vào giao điểm của tập hợp tư nhân các phần và bỏ qua các phần mã hóa 0/1)
Điểm:3
lá cờ us

Bạn chỉ cần một PRF đáng quên. Alice tính toán và gửi $F_k(x)$ cho tất cả $x \in S$, ở đâu $F$ là một PRF. Alice và Bob sử dụng giao thức OPRF để cho Bob học $F_k(y)$ cho một giá trị $y$ của sự lựa chọn của mình. Nếu $y \in S$ sau đó Bob sẽ thấy kết quả khớp với các giá trị do Alice gửi. Nếu $y \not\in S$ thì tính giả ngẫu nhiên của $F$ ngụ ý rằng $\{ F_k(x) \mid x \in S \}$ tất cả trông ngẫu nhiên thậm chí được đưa ra $F_k(y)$. Nói cách khác, những giá trị này không tiết lộ gì về các giá trị cụ thể của $x$ Trong $S$.

Có một giao thức OPRF bán trung thực đơn giản cho PRF $F_k(x) = H(x)^k$, ở đâu $H$ là một lời tiên tri ngẫu nhiên. Nó hoạt động như thế này:

  • Bob chọn ngẫu nhiên $r$ và gửi $Y = H(y)^r$ đến Alice.
  • Alice gửi $Z = Y^k = H(y)^{rk}$ gửi Bob.
  • Bob tính toán đầu ra $Z^{1/r} = H(y)^k = F_k(y)$.

OPRF bảo mật độc hại không đắt hơn nhiều. Bạn có thể tìm thấy một vài đâyđây.

lá cờ cn
Cảm ơn, tôi sẽ đi đọc về điều này.Một câu hỏi ngay lập tức (trước khi đọc thêm) là liệu một PRF được xây dựng từ elgammal có đáp ứng được ràng buộc rò rỉ thông tin về độ dài tiền ảnh hay không? ví dụ. Hãy nghĩ rằng SHA là đầu ra có kích thước không đổi, nhưng sự hiểu biết của tôi về elgammal là nó sẽ dựa trên kích thước đầu vào? Tôi thực sự không cần thuộc tính này để bảo mật ở đây nhưng tôi muốn kích thước không đổi.
lá cờ cn
Câu hỏi thứ hai về vấn đề này, có một số tùy chọn tính toán trước cho `bob` để có thể thực hiện chỉ trong 2 bước không?
lá cờ us
Về câu hỏi 1: Nếu $F$ là một PRF và $H$ có khả năng chống va chạm, thì $F(H(x))$ cũng là một PRF. Vì vậy, chỉ cần băm đầu tiên. Về câu hỏi 2: giao thức OPRF chỉ là một thông báo được gửi theo mỗi hướng, vì vậy không thể tốt hơn về độ phức tạp của vòng (trừ khi tôi hiểu sai câu hỏi).
Điểm:0
lá cờ nc

Đây là một cái gì đó tôi đã làm việc trên.

Tôi muốn "nhỏ" bên dưới nhỏ hơn nhiều so với những gì tiếp theo. Nhưng điều này sẽ phù hợp với mục đích của bạn đối với một tập hợp các chuỗi nhị phân $S$, hàm băm mật mã $H(x)$và khóa chia sẻ trước $k$.

$H(S)=\text{sort} \{H(x) | x \in S\}$. Gọi đây là nhân chứng công khai cho $S$. Bạn có thể ẩn kích thước của tập hợp bằng cách đưa các giá trị băm ngẫu nhiên vào một mô đun độ dài nhất định. Đây sẽ là một nhân chứng công khai không có tính chính trực, nhưng đưa ra ý tưởng cơ bản.

Giả sử kích thước của $x$ nói chung là lớn hơn nhiều so với $H(x)$, đại diện của nhân chứng $H(S)$$S$ là nhỏ so với đại diện cho $S$.

Nếu bạn muốn hạn chế điều này đối với những người có khóa đối xứng được chia sẻ trước k: (Tôi sử dụng $+$ cho append để phân biệt với tập hợp "như vậy")

$H^2(k+S)=\text{sort} \{H(k+H(k+x)) | x \in S\}$. Nối một keyed-checksum để kiểm tra tính toàn vẹn.

$\text{nhân chứng cho S}: H^2(k+S) + H(k+H^2(k+S))$

Một lần nữa, để ẩn kích thước của $S$ bạn luôn có thể thêm các giá trị băm ngẫu nhiên vào kích thước tối đa hoặc (không hoàn hảo) vào mô đun kích thước.

Kiểm tra tư cách thành viên: gửi $(n,H(k+n) \bigoplus H(k+x))$ ở đâu $n$ là một số gia tăng (nó có thể được ngụ ý chẳng hạn như dấu thời gian). Người nhận có thể khám phá $H(k+x)$ và sau đó tính toán $H(k+H(k+x))$ để xem nó có trong tập nhân chứng hay không.

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