const challenge = await client.generateZKChallenge();
const { proof } = await client.generateZKProof({
credentialId: vc.id,
proverDid: 'did:adi:alice…',
privateKey: holderPrivateKeyB64Url,
credentialSubject: { age: 25, country: 'US' },
predicates: [
{ attributeName: 'age', type: 'gte', value: 18 },
{ attributeName: 'country', type: 'membership', memberSet: ['US','UK','EU'] },
],
challenge: challenge.challenge,
anchorOnChain: false,
});
const verification = await verifierClient.verifyZKProof(proof, 'did:adi:alice…');
console.log('All predicates satisfied?', verification.valid);