@inco/js 0.9.0-devnet-test-4 → 0.10.0-devnet-1
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 +503 -47
- package/dist/cjs/advancedacl/session-key.d.ts +5 -5
- package/dist/cjs/advancedacl/session-key.js +33 -9
- package/dist/cjs/attestedcompute/attested-compute.d.ts +1 -2
- package/dist/cjs/attestedcompute/attested-compute.js +15 -7
- package/dist/cjs/attesteddecrypt/attested-decrypt.d.ts +5 -43
- package/dist/cjs/attesteddecrypt/attested-decrypt.js +33 -96
- package/dist/cjs/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/cjs/attestedreveal/attested-reveal.js +31 -0
- package/dist/cjs/attestedreveal/index.d.ts +2 -0
- package/dist/cjs/attestedreveal/index.js +21 -0
- package/dist/cjs/attestedreveal/types.d.ts +4 -0
- package/dist/cjs/attestedreveal/types.js +13 -0
- package/dist/cjs/binary.d.ts +82 -0
- package/dist/cjs/binary.js +87 -5
- package/dist/cjs/chain.d.ts +29 -4
- package/dist/cjs/chain.js +34 -6
- package/dist/cjs/eip712/eip712.d.ts +18 -0
- package/dist/cjs/eip712/eip712.js +51 -0
- package/dist/cjs/eip712/index.d.ts +1 -0
- package/dist/cjs/eip712/index.js +8 -0
- package/dist/cjs/elistattesteddecrypt/elist-attested-decrypt.d.ts +49 -0
- package/dist/cjs/elistattesteddecrypt/elist-attested-decrypt.js +94 -0
- package/dist/cjs/elistattesteddecrypt/index.d.ts +2 -0
- package/dist/cjs/elistattesteddecrypt/index.js +22 -0
- package/dist/cjs/elistattesteddecrypt/types.d.ts +31 -0
- package/dist/cjs/elistattesteddecrypt/types.js +16 -0
- package/dist/cjs/encryption/encryption.d.ts +115 -0
- package/dist/cjs/encryption/encryption.js +98 -7
- package/dist/cjs/encryption/index.d.ts +1 -1
- package/dist/cjs/encryption/index.js +17 -16
- package/dist/cjs/generated/abis/lightning.d.ts +1119 -107
- package/dist/cjs/generated/abis/lightning.js +762 -52
- package/dist/cjs/generated/abis/test-elist.d.ts +20 -2
- package/dist/cjs/generated/abis/test-elist.js +16 -3
- package/dist/cjs/generated/abis/verifier.d.ts +118 -15
- package/dist/cjs/generated/abis/verifier.js +71 -19
- package/dist/cjs/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +23 -37
- package/dist/cjs/generated/es/inco/covalidator/compute/v1/server_pb.js +36 -41
- package/dist/cjs/generated/es/inco/covalidator/compute/v1/types_pb.js +1 -1
- package/dist/cjs/generated/es/inco/helioswrapper/v1/helioswrapper_pb.js +1 -1
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +16 -0
- package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.js +3 -3
- package/dist/cjs/generated/es/inco/kms/lite/v1/types_pb.js +1 -1
- package/dist/cjs/generated/es/inco/sealingfetcher/v1/sealingfetcher_pb.d.ts +7 -0
- package/dist/cjs/generated/es/inco/sealingfetcher/v1/sealingfetcher_pb.js +3 -3
- package/dist/cjs/generated/lightning.d.ts +150 -0
- package/dist/cjs/generated/lightning.js +157 -1
- package/dist/cjs/generated/local-node.d.ts +9 -9
- package/dist/cjs/generated/local-node.js +37 -10
- package/dist/cjs/handle.d.ts +72 -0
- package/dist/cjs/handle.js +113 -9
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +11 -2
- package/dist/cjs/kms/client.d.ts +1 -1
- package/dist/cjs/kms/client.js +4 -3
- package/dist/cjs/kms/quorumClient.d.ts +18 -12
- package/dist/cjs/kms/quorumClient.js +212 -231
- package/dist/cjs/kms/quorumConsistency.d.ts +82 -0
- package/dist/cjs/kms/quorumConsistency.js +269 -0
- package/dist/cjs/kms/signatureVerification.d.ts +35 -0
- package/dist/cjs/kms/signatureVerification.js +88 -0
- package/dist/cjs/kms/thresholdPromises.d.ts +4 -3
- package/dist/cjs/kms/thresholdPromises.js +25 -15
- package/dist/cjs/lite/attested-compute.d.ts +2 -2
- package/dist/cjs/lite/attested-compute.js +2 -3
- package/dist/cjs/lite/attested-decrypt.d.ts +2 -2
- package/dist/cjs/lite/attested-decrypt.js +2 -3
- package/dist/cjs/lite/hadu.d.ts +1 -1
- package/dist/cjs/lite/hadu.js +3 -3
- package/dist/cjs/lite/index.d.ts +6 -2
- package/dist/cjs/lite/index.js +8 -14
- package/dist/cjs/lite/lightning.d.ts +96 -47
- package/dist/cjs/lite/lightning.js +221 -267
- package/dist/cjs/lite/types.d.ts +47 -0
- package/dist/cjs/lite/types.js +3 -0
- package/dist/cjs/lite/xwing.d.ts +33 -2
- package/dist/cjs/lite/xwing.js +62 -7
- package/dist/cjs/local/local-node.d.ts +18 -0
- package/dist/cjs/local/local-node.js +18 -3
- package/dist/cjs/reencryption/eip712.d.ts +27 -0
- package/dist/cjs/reencryption/eip712.js +20 -7
- package/dist/cjs/reencryption/types.d.ts +24 -0
- package/dist/cjs/retry.d.ts +14 -0
- package/dist/cjs/retry.js +58 -2
- package/dist/cjs/test/mocks.d.ts +6 -1
- package/dist/cjs/test/mocks.js +31 -6
- package/dist/cjs/viem.d.ts +361 -1
- package/dist/cjs/viem.js +14 -1
- package/dist/esm/advancedacl/session-key.d.ts +5 -5
- package/dist/esm/advancedacl/session-key.js +33 -9
- package/dist/esm/attestedcompute/attested-compute.d.ts +1 -2
- package/dist/esm/attestedcompute/attested-compute.js +13 -5
- package/dist/esm/attesteddecrypt/attested-decrypt.d.ts +5 -43
- package/dist/esm/attesteddecrypt/attested-decrypt.js +34 -96
- package/dist/esm/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/esm/attestedreveal/attested-reveal.js +28 -0
- package/dist/esm/attestedreveal/index.d.ts +2 -0
- package/dist/esm/attestedreveal/index.js +3 -0
- package/dist/esm/attestedreveal/types.d.ts +4 -0
- package/dist/esm/attestedreveal/types.js +9 -0
- package/dist/esm/binary.d.ts +82 -0
- package/dist/esm/binary.js +87 -5
- package/dist/esm/chain.d.ts +29 -4
- package/dist/esm/chain.js +33 -5
- package/dist/esm/eip712/eip712.d.ts +18 -0
- package/dist/esm/eip712/eip712.js +46 -0
- package/dist/esm/eip712/index.d.ts +1 -0
- package/dist/esm/eip712/index.js +2 -0
- package/dist/esm/elistattesteddecrypt/elist-attested-decrypt.d.ts +49 -0
- package/dist/esm/elistattesteddecrypt/elist-attested-decrypt.js +89 -0
- package/dist/esm/elistattesteddecrypt/index.d.ts +2 -0
- package/dist/esm/elistattesteddecrypt/index.js +3 -0
- package/dist/esm/elistattesteddecrypt/types.d.ts +31 -0
- package/dist/esm/elistattesteddecrypt/types.js +12 -0
- package/dist/esm/encryption/encryption.d.ts +115 -0
- package/dist/esm/encryption/encryption.js +98 -7
- package/dist/esm/encryption/index.d.ts +1 -1
- package/dist/esm/encryption/index.js +2 -2
- package/dist/esm/generated/abis/lightning.d.ts +1119 -107
- package/dist/esm/generated/abis/lightning.js +761 -51
- package/dist/esm/generated/abis/test-elist.d.ts +20 -2
- package/dist/esm/generated/abis/test-elist.js +16 -3
- package/dist/esm/generated/abis/verifier.d.ts +118 -15
- package/dist/esm/generated/abis/verifier.js +71 -19
- package/dist/esm/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +23 -37
- package/dist/esm/generated/es/inco/covalidator/compute/v1/server_pb.js +35 -40
- package/dist/esm/generated/es/inco/covalidator/compute/v1/types_pb.js +1 -1
- package/dist/esm/generated/es/inco/helioswrapper/v1/helioswrapper_pb.js +1 -1
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +16 -0
- package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.js +3 -3
- package/dist/esm/generated/es/inco/kms/lite/v1/types_pb.js +1 -1
- package/dist/esm/generated/es/inco/sealingfetcher/v1/sealingfetcher_pb.d.ts +7 -0
- package/dist/esm/generated/es/inco/sealingfetcher/v1/sealingfetcher_pb.js +3 -3
- package/dist/esm/generated/lightning.d.ts +150 -0
- package/dist/esm/generated/lightning.js +157 -1
- package/dist/esm/generated/local-node.d.ts +9 -9
- package/dist/esm/generated/local-node.js +37 -10
- package/dist/esm/handle.d.ts +72 -0
- package/dist/esm/handle.js +110 -8
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/kms/client.d.ts +1 -1
- package/dist/esm/kms/client.js +3 -2
- package/dist/esm/kms/quorumClient.d.ts +18 -12
- package/dist/esm/kms/quorumClient.js +213 -232
- package/dist/esm/kms/quorumConsistency.d.ts +82 -0
- package/dist/esm/kms/quorumConsistency.js +260 -0
- package/dist/esm/kms/signatureVerification.d.ts +35 -0
- package/dist/esm/kms/signatureVerification.js +84 -0
- package/dist/esm/kms/thresholdPromises.d.ts +4 -3
- package/dist/esm/kms/thresholdPromises.js +25 -15
- package/dist/esm/lite/attested-compute.d.ts +2 -2
- package/dist/esm/lite/attested-compute.js +3 -3
- package/dist/esm/lite/attested-decrypt.d.ts +2 -2
- package/dist/esm/lite/attested-decrypt.js +3 -3
- package/dist/esm/lite/hadu.d.ts +1 -1
- package/dist/esm/lite/hadu.js +2 -2
- package/dist/esm/lite/index.d.ts +6 -2
- package/dist/esm/lite/index.js +5 -3
- package/dist/esm/lite/lightning.d.ts +96 -47
- package/dist/esm/lite/lightning.js +217 -263
- package/dist/esm/lite/types.d.ts +47 -0
- package/dist/esm/lite/types.js +2 -0
- package/dist/esm/lite/xwing.d.ts +33 -2
- package/dist/esm/lite/xwing.js +59 -7
- package/dist/esm/local/local-node.d.ts +18 -0
- package/dist/esm/local/local-node.js +18 -3
- package/dist/esm/reencryption/eip712.d.ts +27 -0
- package/dist/esm/reencryption/eip712.js +20 -7
- package/dist/esm/reencryption/types.d.ts +24 -0
- package/dist/esm/retry.d.ts +14 -0
- package/dist/esm/retry.js +56 -2
- package/dist/esm/test/mocks.d.ts +6 -1
- package/dist/esm/test/mocks.js +31 -8
- package/dist/esm/viem.d.ts +361 -1
- package/dist/esm/viem.js +15 -2
- package/dist/types/advancedacl/session-key.d.ts +5 -5
- package/dist/types/attestedcompute/attested-compute.d.ts +1 -2
- package/dist/types/attesteddecrypt/attested-decrypt.d.ts +5 -43
- package/dist/types/attestedreveal/attested-reveal.d.ts +21 -0
- package/dist/types/attestedreveal/index.d.ts +2 -0
- package/dist/types/attestedreveal/types.d.ts +4 -0
- package/dist/types/binary.d.ts +82 -0
- package/dist/types/chain.d.ts +29 -4
- package/dist/types/eip712/eip712.d.ts +18 -0
- package/dist/types/eip712/index.d.ts +1 -0
- package/dist/types/elistattesteddecrypt/elist-attested-decrypt.d.ts +49 -0
- package/dist/types/elistattesteddecrypt/index.d.ts +2 -0
- package/dist/types/elistattesteddecrypt/types.d.ts +31 -0
- package/dist/types/encryption/encryption.d.ts +115 -0
- package/dist/types/encryption/index.d.ts +1 -1
- package/dist/types/generated/abis/lightning.d.ts +1119 -107
- package/dist/types/generated/abis/test-elist.d.ts +20 -2
- package/dist/types/generated/abis/verifier.d.ts +118 -15
- package/dist/types/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +23 -37
- package/dist/types/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +16 -0
- package/dist/types/generated/es/inco/sealingfetcher/v1/sealingfetcher_pb.d.ts +7 -0
- package/dist/types/generated/lightning.d.ts +150 -0
- package/dist/types/generated/local-node.d.ts +9 -9
- package/dist/types/handle.d.ts +72 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/kms/client.d.ts +1 -1
- package/dist/types/kms/quorumClient.d.ts +18 -12
- package/dist/types/kms/quorumConsistency.d.ts +82 -0
- package/dist/types/kms/signatureVerification.d.ts +35 -0
- package/dist/types/kms/thresholdPromises.d.ts +4 -3
- package/dist/types/lite/attested-compute.d.ts +2 -2
- package/dist/types/lite/attested-decrypt.d.ts +2 -2
- package/dist/types/lite/hadu.d.ts +1 -1
- package/dist/types/lite/index.d.ts +6 -2
- package/dist/types/lite/lightning.d.ts +96 -47
- package/dist/types/lite/types.d.ts +47 -0
- package/dist/types/lite/xwing.d.ts +33 -2
- package/dist/types/local/local-node.d.ts +18 -0
- package/dist/types/reencryption/eip712.d.ts +27 -0
- package/dist/types/reencryption/types.d.ts +24 -0
- package/dist/types/retry.d.ts +14 -0
- package/dist/types/test/mocks.d.ts +6 -1
- package/dist/types/viem.d.ts +361 -1
- package/package.json +19 -21
- package/dist/cjs/generated/abis/lightning-preview.d.ts +0 -1385
- package/dist/cjs/generated/abis/lightning-preview.js +0 -857
- package/dist/esm/generated/abis/lightning-preview.d.ts +0 -1385
- package/dist/esm/generated/abis/lightning-preview.js +0 -854
- package/dist/types/generated/abis/lightning-preview.d.ts +0 -1385
|
@@ -1,7 +1,134 @@
|
|
|
1
1
|
export declare const lightningDeployments: readonly [{
|
|
2
|
+
readonly name: "incoLightning_10_0_0__266391127";
|
|
3
|
+
readonly majorVersion: 10;
|
|
4
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
5
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
6
|
+
readonly pepper: "devnet";
|
|
7
|
+
readonly executorAddress: "0x9C6b74dff47644956e712B301aa3701b3141fF9C";
|
|
8
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc0012dea2b242c4d3b620c657";
|
|
9
|
+
readonly chainId: 84532;
|
|
10
|
+
readonly chainName: "Base Sepolia";
|
|
11
|
+
readonly version: {
|
|
12
|
+
readonly major: 10;
|
|
13
|
+
readonly minor: 0;
|
|
14
|
+
readonly patch: 0;
|
|
15
|
+
readonly shortSalt: "266391127";
|
|
16
|
+
};
|
|
17
|
+
readonly blockNumber: 40291413;
|
|
18
|
+
readonly deployDate: "2026-04-16T14:51:55.586Z";
|
|
19
|
+
readonly commit: "v0.8.0-devnet-32-6-ge1e857cf0-dirty";
|
|
20
|
+
readonly active: true;
|
|
21
|
+
readonly includesPreviewFeatures: false;
|
|
22
|
+
}, {
|
|
23
|
+
readonly name: "incoLightning_9_0_0__269218568";
|
|
24
|
+
readonly majorVersion: 9;
|
|
25
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
26
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
27
|
+
readonly pepper: "devnet";
|
|
28
|
+
readonly executorAddress: "0x6c9132D324231D2F68a1491686b0d4c10ee7d257";
|
|
29
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc007202d6e9ea2805def71308";
|
|
30
|
+
readonly chainId: 84532;
|
|
31
|
+
readonly chainName: "Base Sepolia";
|
|
32
|
+
readonly version: {
|
|
33
|
+
readonly major: 9;
|
|
34
|
+
readonly minor: 0;
|
|
35
|
+
readonly patch: 0;
|
|
36
|
+
readonly shortSalt: "269218568";
|
|
37
|
+
};
|
|
38
|
+
readonly blockNumber: 39033718;
|
|
39
|
+
readonly deployDate: "2026-03-18T12:08:48.915Z";
|
|
40
|
+
readonly commit: "v0.8.0-devnet-13-40-gc1ceef103-dirty";
|
|
41
|
+
readonly active: true;
|
|
42
|
+
readonly includesPreviewFeatures: false;
|
|
43
|
+
}, {
|
|
44
|
+
readonly name: "incoLightning_8_0_0__985328058";
|
|
45
|
+
readonly majorVersion: 8;
|
|
46
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
47
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
48
|
+
readonly pepper: "devnet";
|
|
49
|
+
readonly executorAddress: "0x43119Ad1F673E998CE4f3BB305bB92Bd5ab97E3B";
|
|
50
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc009045f766b38e5a773da9ba";
|
|
51
|
+
readonly chainId: 84532;
|
|
52
|
+
readonly chainName: "Base Sepolia";
|
|
53
|
+
readonly version: {
|
|
54
|
+
readonly major: 8;
|
|
55
|
+
readonly minor: 0;
|
|
56
|
+
readonly patch: 0;
|
|
57
|
+
readonly shortSalt: "985328058";
|
|
58
|
+
};
|
|
59
|
+
readonly blockNumber: 39028741;
|
|
60
|
+
readonly deployDate: "2026-03-18T09:22:53.919Z";
|
|
61
|
+
readonly commit: "v0.8.0-devnet-13-40-gc1ceef103-dirty";
|
|
62
|
+
readonly active: true;
|
|
63
|
+
readonly includesPreviewFeatures: false;
|
|
64
|
+
}, {
|
|
65
|
+
readonly name: "incoLightning_7_0_0__24560427";
|
|
66
|
+
readonly majorVersion: 7;
|
|
67
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
68
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
69
|
+
readonly pepper: "devnet";
|
|
70
|
+
readonly executorAddress: "0xA2275E60cCEd081fFD7373593c44ebc30E6Efe66";
|
|
71
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc0057b7694d1492d2775d132b";
|
|
72
|
+
readonly chainId: 84532;
|
|
73
|
+
readonly chainName: "Base Sepolia";
|
|
74
|
+
readonly version: {
|
|
75
|
+
readonly major: 7;
|
|
76
|
+
readonly minor: 0;
|
|
77
|
+
readonly patch: 0;
|
|
78
|
+
readonly shortSalt: "24560427";
|
|
79
|
+
};
|
|
80
|
+
readonly blockNumber: 38991058;
|
|
81
|
+
readonly deployDate: "2026-03-17T12:26:47.504Z";
|
|
82
|
+
readonly commit: "v0.8.0-devnet-13-38-g52b1dfef3";
|
|
83
|
+
readonly active: true;
|
|
84
|
+
readonly includesPreviewFeatures: false;
|
|
85
|
+
}, {
|
|
86
|
+
readonly name: "incoLightning_6_0_0__281949651";
|
|
87
|
+
readonly majorVersion: 6;
|
|
88
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
89
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
90
|
+
readonly pepper: "devnet";
|
|
91
|
+
readonly executorAddress: "0xDF3830489208461f72Df6E45D0e6cbF9DBB74fe1";
|
|
92
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc009531587de02194b1b7a9d3";
|
|
93
|
+
readonly chainId: 84532;
|
|
94
|
+
readonly chainName: "Base Sepolia";
|
|
95
|
+
readonly version: {
|
|
96
|
+
readonly major: 6;
|
|
97
|
+
readonly minor: 0;
|
|
98
|
+
readonly patch: 0;
|
|
99
|
+
readonly shortSalt: "281949651";
|
|
100
|
+
};
|
|
101
|
+
readonly blockNumber: 37516200;
|
|
102
|
+
readonly deployDate: "2026-02-11T09:04:51.931Z";
|
|
103
|
+
readonly commit: "v0.8.0-devnet-9-13-ge2ba2377";
|
|
104
|
+
readonly active: true;
|
|
105
|
+
readonly includesPreviewFeatures: false;
|
|
106
|
+
}, {
|
|
107
|
+
readonly name: "incoLightningPreview_5_0_0__203964628";
|
|
108
|
+
readonly majorVersion: 5;
|
|
109
|
+
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
110
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
111
|
+
readonly pepper: "devnet";
|
|
112
|
+
readonly executorAddress: "0x8D5D75CC00E2Fc84ec4dE085aE1708223591c6b6";
|
|
113
|
+
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00c573fb2bf617e75b6210d4";
|
|
114
|
+
readonly chainId: 84532;
|
|
115
|
+
readonly chainName: "Base Sepolia";
|
|
116
|
+
readonly version: {
|
|
117
|
+
readonly major: 5;
|
|
118
|
+
readonly minor: 0;
|
|
119
|
+
readonly patch: 0;
|
|
120
|
+
readonly shortSalt: "203964628";
|
|
121
|
+
};
|
|
122
|
+
readonly blockNumber: 37431152;
|
|
123
|
+
readonly deployDate: "2026-02-09T09:49:55.326Z";
|
|
124
|
+
readonly commit: "v0.8.0-devnet-8-8-ge2e37e00";
|
|
125
|
+
readonly active: true;
|
|
126
|
+
readonly includesPreviewFeatures: true;
|
|
127
|
+
}, {
|
|
2
128
|
readonly name: "incoLightningPreview_4_0_0__409204766";
|
|
3
129
|
readonly majorVersion: 4;
|
|
4
130
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
131
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
5
132
|
readonly pepper: "devnet";
|
|
6
133
|
readonly executorAddress: "0x4046b737B454b0430FBF29cea070e3337AdE95aD";
|
|
7
134
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc003b3f2c4caeb6f787dcce1e";
|
|
@@ -22,6 +149,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
22
149
|
readonly name: "incoLightningPreview_3_0_0__976859633";
|
|
23
150
|
readonly majorVersion: 3;
|
|
24
151
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
152
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
25
153
|
readonly pepper: "devnet";
|
|
26
154
|
readonly executorAddress: "0x4732520194584a04Cac0224e067658619F4086bD";
|
|
27
155
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00ef1fab551c72a93b0637f1";
|
|
@@ -42,6 +170,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
42
170
|
readonly name: "incoLightningPreview_2_0_0__889158349";
|
|
43
171
|
readonly majorVersion: 2;
|
|
44
172
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
173
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
45
174
|
readonly pepper: "testnet";
|
|
46
175
|
readonly executorAddress: "0x168FDc3Ae19A5d5b03614578C58974FF30FCBe92";
|
|
47
176
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc005e0f44aac1a914b715cecd";
|
|
@@ -62,6 +191,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
62
191
|
readonly name: "incoLightningPreview_2_0_0__467437523";
|
|
63
192
|
readonly majorVersion: 2;
|
|
64
193
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
194
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
65
195
|
readonly pepper: "demonet";
|
|
66
196
|
readonly executorAddress: "0xA95EAbCE575f5f1e52605358Ee893F6536166378";
|
|
67
197
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc0071f74686446f14c7b469d3";
|
|
@@ -82,6 +212,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
82
212
|
readonly name: "incoLightningPreview_2_0_0__976644394";
|
|
83
213
|
readonly majorVersion: 2;
|
|
84
214
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
215
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
85
216
|
readonly pepper: "alphanet";
|
|
86
217
|
readonly executorAddress: "0xc0d693DeEF0A91CE39208676b6da09B822abd199";
|
|
87
218
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc000822f11f6e30f933e76d2a";
|
|
@@ -102,6 +233,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
102
233
|
readonly name: "incoLightningPreview_2_0_0__295237520";
|
|
103
234
|
readonly majorVersion: 2;
|
|
104
235
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
236
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
105
237
|
readonly pepper: "devnet";
|
|
106
238
|
readonly executorAddress: "0xC64BB070D6F5aa796e79fA19c1008647ffF736ED";
|
|
107
239
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc008d5a963bd519d8493f5190";
|
|
@@ -122,6 +254,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
122
254
|
readonly name: "incoLightningPreview_2_0_0__295237520";
|
|
123
255
|
readonly majorVersion: 2;
|
|
124
256
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
257
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
125
258
|
readonly pepper: "devnet";
|
|
126
259
|
readonly executorAddress: "0xC64BB070D6F5aa796e79fA19c1008647ffF736ED";
|
|
127
260
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc008d5a963bd519d8493f5190";
|
|
@@ -142,6 +275,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
142
275
|
readonly name: "incoLightningPreview_1_1_0__725458969";
|
|
143
276
|
readonly majorVersion: 1;
|
|
144
277
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
278
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
145
279
|
readonly pepper: "alphanet";
|
|
146
280
|
readonly executorAddress: "0x28676Cd3b10b03b2FDF105Ba280425b45a674F2A";
|
|
147
281
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc004dfbe338c6966a22bcca19";
|
|
@@ -162,6 +296,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
162
296
|
readonly name: "incoLightningPreview_1_0_2__725458969";
|
|
163
297
|
readonly majorVersion: 1;
|
|
164
298
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
299
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
165
300
|
readonly pepper: "alphanet";
|
|
166
301
|
readonly executorAddress: "0x28676Cd3b10b03b2FDF105Ba280425b45a674F2A";
|
|
167
302
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc004dfbe338c6966a22bcca19";
|
|
@@ -181,6 +316,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
181
316
|
readonly name: "incoLightningPreview_1_0_2__904635675";
|
|
182
317
|
readonly majorVersion: 1;
|
|
183
318
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
319
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
184
320
|
readonly pepper: "devnet";
|
|
185
321
|
readonly executorAddress: "0x3473820DcAa71Af8157b93C7f2bf1c676A2A39A6";
|
|
186
322
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc007d63c0fdca6698ac7cc51b";
|
|
@@ -200,6 +336,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
200
336
|
readonly name: "incoLightningPreview_1_0_0__904635675";
|
|
201
337
|
readonly majorVersion: 1;
|
|
202
338
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
339
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
203
340
|
readonly pepper: "devnet";
|
|
204
341
|
readonly executorAddress: "0x3473820DcAa71Af8157b93C7f2bf1c676A2A39A6";
|
|
205
342
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc007d63c0fdca6698ac7cc51b";
|
|
@@ -219,6 +356,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
219
356
|
readonly name: "incoLightning_0_2_0__183408998";
|
|
220
357
|
readonly majorVersion: 0;
|
|
221
358
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
359
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
222
360
|
readonly pepper: "testnet";
|
|
223
361
|
readonly executorAddress: "0x63D8135aF4D393B1dB43B649010c8D3EE19FC9fd";
|
|
224
362
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00d75ffa0caf0797c3f12d66";
|
|
@@ -238,6 +376,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
238
376
|
readonly name: "incoLightning_0_1_29__183408998";
|
|
239
377
|
readonly majorVersion: 0;
|
|
240
378
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
379
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
241
380
|
readonly pepper: "testnet";
|
|
242
381
|
readonly executorAddress: "0x63D8135aF4D393B1dB43B649010c8D3EE19FC9fd";
|
|
243
382
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00d75ffa0caf0797c3f12d66";
|
|
@@ -257,6 +396,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
257
396
|
readonly name: "incoLightning_0_1_29__183408998";
|
|
258
397
|
readonly majorVersion: 0;
|
|
259
398
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
399
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
260
400
|
readonly pepper: "testnet";
|
|
261
401
|
readonly executorAddress: "0x63D8135aF4D393B1dB43B649010c8D3EE19FC9fd";
|
|
262
402
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00d75ffa0caf0797c3f12d66";
|
|
@@ -276,6 +416,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
276
416
|
readonly name: "incoLightning_0_2_0__863421733";
|
|
277
417
|
readonly majorVersion: 0;
|
|
278
418
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
419
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
279
420
|
readonly pepper: "demonet";
|
|
280
421
|
readonly executorAddress: "0xeBAFF6D578733E4603b99CBdbb221482F29a78E1";
|
|
281
422
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00834654f6d289ccc7e5ab25";
|
|
@@ -295,6 +436,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
295
436
|
readonly name: "incoLightning_0_1_29__863421733";
|
|
296
437
|
readonly majorVersion: 0;
|
|
297
438
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
439
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
298
440
|
readonly pepper: "demonet";
|
|
299
441
|
readonly executorAddress: "0xeBAFF6D578733E4603b99CBdbb221482F29a78E1";
|
|
300
442
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00834654f6d289ccc7e5ab25";
|
|
@@ -314,6 +456,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
314
456
|
readonly name: "incoLightningPreview_0_2_1__297966649";
|
|
315
457
|
readonly majorVersion: 0;
|
|
316
458
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
459
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
317
460
|
readonly pepper: "alphanet";
|
|
318
461
|
readonly executorAddress: "0x4651DfD7729aE5568092E7351fAaD872266d4CBd";
|
|
319
462
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc0023f7798f470fdf5e9da639";
|
|
@@ -333,6 +476,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
333
476
|
readonly name: "incoLightningPreview_0_2_0__297966649";
|
|
334
477
|
readonly majorVersion: 0;
|
|
335
478
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
479
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
336
480
|
readonly pepper: "alphanet";
|
|
337
481
|
readonly executorAddress: "0x4651DfD7729aE5568092E7351fAaD872266d4CBd";
|
|
338
482
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc0023f7798f470fdf5e9da639";
|
|
@@ -352,6 +496,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
352
496
|
readonly name: "incoLightningPreview_0_2_1__340846814";
|
|
353
497
|
readonly majorVersion: 0;
|
|
354
498
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
499
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
355
500
|
readonly pepper: "devnet";
|
|
356
501
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
357
502
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -371,6 +516,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
371
516
|
readonly name: "incoLightning_0_2_1__340846814";
|
|
372
517
|
readonly majorVersion: 0;
|
|
373
518
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
519
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
374
520
|
readonly pepper: "devnet";
|
|
375
521
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
376
522
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -390,6 +536,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
390
536
|
readonly name: "incoLightningPreview_0_2_1__340846814";
|
|
391
537
|
readonly majorVersion: 0;
|
|
392
538
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
539
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
393
540
|
readonly pepper: "devnet";
|
|
394
541
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
395
542
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -409,6 +556,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
409
556
|
readonly name: "incoLightning_0_2_0__340846814";
|
|
410
557
|
readonly majorVersion: 0;
|
|
411
558
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
559
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
412
560
|
readonly pepper: "devnet";
|
|
413
561
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
414
562
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -428,6 +576,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
428
576
|
readonly name: "incoLightning_0_1_29__340846814";
|
|
429
577
|
readonly majorVersion: 0;
|
|
430
578
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
579
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
431
580
|
readonly pepper: "devnet";
|
|
432
581
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
433
582
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -447,6 +596,7 @@ export declare const lightningDeployments: readonly [{
|
|
|
447
596
|
readonly name: "incoLightning_0_1_29__340846814";
|
|
448
597
|
readonly majorVersion: 0;
|
|
449
598
|
readonly deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
599
|
+
readonly owner: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC";
|
|
450
600
|
readonly pepper: "devnet";
|
|
451
601
|
readonly executorAddress: "0x3B22be60Ae699933959CA3cE147C96caa88Ccd3D";
|
|
452
602
|
readonly salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00b001d6742fded0dd599ede";
|
|
@@ -4,7 +4,7 @@ export declare const localNodeLightningConfig: {
|
|
|
4
4
|
readonly chainId: 31337;
|
|
5
5
|
readonly covalidatorUrls: readonly ["http://localhost:50055"];
|
|
6
6
|
readonly signers: readonly ["0xa3968E59A2659F33CB8deFEFa713512C800fbc77"];
|
|
7
|
-
readonly
|
|
7
|
+
readonly hostChainRpcUrls: readonly ["http://localhost:8545"];
|
|
8
8
|
readonly senderPrivateKey: "0xde4526e9059cddb3eb8511fcefc2daa1dcaf2475ec76ff6ae63bfc7eb3405a1b";
|
|
9
9
|
};
|
|
10
10
|
readonly testnet: {
|
|
@@ -12,31 +12,31 @@ export declare const localNodeLightningConfig: {
|
|
|
12
12
|
readonly chainId: 31337;
|
|
13
13
|
readonly covalidatorUrls: readonly ["http://localhost:50055"];
|
|
14
14
|
readonly signers: readonly ["0x8586714c02340Dc28935977d8E864f1F8E1c30B2"];
|
|
15
|
-
readonly
|
|
15
|
+
readonly hostChainRpcUrls: readonly ["http://localhost:8545"];
|
|
16
16
|
readonly senderPrivateKey: "0x3ff395b755c4dc09837d0672dd421915e9b9835a4733edf63d8fd12b3fe4475c";
|
|
17
17
|
};
|
|
18
18
|
readonly devnet: {
|
|
19
|
-
readonly executorAddress: "
|
|
19
|
+
readonly executorAddress: "0x9C6b74dff47644956e712B301aa3701b3141fF9C";
|
|
20
20
|
readonly chainId: 31337;
|
|
21
21
|
readonly covalidatorUrls: readonly ["http://localhost:50055"];
|
|
22
|
-
readonly signers: readonly ["
|
|
23
|
-
readonly
|
|
24
|
-
readonly senderPrivateKey: "
|
|
22
|
+
readonly signers: readonly ["0x2fFD118c19d5Fc7F43e6F1d6ac248A0EE4B25A88"];
|
|
23
|
+
readonly hostChainRpcUrls: readonly ["http://localhost:8545"];
|
|
24
|
+
readonly senderPrivateKey: "0x55af0e32c902cfece090ee14715775cc1636d4c1e9ccae11d200f0d5fe7bfcb0";
|
|
25
25
|
};
|
|
26
26
|
readonly alphanet: {
|
|
27
27
|
readonly executorAddress: "0xc0d693DeEF0A91CE39208676b6da09B822abd199";
|
|
28
28
|
readonly chainId: 31337;
|
|
29
29
|
readonly covalidatorUrls: readonly ["http://localhost:50055"];
|
|
30
30
|
readonly signers: readonly ["0x8E873085348a3406A07907E5d1465B9824bA07cd"];
|
|
31
|
-
readonly
|
|
31
|
+
readonly hostChainRpcUrls: readonly ["http://localhost:8545"];
|
|
32
32
|
readonly senderPrivateKey: "0x279c172cf3638a79642daa5f7666c600befde318550d7579cf96280920e318b6";
|
|
33
33
|
};
|
|
34
34
|
readonly scratch: {
|
|
35
|
-
readonly executorAddress: "
|
|
35
|
+
readonly executorAddress: "0xFaaaAddc5fbE664AFC44Ae7bfe62D7a0F4FF8FB8";
|
|
36
36
|
readonly chainId: 31337;
|
|
37
37
|
readonly covalidatorUrls: readonly ["http://localhost:50055"];
|
|
38
38
|
readonly signers: readonly ["0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"];
|
|
39
|
-
readonly
|
|
39
|
+
readonly hostChainRpcUrls: readonly ["http://127.0.0.1:8567"];
|
|
40
40
|
readonly senderPrivateKey: "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80";
|
|
41
41
|
};
|
|
42
42
|
};
|
package/dist/types/handle.d.ts
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
2
|
import { HexString } from './binary.js';
|
|
3
|
+
/** Current handle version byte, appended as the last byte of every handle. */
|
|
3
4
|
export declare const HANDLE_VERSION = 0;
|
|
5
|
+
/**
|
|
6
|
+
* Domain separators for handle derivation. Must be kept in sync with Solidity
|
|
7
|
+
* (contracts/lightning/src/Types.sol) and Go (pkg/fhe/handle.go). Prefixing every
|
|
8
|
+
* keccak256 preimage with a unique constant string makes cross-derivation-path
|
|
9
|
+
* collision resistance structural rather than incidental.
|
|
10
|
+
*/
|
|
11
|
+
export declare const SEP_INPUT_PREHANDLE = "inco/handle/input-prehandle";
|
|
12
|
+
export declare const SEP_INPUT_HANDLE = "inco/handle/input-handle";
|
|
13
|
+
export declare const SEP_INPUT_CONTEXT = "inco/handle/input-context";
|
|
14
|
+
export declare const SEP_OP_RESULT = "inco/handle/op-result";
|
|
15
|
+
export declare const SEP_ELIST_OP_RESULT = "inco/handle/elist-result";
|
|
16
|
+
export declare const BYTE_ELIST_ELEMENT_TYPE_INDEX = 29;
|
|
17
|
+
/**
|
|
18
|
+
* Map of ENCRYPTION type names to their integer identifiers (matching tfhe-rs `FheType`).
|
|
19
|
+
*
|
|
20
|
+
* Keys provide a semantic interpretation over the underlying integral type.
|
|
21
|
+
* For example, `ebool` interprets a `uint16` as a boolean, `ebytes64` interprets
|
|
22
|
+
* a `uint512` as a 64-byte array, etc.
|
|
23
|
+
*/
|
|
4
24
|
export declare const handleTypes: Readonly<{
|
|
5
25
|
ebool: 0;
|
|
6
26
|
euint4: 1;
|
|
@@ -15,11 +35,21 @@ export declare const handleTypes: Readonly<{
|
|
|
15
35
|
ebytes128: 10;
|
|
16
36
|
ebytes256: 11;
|
|
17
37
|
}>;
|
|
38
|
+
/** Schema that validates a string is one of the known ENCRYPTION type names (e.g. `"ebool"`, `"euint256"`). */
|
|
18
39
|
export declare const HandleTypeName: Schema.SchemaClass<"ebool" | "euint4" | "euint8" | "euint16" | "euint32" | "euint64" | "euint128" | "euint160" | "euint256" | "ebytes64" | "ebytes128" | "ebytes256", "ebool" | "euint4" | "euint8" | "euint16" | "euint32" | "euint64" | "euint128" | "euint160" | "euint256" | "ebytes64" | "ebytes128" | "ebytes256", never>;
|
|
40
|
+
/** A valid ENCRYPTION type name string (e.g. `"ebool"`, `"euint32"`, `"ebytes64"`). */
|
|
19
41
|
export type HandleTypeName = typeof HandleTypeName.Type;
|
|
42
|
+
/** The typeof {@link handleTypes} — mapping from ENCRYPTION type names to integer IDs. */
|
|
20
43
|
export type HandleTypes = typeof handleTypes;
|
|
44
|
+
/** Integer identifier of an ENCRYPTION type (0–11), corresponding to a {@link HandleTypeName}. */
|
|
21
45
|
export type FheType = HandleTypes[keyof HandleTypes];
|
|
46
|
+
/**
|
|
47
|
+
* Type guard that checks whether a number is a valid {@link FheType} identifier.
|
|
48
|
+
* @param value - The number to check.
|
|
49
|
+
* @returns `true` if `value` is a known ENCRYPTION type integer (0–11).
|
|
50
|
+
*/
|
|
22
51
|
export declare function isFheType(value: number): value is FheType;
|
|
52
|
+
/** Schema for the context required to compute a deterministic ENCRYPTION handle from a prehandle. */
|
|
23
53
|
export declare const InputContext: Schema.Struct<{
|
|
24
54
|
hostChainId: typeof Schema.BigInt;
|
|
25
55
|
aclAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
@@ -27,9 +57,43 @@ export declare const InputContext: Schema.Struct<{
|
|
|
27
57
|
contractAddress: Schema.TemplateLiteral<`0x${string}`>;
|
|
28
58
|
version: typeof Schema.Number;
|
|
29
59
|
}>;
|
|
60
|
+
/** Context fields (chain ID, ACL address, user/contract addresses, version) used to derive a deterministic handle. */
|
|
30
61
|
export type InputContext = typeof InputContext.Type;
|
|
62
|
+
/**
|
|
63
|
+
* A 32-byte hex string representing an ENCRYPTION ciphertext handle.
|
|
64
|
+
*
|
|
65
|
+
* Format: `keccak_hash[0:29] || index_handle || handle_type || handle_version`
|
|
66
|
+
*
|
|
67
|
+
* @see {@link https://github.com/Inco-fhevm/inco-monorepo/blob/636756f512ae16535bdcb9a43df76bf14fbd6ba7/pkg/fhe/handle.md Handle format spec}
|
|
68
|
+
*/
|
|
31
69
|
export type Handle = HexString;
|
|
70
|
+
/**
|
|
71
|
+
* Expected length of a handle in bytes.
|
|
72
|
+
* Handle format: 29 bytes hash + 1 byte index + 1 byte type + 1 byte version = 32 bytes
|
|
73
|
+
*/
|
|
74
|
+
export declare const HANDLE_LENGTH_BYTES = 32;
|
|
75
|
+
/**
|
|
76
|
+
* Validates handle integrity by checking format, length, and version.
|
|
77
|
+
* Matches the validation in Go's HandleFromBytes (pkg/fhe/handle.go).
|
|
78
|
+
* @param handle - The handle to validate
|
|
79
|
+
* @throws Error if handle is malformed (wrong format, length, or unsupported version)
|
|
80
|
+
*/
|
|
81
|
+
export declare function validateHandle(handle: HexString): void;
|
|
82
|
+
/**
|
|
83
|
+
* Extracts the {@link FheType} from byte 30 of a validated handle.
|
|
84
|
+
* @param handle - A 32-byte hex handle string.
|
|
85
|
+
* @returns The ENCRYPTION type identifier stored in the handle.
|
|
86
|
+
* @throws If the handle is malformed or contains an invalid ENCRYPTION type.
|
|
87
|
+
* @see {@link https://github.com/Inco-fhevm/inco-monorepo/blob/636756f512ae16535bdcb9a43df76bf14fbd6ba7/pkg/fhe/handle.md Handle format spec}
|
|
88
|
+
*/
|
|
32
89
|
export declare function getHandleType(handle: HexString): FheType;
|
|
90
|
+
/**
|
|
91
|
+
* Extracts the elist element {@link FheType} from byte 29 of a validated handle.
|
|
92
|
+
* @param handle - A 32-byte hex handle string for an elist.
|
|
93
|
+
* @returns The ENCRYPTION type identifier of the elist elements.
|
|
94
|
+
* @throws If the handle is malformed or contains an invalid ENCRYPTION type at byte 29.
|
|
95
|
+
*/
|
|
96
|
+
export declare function getEListElementType(handle: HexString): FheType;
|
|
33
97
|
/**
|
|
34
98
|
* Computes the prehandle hash for an input based on the ciphertext
|
|
35
99
|
*
|
|
@@ -55,4 +119,12 @@ export declare function computeHandle({ prehandle, context, }: {
|
|
|
55
119
|
prehandle: Uint8Array;
|
|
56
120
|
context: InputContext;
|
|
57
121
|
}): Buffer;
|
|
122
|
+
/**
|
|
123
|
+
* Computes the Keccak-256 hash of an ABI-packed {@link InputContext}.
|
|
124
|
+
*
|
|
125
|
+
* The context is packed as: `SEP_INPUT_CONTEXT || "evm/" || chainId || aclAddress || userAddress || contractAddress || version`.
|
|
126
|
+
*
|
|
127
|
+
* @param context - The input context to hash.
|
|
128
|
+
* @returns A 32-byte `Buffer` containing the Keccak-256 digest.
|
|
129
|
+
*/
|
|
58
130
|
export declare function hashInputContext(context: InputContext): Buffer;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from './binary.js';
|
|
2
2
|
export * from './chain.js';
|
|
3
|
-
export
|
|
3
|
+
export { HANDLE_LENGTH_BYTES, HANDLE_VERSION, HandleTypeName, InputContext, getHandleType, handleTypes, isFheType, validateHandle, type FheType, type Handle, type HandleTypes, } from './handle.js';
|
|
4
4
|
export * from './schema.js';
|
|
5
5
|
export * from './viem.js';
|
|
@@ -2,7 +2,7 @@ import { type Client } from '@connectrpc/connect';
|
|
|
2
2
|
import type { Address } from 'viem';
|
|
3
3
|
import type { SupportedChain } from '../chain.js';
|
|
4
4
|
import { KmsService } from '../generated/es/inco/kms/lite/v1/kms_service_pb.js';
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const TEST_DEFAULT_COVALIDATOR_SIGNER: Address;
|
|
6
6
|
export type KmsClient = Client<typeof KmsService> & {
|
|
7
7
|
signerAddress: Address;
|
|
8
8
|
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Address } from 'viem';
|
|
2
2
|
import type { DecryptionAttestation, EncryptedDecryptionAttestation } from '../attesteddecrypt/types.js';
|
|
3
|
+
import { type EListDecryptionAttestation, type EncryptedEListDecryptionAttestation } from '../elistattesteddecrypt/types.js';
|
|
3
4
|
import type { EncryptionScheme, SupportedFheType } from '../encryption/encryption.js';
|
|
4
|
-
import type { AttestedComputeRequest, AttestedDecryptRequest, AttestedRevealRequest } from '../generated/es/inco/kms/lite/v1/kms_service_pb.js';
|
|
5
|
-
import type
|
|
5
|
+
import type { AttestedComputeRequest, AttestedDecryptRequest, AttestedRevealRequest, EListAttestedDecryptRequest, EListAttestedRevealRequest } from '../generated/es/inco/kms/lite/v1/kms_service_pb.js';
|
|
6
|
+
import { type XwingKeypair } from '../lite/xwing.js';
|
|
6
7
|
import type { BackoffConfig } from '../retry.js';
|
|
7
8
|
import { type KmsClient } from './client.js';
|
|
9
|
+
import type { ViemClient } from '../viem.js';
|
|
8
10
|
export declare class KmsQuorumClient {
|
|
9
11
|
private readonly kmss;
|
|
10
12
|
private readonly threshold;
|
|
@@ -29,9 +31,11 @@ export declare class KmsQuorumClient {
|
|
|
29
31
|
* @throws {Error} If KMS clients array is empty or threshold is invalid
|
|
30
32
|
*/
|
|
31
33
|
static fromKmsClients(kmsClients: KmsClient[], threshold: number): KmsQuorumClient;
|
|
32
|
-
attestedDecrypt(request: AttestedDecryptRequest, backoffConfig?: Partial<BackoffConfig>, reencryptKeypair?: XwingKeypair): Promise<(DecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedDecryptionAttestation<EncryptionScheme, SupportedFheType>)[]>;
|
|
33
|
-
attestedCompute(request: AttestedComputeRequest, backoffConfig?: Partial<BackoffConfig>, reencryptKeypair?: XwingKeypair): Promise<DecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedDecryptionAttestation<EncryptionScheme, SupportedFheType>>;
|
|
34
|
-
attestedReveal(request: AttestedRevealRequest, backoffConfig?: Partial<BackoffConfig
|
|
34
|
+
attestedDecrypt(request: AttestedDecryptRequest, backoffConfig?: Partial<BackoffConfig>, reencryptKeypair?: XwingKeypair, executorAddress?: Address, client?: ViemClient): Promise<(DecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedDecryptionAttestation<EncryptionScheme, SupportedFheType>)[]>;
|
|
35
|
+
attestedCompute(request: AttestedComputeRequest, backoffConfig?: Partial<BackoffConfig>, reencryptKeypair?: XwingKeypair, executorAddress?: Address, client?: ViemClient): Promise<DecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedDecryptionAttestation<EncryptionScheme, SupportedFheType>>;
|
|
36
|
+
attestedReveal(request: AttestedRevealRequest, backoffConfig?: Partial<BackoffConfig>, executorAddress?: Address, client?: ViemClient): Promise<(DecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedDecryptionAttestation<EncryptionScheme, SupportedFheType>)[]>;
|
|
37
|
+
eListAttestedDecrypt(request: EListAttestedDecryptRequest, backoffConfig?: Partial<BackoffConfig>, reencryptKeypair?: XwingKeypair, executorAddress?: Address, client?: ViemClient): Promise<EListDecryptionAttestation<EncryptionScheme, SupportedFheType> | EncryptedEListDecryptionAttestation<EncryptionScheme, SupportedFheType>>;
|
|
38
|
+
eListAttestedReveal(request: EListAttestedRevealRequest, backoffConfig?: Partial<BackoffConfig>, executorAddress?: Address, client?: ViemClient): Promise<EListDecryptionAttestation<EncryptionScheme, SupportedFheType>>;
|
|
35
39
|
/**
|
|
36
40
|
* Generic method to execute a KMS operation across all clients with retry and threshold logic.
|
|
37
41
|
* Returns results with both the response and signer address.
|
|
@@ -48,12 +52,14 @@ export declare class KmsQuorumClient {
|
|
|
48
52
|
private buildPlaintextAttestation;
|
|
49
53
|
private buildAggregatedAttestations;
|
|
50
54
|
private buildAggregatedComputeAttestation;
|
|
51
|
-
private
|
|
52
|
-
private verifyComputeResponseConsistency;
|
|
55
|
+
private buildAggregatedEListAttestation;
|
|
53
56
|
/**
|
|
54
|
-
* Verifies
|
|
57
|
+
* Verifies proof hashes at two levels:
|
|
58
|
+
* 1. Aggregate: keccak256(concat(proofHashes)) must equal the attested commitmentProof
|
|
59
|
+
* 2. Per-element:
|
|
60
|
+
* - For plaintext (reveal): proofHash[i] = keccak256(value[i])
|
|
61
|
+
* - For reencryption (decrypt): proofHash[i] = keccak256(commitment[i] || plaintext[i])
|
|
62
|
+
* — requires reencryptKeypair to decrypt the ciphertext first.
|
|
55
63
|
*/
|
|
56
|
-
private
|
|
57
|
-
private verifyPlaintextConsistency;
|
|
58
|
-
private verifyCiphertextConsistency;
|
|
64
|
+
private verifyElementProofHashes;
|
|
59
65
|
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { Address } from 'viem';
|
|
2
|
+
import type { AttestedComputeRequest, AttestedComputeResponse, AttestedDecryptResponse, AttestedRevealResponse, EListAttestedDecryptResponse, EListAttestedRevealResponse, DecryptionAttestation as ProtoDecryptionAttestation } from '../generated/es/inco/kms/lite/v1/kms_service_pb.js';
|
|
3
|
+
import type { XwingKeypair } from '../lite/xwing.js';
|
|
4
|
+
/**
|
|
5
|
+
* Computes a canonical key for a single attestation.
|
|
6
|
+
* For plaintext/reencryption+keypair, the key is handle:hex(value).
|
|
7
|
+
* For reencryption without a keypair (XWing ciphertexts are non-deterministic),
|
|
8
|
+
* falls back to handle:op-type as a structural stand-in.
|
|
9
|
+
*/
|
|
10
|
+
export declare function computeAttestationKey(att: ProtoDecryptionAttestation, reencryptKeypair?: XwingKeypair): Promise<string>;
|
|
11
|
+
/**
|
|
12
|
+
* Validates that all responses in a winning bucket have the same attestation
|
|
13
|
+
* count and types as the quorum-elected reference (bucket[0]).
|
|
14
|
+
*/
|
|
15
|
+
export declare function validateDecryptResponseStructure<T extends AttestedDecryptResponse | AttestedRevealResponse>(bucket: Array<{
|
|
16
|
+
response: T;
|
|
17
|
+
signer: Address;
|
|
18
|
+
}>): void;
|
|
19
|
+
/**
|
|
20
|
+
* Validates that all responses in a winning bucket have a decryption
|
|
21
|
+
* attestation with the same case as the quorum-elected reference (bucket[0]),
|
|
22
|
+
* and that the case is consistent with the request's reencryptPubKey.
|
|
23
|
+
*/
|
|
24
|
+
export declare function validateComputeResponseStructure(bucket: Array<{
|
|
25
|
+
response: AttestedComputeResponse;
|
|
26
|
+
signer: Address;
|
|
27
|
+
}>, request?: AttestedComputeRequest): void;
|
|
28
|
+
/**
|
|
29
|
+
* Verifies decrypt/reveal response consistency using hash-bucket voting.
|
|
30
|
+
* Collects all N responses, buckets them by content key, and returns the
|
|
31
|
+
* winning bucket (the first one with >= threshold votes).
|
|
32
|
+
*
|
|
33
|
+
* This is robust against a faulty first-responding node: even if responses[0]
|
|
34
|
+
* disagrees, a quorum of agreeing responses will form a winning bucket.
|
|
35
|
+
*/
|
|
36
|
+
export declare function verifyDecryptResponseConsistency<T extends AttestedDecryptResponse | AttestedRevealResponse>(allResults: Array<{
|
|
37
|
+
response: T;
|
|
38
|
+
signer: Address;
|
|
39
|
+
}>, threshold: number, reencryptKeypair?: XwingKeypair): Promise<{
|
|
40
|
+
reference: T;
|
|
41
|
+
winningResults: Array<{
|
|
42
|
+
response: T;
|
|
43
|
+
signer: Address;
|
|
44
|
+
}>;
|
|
45
|
+
}>;
|
|
46
|
+
type EListResponse = EListAttestedDecryptResponse | EListAttestedRevealResponse;
|
|
47
|
+
/**
|
|
48
|
+
* Validates that all elist responses in a winning bucket have the same
|
|
49
|
+
* number of values and matching indices.
|
|
50
|
+
*/
|
|
51
|
+
export declare function validateEListResponseStructure<T extends EListResponse>(bucket: Array<{
|
|
52
|
+
response: T;
|
|
53
|
+
signer: Address;
|
|
54
|
+
}>): void;
|
|
55
|
+
/**
|
|
56
|
+
* Verifies elist response consistency using hash-bucket voting.
|
|
57
|
+
* Works for both EListAttestedDecryptResponse and EListAttestedRevealResponse.
|
|
58
|
+
*/
|
|
59
|
+
export declare function verifyEListResponseConsistency<T extends EListResponse>(allResults: Array<{
|
|
60
|
+
response: T;
|
|
61
|
+
signer: Address;
|
|
62
|
+
}>, threshold: number, reencryptKeypair?: XwingKeypair): Promise<{
|
|
63
|
+
reference: T;
|
|
64
|
+
winningResults: Array<{
|
|
65
|
+
response: T;
|
|
66
|
+
signer: Address;
|
|
67
|
+
}>;
|
|
68
|
+
}>;
|
|
69
|
+
/**
|
|
70
|
+
* Verifies compute response consistency using hash-bucket voting.
|
|
71
|
+
*/
|
|
72
|
+
export declare function verifyComputeResponseConsistency(allResults: Array<{
|
|
73
|
+
response: AttestedComputeResponse;
|
|
74
|
+
signer: Address;
|
|
75
|
+
}>, threshold: number, request?: AttestedComputeRequest, reencryptKeypair?: XwingKeypair): Promise<{
|
|
76
|
+
reference: AttestedComputeResponse;
|
|
77
|
+
winningResults: Array<{
|
|
78
|
+
response: AttestedComputeResponse;
|
|
79
|
+
signer: Address;
|
|
80
|
+
}>;
|
|
81
|
+
}>;
|
|
82
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Address } from 'viem';
|
|
2
|
+
import { ViemClient } from '../viem.js';
|
|
3
|
+
/**
|
|
4
|
+
* Verifies covalidator signatures for a plaintext DecryptionAttestation
|
|
5
|
+
* by calling `isValidDecryptionAttestation` on the IncoVerifier contract.
|
|
6
|
+
*
|
|
7
|
+
* This delegates all verification logic (EIP-712 digest computation,
|
|
8
|
+
* ECDSA recovery, signer authorization, threshold check) to the contract,
|
|
9
|
+
* ensuring exact parity with on-chain verification.
|
|
10
|
+
*
|
|
11
|
+
* @param handle - The handle hex string (bytes32)
|
|
12
|
+
* @param rawValueBytes - The raw plaintext value bytes (will be left-padded to 32 bytes)
|
|
13
|
+
* @param signatures - The covalidator ECDSA signatures to verify
|
|
14
|
+
* @param executorAddress - The Lightning contract address (executor)
|
|
15
|
+
* @param client - A viem client capable of reading contract state
|
|
16
|
+
* @throws If the contract returns false (insufficient valid signatures)
|
|
17
|
+
*/
|
|
18
|
+
export declare function verifyPlaintextAttestationSignatures(handle: string, rawValueBytes: Uint8Array, signatures: Uint8Array[], executorAddress: Address, client: ViemClient): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Verifies covalidator envelope signatures for reencryption attestations
|
|
21
|
+
* by calling `isValidReencryptionAttestation` on the IncoVerifier contract.
|
|
22
|
+
*
|
|
23
|
+
* Each covalidator signs over its own unique (userCiphertext, handle, encryptedSignature)
|
|
24
|
+
* tuple, so all three per-covalidator arrays must be aligned by index and sorted
|
|
25
|
+
* by signer address in ascending order.
|
|
26
|
+
*
|
|
27
|
+
* @param handle - The handle hex string (bytes32)
|
|
28
|
+
* @param userCiphertexts - Per-covalidator ciphertexts (sorted by signer address)
|
|
29
|
+
* @param encryptedSignatures - Per-covalidator encrypted inner signatures (sorted by signer address)
|
|
30
|
+
* @param envelopeSignatures - Per-covalidator envelope signatures (sorted by signer address)
|
|
31
|
+
* @param executorAddress - The Lightning contract address (executor)
|
|
32
|
+
* @param client - A viem client capable of reading contract state
|
|
33
|
+
* @throws If the contract returns false (insufficient valid signatures)
|
|
34
|
+
*/
|
|
35
|
+
export declare function verifyReencryptionAttestationSignatures(handle: string, userCiphertexts: Uint8Array[], encryptedSignatures: Uint8Array[], envelopeSignatures: Uint8Array[], executorAddress: Address, client: ViemClient): Promise<void>;
|