@lodestar/state-transition 1.14.0-dev.ae04197ccd → 1.14.0-dev.bd83b09212
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/lib/signatureSets/proposer.d.ts +2 -2
- package/lib/signatureSets/proposer.js +8 -9
- package/lib/signatureSets/proposer.js.map +1 -1
- package/lib/util/blindedBlock.d.ts +2 -11
- package/lib/util/blindedBlock.js +4 -45
- package/lib/util/blindedBlock.js.map +1 -1
- package/lib/util/blockRoot.d.ts +1 -0
- package/lib/util/blockRoot.js +8 -0
- package/lib/util/blockRoot.js.map +1 -1
- package/lib/util/index.d.ts +0 -1
- package/lib/util/index.js +0 -1
- package/lib/util/index.js.map +1 -1
- package/package.json +6 -6
- package/lib/util/blobs.d.ts +0 -5
- package/lib/util/blobs.js +0 -9
- package/lib/util/blobs.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { allForks } from "@lodestar/types";
|
|
1
|
+
import { allForks, phase0 } from "@lodestar/types";
|
|
2
2
|
import { ISignatureSet } from "../util/signatureSets.js";
|
|
3
3
|
import { CachedBeaconStateAllForks } from "../types.js";
|
|
4
4
|
export declare function verifyProposerSignature(state: CachedBeaconStateAllForks, signedBlock: allForks.FullOrBlindedSignedBeaconBlock): boolean;
|
|
5
5
|
export declare function getBlockProposerSignatureSet(state: CachedBeaconStateAllForks, signedBlock: allForks.FullOrBlindedSignedBeaconBlock): ISignatureSet;
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function getBlockHeaderProposerSignatureSet(state: CachedBeaconStateAllForks, signedBlockHeader: phase0.SignedBeaconBlockHeader): ISignatureSet;
|
|
7
7
|
//# sourceMappingURL=proposer.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DOMAIN_BEACON_PROPOSER
|
|
2
|
-
import { isBlindedBeaconBlock,
|
|
1
|
+
import { DOMAIN_BEACON_PROPOSER } from "@lodestar/params";
|
|
2
|
+
import { isBlindedBeaconBlock, ssz } from "@lodestar/types";
|
|
3
3
|
import { computeSigningRoot } from "../util/index.js";
|
|
4
4
|
import { SignatureSetType, verifySignatureSet } from "../util/signatureSets.js";
|
|
5
5
|
export function verifyProposerSignature(state, signedBlock) {
|
|
@@ -8,7 +8,7 @@ export function verifyProposerSignature(state, signedBlock) {
|
|
|
8
8
|
}
|
|
9
9
|
export function getBlockProposerSignatureSet(state, signedBlock) {
|
|
10
10
|
const { config, epochCtx } = state;
|
|
11
|
-
const domain =
|
|
11
|
+
const domain = config.getDomain(state.slot, DOMAIN_BEACON_PROPOSER, signedBlock.message.slot);
|
|
12
12
|
const blockType = isBlindedBeaconBlock(signedBlock.message)
|
|
13
13
|
? config.getBlindedForkTypes(signedBlock.message.slot).BeaconBlock
|
|
14
14
|
: config.getForkTypes(signedBlock.message.slot).BeaconBlock;
|
|
@@ -19,15 +19,14 @@ export function getBlockProposerSignatureSet(state, signedBlock) {
|
|
|
19
19
|
signature: signedBlock.signature,
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
export function
|
|
22
|
+
export function getBlockHeaderProposerSignatureSet(state, signedBlockHeader) {
|
|
23
23
|
const { config, epochCtx } = state;
|
|
24
|
-
const domain = config.getDomain(state.slot,
|
|
25
|
-
const blockType = isBlindedBlobSidecar(signedBlob.message) ? ssz.deneb.BlindedBlobSidecar : ssz.deneb.BlobSidecar;
|
|
24
|
+
const domain = config.getDomain(state.slot, DOMAIN_BEACON_PROPOSER, signedBlockHeader.message.slot);
|
|
26
25
|
return {
|
|
27
26
|
type: SignatureSetType.single,
|
|
28
|
-
pubkey: epochCtx.index2pubkey[
|
|
29
|
-
signingRoot: computeSigningRoot(
|
|
30
|
-
signature:
|
|
27
|
+
pubkey: epochCtx.index2pubkey[signedBlockHeader.message.proposerIndex],
|
|
28
|
+
signingRoot: computeSigningRoot(ssz.phase0.BeaconBlockHeader, signedBlockHeader.message, domain),
|
|
29
|
+
signature: signedBlockHeader.signature,
|
|
31
30
|
};
|
|
32
31
|
}
|
|
33
32
|
//# sourceMappingURL=proposer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proposer.js","sourceRoot":"","sources":["../../src/signatureSets/proposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"proposer.js","sourceRoot":"","sources":["../../src/signatureSets/proposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAW,oBAAoB,EAAU,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAgB,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,0BAA0B,CAAC;AAG7F,MAAM,UAAU,uBAAuB,CACrC,KAAgC,EAChC,WAAoD;IAEpD,MAAM,YAAY,GAAG,4BAA4B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACtE,OAAO,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAAgC,EAChC,WAAoD;IAEpD,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9F,MAAM,SAAS,GAAG,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC;QACzD,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW;QAClE,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;IAE9D,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,MAAM;QAC7B,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC;QAChE,WAAW,EAAE,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;QACvE,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,KAAgC,EAChC,iBAAiD;IAEjD,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpG,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,MAAM;QAC7B,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC;QACtE,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;QAChG,SAAS,EAAE,iBAAiB,CAAC,SAAS;KACvC,CAAC;AACJ,CAAC"}
|
|
@@ -1,24 +1,15 @@
|
|
|
1
1
|
import { ChainForkConfig } from "@lodestar/config";
|
|
2
2
|
import { allForks, phase0, Root, deneb } from "@lodestar/types";
|
|
3
|
-
type ParsedSignedBlindedBlockOrContents = {
|
|
4
|
-
signedBlindedBlock: allForks.SignedBlindedBeaconBlock;
|
|
5
|
-
signedBlindedBlobSidecars: deneb.SignedBlindedBlobSidecars | null;
|
|
6
|
-
};
|
|
7
3
|
export declare function blindedOrFullBlockHashTreeRoot(config: ChainForkConfig, blindedOrFull: allForks.FullOrBlindedBeaconBlock): Root;
|
|
8
|
-
export declare function blindedOrFullBlobSidecarHashTreeRoot(config: ChainForkConfig, blindedOrFull: allForks.FullOrBlindedBlobSidecar): Root;
|
|
9
4
|
export declare function blindedOrFullBlockToHeader(config: ChainForkConfig, blindedOrFull: allForks.FullOrBlindedBeaconBlock): phase0.BeaconBlockHeader;
|
|
10
5
|
export declare function beaconBlockToBlinded(config: ChainForkConfig, block: allForks.AllForksExecution["BeaconBlock"]): allForks.BlindedBeaconBlock;
|
|
11
|
-
export declare function blobSidecarsToBlinded(blobSidecars: deneb.BlobSidecars): deneb.BlindedBlobSidecars;
|
|
12
6
|
export declare function signedBlindedBlockToFull(signedBlindedBlock: allForks.SignedBlindedBeaconBlock, executionPayload: allForks.ExecutionPayload | null): allForks.SignedBeaconBlock;
|
|
13
|
-
export declare function signedBlindedBlobSidecarsToFull(signedBlindedBlobSidecars: deneb.SignedBlindedBlobSidecars, blobs: deneb.Blobs): deneb.SignedBlobSidecars;
|
|
14
|
-
export declare function parseSignedBlindedBlockOrContents(signedBlindedBlockOrContents: allForks.SignedBlindedBeaconBlockOrContents): ParsedSignedBlindedBlockOrContents;
|
|
15
7
|
export declare function parseExecutionPayloadAndBlobsBundle(data: allForks.ExecutionPayload | allForks.ExecutionPayloadAndBlobsBundle): {
|
|
16
8
|
executionPayload: allForks.ExecutionPayload;
|
|
17
9
|
blobsBundle: deneb.BlobsBundle | null;
|
|
18
10
|
};
|
|
19
|
-
export declare function reconstructFullBlockOrContents(
|
|
11
|
+
export declare function reconstructFullBlockOrContents(signedBlindedBlock: allForks.SignedBlindedBeaconBlock, { executionPayload, contents, }: {
|
|
20
12
|
executionPayload: allForks.ExecutionPayload | null;
|
|
21
|
-
|
|
13
|
+
contents: deneb.Contents | null;
|
|
22
14
|
}): allForks.SignedBeaconBlockOrContents;
|
|
23
|
-
export {};
|
|
24
15
|
//# sourceMappingURL=blindedBlock.d.ts.map
|
package/lib/util/blindedBlock.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ForkSeq } from "@lodestar/params";
|
|
2
|
-
import {
|
|
2
|
+
import { isBlindedBeaconBlock, isExecutionPayloadAndBlobsBundle } from "@lodestar/types";
|
|
3
3
|
import { executionPayloadToPayloadHeader } from "./execution.js";
|
|
4
4
|
export function blindedOrFullBlockHashTreeRoot(config, blindedOrFull) {
|
|
5
5
|
return isBlindedBeaconBlock(blindedOrFull)
|
|
@@ -8,13 +8,6 @@ export function blindedOrFullBlockHashTreeRoot(config, blindedOrFull) {
|
|
|
8
8
|
: // Full
|
|
9
9
|
config.getForkTypes(blindedOrFull.slot).BeaconBlock.hashTreeRoot(blindedOrFull);
|
|
10
10
|
}
|
|
11
|
-
export function blindedOrFullBlobSidecarHashTreeRoot(config, blindedOrFull) {
|
|
12
|
-
return isBlindedBlobSidecar(blindedOrFull)
|
|
13
|
-
? // Blinded
|
|
14
|
-
config.getBlobsForkTypes(blindedOrFull.slot).BlindedBlobSidecar.hashTreeRoot(blindedOrFull)
|
|
15
|
-
: // Full
|
|
16
|
-
config.getBlobsForkTypes(blindedOrFull.slot).BlobSidecar.hashTreeRoot(blindedOrFull);
|
|
17
|
-
}
|
|
18
11
|
export function blindedOrFullBlockToHeader(config, blindedOrFull) {
|
|
19
12
|
const bodyRoot = isBlindedBeaconBlock(blindedOrFull)
|
|
20
13
|
? // Blinded
|
|
@@ -35,12 +28,6 @@ export function beaconBlockToBlinded(config, block) {
|
|
|
35
28
|
const blindedBlock = { ...block, body: { ...block.body, executionPayloadHeader } };
|
|
36
29
|
return blindedBlock;
|
|
37
30
|
}
|
|
38
|
-
export function blobSidecarsToBlinded(blobSidecars) {
|
|
39
|
-
return blobSidecars.map((blobSidecar) => {
|
|
40
|
-
const blobRoot = ssz.deneb.Blob.hashTreeRoot(blobSidecar.blob);
|
|
41
|
-
return { ...blobSidecar, blobRoot };
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
31
|
export function signedBlindedBlockToFull(signedBlindedBlock, executionPayload) {
|
|
45
32
|
const signedBlock = {
|
|
46
33
|
...signedBlindedBlock,
|
|
@@ -59,27 +46,6 @@ export function signedBlindedBlockToFull(signedBlindedBlock, executionPayload) {
|
|
|
59
46
|
.executionPayloadHeader;
|
|
60
47
|
return signedBlock;
|
|
61
48
|
}
|
|
62
|
-
export function signedBlindedBlobSidecarsToFull(signedBlindedBlobSidecars, blobs) {
|
|
63
|
-
const signedBlobSidecars = signedBlindedBlobSidecars.map((signedBlindedBlobSidecar, index) => {
|
|
64
|
-
const signedBlobSidecar = {
|
|
65
|
-
...signedBlindedBlobSidecar,
|
|
66
|
-
message: { ...signedBlindedBlobSidecar.message, blob: blobs[index] },
|
|
67
|
-
};
|
|
68
|
-
delete signedBlobSidecar.message.blobRoot;
|
|
69
|
-
return signedBlobSidecar;
|
|
70
|
-
});
|
|
71
|
-
return signedBlobSidecars;
|
|
72
|
-
}
|
|
73
|
-
export function parseSignedBlindedBlockOrContents(signedBlindedBlockOrContents) {
|
|
74
|
-
if (isSignedBlindedBlockContents(signedBlindedBlockOrContents)) {
|
|
75
|
-
const signedBlindedBlock = signedBlindedBlockOrContents.signedBlindedBlock;
|
|
76
|
-
const signedBlindedBlobSidecars = signedBlindedBlockOrContents.signedBlindedBlobSidecars;
|
|
77
|
-
return { signedBlindedBlock, signedBlindedBlobSidecars };
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
return { signedBlindedBlock: signedBlindedBlockOrContents, signedBlindedBlobSidecars: null };
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
49
|
export function parseExecutionPayloadAndBlobsBundle(data) {
|
|
84
50
|
if (isExecutionPayloadAndBlobsBundle(data)) {
|
|
85
51
|
return data;
|
|
@@ -91,20 +57,13 @@ export function parseExecutionPayloadAndBlobsBundle(data) {
|
|
|
91
57
|
};
|
|
92
58
|
}
|
|
93
59
|
}
|
|
94
|
-
export function reconstructFullBlockOrContents(
|
|
60
|
+
export function reconstructFullBlockOrContents(signedBlindedBlock, { executionPayload, contents, }) {
|
|
95
61
|
const signedBlock = signedBlindedBlockToFull(signedBlindedBlock, executionPayload);
|
|
96
|
-
if (
|
|
62
|
+
if (contents !== null) {
|
|
97
63
|
if (executionPayload === null) {
|
|
98
64
|
throw Error("Missing locally produced executionPayload for deneb+ publishBlindedBlock");
|
|
99
65
|
}
|
|
100
|
-
|
|
101
|
-
throw Error("Missing blobs from the local execution cache");
|
|
102
|
-
}
|
|
103
|
-
if (blobs.length !== signedBlindedBlobSidecars.length) {
|
|
104
|
-
throw Error(`Length mismatch signedBlindedBlobSidecars=${signedBlindedBlobSidecars.length} blobs=${blobs.length}`);
|
|
105
|
-
}
|
|
106
|
-
const signedBlobSidecars = signedBlindedBlobSidecarsToFull(signedBlindedBlobSidecars, blobs);
|
|
107
|
-
return { signedBlock, signedBlobSidecars };
|
|
66
|
+
return { signedBlock, ...contents };
|
|
108
67
|
}
|
|
109
68
|
else {
|
|
110
69
|
return signedBlock;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blindedBlock.js","sourceRoot":"","sources":["../../src/util/blindedBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"blindedBlock.js","sourceRoot":"","sources":["../../src/util/blindedBlock.ts"],"names":[],"mappings":"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"}
|
package/lib/util/blockRoot.d.ts
CHANGED
|
@@ -17,4 +17,5 @@ export declare function getTemporaryBlockHeader(config: ChainForkConfig, block:
|
|
|
17
17
|
* Receives a BeaconBlock, and produces the corresponding BeaconBlockHeader.
|
|
18
18
|
*/
|
|
19
19
|
export declare function blockToHeader(config: ChainForkConfig, block: allForks.BeaconBlock): phase0.BeaconBlockHeader;
|
|
20
|
+
export declare function signedBlockToSignedHeader(config: ChainForkConfig, signedBlock: allForks.SignedBeaconBlock): phase0.SignedBeaconBlockHeader;
|
|
20
21
|
//# sourceMappingURL=blockRoot.d.ts.map
|
package/lib/util/blockRoot.js
CHANGED
|
@@ -44,4 +44,12 @@ export function blockToHeader(config, block) {
|
|
|
44
44
|
bodyRoot: config.getForkTypes(block.slot).BeaconBlockBody.hashTreeRoot(block.body),
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
+
export function signedBlockToSignedHeader(config, signedBlock) {
|
|
48
|
+
const message = blockToHeader(config, signedBlock.message);
|
|
49
|
+
const signature = signedBlock.signature;
|
|
50
|
+
return {
|
|
51
|
+
message,
|
|
52
|
+
signature,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
47
55
|
//# sourceMappingURL=blockRoot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockRoot.js","sourceRoot":"","sources":["../../src/util/blockRoot.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,yBAAyB,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA0B,EAAE,IAAU;IACvE,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,KAAK,CAAC,mDAAmD,KAAK,CAAC,IAAI,SAAS,IAAI,EAAE,CAAC,CAAC;KAC3F;IACD,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,yBAAyB,EAAE;QACjD,MAAM,KAAK,CAAC,mCAAmC,yBAAyB,cAAc,CAAC,CAAC;KACzF;IACD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAA0B,EAAE,KAAY;IACnE,OAAO,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC;AACD;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAuB,EACvB,KAA2B;IAE3B,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,yEAAyE;QACzE,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;KACnF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAuB,EAAE,KAA2B;IAChF,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;KACnF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"blockRoot.js","sourceRoot":"","sources":["../../src/util/blockRoot.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,yBAAyB,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA0B,EAAE,IAAU;IACvE,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,KAAK,CAAC,mDAAmD,KAAK,CAAC,IAAI,SAAS,IAAI,EAAE,CAAC,CAAC;KAC3F;IACD,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,yBAAyB,EAAE;QACjD,MAAM,KAAK,CAAC,mCAAmC,yBAAyB,cAAc,CAAC,CAAC;KACzF;IACD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAA0B,EAAE,KAAY;IACnE,OAAO,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC;AACD;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAuB,EACvB,KAA2B;IAE3B,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,yEAAyE;QACzE,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;KACnF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAuB,EAAE,KAA2B;IAChF,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;KACnF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAuB,EACvB,WAAuC;IAEvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;IACxC,OAAO;QACL,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC"}
|
package/lib/util/index.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ export * from "./attestation.js";
|
|
|
4
4
|
export * from "./attesterStatus.js";
|
|
5
5
|
export * from "./balance.js";
|
|
6
6
|
export * from "./blindedBlock.js";
|
|
7
|
-
export * from "./blobs.js";
|
|
8
7
|
export * from "./capella.js";
|
|
9
8
|
export * from "./execution.js";
|
|
10
9
|
export * from "./blockRoot.js";
|
package/lib/util/index.js
CHANGED
|
@@ -4,7 +4,6 @@ export * from "./attestation.js";
|
|
|
4
4
|
export * from "./attesterStatus.js";
|
|
5
5
|
export * from "./balance.js";
|
|
6
6
|
export * from "./blindedBlock.js";
|
|
7
|
-
export * from "./blobs.js";
|
|
8
7
|
export * from "./capella.js";
|
|
9
8
|
export * from "./execution.js";
|
|
10
9
|
export * from "./blockRoot.js";
|
package/lib/util/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/ChainSafe/lodestar/issues"
|
|
13
13
|
},
|
|
14
|
-
"version": "1.14.0-dev.
|
|
14
|
+
"version": "1.14.0-dev.bd83b09212",
|
|
15
15
|
"type": "module",
|
|
16
16
|
"exports": {
|
|
17
17
|
".": {
|
|
@@ -63,10 +63,10 @@
|
|
|
63
63
|
"@chainsafe/persistent-merkle-tree": "^0.6.1",
|
|
64
64
|
"@chainsafe/persistent-ts": "^0.19.1",
|
|
65
65
|
"@chainsafe/ssz": "^0.14.0",
|
|
66
|
-
"@lodestar/config": "1.14.0-dev.
|
|
67
|
-
"@lodestar/params": "1.14.0-dev.
|
|
68
|
-
"@lodestar/types": "1.14.0-dev.
|
|
69
|
-
"@lodestar/utils": "1.14.0-dev.
|
|
66
|
+
"@lodestar/config": "1.14.0-dev.bd83b09212",
|
|
67
|
+
"@lodestar/params": "1.14.0-dev.bd83b09212",
|
|
68
|
+
"@lodestar/types": "1.14.0-dev.bd83b09212",
|
|
69
|
+
"@lodestar/utils": "1.14.0-dev.bd83b09212",
|
|
70
70
|
"bigint-buffer": "^1.1.5",
|
|
71
71
|
"buffer-xor": "^2.0.2"
|
|
72
72
|
},
|
|
@@ -82,5 +82,5 @@
|
|
|
82
82
|
"beacon",
|
|
83
83
|
"blockchain"
|
|
84
84
|
],
|
|
85
|
-
"gitHead": "
|
|
85
|
+
"gitHead": "f60d89222ee1cc283e505195646b25ab93be0719"
|
|
86
86
|
}
|
package/lib/util/blobs.d.ts
DELETED
package/lib/util/blobs.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import SHA256 from "@chainsafe/as-sha256";
|
|
2
|
-
import { VERSIONED_HASH_VERSION_KZG } from "@lodestar/params";
|
|
3
|
-
export function kzgCommitmentToVersionedHash(kzgCommitment) {
|
|
4
|
-
const hash = SHA256.digest(kzgCommitment);
|
|
5
|
-
// Equivalent to `VERSIONED_HASH_VERSION_KZG + hash(kzg_commitment)[1:]`
|
|
6
|
-
hash[0] = VERSIONED_HASH_VERSION_KZG;
|
|
7
|
-
return hash;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=blobs.js.map
|
package/lib/util/blobs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blobs.js","sourceRoot":"","sources":["../../src/util/blobs.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAC,0BAA0B,EAAC,MAAM,kBAAkB,CAAC;AAK5D,MAAM,UAAU,4BAA4B,CAAC,aAAkC;IAC7E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC1C,wEAAwE;IACxE,IAAI,CAAC,CAAC,CAAC,GAAG,0BAA0B,CAAC;IACrC,OAAO,IAAI,CAAC;AACd,CAAC"}
|