Optional
membershipOptional
owner?: GPCProofOwnerInputsConfiguration for the "owner" of this circuit. If included, the proof will validate the given owner identity, and may optionally correlate that identity to one or more POD entries to establish ownership of those PODs.
The owner's identity is never directly revealed, though POD entries which contain the owner's public ID can be configured to be revealed. A nullifier can also be calculated which is tied to the owner's identity, to allow identifying duplicate proofs without de-anonymizing.
This field can be omitted if an owner is not needed for any entry an entry with isOwnerID set.
PODs for each of the object included in this proof.
The names assigned here are used to link these objects back to their configuration in GPCProofConfig. The names are not cryptographically verified, but merely a convenience for configuration.
Optional
watermark?: PODValueIf this field is set, the given value will be included in the resulting proof. This allows identifying a proof as tied to a specific use case, to avoid reuse. Unlike a nullifier, this watermark is not cryptographically tied to any specific input data.
This field can be a PODValue of any type, and will be represented in the circuit as a number or a hash as appropriate. When the proof is verified, the watermark is also verified (as a public input).
Generated using TypeDoc
Contains the specific input data for proof. GPC inputs tend to differ for each proof, as opposed to configuration (see GPCProofConfig which tends to be fixed and reusable.
The purpose of this type is as input to gpcProve, which will automatically pick a ZK circuit to fit the configuration and inputs. Redacted portions of this type will be present in the resulting GPCRevealedClaims. These claims can be used to describe the contents of the proof, and also passed to gpcVerify to verify the proof.
See the documentation of the various fields and subtypes for more details.