Tại sao Zero-knowledge Proofs lại quan trọng đến vậy? Ứng dụng và Thách thức

Những ai đã từng tìm hiểu qua các loại công nghệ tiêu biểu của blockchain chắc hẳn không mấy xa lạ với khái niệm “Zero-knowledge Proofs”, vốn được ví như món quà may mắn của Web3. Vậy loại công nghệ này cơ bản được sử dụng để làm gì và ứng dụng như thế nào? Bài viết này sẽ giải đáp những thắc mắc trên theo một cách dễ hiểu nhất cho bạn đọc.
Tản mạn
Các giai đoạn khác nhau trong tiến trình phát triển của Internet đã mang lại những cải tiến khác biệt về trải nghiệm người dùng. Tại đó, giai đoạn đầu tiên của internet hay còn gọi web 1.0 chỉ bao gồm các trang web tĩnh, thuần về cung cấp thông tin. Đối lại, các cuộc thảo luận xung quanh lĩnh vực công nghệ đã chuyển sự chú ý dần sang các chủ đề như “Zero-knowledge Proofs (hay ZKP) là gì” và mức độ liên quan của chúng đối với web 3.0.
Thế giới đã chứng kiến màn chuyển đổi của Internet thành web 2.0, với các trang mạng xã hội chiếm lĩnh vị trí đầu đàn. Giờ đây, sự chú trọng ấy tập trung nhiều hơn vào việc cho phép người dùng tự tay tạo và sở hữu hoàn toàn nội dung. Việc web 3.0 ra đời báo hiệu sự nhen nhóm cho một thế giới web phi tập trung hơn. Đồng thời, điều quan trọng là liệu web 3.0 có thực sự giải quyết được tất cả các vấn đề mà chúng ta đang mong mỏi về nó hay không.
Bạn đọc có thể tìm hiểu ZKP là gì? và các khái niệm cơ bản xoay quanh loại công nghệ này qua bài viết “Zero-knowledge Proofs: Món quà công nghệ may mắn của Web3” trước khi đào sâu hơn về ứng dụng và tầm quan trọng của nó đối với web3 và cách mà chúng tạo ra giá trị cho thế hệ giải pháp và dịch vụ web tiếp theo thông qua bài viết này.
Hai hướng phát triển quan trọng của Zero-knowledge Proofs
Đứng trên phương diện của một phần mềm ứng dụng, Zero-knowledge Proofs tồn tại hai hướng ứng dụng vô cùng quan trọng, bao gồm: Điện toán bảo mật và Khả năng mở rộng.
Điện toán bảo mật (Privacy Computing)
ZKP có thể đáp ứng quyền riêng tư của các message, cũng như giải quyết việc rò rỉ thông tin về địa chỉ và quota tài sản mà gây ra bởi yếu tố minh bạch trong các mạng lưới blockchain được sử dụng phổ biến. Ví dụ: trong các giao dịch blockchain, nếu bạn cần chứng minh rằng bạn sở hữu một tài sản, nhưng đồng thời không muốn tiết lộ bất kỳ thông tin nào về tài sản đó, thì bạn cần sử dụng các ZKP.
Điện toán bảo mật là một lĩnh vực ứng dụng quan trọng của ZKP. Nếu bạn muốn bảo vệ quyền riêng tư, bạn có thể mã hóa dữ liệu on-chain thông qua giải pháp mật mã học, nhờ vậy sẽ không xuất hiện mối tương quan giữa các giao dịch on-chain khác nhau. Các ZKP có thể xác minh các tính toán mà không tiết lộ bất kỳ thông tin nào về dữ liệu đầu vào cũng như quá trình tính toán của nó, điều này đảm bảo cả quyền riêng tư lẫn bảo mật của dữ liệu on-chain.
Một khía cạnh quan trọng của Web 3.0 là bản thân người dùng thực sự sở hữu danh tính và quyền sở hữu dữ liệu của họ. Tuy nhiên, tất cả thông tin trên blockchain hiện tại đều được công khai và mọi người có thể dễ dàng lấy được thông tin của người dùng thông qua một số phương tiện (tất nhiên, bản thân đây cũng là một tính năng của sự đồng thuận trong mạng lưới blockchain).
Mặc dù người dùng blockchain chưa có nhận thức rộng rãi và mạnh mẽ về quyền riêng tư, nhưng với sự phát triển hiện hữu, nhu cầu này phải cấp bách và lâu dài hơn trong tương lai. Vì vậy, để hiện thực hóa tầm nhìn của Web3.0, người dùng phải có quyền riêng tư on-chain của riêng họ. Vì vậy, có thể nói, quyền riêng tư không nhất thiết phải là một bắt buộc, nhưng nó phải là một lựa chọn.
Khả năng mở rộng (Scailing)
Thời gian xác minh để tạo ra một khối mới trên các nền tảng blockchain phổ biến hiện nay là rất lâu, điều này có thể được thay đổi trực tiếp cho một node validator. Mỗi node tham gia dành nhiều thời gian để xác minh trực tiếp.
Điều này liên quan đến chi phí của sự đồng thuận. Đứng trên góc độ về kinh tế, lý do thực sự đằng sau mức phí giao dịch cao ngất của blockchain như Ethereum và Bitcoin là bởi sự đồng thuận vốn dĩ phải đắt đỏ, và sự đồng thuận rẻ đồng nghĩa với không đáng tin cậy ở một mức độ nhất định.
Chi phí này tồn tại chủ yếu đến từ thực tế rằng blockchain yêu cầu những tính toán lặp đi lại lại của một số thiết bị để đạt được sự đồng thuận. Ví dụ, trong cơ chế đồng thuận POW, hiệu suất của 1.000 máy thực hiện công việc tính toán lặp đi lặp lại vốn dĩ không lớn hơn hiệu suất của một máy tính, nhưng chi phí cần thiết lại gấp 1.000 lần so với một máy tính.
Đây là chi phí mà tất cả các giao thức đồng thuận chính thống, cho dù là POW hay POS, đều phải trả để đảm bảo sự đồng thuận được phi tập trung. Vì thế, nó được xem như chiếc gông nặng nề của bộ ba bất khả thi.
Khi kết hợp ZKP vào tính đồng thuận của blockchain, chỉ cần sử dụng một thiết bị duy nhất để hoàn thành việc tính toán lặp lại của 1.000 thiết bị, do đó giảm đáng kể chi phí của mạng lưới. ZKP, thông qua việc sử dụng mật mã học, cho phép các thiết bị khác xác minh độ tin cậy của phép tính từ thiết bị, thay vì trực tiếp tham gia vào quá trình của các phép tính lặp lại này.
Ngoài ra, trên các mạng blockchain đắt tiền, việc xác minh tính đúng đắn của một phép tính lại rẻ hơn nhiều so với việc tham gia vào chu trình tái tính toán vô cùng tốn kém này.
Do đó, blockchain vẫn chịu trách nhiệm về sự đồng thuận và tính bảo mật của mạng lưới, trong khi việc tính toán có thể được thực hiện off-chain bằng ZKP, điều này sẽ giúp cải thiện khả năng mở rộng của blockchain.
Ứng dụng của ZKP trong Web3
1. Tài chính: Ví dụ, người nộp đơn vay thế chấp có thể chứng minh rằng thu nhập của họ nằm trong phạm vi chấp nhận được mà không cần tiết lộ mức lương chính xác của họ.
2. Bỏ phiếu trực tuyến: ZKP cho phép cử tri bỏ phiếu ẩn danh và xác minh rằng lá phiếu của họ hợp lệ để được bao gồm trong cuộc kiểm phiếu cuối cùng.
3. Xác thực: ZKP có thể được sử dụng để xác thực người dùng mà không cần trao đổi thông tin bí mật như mật khẩu. Polygan ID trên Ethereum là một cơ chế xác minh sử dụng ZKP, không chỉ giúp người dùng bảo vệ quyền riêng tư của họ trên nền tảng Web3 dựa trên blockchain mà còn đáp ứng các yêu cầu quy định về xác minh KYC, người dùng có thể tự do lựa chọn khi nào và dữ liệu nào được chia sẻ.
4. Học máy (Machine learning): Các ZKP cho phép chủ sở hữu của thuật toán học máy thuyết phục người khác về kết quả của mô hình mà không tiết lộ bất kỳ thông tin nào về chính mô hình đó.
5. Blockchain: Các blockchain như Bitcoin hay Ethereum có thể đảm bảo tính minh bạch của dữ liệu on-chain, từ đó cho phép xác minh các giao dịch. Điều này đồng nghĩa ZKP có khả năng bảo vệ quyền riêng tư của những người tham gia vào blockchain.
Ứng dụng của ZKP trong lĩnh vực blockchain
1. Mở rộng quy mô cho Layer 2: Yếu tố điện toán có thể kiểm chứng được (verifiable computing) của ZKP cho phép L1 tận dụng nguồn lực bên ngoài xử lý giao dịch cho các hệ thống hiệu suất cao off-chain (còn được gọi là Layer 2). Điều này cho phép blockchain mở rộng quy mô mà không ảnh hưởng đến sự bảo mật.
Ví dụ, StarkNet của StarkWare sử dụng các máy ảo chuyên dụng để thực thi các code thân thiện với ZKP. Aztec cũng cho phép các Layer 2 của họ vận hành một cách riêng tư mà không tiết lộ bất kỳ thông tin nào về các giao dịch của người dùng.
2. Quyền riêng tư cho Layer 1: Các chain công khai L1 như Aleo, Mina và Zcash cho phép những người tham gia giao dịch quyền ẩn danh tính của người gửi, người nhận hoặc số tiền bằng cách sử dụng ZKP (Aleo sử dụng ZKP theo mặc định, trong khi với Mina và Zcash là tùy chọn).
3. Lưu trữ phi tập trung: Filecoin sử dụng các ZKP (chạy trên GPU) để chứng minh rằng các node trong mạng đang lưu trữ dữ liệu một cách chính xác.
4. Nén dữ liệu blockchain: Mina và Celo sử dụng các ZKP để nén những dữ liệu blokchain cần thiết để đồng bộ hóa với trạng thái cập nhật on-chain mới nhất thành một bằng chứng nhỏ gọn, ít cồng kềnh.
Thách thức của ZKP
Zero-knowledge proofs đã được chứng minh là có tiềm năng to lớn trong tương lai, tuy nhiên vẫn còn nhiều vấn đề chưa được giải quyết trước khi nó được ứng dụng rộng rãi hơn.
Về khía cạnh toán học: ZKP không phải là loại bằng chứng hoàn toàn đúng, bởi vì xác suất người chứng minh nói dối và không được người xác minh công nhận là gần bằng 0 (tiến về giá trị 0 trong vô cùng) chứ không bao giờ bằng 0. Nếu không đạt được mức giá trị 0 này, thì ZKP đồng nghĩa với việc thiếu tính logic, và không được đảm bảo là hợp lệ 100%.
Về khía cạnh phần cứng: Hiện tại không có bất kỳ phần cứng hoặc phần mềm nào dành riêng cho ZKP trên thị trường. Các ZKP đòi hỏi sự tương tác liên tục giữa người chứng minh và người xác minh, và do đó đòi hỏi nhiều sức mạnh về mặt tính toán, khiến cho các ZKP không phù hợp để sử dụng trên các thiết bị di động hoặc thiết bị vận hành chậm chạp.
Khi thế giới Web3 tiếp tục phát triển, nhu cầu của người dùng đối với tính hiệu suất, quyền riêng tư cũng như các ứng dụng và giao thức mới sẽ tăng lên, các ZKP khi đó sẽ ngày càng đóng một vai trò quan trọng. Mặc dù ZKP hiện tại vẫn còn nhiều hạn chế, việc khám phá ZKP sẽ ngày càng chuyên sâu hơn và bản thân công nghệ này dựa vào vai trò vượt trội về hiệu suất trong tính toán quyền riêng tư, cùng khả năng mở rộng L2 và bảo vệ an ninh, v.v, trở thành lá bùa hộ mệnh và tạo ảnh hưởng to lớn đến thế giới Web3.
BlockSolFi tổng hợp
Tham gia bàn luận ngay cùng BlockSolFi tại Telegram và Facebook.
Đọc thêm:
Web 3.0 là gì? Đây là tất cả những gì bạn cần biết về web 3.0