Chuyengiadautu
🐟Cá Con Lom Dom🐟
Đào sâu hơn về cơ chế zero knowledge proof. So sánh giữa zk-SNARK và zk-STARK
Như đã có một vài bài viết giới thiệu về một trong những cơ chế bảo mật nổi bật nhất được ứng dụng trong công nghệ blockchain hiện nay là Zero Knowledge proofs (ZKPs). Xin nhắc lại nhanh 1 chút về ZKPs, là 1 công nghệ cho phép người sở hữu dữ liệu – Bên chứng minh (prover) chứng minh với bên kiểm tra (verifier) rằng đúng là mình sở hữu dữ liệu hợp lệ, mà không cần phải để lộ thông tin dữ liệu cho người kiểm tra.
Như đã có một vài bài viết giới thiệu về một trong những cơ chế bảo mật nổi bật nhất được ứng dụng trong công nghệ blockchain hiện nay là Zero Knowledge proofs (ZKPs). Xin nhắc lại nhanh 1 chút về ZKPs, là 1 công nghệ cho phép người sở hữu dữ liệu – Bên chứng minh (prover) chứng minh với bên kiểm tra (verifier) rằng đúng là mình sở hữu dữ liệu hợp lệ, mà không cần phải để lộ thông tin dữ liệu cho người kiểm tra.
Tuy nhiên khi tìm hiểu về ZKPs chúng ta lại thấy có các dạng thức khác nhau. Hôm nay chúng ta cùng tìm hiểu kỹ hơn về 2 dạng thức phổ biến nhất của ZKPs đang được áp dụng phổ biến là zk-SNARK và zk-STARK, xem chúng khác nhau thế nào.
- zk-SNARK là viết tắt của “zero-knowledge succinct non-interactiveargument of knowledge”.
- zk-STARK là viết tắt của “zero-knowledge succinct transparentargument of knowledge”.
Từ “succinct” (cô đọng), có nghĩa là những bằng chứng này có kích thước nhỏ và có thể được xác minh nhanh chóng. Từ “Non-interactive” (không tương tác), có nghĩa là có ít hoặc không có tương tác giữa bên chứng minh và bên xác minh.
zk-SNARK:
Sử dụng đường cong thuật toán kèm chữ ký vòng để bảo mật thông tin. Dựa trên giả thuyết là từ các điểm rời rạc của đường cong và 1 thông số khóa công khai, thì việc nội suy ra toàn bộ đường cong là bất khả thi.
Tuy nhiên vẫn phải tồn tại 1 cài đặt tin cậy ban đầu về các khóa được sử dụng để tạo ra bằng chứng xác thực. Việc tồn tại 1 sự kiện phụ thuộc vào độ tin cậy ban đầu này, dẫn đến tranh cãi về tính an toàn và phi tập trung của nó. Việc có thể can thiệp và thao túng có thể xảy ra dẫn đến đánh lừa được người xác thực. Ngoài ra việc giải mã đường cong này còn được cho là có thể thực hiện được với các siêu máy tính lượng tử trong tương lai. Qua đó sự ra đời của zk-STARKđược cho là giải quyết các vấn đề mà zk-SNARK chưa giải quyết được.
Tuy nhiên vẫn phải tồn tại 1 cài đặt tin cậy ban đầu về các khóa được sử dụng để tạo ra bằng chứng xác thực. Việc tồn tại 1 sự kiện phụ thuộc vào độ tin cậy ban đầu này, dẫn đến tranh cãi về tính an toàn và phi tập trung của nó. Việc có thể can thiệp và thao túng có thể xảy ra dẫn đến đánh lừa được người xác thực. Ngoài ra việc giải mã đường cong này còn được cho là có thể thực hiện được với các siêu máy tính lượng tử trong tương lai. Qua đó sự ra đời của zk-STARKđược cho là giải quyết các vấn đề mà zk-SNARK chưa giải quyết được.
zk-STARK:
Được ra đời sau zk-SNARK 6 năm, sử dụng hàm băm mã hóa và không cần thiết lập các thông số tin cậy ban đầu, có khả năng chống lại máy tính lượng tử.
Tuy tăng được tính bảo mật, nhưng zk-STARK cũng có những nhược điểm là có kích cỡ bằng chứng lớn hơn. Do đó đòi hỏi khả năng tính toán nhiều hơn và sẽ mất nhiều phí hơn. Ngoài ra do ra đời sau, nên zk-STARK chưa có nhiều cộng đồng dev và các thư viện hỗ trợ. Nên chưa được phổ biến nhiều như zk-SNARK.
Tuy tăng được tính bảo mật, nhưng zk-STARK cũng có những nhược điểm là có kích cỡ bằng chứng lớn hơn. Do đó đòi hỏi khả năng tính toán nhiều hơn và sẽ mất nhiều phí hơn. Ngoài ra do ra đời sau, nên zk-STARK chưa có nhiều cộng đồng dev và các thư viện hỗ trợ. Nên chưa được phổ biến nhiều như zk-SNARK.
Cảm ơn anh em đã theo dõi bài viết của mình nhé!