@obolnetwork/obol-sdk 2.12.0 → 2.12.2
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 +6 -4
- package/dist/browser/src/index.js +374 -170
- package/dist/browser/src/index.js.map +1 -1
- package/dist/cjs/src/blsUtils.js +19 -2
- package/dist/cjs/src/blsUtils.js.map +1 -1
- package/dist/cjs/src/index.js +382 -170
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/verification/clusterLockValidationWorker.js +14694 -0
- package/dist/cjs/src/verification/clusterLockValidationWorker.js.map +1 -0
- package/dist/cjs/src/verification/lockWorker.js +13 -1
- package/dist/cjs/src/verification/lockWorker.js.map +1 -1
- package/dist/cjs/src/verification/parallelPool.js +227 -35
- package/dist/cjs/src/verification/parallelPool.js.map +1 -1
- package/dist/esm/src/blsUtils.js +7 -3
- package/dist/esm/src/{chunk-267HIPEB.js → chunk-LOSYOJC3.js} +16 -1
- package/dist/esm/src/{chunk-267HIPEB.js.map → chunk-LOSYOJC3.js.map} +1 -1
- package/dist/esm/src/chunk-T74RX3N2.js +10240 -0
- package/dist/esm/src/chunk-T74RX3N2.js.map +1 -0
- package/dist/esm/src/chunk-YSXFCSVK.js +389 -0
- package/dist/esm/src/chunk-YSXFCSVK.js.map +1 -0
- package/dist/esm/src/index.js +234 -10339
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/verification/clusterLockValidationWorker.js +18 -0
- package/dist/esm/src/verification/clusterLockValidationWorker.js.map +1 -0
- package/dist/esm/src/verification/lockWorker.js +7 -2
- package/dist/esm/src/verification/lockWorker.js.map +1 -1
- package/dist/esm/src/verification/parallelPool.js +8 -2
- package/dist/types/src/base.d.ts +5 -3
- package/dist/types/src/blsUtils.d.ts +3 -0
- package/dist/types/src/errors.d.ts +21 -0
- package/dist/types/src/index.d.ts +5 -6
- package/dist/types/src/services.d.ts +4 -1
- package/dist/types/src/types.d.ts +6 -0
- package/dist/types/src/verification/clusterLockValidationWorker.d.ts +1 -0
- package/dist/types/src/verification/common.d.ts +17 -7
- package/dist/types/src/verification/lockWorker.d.ts +7 -2
- package/dist/types/src/verification/parallelPool.d.ts +9 -0
- package/dist/types/test/client/baseUrl.spec.d.ts +1 -0
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/esm/src/chunk-OYZHSNKR.js +0 -186
- package/dist/esm/src/chunk-OYZHSNKR.js.map +0 -1
|
@@ -3712,6 +3712,12 @@ function mapToG2(scalars) {
|
|
|
3712
3712
|
// src/blsUtils.ts
|
|
3713
3713
|
var { longSignatures: ls } = bls12_381;
|
|
3714
3714
|
var ETH2_DST = "BLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_";
|
|
3715
|
+
function blsAggregatePublicKeys(pubkeys) {
|
|
3716
|
+
if (pubkeys.length === 0) {
|
|
3717
|
+
throw new Error("cannot aggregate empty pubkey set");
|
|
3718
|
+
}
|
|
3719
|
+
return ls.aggregatePublicKeys(pubkeys).toBytes();
|
|
3720
|
+
}
|
|
3715
3721
|
function blsVerifyMultiple(pubkeys, messages, signature) {
|
|
3716
3722
|
try {
|
|
3717
3723
|
if (pubkeys.length !== messages.length) return false;
|
|
@@ -3724,6 +3730,9 @@ function blsVerifyMultiple(pubkeys, messages, signature) {
|
|
|
3724
3730
|
return false;
|
|
3725
3731
|
}
|
|
3726
3732
|
}
|
|
3733
|
+
function blsAggregateSignatures(signatures) {
|
|
3734
|
+
return ls.Signature.toBytes(ls.aggregateSignatures(signatures));
|
|
3735
|
+
}
|
|
3727
3736
|
function lagrangeCoeffAtZero(shareIndex, indices) {
|
|
3728
3737
|
const { Fr } = bls12_381.fields;
|
|
3729
3738
|
let num = BigInt(1);
|
|
@@ -3799,12 +3808,15 @@ function verifyBatchChunk(input) {
|
|
|
3799
3808
|
return blsVerifyMultiple(
|
|
3800
3809
|
input.pubkeys,
|
|
3801
3810
|
input.messages,
|
|
3802
|
-
input.
|
|
3811
|
+
blsAggregateSignatures(input.signatures)
|
|
3803
3812
|
);
|
|
3804
3813
|
}
|
|
3805
3814
|
function dispatch(input) {
|
|
3806
3815
|
if (input.mode === "shareBinding") return verifyShareBindingChunk(input);
|
|
3807
3816
|
if (input.mode === "verifyBatch") return verifyBatchChunk(input);
|
|
3817
|
+
if (input.mode === "aggregatePubkeys") {
|
|
3818
|
+
return blsAggregatePublicKeys(input.pubkeys);
|
|
3819
|
+
}
|
|
3808
3820
|
return false;
|
|
3809
3821
|
}
|
|
3810
3822
|
if (import_node_worker_threads.parentPort) {
|