Zero Knowledge Proof (ZKP) là gì?

Zero Knowledge Proof (ZKP) là gì?

Zero Knowledge Proof (ZKP) là một thuật ngữ không thể nói là quá quen thuộc, tuy nhiên ít nhiều người đã bắt gặp nó đâu đó trong quá trình tìm hiểu về các thuật ngữ xoay quanh lĩnh vực blockchain. Nhưng bạn có thực sự hiểu nó là gì? Nó hoạt động ra sao hoặc đơn giản là người ta sử dụng nó để làm gì? Không cần đào sâu quá xa vời, ngay tại bài viết này, chúng tôi cung cấp cho bạn các thông tin cơ bản về Zero Knowledge Proof (ZKP).

Zero Knowledge Proof (ZKP) là gì?

Theo định nghĩa của Wikipedia, trong mật mã học, giao thức zero-knowledge proof hoặc zero-knowledge là một phương pháp mà một bên (prover) có thể chứng minh cho một bên khác (người xác minh) rằng một tuyên bố nhất định là đúng trong khi người chứng minh tránh truyền đạt bất kỳ thông tin bổ sung nào ngoài thực tế là tuyên bố đó thực sự đúng.

Dưới đây là một minh họa đơn giản về cách hoạt động của Zero-Anbledge (ZKP) hoạt động:

Khi anh A đến một cửa hàng bán rượu và yêu cầu mua rượu, nhân viên bán hàng yêu cầu kiểm tra chứng minh thư của anh để xem liệu anh A có đủ tuổi uống rượu hợp pháp hay không. Những người muốn có quyền kiểm soát và tự do đối với thông tin của họ có thể làm như vậy với tính năng linh hoạt và lựa chọn của ZKP. Sẽ có rất nhiều kịch bản để khám phá nếu chúng ta kết hợp công nghệ ZKP và blockchain. Tôi có thể cho bạn thấy rằng tôi lớn hơn 18 tuổi, nhưng tôi sẽ không cho bạn xem thẻ ID của tôi, anh A nói. Không hiển thị thẻ ID của mình cho người bán rượu, bằng cách nào đó đã chứng minh rằng cô ấy đã vượt qua độ tuổi uống rượu hợp pháp.

Hoạt động của Zero Knowledge Proof (ZKP)

Hoat-dong-cua-Zero-Knowledge-Proof-ZKPHoạt động của Zero Knowledge Proof (ZKP)

Chúng ta sẽ có tình huống minh họa điển hình cho thấy Zero Knowledge Proof (ZKP) được triển khai như nào, từ đó bạn sẽ hiểu rõ hơn về hoạt động của chúng trong thực tế. Loại thí nghiệm này để xác thực bằng chứng kiến thức bằng không sẽ yêu cầu hai quả bóng có cùng kích thước nhưng có màu sắc khác nhau. Thí nghiệm thực sự phổ biến. Mike Hearn và Konstantinos Chalkias lần đầu tiên giới thiệu phương pháp mới này. Bạn cũng có thể thực hiện thử nghiệm này bằng cách sử dụng hai thẻ màu.

Hãy tưởng tượng bạn có một người bạn mù màu và hai quả bóng. Các quả bóng cần phải có màu đỏ và xanh lá cây và có cùng kích thước. Bạn của bạn nghĩ rằng các chúng đều giống nhau và nghi ngờ tuyên bố của bạn rằng các quả bóng khác nhau.

Vì vậy, bạn cần chứng minh rằng chúng có màu sắc khác nhau mà không nói với anh ta đó là màu nào. Bạn đưa những quả bóng cho bạn của bạn, và anh ta giấu chúng sau lưng. Sau đó, anh ta mang ra một quả bóng ngẫu nhiên và cho bạn nhìn thấy nó. Sau đó, anh ta đặt quả bóng đó trở lại và sau đó ngẫu nhiên chọn lại quả bóng. Bạn cũng có thể nhìn thấy quả bóng lần này. Sau đó, anh ấy sẽ hỏi bạn liệu anh ấy có chuyển bóng hay không. Anh ta sẽ lặp lại quá trình này trong một thời gian để chắc chắn.

Bây giờ bạn không bị mù màu, bạn chắc chắn có thể nói rằng nếu anh ấy chuyển bóng hay không. Nếu các quả bóng có cùng màu, xác suất trả lời đúng của bạn sẽ là 50%. Vì vậy, sau khi lặp lại quá trình này và khi bạn có thể trả lời đúng mỗi lần, bạn của bạn sẽ bị thuyết phục. Xác suất dự đoán sẽ trở thành 0 và bạn sẽ đạt được ba thuộc tính Zero Knowledge Proof (ZKP). Nhưng hãy chắc chắn rằng bạn của bạn không biết cái nào có màu xanh lá cây và cái nào màu đỏ. Bằng cách này, bạn sẽ có thể bảo tồn tài sản thứ ba “Zero Knowledge”.

Thuộc tính của Zero Knowledge Proof

Một Zero Knowledge Proof cần phải có ba thuộc tính khác nhau để được mô tả đầy đủ. Bao gồm:

  • Completeness: Nếu tuyên bố thực sự đúng và cả hai người dùng đều tuân thủ các quy tắc đúng cách, thì người xác minh sẽ bị thuyết phục mà không cần bất kỳ sự trợ giúp nhân tạo nào.
  • Soundness: Trong trường hợp tuyên bố sai, người xác minh sẽ không bị thuyết phục trong bất kỳ tình huống nào. (Phương pháp này được kiểm tra theo xác suất để đảm bảo rằng xác suất giả bằng không)
  • Zero Knowledge: Người xác minh trong mọi trường hợp sẽ không biết thêm bất kỳ thông tin nào.

Zero Knowledge Proof (ZKP) tương tác

Loại Zero Knowledge Proof này sẽ yêu cầu tương tác giữa các đồng nghiệp hoặc bất kỳ hệ thống máy tính nào. Bằng cách tương tác, người chứng minh có thể chứng minh kiến thức và người xác thực có thể xác nhận nó. Đây là kịch bản điển hình nhất của blockchain bằng chứng Zero Knowledge. Ở đây, bạn sẽ chứng minh mà không tiết lộ sự hiểu biết. Nhưng bạn cũng đang tiết lộ nó cho người dùng mà bạn đang tương tác. Vì vậy, nếu ai đó chỉ theo dõi hai bạn, anh ta sẽ không thể xác minh kiến thức của bạn.

Mặc dù đây là một trong những giao thức bảo mật tốt nhất, nhưng nó vẫn đòi hỏi rất nhiều nỗ lực khi bạn muốn chứng minh điều đó với nhiều người. Điều này là do bạn sẽ phải lặp đi lặp lại cùng một quá trình với mỗi người vì chỉ bằng cách xem họ không thể đồng ý với bạn.

Giao thức này sẽ cần bất kỳ loại phản hồi tương tác nào từ trình xác minh để thực thi. Hoặc nếu không, người chứng minh không bao giờ có thể tự mình chứng minh điều đó. Đầu vào tương tác có thể là một dạng thách thức hoặc một loại thử nghiệm khác. Rõ ràng, quá trình này phải thuyết phục người xác minh về việc biết kiến thức. Trong các trường hợp khác, người xác minh có thể ghi lại quá trình và sau đó phát nó cho người khác để họ cũng có thể nhìn thấy nó. Nhưng liệu những người khác có thực sự bị thuyết phục hay không chỉ phụ thuộc vào họ. Họ có thể chấp nhận nó hoặc không. Đây là lý do tại sao blockchain Zero Knowledge Proof tương tác hiệu quả hơn cho một vài người tham gia thay vì một nhóm lớn.

Zero Knowledge Proof (ZKP) không tương tác

  • Tin nhắn

Trong nhắn tin, mã hóa end-to-end là cần thiết. Vì vậy, không ai có thể đọc tin nhắn riêng tư của bạn mà không có chính khách hàng. Hai người dùng phải xác minh sự tin tưởng của họ đối với máy chủ và ngược lại. Mặt khác, ZKP cung cấp sự tin tưởng từ đầu đến cuối mà không làm rò rỉ bất kỳ thông tin bổ sung nào. Với sự giúp đỡ của ZKP, không ai có thể hack theo cách của họ đến tin nhắn của bạn nữa. Đây là một trong những trường hợp sử dụng Zero Knowledge Proof (ZKP).

  • Xác thực

Zero Knowledge Proof (ZKP) có thể giúp truyền đạt thông tin nhạy cảm như thông tin xác thực với bảo mật bổ sung. Tại đây, ZKP có thể duy trì một kênh an toàn để người dùng sử dụng thông tin xác thực của mình mà không bị lộ. Do đó, anh ta sẽ có thể tránh rò rỉ dữ liệu một cách hiệu quả.

  • Chia sẻ dữ liệu

Chia sẻ dữ liệu trên internet mà không có con mắt của bên thứ ba là đặc biệt quan trọng. Khi bạn chia sẻ một cái gì đó trên mạng cho dù họ tuyên bố bảo vệ như thế nào, luôn có một số rủi ro. Ai đó luôn có thể hack hoặc chặn giữa việc chia sẻ thông tin – đây là nơi ZKP chắc chắn có thể giúp đỡ.

Kết luận

Blockchain đi kèm với những ưu điểm và khuyết điểm, nhưng với sự xuất hiện của Zero Knowledge Proof (ZKP), mọi thứ có vẻ đã thay đổi. Blockchain giờ đây đã trở nên siêu bảo mật và được đón nhận cởi mở hơn bởi cộng đồng. Thông qua bài viết, bạn lại mở ra thêm cánh cửa tri thức mới và đang chạm gần hơn nấc thang mà bạn mong đợi. Hãy tiếp tục theo dõi BlockchainWork để đọc các bài viết mới nhất của chúng tôi!

BlockchainWork tổng hợp

>> Có thể bạn quan tâm:

SUI là gì? Tìm hiểu chi tiết về dự án SUI

Vương Thảo 19/03/2024

Sự bùng nổ của các blockchain layer 1 vừa qua đang tạo ra một cuộc cách mạng trong lĩnh vực công nghệ và tài chính. Các nền tảng blockchain layer 1 như SUI, Bitcoin, Ethereum, Solana đều đang thu hút…

Việc làm blockchain - web3

[HN - Fulltime] Chief AI Officer

Hạn ứng tuyển 30/03/2024
Mức lương: 20 - 50 triệu đồng

[Hà Nội - Fulltime] IOS Developer (Junior/Middle/Senior)

Hạn ứng tuyển 30/03/2024
Mức lương: 14 - 40 triệu đồng

[HN - Fulltime] Business Development Executive (Outsourcing)

Hạn ứng tuyển 30/03/2024
Mức lương: 10 - 15 triệu đồng

[HCM - Fulltime] Trưởng Phòng Tài Chính

Hạn ứng tuyển 30/03/2024
Mức lương: 15 - 20 triệu đồng

[Hà Nội - Fulltime] Nhân Viên Marketing Planner

Hạn ứng tuyển 29/04/2024
Mức lương: 25 - 35 triệu đồng

[HCM - Fulltime] Head Of Foundation

Hạn ứng tuyển 30/03/2024
Mức lương: 30 - 40 triệu đồng

[HCM - Fulltime] Head Of Research

Hạn ứng tuyển 30/03/2024
Mức lương: 30 - 40 triệu đồng

[HCM -Fulltime] Business Development Manager

Hạn ứng tuyển 30/03/2024
Mức lương: 30 - 55 triệu đồng

[HN - Fulltime] Backend Developer (NET Salary: 20 - 70M)

Hạn ứng tuyển 30/03/2024
Mức lương: 20 - 70 triệu đồng

[HCM - Fulltime] Project Engineer

Hạn ứng tuyển 30/03/2024
Mức lương: 20 - 35 triệu đồng

[HN - Fulltime] FX Unreal Engine 5

Hạn ứng tuyển 30/03/2024
Mức lương: 15 - 25 triệu đồng

[HCM - Fulltime] Business Development Tiếng Trung

Hạn ứng tuyển 30/03/2024
Mức lương: 800 - 1400 USD

[HCM - parttime] Thực Tập Sinh Kế Toán Accountant Intern

Hạn ứng tuyển 29/04/2024
Mức lương: 1 - 2 triệu đồng

[Hà Nội - Fulltime] Nhân Viên Business Development

Hạn ứng tuyển 29/04/2024
Mức lương: 20 - 35 triệu đồng

[Hà Nội - Fulltime] Frontend Lead

Hạn ứng tuyển 30/03/2024
Mức lương: 1000 - 2000 USD

[HCM - Fulltime] Account Manager

Hạn ứng tuyển 29/04/2024
Mức lương: Thỏa thuận

[Hà Nội - Fulltime] Video Game Editor (Junior) Tại WingsMob Studio

Hạn ứng tuyển 30/03/2024
Mức lương: 500 - 800 USD

[Hà Nội - Fulltime] Animation 3D (Mảng Hoạt Hình)

Hạn ứng tuyển 30/03/2024
Mức lương: 10 - 25 triệu đồng

[HN - Fulltime] Model 3D Blender

Hạn ứng tuyển 30/03/2024
Mức lương: 10 - 40 triệu đồng

[HCM - Fulltime] Digital Marketing

Hạn ứng tuyển 30/03/2024
Mức lương: Thỏa thuận