Điểm:0

Làm thế nào để chứng minh kiến ​​thức về một bí mật và cho phép người nhận sao chép nó?

lá cờ ug

Hãy xem xét tình huống sau:

Chúng tôi có hai đại lý, Mộtb.

b cần phải chứng minh rằng họ biết một bí mật để Một, mà không chia sẻ bí mật thực sự.

ví dụ.: Một cần một cách để loại bỏ trùng lặp những bí mật mà họ nhận được từ b, nhưng họ không cần biết những bí mật thực sự. (và b không muốn họ biết)

Hãy nghĩ về nó giống như chia sẻ một hàm băm của bí mật đó, ngoại trừ: đó là một nguồn entropy rất nhỏ, thấp (có khoảng 1 tỷ giá trị có thể). Điều này có nghĩa là một hàm băm đơn giản sẽ dễ bị tấn công từ điển.

Hiện nay, b có thể thêm một "muối" ẩn vào mỗi bí mật mà họ chia sẻ và sau đó băm bí mật đó, và điều đó sẽ gây khó khăn hơn cho Một để thực hiện một cuộc tấn công từ điển. Theo như tôi có thể nói, điều này sẽ "giải quyết" vấn đề cho trường hợp 1-1.

Tuy nhiên, bây giờ hãy giới thiệu tác nhân thứ ba, C. C đang gửi cùng một loại bí mật tới Một. bC không thể chia sẻ bí mật của họ với nhau.

C cuối cùng có thể gửi "bản sao" bí mật mà b có, mặc dù họ không biết những gì b có trên cuối của họ.

Một, tất nhiên, bây giờ cần loại bỏ trùng lặp không chỉ các bí mật từ b, mà còn từ C.

Muối ẩn sẽ không hoạt động nữa vì bây giờ C sẽ cần biết muối để có thể tạo ra các giá trị băm giống nhau. Nếu không thì Một sẽ không thể khử trùng lặp giữa các khóa từ bC. Tuy nhiên, có một muối chung có nghĩa là C có thể thực hiện một cuộc tấn công từ điển vào b hoặc ngược lại.

Có thể Một, bC đạt được một thỏa thuận nơi bC có thể chia sẻ "bằng chứng" của họ với Một, theo cách mà Một có thể khử trùng lặp chúng, nhưng không ai có thể tiết lộ bí mật của nhau?

Nếu vậy, điều này có thể được khái quát hóa cho bất kỳ số lượng người tiêu dùng/nhà sản xuất nào không?

Không phải là một chuyên gia về mật mã (tôi thực sự chỉ biết những điều cơ bản nhất), tôi không chắc liệu mình có đang sử dụng các thuật ngữ thích hợp ở đây hay không. Hãy cho tôi biết nếu tôi có thể làm rõ bất kỳ của nó. Ngoài ra, đây không phải là bài tập về nhà hay bất cứ thứ gì tương tự - mặc dù nó được thúc đẩy bởi một vấn đề cụ thể mà tôi đã đọc gần đây, nhưng đây chủ yếu chỉ là sự tò mò. Một lời giải thích sơ bộ về lý do tại sao điều đó là không thể (trong trường hợp không thể) chắc chắn là đủ đối với tôi. Tương tự đối với mô tả ngắn gọn về một thuật toán đã biết, ngay cả khi chỉ là tên - với hướng thích hợp, tôi có thể tự mình thực hiện một số nghiên cứu.

(Chỉ cần rõ ràng nếu nó chưa phải là: Một, bC không tin nhau)

(Giả tạo) ví dụ

Alice và Bob muốn bán tem cho một nhà sưu tập tem. Hãy nghĩ về một con tem giống như một chuỗi 7 ký tự chỉ có các ký tự viết thường và người sưu tập tem không thể tự chế tạo chúng.

Người sưu tập tem sẽ mua bất kỳ con tem nào mà họ hiện không có. Tuy nhiên, nó sẽ không mua con tem ngay lập tức: nó sẽ đợi xem có bao nhiêu người bán có nó để có thể mua con tem với giá thấp nhất.

Vì vậy, trước khi gửi con tem thực, Alice (hoặc Bob) phải gửi "giá thầu" cho người sưu tập để họ có thể kiểm tra xem họ đã có con tem chưa hay đã có người khác cung cấp con tem đó. Họ không thể gửi con tem thực với giá thầu đó, nếu không người sưu tập sẽ có nó miễn phí, điều này chẳng vui vẻ gì với bất kỳ ai. Người sưu tập cần biết giá thầu được đóng dấu "nào", ngay cả khi họ không biết chuỗi 7 ký tự thực tế - nếu không sẽ không thể so sánh giá thầu.

knaccc avatar
lá cờ es
B và C sẽ cần đặt niềm tin vào A, vì A có thể tiết lộ cho B hoặc C nếu B và C chia sẻ bất kỳ bản sao nào với nhau. Nếu B chia sẻ một giá trị tại một thời điểm với A, B có thể được A thông báo ngay khi A nhận thấy rằng giá trị cụ thể được chia sẻ bởi C. Có lẽ nếu bạn giải thích vấn đề cụ thể thì có thể dễ dàng hiểu đầy đủ hơn về các ràng buộc tin cậy.
Cássio Renan avatar
lá cờ ug
B hoặc C hoàn toàn không thể tin tưởng A hoặc nhau. Tôi không chắc vấn đề cụ thể (đã từng) sẽ thêm bất cứ điều gì TBH. Như tôi đã nói, nó thúc đẩy câu hỏi, nhưng nó không thực sự là vấn đề tôi đang cố gắng giải quyết hoặc suy nghĩ.
knaccc avatar
lá cờ es
Bạn đang nói rằng một yêu cầu là A sẽ không thể thông đồng với B để thông báo cho B những giá trị mù quáng nào của B mà B có chung với C? Vì vậy, do đó, B không thể gửi từng giá trị bị mù cho A, để A có thể thông báo cho B ngay khi quan sát thấy một bản sao? Bạn cũng đang nói rằng các "đại lý" khác sẽ không thể tham gia nếu không có sự cho phép của tất cả các đại lý hiện có, để ngăn chặn một biến thể của sự thông đồng như vậy?
kelalaka avatar
lá cờ in
Bạn đang tìm kiếm [mã hóa hội tụ](https://crypto.stackexchange.com/q/729/18298)?
Cássio Renan avatar
lá cờ ug
@knaccc không, đó không phải là yêu cầu. Về lý thuyết, B và C thậm chí không nhận thức được nhau (họ chỉ giao tiếp với A và không có ai khác)
Cássio Renan avatar
lá cờ ug
@kelalaka Từ câu trả lời được chấp nhận, có vẻ như một trong những yêu cầu là "tệp" được mã hóa phải đủ dài. Một trong những hạn chế của câu hỏi này là bí mật nhỏ (nếu không thì một hàm băm tốt của bí mật là đủ, vì các cuộc tấn công từ điển sẽ không còn là vấn đề nữa)
Cássio Renan avatar
lá cờ ug
Từ nhận xét cuối cùng của tôi, tôi đoán "bằng chứng" không phải là một mô tả hay - Vì tôi không thực sự quan tâm liệu một "đại lý" có gửi hàm băm "giả" cho A hay không - do đó tôi không thực sự quan tâm đến bằng chứng, mà là một số biểu mẫu nếu nhận dạng/mã thông báo duy nhất. Tôi sẽ cố gắng đưa ra một thuật ngữ tốt hơn và cải thiện câu hỏi.
Cássio Renan avatar
lá cờ ug
@knaccc Tôi đã thêm một ví dụ, tôi nghĩ rằng nó tóm tắt tốt các hạn chế. Cho tôi biết nếu nó hiệu quả!
knaccc avatar
lá cờ es
Nếu các đại lý không giới hạn có thể liên hệ với A mà không cần sự chấp thuận từ bất kỳ đại lý hiện có nào, thì A có thể tham gia với tư cách là đại lý và kiểm tra mọi kết hợp có thể để xem liệu có bất kỳ đại lý nào khác đã cung cấp bí mật đó hay không. Do đó, bạn cần có một cơ chế để giới hạn số lượng mặt hàng mà các đại lý có thể cung cấp cho A, trong đó mỗi đại lý sẽ cam kết và chỉ sẵn sàng công bố danh sách ẩn của họ cùng lúc với số lượng hạn chế có thể chứng minh được của các đại lý khác. cung cấp một số lượng cung cấp hạn chế có thể chứng minh được. Vì bạn chưa đưa ra trường hợp sử dụng thực tế nên tôi không biết liệu điều này có được chấp nhận hay không.
Cássio Renan avatar
lá cờ ug
Không, tôi nghĩ rằng bạn đã đưa ra một điểm rất tốt ở đây. Suy nghĩ ban đầu của tôi là "tại sao A lại muốn kiểm tra điều đó với chính mình? Về mặt lý thuyết, họ đã biết những gì các đại lý khác đã cung cấp, ngay cả khi họ không biết bí mật" nhưng sau đó tôi chợt nhận ra - bất kỳ sự sắp xếp nào như vậy sẽ phải cho phép A chỉ vũ phu theo cách bạn mô tả và dù sao cũng có những bí mật.
Cássio Renan avatar
lá cờ ug
Trong ví dụ về con tem, nhà sưu tập chỉ có thể "bán" tất cả các con tem có thể cho chính nó và sau đó nó sẽ biết mọi con tem của những người bán khác bằng cách lạm dụng cơ chế khử trùng lặp. Tôi đoán đó là câu trả lời của tôi.
knaccc avatar
lá cờ es
Có một cách mà A có thể kiểm tra với từng đại lý để xem mỗi đại lý có bất kỳ thứ gì mà A chưa có hay không. Điều này có thể được thực hiện mà không cần người đại diện phát hiện ra những bí mật mà A có và không cần người đại diện tiết lộ bất kỳ bí mật nào mà họ có (ngoại trừ những bí mật mà A đã có). Đại lý có thể giới hạn số lượng mục mà A kiểm tra để tránh bị ép buộc.Thật không may, điều này không cho phép A xem liệu có nhiều hơn một tác nhân có cùng một bí mật mà A không có hay không.
Cássio Renan avatar
lá cờ ug
Không, điều đó sẽ không hoạt động trong kịch bản tôi đang nghĩ. Hãy nghĩ về "A" hoặc bộ sưu tập tem, như thể đó là một API mà những người khác đánh vào. Nó không thể xảy ra theo cách khác xung quanh. Trong mọi trường hợp, sau nhận xét cuối cùng của bạn, tôi khá tin tưởng rằng sự sắp xếp, về bản chất, không thể đảm bảo tính bảo mật cho "con tem", cùng với cơ chế chống sao chép. Cảm ơn ngài rất nhiều!
Cássio Renan avatar
lá cờ ug
Hay nói cách khác, "giữ bí mật tem" và "có thể sao chép tem từ các nguồn khác nhau" là những yêu cầu mâu thuẫn nhau, khi số lượng tem có thể đủ nhỏ để có thể sử dụng vũ lực.

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