Quando lançamos o ZK Book há mais de um ano, demos um grande passo à frente no espaço de educação ZK. Nosso livro foi pioneiro na abordagem de "apenas matemática suficiente" para aprender ZK. Hoje fazemo-lo novamente com uma nova adição ao ZK Book. "Circom e padrões de design de restrições" Esta nova seção se concentra em como projetar, criar e auditar circuitos ZK não triviais. Você provavelmente já viu muitos tutoriais sobre como provar que conhece a avaliação de um polinômio usando o Circom. Mas como você vai a partir daí para projetar um ZKVM ou provar que você conhece a primage de uma função hash tradicional (como MD5 ou Keccak256)? A nova parte do nosso ZK Book leva-o numa viagem desde a multiplicação até aos números para: - construir um ZKVM a partir do zero - restrições de codificação para a função hash MD5 - aprender os padrões de design recorrentes no design de restrições A última parte foi interessante porque alguns dos "padrões de design" estabelecidos nem sequer têm nomes para eles. Tivemos de inventar alguma terminologia! Como de costume, somos extremamente atenciosos sobre como apresentamos ao leitor novas ideias para evitar sobrecarregar alguém novo. Temos o cuidado de garantir que ensinamos os pré-requisitos numa ordem sensata e com muitos exemplos. Cada capítulo mostra como construir um circuito para uma aplicação cada vez mais complexa. A cada capítulo, você revisa o que aprendeu anteriormente e aprende um novo padrão de design. Depois de criar uma coleção desses padrões de design, você pode compô-los juntos para criar aplicativos mais complexos, como o ZKVM ou uma função de hash não trivial. Fizemos um grande esforço para garantir que o material seja fácil de entender e corrigir sem omissões importantes. Gostaríamos de agradecer a @ChainLight_io, @VeridiseInc, @PrivacyScaling e @zksecurityXYZ por alocar tempo para revisar este trabalho e fornecer sugestões. Estamos particularmente gratos a @marcobesier da @zksecurityXYZ por trabalhar em várias revisões para realmente colocar os capítulos em um estado polido. Agradecimento especial a @cal_nix pela coautoria dos primeiros sete capítulos desta nova parte do livro! Os temas que abordamos aqui são extremamente fundamentais. Se você não entende os materiais aqui, aprender os internos do cliente ZKVM ou ZK L2 mais moderno será bastante desafiador. Até agora, a ausência de explicações orientadas para novos conceitos para tais conceitos fundamentais tem segurado o espaço ZK. Este novo corpo de trabalho não é simplesmente uma "melhor explicação" dos materiais existentes, mas a primeira explicação - fora dos trabalhos acadêmicos. Utilizamos o Circom como língua de instrução, uma vez que a consideramos a mais amigável para principiantes. No entanto, o que você aprende aqui generaliza para outros frameworks como Plonky3, Halo2, o1js e Gnark. Os novos artigos agora tornam o ZK Book mais de 38.000 palavras mais longo. Você não precisa saber como um ZK-SNARK funciona para ler esta seção do livro, mas há alguns pré-requisitos. Estes estão listados no capítulo "Introdução ao Circom". Como de costume, o material é totalmente gratuito, sem necessidade de login.
10,11K