Lorsque nous avons lancé le ZK Book il y a plus d’un an, nous avons fait un énorme pas en avant dans le domaine de l’éducation ZK. Notre livre a été le pionnier de l’approche « juste assez de mathématiques » pour apprendre ZK. Aujourd’hui, nous le faisons à nouveau avec un nouvel ajout au ZK Book. « Circom et les modèles de conception de contraintes » Cette nouvelle section se concentre sur la conception, la création et l’audit de circuits ZK non triviaux. Vous avez probablement vu beaucoup de tutoriels sur la façon de prouver que vous connaissez l’évaluation d’un polynôme à l’aide de Circom. Mais comment passer de là à la conception d’un ZKVM ou prouver que vous connaissez l’origine d’une fonction de hachage traditionnelle (comme MD5 ou Keccak256) ? La nouvelle partie de notre ZK Book vous emmène dans un voyage de la multiplication aux nombres ensemble pour : - construire une ZKVM à partir de zéro - contraintes de codage pour la fonction de hachage MD5 - apprendre les modèles de conception récurrents en conception par contraintes La dernière partie était intéressante parce que certains des « modèles de conception » établis n’ont même pas de nom pour eux. Il a fallu inventer une terminologie ! Comme d’habitude, nous sommes extrêmement réfléchis à la façon dont nous présentons au lecteur de nouvelles idées pour éviter de submerger quelqu’un de nouveau. Nous veillons à ce que nous enseignions les conditions préalables dans un ordre raisonnable et avec de nombreux exemples. Chaque chapitre montre comment construire un circuit pour une application de plus en plus complexe. À chaque chapitre, vous passez en revue ce que vous avez appris précédemment et apprenez un nouveau modèle de conception. Une fois que vous avez créé une collection de ces modèles de conception, vous pouvez les composer ensemble pour créer des applications plus complexes, comme le ZKVM ou une fonction de hachage non triviale. Nous mettons beaucoup d’efforts pour nous assurer que le matériel est à la fois facile à comprendre et à corriger, sans aucune omission importante. Nous tenons à remercier @ChainLight_io, @VeridiseInc, @PrivacyScaling et @zksecurityXYZ d’avoir pris le temps d’examiner ce travail et de nous faire des suggestions. Nous sommes particulièrement reconnaissants à @marcobesier de @zksecurityXYZ d’avoir travaillé sur plusieurs révisions pour vraiment mettre les chapitres dans un état poli. Un grand merci à @cal_nix pour avoir co-écrit les sept premiers chapitres de cette nouvelle partie du livre ! Les sujets que nous abordons ici sont extrêmement fondamentaux. Si vous ne comprenez pas les matériaux ici, il sera assez difficile d’apprendre les rouages d’un client ZKVM ou ZK L2 plus moderne. Jusqu’à présent, l’absence d’explications orientées vers les nouveaux arrivants pour de tels concepts fondamentaux a freiné l’espace ZK. Ce nouveau corpus de travaux n’est pas simplement une « meilleure explication » des matériaux existants, mais la première explication du tout - en dehors des articles universitaires. Nous utilisons Circom comme langue d’enseignement car nous la considérons comme la plus conviviale pour les débutants. Cependant, ce que vous apprenez ici se généralise à d’autres frameworks comme Plonky3, Halo2, o1js et Gnark. Les nouveaux articles allongent désormais le ZK Book de plus de 38 000 mots. Vous n’avez pas besoin de savoir comment fonctionne un ZK-SNARK pour lire cette section du livre, mais il y a quelques prérequis. Ceux-ci sont énumérés dans le chapitre « Introduction à Circom ». Comme d’habitude, le matériel est entièrement gratuit sans connexion requise.
10,09K