@zkproofport-ai/sdk 0.2.4 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -183
- package/dist/flow.d.ts.map +1 -1
- package/dist/flow.js +18 -12
- package/dist/flow.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@ Client SDK for ZKProofport zero-knowledge proof generation on Base Mainnet.
|
|
|
6
6
|
|
|
7
7
|
@zkproofport-ai/sdk is a TypeScript SDK for generating privacy-preserving zero-knowledge proofs using Coinbase KYC attestations and OIDC JWT tokens. Generate a proof with a single function call, or fine-tune each step for custom workflows.
|
|
8
8
|
|
|
9
|
-
Proofs are generated in trusted execution environments (Nitro Enclaves) with cryptographic attestation.
|
|
9
|
+
Proofs are generated in trusted execution environments (Nitro Enclaves) with cryptographic attestation. Proof generation is **free** — no payment required.
|
|
10
10
|
|
|
11
11
|
## E2E Encryption (TEE Blind Relay)
|
|
12
12
|
|
|
@@ -14,8 +14,8 @@ All proof inputs are **end-to-end encrypted** using X25519 ECDH + AES-256-GCM. T
|
|
|
14
14
|
|
|
15
15
|
**How it works:**
|
|
16
16
|
|
|
17
|
-
1. `generateProof()`
|
|
18
|
-
2. The
|
|
17
|
+
1. `generateProof()` contacts the server to obtain the TEE public key
|
|
18
|
+
2. The response includes `teePublicKey` — the TEE's attested X25519 public key (cryptographically bound to the Nitro Enclave via COSE Sign1 attestation)
|
|
19
19
|
3. The SDK generates an ephemeral X25519 keypair, performs ECDH key agreement, and encrypts all circuit inputs with AES-256-GCM
|
|
20
20
|
4. The encrypted payload is sent to the server, which relays it blindly to the TEE
|
|
21
21
|
5. The TEE decrypts, generates the ZK proof, and returns it
|
|
@@ -33,110 +33,25 @@ npm install @zkproofport-ai/sdk ethers
|
|
|
33
33
|
|
|
34
34
|
## Prerequisites
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
**For Coinbase circuits** (`coinbase_kyc`, `coinbase_country`):
|
|
37
37
|
|
|
38
38
|
1. **Coinbase account with KYC verification** — Complete identity verification on [Coinbase](https://www.coinbase.com/)
|
|
39
39
|
2. **Coinbase KYC EAS attestation on Base** — Obtain an attestation via [Coinbase Verifications](https://www.coinbase.com/onchain-verify). This creates an on-chain EAS attestation on Base linked to your wallet address.
|
|
40
|
-
3. **
|
|
41
|
-
4. **Attestation wallet private key** (required) — The private key of the wallet that holds the EAS attestation. This is always a raw private key because the attestation is tied to a specific address.
|
|
42
|
-
|
|
43
|
-
5. **Payment wallet** (recommended) — Separate wallet with USDC balance for proof payment. Choose one:
|
|
44
|
-
|
|
45
|
-
- **Same as attestation wallet (NOT recommended)** — No additional setup, but **defeats zero-knowledge privacy**.
|
|
46
|
-
> ⚠️ **Privacy risk:** Using the attestation wallet for payment exposes your KYC-verified wallet address on-chain in the payment transaction, **directly linking your real-world identity to on-chain activity**. This defeats the purpose of zero-knowledge proofs. Always use a separate payment wallet (private key or CDP) to preserve privacy.
|
|
47
|
-
- **Separate private key** — A different wallet with USDC balance.
|
|
48
|
-
- **CDP MPC wallet** — Coinbase Developer Platform managed wallet. Private keys never leave Coinbase's TEE. Get credentials at [CDP Portal](https://portal.cdp.coinbase.com). Requires additional install:
|
|
49
|
-
```bash
|
|
50
|
-
npm install @coinbase/cdp-sdk
|
|
51
|
-
```
|
|
52
|
-
| Credential | Required | Description |
|
|
53
|
-
|------------|----------|-------------|
|
|
54
|
-
| `CDP_API_KEY_ID` | Yes | CDP API key ID |
|
|
55
|
-
| `CDP_API_KEY_SECRET` | Yes | CDP API key secret |
|
|
56
|
-
| `CDP_WALLET_SECRET` | Yes | CDP wallet encryption secret |
|
|
57
|
-
| `CDP_WALLET_ADDRESS` | No | Existing wallet address (creates new if omitted) |
|
|
40
|
+
3. **Attestation wallet private key** (required) — The private key of the wallet that holds the EAS attestation. This is always a raw private key because the attestation is tied to a specific address.
|
|
58
41
|
|
|
59
|
-
|
|
42
|
+
**For OIDC circuits** (`oidc_domain`): No wallet or attestation needed — just a JWT `id_token` from your OIDC provider.
|
|
60
43
|
|
|
61
|
-
|
|
44
|
+
## Quick Start
|
|
62
45
|
|
|
63
46
|
```typescript
|
|
64
47
|
import { generateProof, createConfig, fromPrivateKey, verifyProof } from '@zkproofport-ai/sdk';
|
|
65
48
|
|
|
66
49
|
const config = createConfig();
|
|
67
50
|
const attestationSigner = fromPrivateKey(process.env.ATTESTATION_KEY);
|
|
68
|
-
const paymentSigner = fromPrivateKey(process.env.PAYMENT_KEY);
|
|
69
51
|
|
|
70
52
|
const result = await generateProof(
|
|
71
53
|
config,
|
|
72
|
-
{ attestation: attestationSigner
|
|
73
|
-
{ circuit: 'coinbase_kyc', scope: 'my-app' }
|
|
74
|
-
);
|
|
75
|
-
|
|
76
|
-
const verification = await verifyProof(result);
|
|
77
|
-
console.log('Valid:', verification.valid);
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
### With CDP Payment Wallet
|
|
81
|
-
|
|
82
|
-
```typescript
|
|
83
|
-
import { generateProof, createConfig, fromPrivateKey, fromExternalWallet, verifyProof } from '@zkproofport-ai/sdk';
|
|
84
|
-
import { CdpClient } from '@coinbase/cdp-sdk';
|
|
85
|
-
|
|
86
|
-
const config = createConfig();
|
|
87
|
-
const attestationSigner = fromPrivateKey(process.env.ATTESTATION_KEY);
|
|
88
|
-
|
|
89
|
-
// Create CDP MPC wallet (private keys never leave Coinbase's TEE)
|
|
90
|
-
const cdp = new CdpClient();
|
|
91
|
-
const account = await cdp.evm.getOrCreateAccount({ name: 'proofport-payment' });
|
|
92
|
-
|
|
93
|
-
const paymentSigner = fromExternalWallet({
|
|
94
|
-
getAddress: () => account.address!,
|
|
95
|
-
signMessage: async (msg) => {
|
|
96
|
-
const message = msg instanceof Uint8Array ? Buffer.from(msg).toString() : msg;
|
|
97
|
-
const result = await cdp.evm.signMessage({ address: account.address!, message });
|
|
98
|
-
return result.signature;
|
|
99
|
-
},
|
|
100
|
-
signTypedData: async (domain, types, message) => {
|
|
101
|
-
const primaryType = Object.keys(types).find(k => k !== 'EIP712Domain') || '';
|
|
102
|
-
const result = await cdp.evm.signTypedData({ address: account.address!, domain, types, primaryType, message });
|
|
103
|
-
return result.signature;
|
|
104
|
-
},
|
|
105
|
-
sendTransaction: async (tx) => {
|
|
106
|
-
const result = await cdp.evm.sendTransaction({
|
|
107
|
-
address: account.address!, transaction: tx, network: 'base',
|
|
108
|
-
});
|
|
109
|
-
return { hash: result.transactionHash, wait: async () => ({ status: 1 }) };
|
|
110
|
-
},
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
const result = await generateProof(
|
|
114
|
-
config,
|
|
115
|
-
{ attestation: attestationSigner, payment: paymentSigner },
|
|
116
|
-
{ circuit: 'coinbase_kyc', scope: 'my-app' }
|
|
117
|
-
);
|
|
118
|
-
|
|
119
|
-
const verification = await verifyProof(result);
|
|
120
|
-
console.log('Valid:', verification.valid);
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
### External Wallet Adapter
|
|
124
|
-
|
|
125
|
-
Wrap any external wallet (WalletConnect, MetaMask, etc.) using `fromExternalWallet()`:
|
|
126
|
-
|
|
127
|
-
```typescript
|
|
128
|
-
import { generateProof, createConfig, fromPrivateKey, fromExternalWallet, verifyProof } from '@zkproofport-ai/sdk';
|
|
129
|
-
|
|
130
|
-
const config = createConfig();
|
|
131
|
-
const attestationSigner = fromPrivateKey(process.env.ATTESTATION_KEY);
|
|
132
|
-
|
|
133
|
-
// Wrap external wallet (e.g., from WalletConnect modal, Privy, etc.)
|
|
134
|
-
const externalWallet = await getWalletFromUI(); // Your wallet integration
|
|
135
|
-
const paymentSigner = fromExternalWallet(externalWallet);
|
|
136
|
-
|
|
137
|
-
const result = await generateProof(
|
|
138
|
-
config,
|
|
139
|
-
{ attestation: attestationSigner, payment: paymentSigner },
|
|
54
|
+
{ attestation: attestationSigner },
|
|
140
55
|
{ circuit: 'coinbase_kyc', scope: 'my-app' }
|
|
141
56
|
);
|
|
142
57
|
|
|
@@ -149,15 +64,12 @@ console.log('Valid:', verification.valid);
|
|
|
149
64
|
```typescript
|
|
150
65
|
import { createConfig } from '@zkproofport-ai/sdk';
|
|
151
66
|
|
|
152
|
-
//
|
|
67
|
+
// Default — production use
|
|
153
68
|
const config = createConfig();
|
|
154
69
|
|
|
155
|
-
// Custom
|
|
70
|
+
// Custom server URL
|
|
156
71
|
const config = createConfig({
|
|
157
|
-
|
|
158
|
-
facilitatorHeaders: {
|
|
159
|
-
'Authorization': `Bearer ${process.env.CDP_FACILITATOR_TOKEN}`,
|
|
160
|
-
},
|
|
72
|
+
baseUrl: 'https://your-custom-server.example.com',
|
|
161
73
|
});
|
|
162
74
|
```
|
|
163
75
|
|
|
@@ -166,14 +78,12 @@ const config = createConfig({
|
|
|
166
78
|
| Field | Type | Default | Description |
|
|
167
79
|
|-------|------|---------|-------------|
|
|
168
80
|
| `baseUrl` | string | `https://ai.zkproofport.app` | proofport-ai server URL |
|
|
169
|
-
| `facilitatorUrl` | string | `https://x402.dexter.cash` | x402 payment facilitator URL |
|
|
170
|
-
| `facilitatorHeaders` | object | `{}` | Optional auth headers for custom facilitator (e.g., CDP with JWT) |
|
|
171
81
|
|
|
172
82
|
## Proof Generation
|
|
173
83
|
|
|
174
84
|
### Single-Step Flow
|
|
175
85
|
|
|
176
|
-
The `generateProof()` function handles the entire proof generation pipeline: signing, attestation fetching, circuit input preparation,
|
|
86
|
+
The `generateProof()` function handles the entire proof generation pipeline: signing, attestation fetching, circuit input preparation, and proof generation.
|
|
177
87
|
|
|
178
88
|
```typescript
|
|
179
89
|
import { generateProof, createConfig, fromPrivateKey } from '@zkproofport-ai/sdk';
|
|
@@ -181,14 +91,10 @@ import type { StepResult } from '@zkproofport-ai/sdk';
|
|
|
181
91
|
|
|
182
92
|
const config = createConfig();
|
|
183
93
|
const attestationSigner = fromPrivateKey(process.env.ATTESTATION_KEY);
|
|
184
|
-
const paymentSigner = fromPrivateKey(process.env.PAYMENT_KEY); // optional
|
|
185
94
|
|
|
186
95
|
const result = await generateProof(
|
|
187
96
|
config,
|
|
188
|
-
{
|
|
189
|
-
attestation: attestationSigner,
|
|
190
|
-
payment: paymentSigner, // uses attestationSigner if not provided
|
|
191
|
-
},
|
|
97
|
+
{ attestation: attestationSigner },
|
|
192
98
|
{
|
|
193
99
|
circuit: 'coinbase_kyc',
|
|
194
100
|
scope: 'my-application',
|
|
@@ -206,7 +112,6 @@ const result = await generateProof(
|
|
|
206
112
|
console.log('Proof generated in', result.timing.totalMs, 'ms');
|
|
207
113
|
console.log('Proof:', result.proof);
|
|
208
114
|
console.log('Public inputs:', result.publicInputs);
|
|
209
|
-
console.log('Payment TX:', result.paymentTxHash);
|
|
210
115
|
|
|
211
116
|
// Attestation present if TEE mode enabled on server
|
|
212
117
|
if (result.attestation) {
|
|
@@ -219,11 +124,8 @@ if (result.attestation) {
|
|
|
219
124
|
1. Sign signal hash with attestation signer
|
|
220
125
|
2. Fetch Coinbase KYC attestation from EAS
|
|
221
126
|
3. Build circuit inputs (Merkle tree, hashes)
|
|
222
|
-
4.
|
|
223
|
-
5.
|
|
224
|
-
6. Sign EIP-3009 TransferWithAuthorization
|
|
225
|
-
7. Submit payment via x402 facilitator
|
|
226
|
-
8. Generate proof in TEE with payment proof (encrypted inputs if TEE enabled)
|
|
127
|
+
4. **Auto-detect E2E encryption** — if `teePublicKey` is present in server response, encrypt inputs with X25519 ECDH + AES-256-GCM
|
|
128
|
+
5. Generate proof in TEE (encrypted inputs if TEE enabled)
|
|
227
129
|
|
|
228
130
|
**Result fields:**
|
|
229
131
|
|
|
@@ -232,7 +134,6 @@ if (result.attestation) {
|
|
|
232
134
|
| `proof` | string | 0x-prefixed proof hex |
|
|
233
135
|
| `publicInputs` | string | 0x-prefixed public inputs hex |
|
|
234
136
|
| `proofWithInputs` | string | Combined proof + public inputs |
|
|
235
|
-
| `paymentTxHash` | string | Transaction hash of x402 payment |
|
|
236
137
|
| `attestation` | object | TEE attestation (document, proof_hash, verification) or null |
|
|
237
138
|
| `timing` | object | Execution times per step |
|
|
238
139
|
| `verification` | object | On-chain verifier info (chainId, address, rpcUrl) |
|
|
@@ -260,12 +161,9 @@ For advanced workflows or debugging, use individual step functions instead of `g
|
|
|
260
161
|
```typescript
|
|
261
162
|
import {
|
|
262
163
|
prepareInputs,
|
|
263
|
-
requestChallenge,
|
|
264
|
-
makePayment,
|
|
265
164
|
submitProof,
|
|
266
165
|
computeSignalHash,
|
|
267
166
|
CIRCUIT_NAME_MAP,
|
|
268
|
-
USDC_ADDRESSES,
|
|
269
167
|
EthersWalletSigner,
|
|
270
168
|
createConfig,
|
|
271
169
|
} from '@zkproofport-ai/sdk';
|
|
@@ -290,29 +188,10 @@ const inputs = await prepareInputs(config, {
|
|
|
290
188
|
scope,
|
|
291
189
|
});
|
|
292
190
|
|
|
293
|
-
// Step 3:
|
|
294
|
-
const challenge = await requestChallenge(config, circuit, inputs);
|
|
295
|
-
|
|
296
|
-
// Step 4: Make payment via x402 facilitator
|
|
297
|
-
const provider = new ethers.JsonRpcProvider('https://mainnet.base.org');
|
|
298
|
-
const paymentWallet = new ethers.Wallet(process.env.PAYMENT_KEY, provider);
|
|
299
|
-
const paymentSigner = new EthersWalletSigner(paymentWallet);
|
|
300
|
-
|
|
301
|
-
const paymentTxHash = await makePayment(paymentSigner, {
|
|
302
|
-
nonce: challenge.nonce,
|
|
303
|
-
recipient: challenge.payment.payTo,
|
|
304
|
-
amount: parseInt(challenge.payment.maxAmountRequired),
|
|
305
|
-
asset: USDC_ADDRESSES['base'],
|
|
306
|
-
network: challenge.payment.network,
|
|
307
|
-
instruction: challenge.payment.description,
|
|
308
|
-
});
|
|
309
|
-
|
|
310
|
-
// Step 5: Submit proof with payment proof
|
|
191
|
+
// Step 3: Submit proof
|
|
311
192
|
const proofResponse = await submitProof(config, {
|
|
312
193
|
circuit,
|
|
313
194
|
inputs,
|
|
314
|
-
paymentTxHash,
|
|
315
|
-
paymentNonce: challenge.nonce,
|
|
316
195
|
});
|
|
317
196
|
|
|
318
197
|
console.log('Proof:', proofResponse.proof);
|
|
@@ -347,19 +226,18 @@ const result = await generateProof(config, signers, {
|
|
|
347
226
|
|
|
348
227
|
### OIDC Domain
|
|
349
228
|
|
|
350
|
-
Proves email domain affiliation using an OIDC JWT token (e.g., Google, Microsoft). No EAS attestation
|
|
229
|
+
Proves email domain affiliation using an OIDC JWT token (e.g., Google, Microsoft). No EAS attestation, Coinbase account, or wallet required — only a JWT `id_token`.
|
|
351
230
|
|
|
352
231
|
#### Google Workspace
|
|
353
232
|
|
|
354
233
|
```typescript
|
|
355
|
-
import { createConfig, generateProof
|
|
234
|
+
import { createConfig, generateProof } from '@zkproofport-ai/sdk';
|
|
356
235
|
|
|
357
236
|
const config = createConfig();
|
|
358
|
-
const paymentSigner = fromPrivateKey(process.env.PAYMENT_KEY);
|
|
359
237
|
|
|
360
238
|
const result = await generateProof(
|
|
361
239
|
config,
|
|
362
|
-
{
|
|
240
|
+
{},
|
|
363
241
|
{
|
|
364
242
|
circuit: 'oidc_domain',
|
|
365
243
|
jwt: googleIdToken, // JWT id_token from Google OAuth
|
|
@@ -371,14 +249,13 @@ const result = await generateProof(
|
|
|
371
249
|
#### Microsoft 365
|
|
372
250
|
|
|
373
251
|
```typescript
|
|
374
|
-
import { createConfig, generateProof
|
|
252
|
+
import { createConfig, generateProof } from '@zkproofport-ai/sdk';
|
|
375
253
|
|
|
376
254
|
const config = createConfig();
|
|
377
|
-
const paymentSigner = fromPrivateKey(process.env.PAYMENT_KEY);
|
|
378
255
|
|
|
379
256
|
const result = await generateProof(
|
|
380
257
|
config,
|
|
381
|
-
{
|
|
258
|
+
{},
|
|
382
259
|
{
|
|
383
260
|
circuit: 'oidc_domain',
|
|
384
261
|
jwt: microsoftIdToken, // JWT id_token from Microsoft OAuth
|
|
@@ -388,21 +265,20 @@ const result = await generateProof(
|
|
|
388
265
|
);
|
|
389
266
|
```
|
|
390
267
|
|
|
391
|
-
> **Note:** For OIDC circuits,
|
|
268
|
+
> **Note:** For OIDC circuits, no wallet or private key is needed — just a JWT `id_token` from your OIDC provider.
|
|
392
269
|
|
|
393
270
|
## Extracting Data from Proofs
|
|
394
271
|
|
|
395
272
|
For OIDC domain proofs, use helper functions to extract the domain and nullifier from public inputs:
|
|
396
273
|
|
|
397
274
|
```typescript
|
|
398
|
-
import { generateProof, createConfig,
|
|
275
|
+
import { generateProof, createConfig, extractDomainFromPublicInputs, extractNullifierFromPublicInputs } from '@zkproofport-ai/sdk';
|
|
399
276
|
|
|
400
277
|
const config = createConfig();
|
|
401
|
-
const paymentSigner = fromPrivateKey(process.env.PAYMENT_KEY);
|
|
402
278
|
|
|
403
279
|
const result = await generateProof(
|
|
404
280
|
config,
|
|
405
|
-
{
|
|
281
|
+
{},
|
|
406
282
|
{
|
|
407
283
|
circuit: 'oidc_domain',
|
|
408
284
|
jwt: googleIdToken,
|
|
@@ -450,8 +326,6 @@ type CircuitId = 'coinbase_attestation' | 'coinbase_country_attestation' | 'oidc
|
|
|
450
326
|
```typescript
|
|
451
327
|
interface ClientConfig {
|
|
452
328
|
baseUrl: string;
|
|
453
|
-
facilitatorUrl?: string; // x402 facilitator URL (default: https://x402.dexter.cash)
|
|
454
|
-
facilitatorHeaders?: Record<string, string>; // Auth headers for custom facilitator
|
|
455
329
|
}
|
|
456
330
|
```
|
|
457
331
|
|
|
@@ -507,7 +381,6 @@ interface ProofResult {
|
|
|
507
381
|
proof: string;
|
|
508
382
|
publicInputs: string;
|
|
509
383
|
proofWithInputs: string;
|
|
510
|
-
paymentTxHash: string;
|
|
511
384
|
attestation: {
|
|
512
385
|
document: string;
|
|
513
386
|
proof_hash: string;
|
|
@@ -556,33 +429,6 @@ interface StepResult {
|
|
|
556
429
|
}
|
|
557
430
|
```
|
|
558
431
|
|
|
559
|
-
## Payment
|
|
560
|
-
|
|
561
|
-
Payment is transparent to the application. When `generateProof()` runs, the user signs an EIP-3009 `TransferWithAuthorization` message (no gas cost). The signature is sent to the x402 facilitator, which completes the USDC transfer and proves payment to the server.
|
|
562
|
-
|
|
563
|
-
- Protocol: x402 (HTTP 402 Payment Required)
|
|
564
|
-
- Method: EIP-3009 `TransferWithAuthorization`
|
|
565
|
-
- Token: USDC on Base Mainnet
|
|
566
|
-
- Amount: $0.10 per proof
|
|
567
|
-
- Facilitator: `https://x402.dexter.cash` (default, pays gas)
|
|
568
|
-
- User cost: Only USDC, no ETH for gas
|
|
569
|
-
- Custom facilitator: Use `facilitatorUrl` + `facilitatorHeaders` in `ClientConfig` for alternative facilitators (e.g., CDP with JWT auth)
|
|
570
|
-
|
|
571
|
-
The payment transaction hash is included in `result.paymentTxHash` for settlement tracking.
|
|
572
|
-
|
|
573
|
-
### Custom Facilitator (CDP Example)
|
|
574
|
-
|
|
575
|
-
```typescript
|
|
576
|
-
const config = createConfig({
|
|
577
|
-
facilitatorUrl: 'https://cdp-facilitator.example.com',
|
|
578
|
-
facilitatorHeaders: {
|
|
579
|
-
'Authorization': `Bearer ${process.env.CDP_JWT_TOKEN}`,
|
|
580
|
-
},
|
|
581
|
-
});
|
|
582
|
-
|
|
583
|
-
const result = await generateProof(config, signers, params);
|
|
584
|
-
```
|
|
585
|
-
|
|
586
432
|
## Error Handling
|
|
587
433
|
|
|
588
434
|
```typescript
|
|
@@ -592,9 +438,7 @@ try {
|
|
|
592
438
|
const result = await generateProof(config, signers, params);
|
|
593
439
|
} catch (error) {
|
|
594
440
|
if (error instanceof Error) {
|
|
595
|
-
if (error.message.includes('
|
|
596
|
-
console.error('Payment required or payment failed');
|
|
597
|
-
} else if (error.message.includes('attestation')) {
|
|
441
|
+
if (error.message.includes('attestation')) {
|
|
598
442
|
console.error('Attestation not found or invalid');
|
|
599
443
|
} else if (error.message.includes('Sumcheck')) {
|
|
600
444
|
console.error('Proof verification failed on-chain');
|
|
@@ -610,9 +454,7 @@ Common errors:
|
|
|
610
454
|
| Error | Cause | Solution |
|
|
611
455
|
|-------|-------|----------|
|
|
612
456
|
| `Attestation not found` | Wallet has no Coinbase KYC attestation | Verify attestation on Base Mainnet via EAS |
|
|
613
|
-
| `402 Payment Required` | x402 payment failed or insufficient USDC | Ensure wallet has USDC balance, check x402 facilitator |
|
|
614
457
|
| `Sumcheck failed` | On-chain verification failed | Proof corrupted or verifier contract mismatch |
|
|
615
|
-
| `Transaction failed` | User rejected signature | Retry or check wallet |
|
|
616
458
|
|
|
617
459
|
## License
|
|
618
460
|
|
package/dist/flow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAEZ,WAAW,EACX,WAAW,EACX,UAAU,EAEX,MAAM,YAAY,CAAC;AAQpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;CACrC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE;IAAE,WAAW,EAAE,eAAe,CAAC;IAAC,OAAO,CAAC,EAAE,eAAe,CAAA;CAAE,EACpE,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,aAAa,GACxB,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAEZ,WAAW,EACX,WAAW,EACX,UAAU,EAEX,MAAM,YAAY,CAAC;AAQpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;CACrC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE;IAAE,WAAW,EAAE,eAAe,CAAC;IAAC,OAAO,CAAC,EAAE,eAAe,CAAA;CAAE,EACpE,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,aAAa,GACxB,OAAO,CAAC,WAAW,CAAC,CAgItB"}
|
package/dist/flow.js
CHANGED
|
@@ -72,19 +72,25 @@ export async function generateProof(config, signers, params, callbacks) {
|
|
|
72
72
|
const challenge = await requestChallenge(config, params.circuit);
|
|
73
73
|
const isE2E = !!challenge.teePublicKey;
|
|
74
74
|
recordStep(3, 'Request Challenge', { nonce: challenge.nonce, e2e: isE2E, keyId: challenge.teePublicKey?.keyId ?? null }, t);
|
|
75
|
-
// Step 4: Make payment
|
|
75
|
+
// Step 4: Make payment (skip if server has payment disabled)
|
|
76
76
|
t = Date.now();
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
77
|
+
let paymentTxHash = '';
|
|
78
|
+
if (challenge.requiresPayment === false) {
|
|
79
|
+
recordStep(4, 'Make Payment', { skipped: true, reason: 'payment_disabled' }, t);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
const network = challenge.payment.network;
|
|
83
|
+
const paymentInfo = {
|
|
84
|
+
nonce: challenge.nonce,
|
|
85
|
+
recipient: challenge.payment.payTo,
|
|
86
|
+
amount: parseInt(challenge.payment.maxAmountRequired),
|
|
87
|
+
asset: USDC_ADDRESSES[network],
|
|
88
|
+
network: challenge.payment.network,
|
|
89
|
+
instruction: challenge.payment.description,
|
|
90
|
+
};
|
|
91
|
+
paymentTxHash = await makePayment(paymentSigner, paymentInfo, config.facilitatorUrl || challenge.facilitatorUrl, config.facilitatorHeaders);
|
|
92
|
+
recordStep(4, 'Make Payment', { txHash: paymentTxHash }, t);
|
|
93
|
+
}
|
|
88
94
|
// Step 5: Submit proof (encrypted or plaintext based on TEE availability)
|
|
89
95
|
t = Date.now();
|
|
90
96
|
let proveResponse;
|
package/dist/flow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -40,6 +40,8 @@ export interface ChallengeResponse {
|
|
|
40
40
|
error: string;
|
|
41
41
|
message: string;
|
|
42
42
|
nonce: string;
|
|
43
|
+
/** false when server PAYMENT_MODE=disabled — skip payment step entirely */
|
|
44
|
+
requiresPayment?: boolean;
|
|
43
45
|
payment: PaymentRequirements;
|
|
44
46
|
facilitatorUrl?: string;
|
|
45
47
|
teePublicKey?: {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|