PageSourceSearch

https://zkjargon.github.io/

html zkjargon.github.io collected 2026-10-03 10:15:08 UTC 17,241 bytes, 236 lines download raw bytes

1<!DOCTYPE HTML>
2<html lang="en" class="light" dir="ltr">
3    <head>
4        <!-- Book generated using mdBook -->
5        <meta charset="UTF-8">
6        <title>Welcome - ZK Jargon Decoder</title>
7
8
9        <!-- Custom HTML head -->
10        
11        <meta name="description" content="">
12        <meta name="viewport" content="width=device-width, initial-scale=1">
13        <meta name="theme-color" content="#ffffff">
14
15        <link rel="icon" href="favicon.svg">
16        <link rel="shortcut icon" href="favicon.png">
17        <link rel="stylesheet" href="css/variables.css">
18        <link rel="stylesheet" href="css/general.css">
19        <link rel="stylesheet" href="css/chrome.css">
20        <link rel="stylesheet" href="css/print.css" media="print">
21
22        <!-- Fonts -->
23        <link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
24        <link rel="stylesheet" href="fonts/fonts.css">
25
26        <!-- Highlight.js Stylesheets -->
27        <link rel="stylesheet" href="highlight.css">
28        <link rel="stylesheet" href="tomorrow-night.css">
29        <link rel="stylesheet" href="ayu-highlight.css">
30
31        <!-- Custom theme stylesheets -->
32
33    </head>
34    <body class="sidebar-visible no-js">
35    <div id="body-container">
36        <!-- Provide site root to javascript -->
37        
37<script>
38            var path_to_root = "";
39            var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "navy" : "light";
40        </script>
40
41
42        <!-- Work around some values being stored in localStorage wrapped in quotes -->
43        
43<script>
44            try {
45                var theme = localStorage.getItem('mdbook-theme');
46                var sidebar = localStorage.getItem('mdbook-sidebar');
47
48                if (theme.startsWith('"') && theme.endsWith('"')) {
49                    localStorage.setItem('mdbook-theme', theme.slice(1, theme.length - 1));
50                }
51
52                if (sidebar.startsWith('"') && sidebar.endsWith('"')) {
53                    localStorage.setItem('mdbook-sidebar', sidebar.slice(1, sidebar.length - 1));
54                }
55            } catch (e) { }
56        </script>
56
57
58        <!-- Set the theme before any content is loaded, prevents flash -->
59        
59<script>
60            var theme;
61            try { theme = localStorage.getItem('mdbook-theme'); } catch(e) { }
62            if (theme === null || theme === undefined) { theme = default_theme; }
63            var html = document.querySelector('html');
64            html.classList.remove('light')
65            html.classList.add(theme);
66            var body = document.querySelector('body');
67            body.classList.remove('no-js')
68            body.classList.add('js');
69        </script>
69
70
71        <input type="checkbox" id="sidebar-toggle-anchor" class="hidden">
72
73        <!-- Hide / unhide sidebar before it is displayed -->
74        
74<script>
75            var body = document.querySelector('body');
76            var sidebar = null;
77            var sidebar_toggle = document.getElementById("sidebar-toggle-anchor");
78            if (document.body.clientWidth >= 1080) {
79                try { sidebar = localStorage.getItem('mdbook-sidebar'); } catch(e) { }
80                sidebar = sidebar || 'visible';
81            } else {
82                sidebar = 'hidden';
83            }
84            sidebar_toggle.checked = sidebar === 'visible';
85            body.classList.remove('sidebar-visible');
86            body.classList.add("sidebar-" + sidebar);
87        </script>
87
88
89        <nav id="sidebar" class="sidebar" aria-label="Table of contents">
90            <div class="sidebar-scrollbox">
91                <ol class="chapter"><li class="chapter-item expanded affix "><a href="foreword.html" class="active">Welcome</a></li><li class="chapter-item expanded affix "><li class="part-title">Introduction to ZK Jargon</li><li class="chapter-item expanded "><a href="intro_to_zk/what_is_proving.html">What does it mean to prove?</a></li><li class="chapter-item expanded "><a href="intro_to_zk/interactive_proofs.html">Probabilistic and Interactive proofs</a></li><li class="chapter-item expanded affix "><li class="part-title">Acronyms</li><li class="chapter-item expanded "><a href="acronyms.html">List of Common Acronyms</a></li><li class="chapter-item expanded affix "><li class="part-title">Definitions</li><li class="chapter-item expanded "><a href="definitions/algebraic_holographic_proof.html">Algebraic Holographic Proof (AHP)</a></li><li class="chapter-item expanded "><a href="definitions/arithmetization.html">Arithmetization</a></li><li class="chapter-item expanded "><a href="definitions/base_field.html">Base Field</a></li><li class="chapter-item expanded "><a href="definitions/circuit.html">Circuit</a></li><li class="chapter-item expanded "><a href="definitions/coefficient_form.html">Coefficient Form</a></li><li class="chapter-item expanded "><a href="definitions/common_reference_string.html">Common Reference String</a></li><li class="chapter-item expanded "><a href="definitions/completeness.html">Completeness</a></li><li class="chapter-item expanded "><a href="definitions/constraints.html">Constraints</a></li><li class="chapter-item expanded "><a href="definitions/elliptic_curve.html">Elliptic Curve</a></li><li class="chapter-item expanded "><a href="definitions/evaluation_form.html">Evaluation Form</a></li><li class="chapter-item expanded "><a href="definitions/fast_fourier_transform.html">Fast Fourier Transform</a></li><li class="chapter-item expanded "><a href="definitions/fiat_shamir.html">Fiat-Shamir Transform</a></li><li class="chapter-item expanded "><a href="definitions/fhe.html">Fully Homomorphic Encryption (FHE)</a></li><li class="chapter-item expanded "><a href="definitions/instance.html">Instance</a></li><li class="chapter-item expanded "><a href="definitions/lagrange_interpolation.html">Lagrange Interpolation</a></li><li class="chapter-item expanded "><a href="definitions/language.html">Language</a></li><li class="chapter-item expanded "><a href="definitions/mpc.html">Multi-party Computation (MPC)</a></li><li class="chapter-item expanded "><a href="definitions/nullifier.html">Nullifier</a></li><li class="chapter-item expanded "><a href="definitions/oracle.html">Oracle</a></li><li class="chapter-item expanded "><a href="definitions/plonkish_arithmetization.html">PLONKish Arithmetization</a></li><li class="chapter-item expanded "><a href="definitions/polynomial_commitment.html">Polynomial Commitment Scheme</a></li><li class="chapter-item expanded "><a href="definitions/polynomial_interactive_oracle_proof.html">Polynomial Interactive Oracle Proof</a></li><li class="chapter-item expanded "><a href="definitions/preprocessing_snark.html">Preprocessing SNARK</a></li><li class="chapter-item expanded "><a href="definitions/public-coin.html">Public-coin</a></li><li class="chapter-item expanded "><a href="definitions/quadratic_arithmetic_program.html">Quadratic Arithmetic Program</a></li><li class="chapter-item expanded "><a href="definitions/r1cs.html">R1CS</a></li><li class="chapter-item expanded "><a href="definitions/random_oracle.html">Random Oracle</a></li><li class="chapter-item expanded "><a href="definitions/relation.html">Relation</a></li><li class="chapter-item expanded "><a href="definitions/roots_of_unity.html">Roots of Unity</a></li><li class="chapter-item expanded "><a href="definitions/scalable.html">Scalable</a></li><li class="chapter-item expanded "><a href="definitions/scalar_field.html">Scalar Field</a></li><li class="chapter-item expanded "><a href="definitions/schwartz_zippel.html">Schwartz-Zippel Lemma</a></li><li class="chapter-item expanded "><a href="definitions/snark.html">SNARK</a></li><li class="chapter-item expanded "><a href="definitions/soundness.html">Soundness</a></li><li class="chapter-item expanded "><a href="definitions/stark.html">STARK</a></li><li class="chapter-item expanded "><a href="definitions/structured_reference_string.html">Structured Reference String</a></li><li class="chapter-item expanded "><a href="definitions/succinct.html">Succinct</a></li><li class="chapter-item expanded "><a href="definitions/threshold_encryption.html">Threshold Encryption</a></li><li class="chapter-item expanded "><a href="definitions/transparent_setup.html">Transparent Setup</a></li><li class="chapter-item expanded "><a href="definitions/trusted_setup.html">Trusted Setup</a></li><li class="chapter-item expanded "><a href="definitions/vanishing_polynomial.html">Vanishing Polynomial</a></li><li class="chapter-item expanded "><a href="definitions/witness.html">Witness</a></li><li class="chapter-item expanded "><a href="definitions/witness_encryption.html">Witness Encryption</a></li><li class="chapter-item expanded "><a href="definitions/zero_knowledge_proof.html">Zero-Knowledge Proof</a></li><li class="chapter-item expanded "><a href="definitions/zkvm.html">zkVM</a></li></ol>
92            </div>
93            <div id="sidebar-resize-handle" class="sidebar-resize-handle">
94                <div class="sidebar-resize-indicator"></div>
95            </div>
96        </nav>
97
98        <!-- Track and set sidebar scroll position -->
99        
99<script>
100            var sidebarScrollbox = document.querySelector('#sidebar .sidebar-scrollbox');
101            sidebarScrollbox.addEventListener('click', function(e) {
102                if (e.target.tagName === 'A') {
103                    sessionStorage.setItem('sidebar-scroll', sidebarScrollbox.scrollTop);
104                }
105            }, { passive: true });
106            var sidebarScrollTop = sessionStorage.getItem('sidebar-scroll');
107            sessionStorage.removeItem('sidebar-scroll');
108            if (sidebarScrollTop) {
109                // preserve sidebar scroll position when navigating via links within sidebar
110                sidebarScrollbox.scrollTop = sidebarScrollTop;
111            } else {
112                // scroll sidebar to current active section when navigating via "next/previous chapter" buttons
113                var activeSection = document.querySelector('#sidebar .active');
114                if (activeSection) {
115                    activeSection.scrollIntoView({ block: 'center' });
116                }
117            }
118        </script>
118
119
120        <div id="page-wrapper" class="page-wrapper">
121
122            <div class="page">
123                                <div id="menu-bar-hover-placeholder"></div>
124                <div id="menu-bar" class="menu-bar sticky">
125                    <div class="left-buttons">
126                        <label id="sidebar-toggle" class="icon-button" for="sidebar-toggle-anchor" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
127                            <i class="fa fa-bars"></i>
128                        </label>
129                        <button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
130                            <i class="fa fa-paint-brush"></i>
131                        </button>
132                        <ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
133                            <li role="none"><button role="menuitem" class="theme" id="light">Light</button></li>
134                            <li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
135                            <li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
136                            <li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
137                            <li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
138                        </ul>
139                        <button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
140                            <i class="fa fa-search"></i>
141                        </button>
142                    </div>
143
144                    <h1 class="menu-title">ZK Jargon Decoder</h1>
145
146                    <div class="right-buttons">
147                        <a href="print.html" title="Print this book" aria-label="Print this book">
148                            <i id="print-button" class="fa fa-print"></i>
149                        </a>
150                        <a href="https://github.com/zkjargon/zkjargon.github.io/" title="Git repository" aria-label="Git repository">
151                            <i id="git-repository-button" class="fa fa-github"></i>
152                        </a>
153                        <a href="https://github.com/zkjargon/zkjargon.github.io/edit/main/src/foreword.md" title="Suggest an edit" aria-label="Suggest an edit">
154                            <i id="git-edit-button" class="fa fa-edit"></i>
155                        </a>
156
157                    </div>
158                </div>
159
160                <div id="search-wrapper" class="hidden">
161                    <form id="searchbar-outer" class="searchbar-outer">
162                        <input type="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
163                    </form>
164                    <div id="searchresults-outer" class="searchresults-outer hidden">
165                        <div id="searchresults-header" class="searchresults-header"></div>
166                        <ul id="searchresults">
167                        </ul>
168                    </div>
169                </div>
170
171                <!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
172                
172<script>
173                    document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
174                    document.getElementById('sidebar').setAttribute('aria-hidden', sidebar !== 'visible');
175                    Array.from(document.querySelectorAll('#sidebar a')).forEach(function(link) {
176                        link.setAttribute('tabIndex', sidebar === 'visible' ? 0 : -1);
177                    });
178                </script>
178
179
180                <div id="content" class="content">
181                    <main>
182                        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css">
183<h1 id="foreword"><a class="header" href="#foreword">Foreword</a></h1>
184<h2 id="welcome-to-the-zk-jargon-decoder-"><a class="header" href="#welcome-to-the-zk-jargon-decoder-">Welcome to the ZK Jargon Decoder 🕵️</a></h2>
185<p>The ZK Jargon Decoder aims to be a <strong>dictionary and reference guide</strong> for common jargon found in <strong>cryptography and the zero-knowledge literature</strong>. It is collection of <strong>informal and practical</strong> definitions. Each term should have a one-liner for quick reference and a more detailed explanation if needed.</p>
186<p>The nature of this project implies that our definitions will not be perfectly accurate: some technical details will be omitted, some subtleties will be ignored. However if you feel that any of these definitions overlook important aspects of the terms they clarify please get in touch by email or Twitter:</p>
187<p>email: <a href="mailto:[email protected]">[email protected]</a> // Twitter: <a href="https://twitter.com/nico_mnbl">@nico_mnbl</a></p>
188<p>This project is still work in progress, participation and suggestions are always welcome!</p>
189<h2 id="license"><a class="header" href="#license">License</a></h2>
190<p><em>ZK Jargon Decoder</em> by ZK Jargon Decoder contributors is licensed under CC BY-SA 4.0. To view a copy of this license, visit <a href="https://creativecommons.org/licenses/by-sa/4.0/">https://creativecommons.org/licenses/by-sa/4.0/</a></p>
191
192                    </main>
193
194                    <nav class="nav-wrapper" aria-label="Page navigation">
195                        <!-- Mobile navigation buttons -->
196
197                            <a rel="next prefetch" href="intro_to_zk/what_is_proving.html" class="mobile-nav-chapters next" title="Next chapter" aria-label="Next chapter" aria-keyshortcuts="Right">
198                                <i class="fa fa-angle-right"></i>
199                            </a>
200
201                        <div style="clear: both"></div>
202                    </nav>
203                </div>
204            </div>
205
206            <nav class="nav-wide-wrapper" aria-label="Page navigation">
207
208                    <a rel="next prefetch" href="intro_to_zk/what_is_proving.html" class="nav-chapters next" title="Next chapter" aria-label="Next chapter" aria-keyshortcuts="Right">
209                        <i class="fa fa-angle-right"></i>
210                    </a>
211            </nav>
212
213        </div>
214
215
216
217
218        
218<script>
219            window.playground_copyable = true;
220        </script>
220
221
222
223        
223<script src="elasticlunr.min.js"></script>
223
224        
224<script src="mark.min.js"></script>
224
225        
225<script src="searcher.js"></script>
225
226
227        
227<script src="clipboard.min.js"></script>
227
228        
228<script src="highlight.js"></script>
228
229        
229<script src="book.js"></script>
229
230
231        <!-- Custom JS scripts -->
232
233
234    </div>
235    </body>
236</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.