Ketika kami merilis Buku ZK lebih dari setahun yang lalu, kami mengambil ruang pendidikan ZK selangkah maju yang besar. Buku kami memelopori pendekatan "matematika yang cukup" untuk belajar ZK. Hari ini kami melakukannya lagi dengan tambahan baru untuk ZK Book. "Pola Desain Sirkuit dan Kendala" Bagian baru ini berfokus pada cara merancang, membuat, dan mengaudit sirkuit ZK yang tidak sepele. Anda mungkin telah melihat banyak tutorial tentang cara membuktikan bahwa Anda tahu evaluasi polinomial menggunakan Circom. Tapi bagaimana Anda beralih dari sana untuk merancang ZKVM atau membuktikan bahwa Anda tahu primasi dari fungsi hash tradisional (seperti MD5 atau Keccak256)? Bagian baru dari Buku ZK kami membawa Anda dalam perjalanan dari perkalian menjadi angka bersama-sama untuk: - membangun ZKVM dari awal - batasan pengkodean untuk fungsi hash MD5 - Pelajari pola desain berulang dalam desain kendala Bagian terakhir menarik karena beberapa "pola desain" yang mapan bahkan tidak memiliki nama untuk mereka. Kami harus menemukan beberapa terminologi! Seperti biasa, kami sangat bijaksana tentang bagaimana kami memperkenalkan pembaca pada ide-ide baru untuk menghindari kewalahan seseorang yang baru. Kami berhati-hati untuk memastikan kami mengajarkan prasyarat dalam urutan yang masuk akal dan dengan banyak contoh. Setiap bab menunjukkan cara membangun sirkuit untuk aplikasi yang semakin kompleks. Dengan setiap bab, Anda berdua meninjau apa yang Anda pelajari sebelumnya dan mempelajari pola desain baru. Setelah Anda membangun kumpulan pola desain ini, Anda dapat menyusunnya bersama-sama untuk membangun aplikasi yang lebih kompleks, seperti ZKVM atau fungsi hash non-sepele. Kami berusaha keras untuk memastikan bahwa materi mudah dipahami dan diperbaiki tanpa kelalaian penting. Kami ingin mengucapkan terima kasih kepada @ChainLight_io, @VeridiseInc, @PrivacyScaling, dan @zksecurityXYZ karena telah mengalokasikan waktu untuk meninjau pekerjaan ini dan memberikan saran. Kami sangat berterima kasih kepada @marcobesier dari @zksecurityXYZ karena telah bekerja melalui beberapa revisi untuk benar-benar membuat bab-bab menjadi dalam keadaan yang dipoles. Teriakan khusus untuk @cal_nix karena ikut menulis tujuh bab pertama di bagian baru buku ini! Topik yang kami bahas di sini sangat mendasar. Jika Anda tidak memahami materi di sini, mempelajari internal klien ZKVM atau ZK L2 yang lebih modern akan cukup menantang. Hingga saat ini, tidak adanya penjelasan berorientasi pendatang baru untuk konsep dasar seperti itu telah menahan ruang ZK. Karya baru ini bukan hanya "penjelasan yang lebih baik" dari materi yang ada, tetapi penjelasan pertama sama sekali - di luar makalah akademis. Kami menggunakan Circom sebagai bahasa pengantar karena kami menganggapnya yang paling ramah pemula. Namun, apa yang Anda pelajari di sini menggeneralisasi ke kerangka kerja lain seperti Plonky3, Halo2, o1js, dan Gnark. Artikel baru sekarang membuat Buku ZK lebih dari 38.000 kata lebih panjang. Anda tidak perlu tahu cara kerja ZK-SNARK untuk membaca bagian buku ini, tetapi ada beberapa prasyarat. Ini tercantum dalam bab "Pengantar Circom". Seperti biasa, materi ini sepenuhnya gratis tanpa perlu login.
10,1K