Vừa dành chút thời gian xem lại Phoenix của Dusk, và phần cứ cảm thấy hơi kỳ lạ là việc một validator thực ra cần rất ít thông tin.
Với một giao dịch thông thường, tôi quen với việc mạng cần thấy đủ dữ liệu để biết ai đã chi và số tiền đã đi đâu. Phoenix lại đi theo hướng khác. Giao dịch được xây dựng dựa trên các UTXO được che chắn (shielded) và một bằng chứng không kiến thức (zero-knowledge proof), vì vậy mạng có thể xác minh rằng việc chi là hợp lệ, đầu vào chưa từng bị chi trước đó, và giá trị là đủ mà không cần học về người gửi, người nhận hay số tiền.
Nghe có vẻ hiển nhiên sau khi bạn đọc nó hai lần. Điểm thú vị là những gì biến mất khỏi nhiệm vụ của validator. Nó không cần phải dựng lại toàn bộ lịch sử tài chính của tôi chỉ để xác minh một bước chuyển trạng thái.
Tuy nhiên, vẫn có một cái giá. Thông tin riêng không tự biến mất phép tính. Phía client phải tạo bằng chứng trước khi giao dịch được đưa lên mạng, và việc tạo bằng chứng ZK có thể nặng hơn nhiều so với việc ký một giao dịch thông thường.
Có lẽ đây là phần mà trong thực tế tôi sẽ lo hơn.
Một validator có thể giữ mức “mù mờ tương đối” trong khi vẫn kiểm tra các quy tắc, điều đó hữu ích. Nhưng nếu việc tạo các bằng chứng trở nên đau đầu trên phần cứng thông dụng, thì quyền riêng tư bắt đầu trở thành một yêu cầu về phần cứng.
Tôi thích kiến trúc hơn khi nhìn nó theo cách này. Mạng có thể xác minh quy tắc mà không biến tài khoản của người dùng thành cơ sở hạ tầng công khai. Câu hỏi mà tôi muốn có số liệu benchmark cho nó thì đơn giản: thời gian tạo bằng chứng thực tế và mức sử dụng bộ nhớ (memory footprint) của một giao dịch Phoenix là bao nhiêu khi chạy trên phần cứng client phổ thông?
#dusk $DUSK @Dusk $HEMI $ACE #BNBChain #satoshiNakamato #SaudiArabia #the
Với một giao dịch thông thường, tôi quen với việc mạng cần thấy đủ dữ liệu để biết ai đã chi và số tiền đã đi đâu. Phoenix lại đi theo hướng khác. Giao dịch được xây dựng dựa trên các UTXO được che chắn (shielded) và một bằng chứng không kiến thức (zero-knowledge proof), vì vậy mạng có thể xác minh rằng việc chi là hợp lệ, đầu vào chưa từng bị chi trước đó, và giá trị là đủ mà không cần học về người gửi, người nhận hay số tiền.
Nghe có vẻ hiển nhiên sau khi bạn đọc nó hai lần. Điểm thú vị là những gì biến mất khỏi nhiệm vụ của validator. Nó không cần phải dựng lại toàn bộ lịch sử tài chính của tôi chỉ để xác minh một bước chuyển trạng thái.
Tuy nhiên, vẫn có một cái giá. Thông tin riêng không tự biến mất phép tính. Phía client phải tạo bằng chứng trước khi giao dịch được đưa lên mạng, và việc tạo bằng chứng ZK có thể nặng hơn nhiều so với việc ký một giao dịch thông thường.
Có lẽ đây là phần mà trong thực tế tôi sẽ lo hơn.
Một validator có thể giữ mức “mù mờ tương đối” trong khi vẫn kiểm tra các quy tắc, điều đó hữu ích. Nhưng nếu việc tạo các bằng chứng trở nên đau đầu trên phần cứng thông dụng, thì quyền riêng tư bắt đầu trở thành một yêu cầu về phần cứng.
Tôi thích kiến trúc hơn khi nhìn nó theo cách này. Mạng có thể xác minh quy tắc mà không biến tài khoản của người dùng thành cơ sở hạ tầng công khai. Câu hỏi mà tôi muốn có số liệu benchmark cho nó thì đơn giản: thời gian tạo bằng chứng thực tế và mức sử dụng bộ nhớ (memory footprint) của một giao dịch Phoenix là bao nhiêu khi chạy trên phần cứng client phổ thông?
#dusk $DUSK @Dusk $HEMI $ACE #BNBChain #satoshiNakamato #SaudiArabia #the