Cryptographic witness 2026-11-05
A cryptographic witness is auxiliary information that satisfies an efficiently checkable relation for a public statement . Writing the relation as separates the claim from the information that certifies it. In a zero-knowledge proof, a prover may use such a witness without revealing it.[ref]
Probabilistic Proof Systems: A Primer by Oded Goldreich. Section2.3, witness information and proofs of knowledge
For an original graph isomorphism example, let the public graphs and both be the path with edges . A witness is a bijection of vertices preserving adjacency. Bothandare valid. A witness need not be unique. With an adjacency-matrix encoding, a verifier can check all vertex pairs and their images in comparisons for an -vertex pair.
The public assertion is that a suitable mapping exists; the witness supplies one particular mapping. Whether that mapping is secret depends on the application. Calling it a witness does not inherently make it a password or a secret key.
A further distinction concerns what a proof establishes. Soundness of an interactive proof protects against acceptance of false statements. A proof of knowledge requires an additional formal relationship between a successful prover and extraction of a witness. Validity of a statement and knowledge of its certificate are not interchangeable claims.
Expected extraction time 2026-11-05
The expected extraction time of a knowledge extractor is the expected value of its running time over the randomness in the extraction experiment. The definition specifies the extractor's access to a prover and the cryptographic witness it must return. A common proof of knowledge formulation bounds that expectation, on valid inputs and for acceptance probability above knowledge error , bywhere is a fixed polynomial. The access and output conditions are essential parts of the definition.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Definition3.1, validity and universal extraction; section6, equivalent formulation
An original asymptotic comparison makes the denominator meaningful. Write and suppose . A gap gives an expected bound . A gap instead gives . The displayed extraction theorem therefore does not promise polynomial time uniformly for arbitrarily tiny positive gaps.
An expected bound also permits rare long executions. As a separate toy running-time distribution, let with probability and with probability . Thenalthough the worst-case execution is exponential. This distribution illustrates the distinction; it is not itself an extraction construction. Markov's inequality turns an expected bound into the tail estimate for . Converting an extractor into a procedure with a fixed deadline must account for the resulting probability of stopping before it finds a witness.
Knowledge error 2026-11-05
The knowledge error of a proof of knowledge is a threshold in its extraction guarantee. If a prover's acceptance probability exceeds that threshold, the definition requires a knowledge extractor with an appropriate expected extraction time. It is not simply the probability that the extractor outputs an incorrect witness.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Definition3.1, knowledge-error function and validity condition
In one standard formulation, on an input in the witness relation's domain,where is an appropriate polynomial. The extraction guarantee includes the relation and oracle-access conditions as well as this bound.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Definition3.1 and section4, qualifications to the extraction condition
For an original numerical comparison, set . Acceptance probability leaves a gap of0.1, giving a factor10 multiplying in this bound. At , the factor is100. As success approaches the threshold, the permitted expected running time worsens. At , this displayed guarantee does not apply.
The single-challenge graph-isomorphism proof protocol illustrates why a nonzero threshold can be meaningful. A strategy can prepare a relabeling of one public graph and answer only its corresponding challenge, succeeding with probability without using an isomorphism between the two public graphs. Success beyond that baseline is what the extraction analysis exploits.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Section4.4, graph-isomorphism example and knowledge error1/2
Knowledge extractor 2026-11-05
A knowledge extractor is the algorithm that turns sufficiently successful proving behavior into a valid cryptographic witness in the definition of a proof of knowledge. The definition specifies its access to the prover and its efficiency guarantee, often in terms of acceptance probability above a knowledge error. The real verifier need not execute the extractor or learn the witness.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Definition3.1, universal knowledge extractor
A concrete algebraic step appears in the graph-isomorphism proof protocol. Suppose two accepting continuations with the same commitment supply mappingsThe extractor returnsTo check it, take any edge of . The first mapping sends it to an edge of , and the inverse second mapping sends that edge to an edge of . Both mappings are bijections, so their composition is a graph isomorphism. The same argument handles nonedges.
This verifies the output once the two continuations have been obtained. A full extraction proof must also justify obtaining them, for example through permitted rewinding in cryptographic proofs, within the promised expected extraction time.
Mihir Bellare 2026-11-05
Mihir Bellare is a computer scientist whose work in cryptography connects practical constructions with provable security: a claimed security property is expressed as a mathematical condition, with a proof relating an attack to specified assumptions. His UC San Diego homepage describes this emphasis on primitives of applied interest.
With Ran Canetti and Hugo Krawczyk, Mihir Bellare developed the hash-based message authentication code HMAC. Their 1996 paper studies how to turn an unkeyed cryptographic hash function into a keyed message authentication mechanism and analyzes the resulting construction under explicit assumptions. The practical task is to let two parties sharing a cryptographic key detect unauthorized message changes: an ordinary public hash function alone cannot prevent an attacker from changing a message and recomputing its hash.[ref]
Keying Hash Functions for Message Authentication by Mihir Bellare, Ran Canetti and Hugo Krawczyk. June1996 author manuscript, Abstract and §§1.1–1.3
The construction was subsequently specified in the February1997 document HMAC: Keyed-Hashing for Message Authentication (RFC 2104); that RFC is explicitly categorized as Informational.[ref]With Oded Goldreich, Mihir Bellare also refined the definition of a proof of knowledge. Their work makes “knowing” a mathematical witness operational through a knowledge extractor, with a knowledge error distinguishing acceptance obtainable without such knowledge from acceptance that supports extraction.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. Definition3.1 and §4.4; author manuscript dated26August1992
The graph isomorphism example makes that distinction concrete. A prover sends a graph and must answer a random challenge asking for an isomorphism from either or to . Preparing only one answer can give acceptance probability , so one accepted exchange is not itself evidence that the prover knows an isomorphism between and . If an extractor obtains valid maps and for the same , it can construct . This illustrates why a careful extraction definition, rather than the informal phrase “the verifier was convinced”, matters when building larger cryptographic protocols.[ref]
On Defining Proofs of Knowledge by Mihir Bellare and Oded Goldreich. §4.4, atomic graph-isomorphism protocol and knowledge error1/2