Là thuật toán zk-SNARK được ứng dụng rộng rãi nhất trong các ứng dụng Ethereum Layer 2 và tính toán bảo mật, ưu điểm cốt lõi của Groth16 nằm ở sự đơn giản tối đa: bất kể nội dung cần chứng minh phức tạp đến đâu, Proof được tạo ra luôn chỉ gồm 3 điểm trên đường cong elliptic (khoảng 128 byte), giúp xác minh trên chuỗi cực nhanh và phí Gas cố định!
Bốn giai đoạn cốt lõi bên dưới:
1️⃣ Làm phẳng chương trình (Flattening): Phân tách và làm phẳng mã nghiệp vụ phức tạp thành các mạch số học cơ bản chỉ gồm【cộng, trừ, nhân, chia】.
2️⃣ Hệ ràng buộc bậc nhất (R1CS): Chuyển mỗi bước tính toán thành phương trình ràng buộc ma trận (As) x (Bs) = C*s, đảm bảo người chứng minh không thể “gian lận”.
3️⃣ Nén đa thức (QAP): Sử dụng phương pháp nội suy Lagrange để nén và gộp hàng triệu phương trình ma trận rời rạc thành【một phương trình đa thức thống nhất】, giúp giảm đáng kể khối lượng tính toán.
4️⃣ Thiết lập đáng tin cậy và ghép cặp song tuyến tính: Khi dự án khởi chạy, các tham số mã hóa được tạo thông qua “nghi thức thiết lập đáng tin cậy”; người chứng minh cuối cùng xuất ra các điểm [A], [B], [C]; hợp đồng trên chuỗi chỉ cần dùng phép ghép cặp song tuyến tính (Pairing) để xác minh một đẳng thức, qua đó xác nhận tính xác thực của bằng chứng mà hoàn toàn không tiết lộ thông tin riêng tư!
⚠️ Lưu ý: Phụ thuộc vào thiết lập đáng tin cậy ban đầu (số ngẫu nhiên bí mật dùng để tạo tham số phải bị tiêu hủy, nếu không sẽ có nguy cơ làm giả bằng chứng).
Bốn giai đoạn cốt lõi bên dưới:
1️⃣ Làm phẳng chương trình (Flattening): Phân tách và làm phẳng mã nghiệp vụ phức tạp thành các mạch số học cơ bản chỉ gồm【cộng, trừ, nhân, chia】.
2️⃣ Hệ ràng buộc bậc nhất (R1CS): Chuyển mỗi bước tính toán thành phương trình ràng buộc ma trận (As) x (Bs) = C*s, đảm bảo người chứng minh không thể “gian lận”.
3️⃣ Nén đa thức (QAP): Sử dụng phương pháp nội suy Lagrange để nén và gộp hàng triệu phương trình ma trận rời rạc thành【một phương trình đa thức thống nhất】, giúp giảm đáng kể khối lượng tính toán.
4️⃣ Thiết lập đáng tin cậy và ghép cặp song tuyến tính: Khi dự án khởi chạy, các tham số mã hóa được tạo thông qua “nghi thức thiết lập đáng tin cậy”; người chứng minh cuối cùng xuất ra các điểm [A], [B], [C]; hợp đồng trên chuỗi chỉ cần dùng phép ghép cặp song tuyến tính (Pairing) để xác minh một đẳng thức, qua đó xác nhận tính xác thực của bằng chứng mà hoàn toàn không tiết lộ thông tin riêng tư!
⚠️ Lưu ý: Phụ thuộc vào thiết lập đáng tin cậy ban đầu (số ngẫu nhiên bí mật dùng để tạo tham số phải bị tiêu hủy, nếu không sẽ có nguy cơ làm giả bằng chứng).