@lodestar/beacon-node 1.40.0-dev.1cab20c166 → 1.40.0-dev.2ae7375100

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.
Files changed (253) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +7 -7
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/api/impl/lodestar/index.d.ts.map +1 -1
  5. package/lib/api/impl/lodestar/index.js +10 -0
  6. package/lib/api/impl/lodestar/index.js.map +1 -1
  7. package/lib/chain/ColumnReconstructionTracker.d.ts +2 -0
  8. package/lib/chain/ColumnReconstructionTracker.d.ts.map +1 -1
  9. package/lib/chain/ColumnReconstructionTracker.js +7 -3
  10. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  11. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  12. package/lib/chain/blocks/verifyBlock.js +1 -1
  13. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  14. package/lib/chain/blocks/verifyBlocksSignatures.d.ts +2 -2
  15. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
  16. package/lib/chain/blocks/verifyBlocksSignatures.js +2 -2
  17. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  18. package/lib/chain/bls/multithread/index.d.ts +3 -1
  19. package/lib/chain/bls/multithread/index.d.ts.map +1 -1
  20. package/lib/chain/bls/multithread/index.js +5 -3
  21. package/lib/chain/bls/multithread/index.js.map +1 -1
  22. package/lib/chain/bls/multithread/jobItem.d.ts +2 -2
  23. package/lib/chain/bls/multithread/jobItem.d.ts.map +1 -1
  24. package/lib/chain/bls/multithread/jobItem.js +2 -2
  25. package/lib/chain/bls/multithread/jobItem.js.map +1 -1
  26. package/lib/chain/bls/singleThread.d.ts +4 -2
  27. package/lib/chain/bls/singleThread.d.ts.map +1 -1
  28. package/lib/chain/bls/singleThread.js +4 -2
  29. package/lib/chain/bls/singleThread.js.map +1 -1
  30. package/lib/chain/bls/utils.d.ts +2 -2
  31. package/lib/chain/bls/utils.d.ts.map +1 -1
  32. package/lib/chain/bls/utils.js +9 -6
  33. package/lib/chain/bls/utils.js.map +1 -1
  34. package/lib/chain/chain.d.ts +7 -2
  35. package/lib/chain/chain.d.ts.map +1 -1
  36. package/lib/chain/chain.js +27 -9
  37. package/lib/chain/chain.js.map +1 -1
  38. package/lib/chain/errors/attestationError.d.ts +14 -1
  39. package/lib/chain/errors/attestationError.d.ts.map +1 -1
  40. package/lib/chain/errors/attestationError.js +8 -0
  41. package/lib/chain/errors/attestationError.js.map +1 -1
  42. package/lib/chain/errors/executionPayloadBid.d.ts +48 -0
  43. package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -0
  44. package/lib/chain/errors/executionPayloadBid.js +15 -0
  45. package/lib/chain/errors/executionPayloadBid.js.map +1 -0
  46. package/lib/chain/errors/executionPayloadEnvelope.d.ts +48 -0
  47. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -0
  48. package/lib/chain/errors/executionPayloadEnvelope.js +16 -0
  49. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -0
  50. package/lib/chain/errors/index.d.ts +3 -0
  51. package/lib/chain/errors/index.d.ts.map +1 -1
  52. package/lib/chain/errors/index.js +3 -0
  53. package/lib/chain/errors/index.js.map +1 -1
  54. package/lib/chain/errors/payloadAttestation.d.ts +34 -0
  55. package/lib/chain/errors/payloadAttestation.d.ts.map +1 -0
  56. package/lib/chain/errors/payloadAttestation.js +13 -0
  57. package/lib/chain/errors/payloadAttestation.js.map +1 -0
  58. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  59. package/lib/chain/forkChoice/index.js +18 -0
  60. package/lib/chain/forkChoice/index.js.map +1 -1
  61. package/lib/chain/interface.d.ts +7 -2
  62. package/lib/chain/interface.d.ts.map +1 -1
  63. package/lib/chain/interface.js.map +1 -1
  64. package/lib/chain/opPools/executionPayloadBidPool.d.ts +21 -0
  65. package/lib/chain/opPools/executionPayloadBidPool.d.ts.map +1 -0
  66. package/lib/chain/opPools/executionPayloadBidPool.js +57 -0
  67. package/lib/chain/opPools/executionPayloadBidPool.js.map +1 -0
  68. package/lib/chain/opPools/index.d.ts +2 -0
  69. package/lib/chain/opPools/index.d.ts.map +1 -1
  70. package/lib/chain/opPools/index.js +2 -0
  71. package/lib/chain/opPools/index.js.map +1 -1
  72. package/lib/chain/opPools/payloadAttestationPool.d.ts +24 -0
  73. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -0
  74. package/lib/chain/opPools/payloadAttestationPool.js +109 -0
  75. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -0
  76. package/lib/chain/regen/interface.d.ts +1 -0
  77. package/lib/chain/regen/interface.d.ts.map +1 -1
  78. package/lib/chain/regen/interface.js +1 -0
  79. package/lib/chain/regen/interface.js.map +1 -1
  80. package/lib/chain/regen/regen.d.ts +2 -0
  81. package/lib/chain/regen/regen.d.ts.map +1 -1
  82. package/lib/chain/regen/regen.js +4 -1
  83. package/lib/chain/regen/regen.js.map +1 -1
  84. package/lib/chain/seenCache/index.d.ts +3 -1
  85. package/lib/chain/seenCache/index.d.ts.map +1 -1
  86. package/lib/chain/seenCache/index.js +3 -1
  87. package/lib/chain/seenCache/index.js.map +1 -1
  88. package/lib/chain/seenCache/seenAttesters.d.ts +5 -0
  89. package/lib/chain/seenCache/seenAttesters.d.ts.map +1 -1
  90. package/lib/chain/seenCache/seenAttesters.js +5 -0
  91. package/lib/chain/seenCache/seenAttesters.js.map +1 -1
  92. package/lib/chain/seenCache/seenExecutionPayloadBids.d.ts +12 -0
  93. package/lib/chain/seenCache/seenExecutionPayloadBids.d.ts.map +1 -0
  94. package/lib/chain/seenCache/seenExecutionPayloadBids.js +30 -0
  95. package/lib/chain/seenCache/seenExecutionPayloadBids.js.map +1 -0
  96. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts +15 -0
  97. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts.map +1 -0
  98. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js +28 -0
  99. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js.map +1 -0
  100. package/lib/chain/seenCache/seenGossipBlockInput.js +1 -1
  101. package/lib/chain/validation/aggregateAndProof.js +35 -14
  102. package/lib/chain/validation/aggregateAndProof.js.map +1 -1
  103. package/lib/chain/validation/attestation.d.ts +2 -2
  104. package/lib/chain/validation/attestation.d.ts.map +1 -1
  105. package/lib/chain/validation/attestation.js +27 -8
  106. package/lib/chain/validation/attestation.js.map +1 -1
  107. package/lib/chain/validation/attesterSlashing.d.ts.map +1 -1
  108. package/lib/chain/validation/attesterSlashing.js +1 -1
  109. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  110. package/lib/chain/validation/blobSidecar.d.ts.map +1 -1
  111. package/lib/chain/validation/blobSidecar.js +2 -2
  112. package/lib/chain/validation/blobSidecar.js.map +1 -1
  113. package/lib/chain/validation/block.d.ts.map +1 -1
  114. package/lib/chain/validation/block.js +5 -4
  115. package/lib/chain/validation/block.js.map +1 -1
  116. package/lib/chain/validation/dataColumnSidecar.d.ts.map +1 -1
  117. package/lib/chain/validation/dataColumnSidecar.js +2 -2
  118. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  119. package/lib/chain/validation/executionPayloadBid.d.ts +5 -0
  120. package/lib/chain/validation/executionPayloadBid.d.ts.map +1 -0
  121. package/lib/chain/validation/executionPayloadBid.js +104 -0
  122. package/lib/chain/validation/executionPayloadBid.js.map +1 -0
  123. package/lib/chain/validation/executionPayloadEnvelope.d.ts +5 -0
  124. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -0
  125. package/lib/chain/validation/executionPayloadEnvelope.js +89 -0
  126. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -0
  127. package/lib/chain/validation/payloadAttestationMessage.d.ts +9 -0
  128. package/lib/chain/validation/payloadAttestationMessage.d.ts.map +1 -0
  129. package/lib/chain/validation/payloadAttestationMessage.js +72 -0
  130. package/lib/chain/validation/payloadAttestationMessage.js.map +1 -0
  131. package/lib/chain/validation/proposerSlashing.js +1 -1
  132. package/lib/chain/validation/proposerSlashing.js.map +1 -1
  133. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -3
  134. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +1 -1
  135. package/lib/chain/validation/signatureSets/aggregateAndProof.js +8 -3
  136. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  137. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts +2 -2
  138. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +1 -1
  139. package/lib/chain/validation/signatureSets/contributionAndProof.js +3 -3
  140. package/lib/chain/validation/signatureSets/contributionAndProof.js.map +1 -1
  141. package/lib/chain/validation/signatureSets/selectionProof.d.ts +2 -3
  142. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +1 -1
  143. package/lib/chain/validation/signatureSets/selectionProof.js +8 -3
  144. package/lib/chain/validation/signatureSets/selectionProof.js.map +1 -1
  145. package/lib/chain/validation/signatureSets/syncCommittee.d.ts +2 -2
  146. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +1 -1
  147. package/lib/chain/validation/signatureSets/syncCommittee.js +3 -3
  148. package/lib/chain/validation/signatureSets/syncCommittee.js.map +1 -1
  149. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts +1 -2
  150. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +1 -1
  151. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js +2 -2
  152. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js.map +1 -1
  153. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts +2 -2
  154. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +1 -1
  155. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js +3 -3
  156. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js.map +1 -1
  157. package/lib/chain/validation/syncCommittee.js +1 -1
  158. package/lib/chain/validation/syncCommittee.js.map +1 -1
  159. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +1 -1
  160. package/lib/chain/validation/syncCommitteeContributionAndProof.js +3 -5
  161. package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
  162. package/lib/chain/validation/voluntaryExit.js +1 -1
  163. package/lib/chain/validation/voluntaryExit.js.map +1 -1
  164. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  165. package/lib/chain/validatorMonitor.js +7 -4
  166. package/lib/chain/validatorMonitor.js.map +1 -1
  167. package/lib/metrics/metrics/lodestar.d.ts +20 -0
  168. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  169. package/lib/metrics/metrics/lodestar.js +40 -0
  170. package/lib/metrics/metrics/lodestar.js.map +1 -1
  171. package/lib/network/gossip/interface.d.ts +20 -2
  172. package/lib/network/gossip/interface.d.ts.map +1 -1
  173. package/lib/network/gossip/interface.js +3 -0
  174. package/lib/network/gossip/interface.js.map +1 -1
  175. package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
  176. package/lib/network/gossip/scoringParameters.js +38 -2
  177. package/lib/network/gossip/scoringParameters.js.map +1 -1
  178. package/lib/network/gossip/topic.d.ts +77 -1
  179. package/lib/network/gossip/topic.d.ts.map +1 -1
  180. package/lib/network/gossip/topic.js +20 -0
  181. package/lib/network/gossip/topic.js.map +1 -1
  182. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  183. package/lib/network/processor/gossipHandlers.js +34 -0
  184. package/lib/network/processor/gossipHandlers.js.map +1 -1
  185. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  186. package/lib/network/processor/gossipQueues/index.js +16 -0
  187. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  188. package/lib/network/processor/index.d.ts.map +1 -1
  189. package/lib/network/processor/index.js +3 -0
  190. package/lib/network/processor/index.js.map +1 -1
  191. package/lib/sync/backfill/backfill.js +2 -2
  192. package/lib/sync/backfill/backfill.js.map +1 -1
  193. package/lib/sync/backfill/verify.d.ts +1 -2
  194. package/lib/sync/backfill/verify.d.ts.map +1 -1
  195. package/lib/sync/backfill/verify.js +2 -2
  196. package/lib/sync/backfill/verify.js.map +1 -1
  197. package/package.json +15 -15
  198. package/src/api/impl/beacon/blocks/index.ts +9 -7
  199. package/src/api/impl/lodestar/index.ts +12 -0
  200. package/src/chain/ColumnReconstructionTracker.ts +8 -4
  201. package/src/chain/blocks/verifyBlock.ts +0 -1
  202. package/src/chain/blocks/verifyBlocksSignatures.ts +4 -12
  203. package/src/chain/bls/multithread/index.ts +7 -4
  204. package/src/chain/bls/multithread/jobItem.ts +7 -3
  205. package/src/chain/bls/singleThread.ts +5 -3
  206. package/src/chain/bls/utils.ts +15 -7
  207. package/src/chain/chain.ts +30 -7
  208. package/src/chain/errors/attestationError.ts +11 -1
  209. package/src/chain/errors/executionPayloadBid.ts +35 -0
  210. package/src/chain/errors/executionPayloadEnvelope.ts +34 -0
  211. package/src/chain/errors/index.ts +3 -0
  212. package/src/chain/errors/payloadAttestation.ts +25 -0
  213. package/src/chain/forkChoice/index.ts +19 -0
  214. package/src/chain/interface.ts +16 -1
  215. package/src/chain/opPools/executionPayloadBidPool.ts +77 -0
  216. package/src/chain/opPools/index.ts +2 -0
  217. package/src/chain/opPools/payloadAttestationPool.ts +157 -0
  218. package/src/chain/regen/interface.ts +1 -0
  219. package/src/chain/regen/regen.ts +6 -1
  220. package/src/chain/seenCache/index.ts +3 -1
  221. package/src/chain/seenCache/seenAttesters.ts +5 -0
  222. package/src/chain/seenCache/seenExecutionPayloadBids.ts +35 -0
  223. package/src/chain/seenCache/seenExecutionPayloadEnvelope.ts +34 -0
  224. package/src/chain/seenCache/seenGossipBlockInput.ts +1 -1
  225. package/src/chain/validation/aggregateAndProof.ts +36 -14
  226. package/src/chain/validation/attestation.ts +33 -16
  227. package/src/chain/validation/attesterSlashing.ts +1 -6
  228. package/src/chain/validation/blobSidecar.ts +1 -6
  229. package/src/chain/validation/block.ts +5 -4
  230. package/src/chain/validation/dataColumnSidecar.ts +1 -6
  231. package/src/chain/validation/executionPayloadBid.ts +141 -0
  232. package/src/chain/validation/executionPayloadEnvelope.ts +122 -0
  233. package/src/chain/validation/payloadAttestationMessage.ts +109 -0
  234. package/src/chain/validation/proposerSlashing.ts +1 -6
  235. package/src/chain/validation/signatureSets/aggregateAndProof.ts +9 -14
  236. package/src/chain/validation/signatureSets/contributionAndProof.ts +2 -4
  237. package/src/chain/validation/signatureSets/selectionProof.ts +9 -9
  238. package/src/chain/validation/signatureSets/syncCommittee.ts +2 -4
  239. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +2 -3
  240. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +2 -4
  241. package/src/chain/validation/syncCommittee.ts +1 -1
  242. package/src/chain/validation/syncCommitteeContributionAndProof.ts +3 -5
  243. package/src/chain/validation/voluntaryExit.ts +1 -1
  244. package/src/chain/validatorMonitor.ts +10 -5
  245. package/src/metrics/metrics/lodestar.ts +40 -0
  246. package/src/network/gossip/interface.ts +17 -0
  247. package/src/network/gossip/scoringParameters.ts +44 -2
  248. package/src/network/gossip/topic.ts +21 -0
  249. package/src/network/processor/gossipHandlers.ts +48 -0
  250. package/src/network/processor/gossipQueues/index.ts +16 -0
  251. package/src/network/processor/index.ts +3 -0
  252. package/src/sync/backfill/backfill.ts +2 -2
  253. package/src/sync/backfill/verify.ts +2 -3
@@ -61,6 +61,22 @@ const linearGossipQueueOpts = {
61
61
  type: QueueType.FIFO,
62
62
  dropOpts: { type: DropType.count, count: 1 },
63
63
  },
64
+ [GossipType.execution_payload]: {
65
+ maxLength: 1024,
66
+ type: QueueType.FIFO,
67
+ dropOpts: { type: DropType.count, count: 1 },
68
+ },
69
+ [GossipType.payload_attestation_message]: {
70
+ maxLength: 1024,
71
+ type: QueueType.FIFO,
72
+ dropOpts: { type: DropType.count, count: 1 },
73
+ },
74
+ // TODO GLOAS: It is hard to predict how many bids are there. Put 1024 for max length for now
75
+ [GossipType.execution_payload_bid]: {
76
+ maxLength: 1024,
77
+ type: QueueType.FIFO,
78
+ dropOpts: { type: DropType.count, count: 1 },
79
+ },
64
80
  };
65
81
  const indexedGossipQueueOpts = {
66
82
  [GossipType.beacon_attestation]: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/network/processor/gossipQueues/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/network/processor/gossipQueues/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,9 @@ const executeGossipWorkOrderObj = {
43
43
  [GossipType.sync_committee]: {},
44
44
  [GossipType.light_client_finality_update]: {},
45
45
  [GossipType.light_client_optimistic_update]: {},
46
+ [GossipType.execution_payload]: { bypassQueue: true },
47
+ [GossipType.payload_attestation_message]: {},
48
+ [GossipType.execution_payload_bid]: {},
46
49
  };
47
50
  const executeGossipWorkOrder = Object.keys(executeGossipWorkOrderObj);
48
51
  // TODO: Arbitrary constant, check metrics
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
@@ -548,7 +548,7 @@ export class BackfillSync extends EventEmitter {
548
548
  // GENESIS_SLOT doesn't has valid signature
549
549
  if (anchorBlock.message.slot === GENESIS_SLOT)
550
550
  return;
551
- await verifyBlockProposerSignature(this.chain.config, this.chain.index2pubkey, this.chain.bls, [anchorBlock]);
551
+ await verifyBlockProposerSignature(this.chain.config, this.chain.bls, [anchorBlock]);
552
552
  // We can write to the disk if this is ahead of prevFinalizedCheckpointBlock otherwise
553
553
  // we will need to go make checks on the top of sync loop before writing as it might
554
554
  // override prevFinalizedCheckpointBlock
@@ -599,7 +599,7 @@ export class BackfillSync extends EventEmitter {
599
599
  const { nextAnchor, verifiedBlocks, error } = verifyBlockSequence(this.config, blocks, anchorParentRoot);
600
600
  // If any of the block's proposer signature fail, we can't trust this peer at all
601
601
  if (verifiedBlocks.length > 0) {
602
- await verifyBlockProposerSignature(this.chain.config, this.chain.index2pubkey, this.chain.bls, verifiedBlocks);
602
+ await verifyBlockProposerSignature(this.chain.config, this.chain.bls, verifiedBlocks);
603
603
  // This is bad, like super bad. Abort the backfill
604
604
  if (!nextAnchor)
605
605
  throw new BackfillSyncError({
@@ -1 +1 @@
1
- {"version":3,"file":"backfill.js","sourceRoot":"","sources":["../../../src/sync/backfill/backfill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backfill.js","sourceRoot":"","sources":["../../../src/sync/backfill/backfill.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { BeaconConfig } from "@lodestar/config";
2
- import { Index2PubkeyCache } from "@lodestar/state-transition";
3
2
  import { Root, SignedBeaconBlock, Slot } from "@lodestar/types";
4
3
  import { IBlsVerifier } from "../../chain/bls/index.js";
5
4
  import { BackfillSyncErrorCode } from "./errors.js";
@@ -15,5 +14,5 @@ export declare function verifyBlockSequence(config: BeaconConfig, blocks: Signed
15
14
  verifiedBlocks: SignedBeaconBlock[];
16
15
  error?: BackfillSyncErrorCode.NOT_LINEAR;
17
16
  };
18
- export declare function verifyBlockProposerSignature(config: BeaconConfig, index2pubkey: Index2PubkeyCache, bls: IBlsVerifier, blocks: SignedBeaconBlock[]): Promise<void>;
17
+ export declare function verifyBlockProposerSignature(config: BeaconConfig, bls: IBlsVerifier, blocks: SignedBeaconBlock[]): Promise<void>;
19
18
  //# sourceMappingURL=verify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/sync/backfill/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAgB,iBAAiB,EAA+B,MAAM,4BAA4B,CAAC;AAC1G,OAAO,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAoB,qBAAqB,EAAC,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAC,CAAC;AAE7E,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,UAAU,EAAE,IAAI,GACf;IACD,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,cAAc,EAAE,iBAAiB,EAAE,CAAC;IACpC,KAAK,CAAC,EAAE,qBAAqB,CAAC,UAAU,CAAC;CAC1C,CAkBA;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,iBAAiB,EAC/B,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,iBAAiB,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CAWf"}
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/sync/backfill/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAoB,qBAAqB,EAAC,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAC,CAAC;AAE7E,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,UAAU,EAAE,IAAI,GACf;IACD,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,cAAc,EAAE,iBAAiB,EAAE,CAAC;IACpC,KAAK,CAAC,EAAE,qBAAqB,CAAC,UAAU,CAAC;CAC1C,CAkBA;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,iBAAiB,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CAWf"}
@@ -20,13 +20,13 @@ export function verifyBlockSequence(config, blocks, anchorRoot) {
20
20
  }
21
21
  return { nextAnchor, verifiedBlocks };
22
22
  }
23
- export async function verifyBlockProposerSignature(config, index2pubkey, bls, blocks) {
23
+ export async function verifyBlockProposerSignature(config, bls, blocks) {
24
24
  if (blocks.length === 1 && blocks[0].message.slot === GENESIS_SLOT)
25
25
  return;
26
26
  const signatures = blocks.reduce((sigs, block) => {
27
27
  // genesis block doesn't have valid signature
28
28
  if (block.message.slot !== GENESIS_SLOT)
29
- sigs.push(getBlockProposerSignatureSet(config, index2pubkey, block));
29
+ sigs.push(getBlockProposerSignatureSet(config, block));
30
30
  return sigs;
31
31
  }, []);
32
32
  if (!(await bls.verifySignatureSets(signatures, { batchable: true }))) {
@@ -1 +1 @@
1
- {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/sync/backfill/verify.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAmC,4BAA4B,EAAC,MAAM,4BAA4B,CAAC;AAC1G,OAAO,EAAgC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAC,iBAAiB,EAAE,qBAAqB,EAAC,MAAM,aAAa,CAAC;AASrE,MAAM,UAAU,mBAAmB,CACjC,MAAoB,EACpB,MAA2B,EAC3B,UAAgB;IAMhB,IAAI,QAAQ,GAAS,UAAU,CAAC;IAChC,IAAI,UAAU,GAAyB,IAAI,CAAC;IAE5C,MAAM,cAAc,GAAwB,EAAE,CAAC;IAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,iBAAiB,CAAC,EAAC,IAAI,EAAE,qBAAqB,CAAC,YAAY,EAAC,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,EAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,qBAAqB,CAAC,UAAU,EAAC,CAAC;QAC/E,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,UAAU,GAAG,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC;QACtE,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;IACtC,CAAC;IACD,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,MAAoB,EACpB,YAA+B,EAC/B,GAAiB,EACjB,MAA2B;IAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAqB,EAAE,KAAK,EAAE,EAAE;QAChE,6CAA6C;QAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;YAAE,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9G,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,iBAAiB,CAAC,EAAC,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,EAAC,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/sync/backfill/verify.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAgB,4BAA4B,EAAC,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAgC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAC,iBAAiB,EAAE,qBAAqB,EAAC,MAAM,aAAa,CAAC;AASrE,MAAM,UAAU,mBAAmB,CACjC,MAAoB,EACpB,MAA2B,EAC3B,UAAgB;IAMhB,IAAI,QAAQ,GAAS,UAAU,CAAC;IAChC,IAAI,UAAU,GAAyB,IAAI,CAAC;IAE5C,MAAM,cAAc,GAAwB,EAAE,CAAC;IAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,iBAAiB,CAAC,EAAC,IAAI,EAAE,qBAAqB,CAAC,YAAY,EAAC,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,EAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,qBAAqB,CAAC,UAAU,EAAC,CAAC;QAC/E,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,UAAU,GAAG,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC;QACtE,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;IACtC,CAAC;IACD,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,MAAoB,EACpB,GAAiB,EACjB,MAA2B;IAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAqB,EAAE,KAAK,EAAE,EAAE;QAChE,6CAA6C;QAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;YAAE,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAChG,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,iBAAiB,CAAC,EAAC,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,EAAC,CAAC,CAAC;IAC/E,CAAC;AACH,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.40.0-dev.1cab20c166",
14
+ "version": "1.40.0-dev.2ae7375100",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -134,18 +134,18 @@
134
134
  "@libp2p/peer-id": "^5.1.0",
135
135
  "@libp2p/prometheus-metrics": "^4.3.15",
136
136
  "@libp2p/tcp": "^10.1.8",
137
- "@lodestar/api": "^1.40.0-dev.1cab20c166",
138
- "@lodestar/config": "^1.40.0-dev.1cab20c166",
139
- "@lodestar/db": "^1.40.0-dev.1cab20c166",
140
- "@lodestar/fork-choice": "^1.40.0-dev.1cab20c166",
141
- "@lodestar/light-client": "^1.40.0-dev.1cab20c166",
142
- "@lodestar/logger": "^1.40.0-dev.1cab20c166",
143
- "@lodestar/params": "^1.40.0-dev.1cab20c166",
144
- "@lodestar/reqresp": "^1.40.0-dev.1cab20c166",
145
- "@lodestar/state-transition": "^1.40.0-dev.1cab20c166",
146
- "@lodestar/types": "^1.40.0-dev.1cab20c166",
147
- "@lodestar/utils": "^1.40.0-dev.1cab20c166",
148
- "@lodestar/validator": "^1.40.0-dev.1cab20c166",
137
+ "@lodestar/api": "^1.40.0-dev.2ae7375100",
138
+ "@lodestar/config": "^1.40.0-dev.2ae7375100",
139
+ "@lodestar/db": "^1.40.0-dev.2ae7375100",
140
+ "@lodestar/fork-choice": "^1.40.0-dev.2ae7375100",
141
+ "@lodestar/light-client": "^1.40.0-dev.2ae7375100",
142
+ "@lodestar/logger": "^1.40.0-dev.2ae7375100",
143
+ "@lodestar/params": "^1.40.0-dev.2ae7375100",
144
+ "@lodestar/reqresp": "^1.40.0-dev.2ae7375100",
145
+ "@lodestar/state-transition": "^1.40.0-dev.2ae7375100",
146
+ "@lodestar/types": "^1.40.0-dev.2ae7375100",
147
+ "@lodestar/utils": "^1.40.0-dev.2ae7375100",
148
+ "@lodestar/validator": "^1.40.0-dev.2ae7375100",
149
149
  "@multiformats/multiaddr": "^12.1.3",
150
150
  "datastore-core": "^10.0.2",
151
151
  "datastore-fs": "^10.0.6",
@@ -169,7 +169,7 @@
169
169
  "@chainsafe/swap-or-not-shuffle": "^1.2.1",
170
170
  "@libp2p/interface-internal": "^2.3.18",
171
171
  "@libp2p/logger": "^5.1.21",
172
- "@lodestar/spec-test-util": "^1.40.0-dev.1cab20c166",
172
+ "@lodestar/spec-test-util": "^1.40.0-dev.2ae7375100",
173
173
  "@types/js-yaml": "^4.0.5",
174
174
  "@types/qs": "^6.9.7",
175
175
  "@types/tmp": "^0.2.3",
@@ -188,5 +188,5 @@
188
188
  "beacon",
189
189
  "blockchain"
190
190
  ],
191
- "gitHead": "c76f6cb3dc8cc7c4b0a631c4fd2761f8211e39e1"
191
+ "gitHead": "e67984c4ee553bcb1ccc33f9e8fec3c5023b8401"
192
192
  }
@@ -434,11 +434,13 @@ export function getBeaconBlockApi({
434
434
  const nonFinalizedBlocks = chain.forkChoice.getBlockSummariesByParentRoot(parentRoot);
435
435
  await Promise.all(
436
436
  nonFinalizedBlocks.map(async (summary) => {
437
- const block = await db.block.get(fromHex(summary.blockRoot));
438
- if (block) {
439
- const canonical = chain.forkChoice.getCanonicalBlockAtSlot(block.message.slot);
437
+ const blockResult = await chain.getBlockByRoot(summary.blockRoot);
438
+ if (blockResult) {
439
+ const canonical = chain.forkChoice.getCanonicalBlockAtSlot(blockResult.block.message.slot);
440
440
  if (canonical) {
441
- result.push(toBeaconHeaderResponse(config, block, canonical.blockRoot === summary.blockRoot));
441
+ result.push(
442
+ toBeaconHeaderResponse(config, blockResult.block, canonical.blockRoot === summary.blockRoot)
443
+ );
442
444
  if (isOptimisticBlock(canonical)) {
443
445
  executionOptimistic = true;
444
446
  }
@@ -492,9 +494,9 @@ export function getBeaconBlockApi({
492
494
  finalized = false;
493
495
 
494
496
  if (summary.blockRoot !== toRootHex(canonicalRoot)) {
495
- const block = await db.block.get(fromHex(summary.blockRoot));
496
- if (block) {
497
- result.push(toBeaconHeaderResponse(config, block));
497
+ const blockResult = await chain.getBlockByRoot(summary.blockRoot);
498
+ if (blockResult) {
499
+ result.push(toBeaconHeaderResponse(config, blockResult.block));
498
500
  }
499
501
  }
500
502
  })
@@ -244,6 +244,18 @@ export function getLodestarApi({
244
244
  data: chain.validatorMonitor?.getMonitoredValidatorIndices() ?? [],
245
245
  };
246
246
  },
247
+
248
+ async getCustodyInfo() {
249
+ const {custodyColumns, targetCustodyGroupCount} = chain.custodyConfig;
250
+
251
+ return {
252
+ data: {
253
+ earliestCustodiedSlot: chain.earliestAvailableSlot,
254
+ custodyGroupCount: targetCustodyGroupCount,
255
+ custodyColumns,
256
+ },
257
+ };
258
+ },
247
259
  };
248
260
  }
249
261
 
@@ -8,12 +8,12 @@ import {ChainEventEmitter} from "./emitter.js";
8
8
  /**
9
9
  * Minimum time to wait before attempting reconstruction
10
10
  */
11
- const RECONSTRUCTION_DELAY_MIN_MS = 800;
11
+ const RECONSTRUCTION_DELAY_MIN_BPS = 667;
12
12
 
13
13
  /**
14
14
  * Maximum time to wait before attempting reconstruction
15
15
  */
16
- const RECONSTRUCTION_DELAY_MAX_MS = 1200;
16
+ const RECONSTRUCTION_DELAY_MAX_BPS = 1000;
17
17
 
18
18
  export type ColumnReconstructionTrackerInit = {
19
19
  logger: Logger;
@@ -41,11 +41,16 @@ export class ColumnReconstructionTracker {
41
41
  /** Track if a reconstruction attempt is in-flight */
42
42
  running = false;
43
43
 
44
+ private readonly minDelayMs: number;
45
+ private readonly maxDelayMs: number;
46
+
44
47
  constructor(init: ColumnReconstructionTrackerInit) {
45
48
  this.logger = init.logger;
46
49
  this.emitter = init.emitter;
47
50
  this.metrics = init.metrics;
48
51
  this.config = init.config;
52
+ this.minDelayMs = this.config.getSlotComponentDurationMs(RECONSTRUCTION_DELAY_MIN_BPS);
53
+ this.maxDelayMs = this.config.getSlotComponentDurationMs(RECONSTRUCTION_DELAY_MAX_BPS);
49
54
  }
50
55
 
51
56
  triggerColumnReconstruction(blockInput: BlockInputColumns): void {
@@ -61,8 +66,7 @@ export class ColumnReconstructionTracker {
61
66
  // just that it has been triggered for this block root.
62
67
  this.running = true;
63
68
  this.lastBlockRootHex = blockInput.blockRootHex;
64
- const delay =
65
- RECONSTRUCTION_DELAY_MIN_MS + Math.random() * (RECONSTRUCTION_DELAY_MAX_MS - RECONSTRUCTION_DELAY_MIN_MS);
69
+ const delay = this.minDelayMs + Math.random() * (this.maxDelayMs - this.minDelayMs);
66
70
  sleep(delay)
67
71
  .then(() => {
68
72
  const logCtx = {slot: blockInput.slot, root: blockInput.blockRootHex};
@@ -145,7 +145,6 @@ export async function verifyBlocksInEpoch(
145
145
  opts.skipVerifyBlockSignatures !== true
146
146
  ? verifyBlocksSignatures(
147
147
  this.config,
148
- this.index2pubkey,
149
148
  this.bls,
150
149
  this.logger,
151
150
  this.metrics,
@@ -1,5 +1,5 @@
1
1
  import {BeaconConfig} from "@lodestar/config";
2
- import {CachedBeaconStateAllForks, Index2PubkeyCache, getBlockSignatureSets} from "@lodestar/state-transition";
2
+ import {CachedBeaconStateAllForks, getBlockSignatureSets} from "@lodestar/state-transition";
3
3
  import {IndexedAttestation, SignedBeaconBlock} from "@lodestar/types";
4
4
  import {Logger} from "@lodestar/utils";
5
5
  import {Metrics} from "../../metrics/metrics.js";
@@ -17,7 +17,6 @@ import {ImportBlockOpts} from "./types.js";
17
17
  */
18
18
  export async function verifyBlocksSignatures(
19
19
  config: BeaconConfig,
20
- index2pubkey: Index2PubkeyCache,
21
20
  bls: IBlsVerifier,
22
21
  logger: Logger,
23
22
  metrics: Metrics | null,
@@ -42,16 +41,9 @@ export async function verifyBlocksSignatures(
42
41
  : //
43
42
  // Verify signatures per block to track which block is invalid
44
43
  bls.verifySignatureSets(
45
- getBlockSignatureSets(
46
- config,
47
- index2pubkey,
48
- currentSyncCommitteeIndexed,
49
- block,
50
- indexedAttestationsByBlock[i],
51
- {
52
- skipProposerSignature: opts.validProposerSignature,
53
- }
54
- )
44
+ getBlockSignatureSets(config, currentSyncCommitteeIndexed, block, indexedAttestationsByBlock[i], {
45
+ skipProposerSignature: opts.validProposerSignature,
46
+ })
55
47
  );
56
48
 
57
49
  // getBlockSignatureSets() takes 45ms in benchmarks for 2022Q2 mainnet blocks (100 sigs). When syncing a 32 blocks
@@ -7,7 +7,7 @@ import {Worker, spawn} from "@chainsafe/threads";
7
7
  self = undefined;
8
8
 
9
9
  import {PublicKey} from "@chainsafe/blst";
10
- import {ISignatureSet} from "@lodestar/state-transition";
10
+ import {ISignatureSet, Index2PubkeyCache} from "@lodestar/state-transition";
11
11
  import {Logger} from "@lodestar/utils";
12
12
  import {Metrics} from "../../../metrics/index.js";
13
13
  import {LinkedList} from "../../../util/array.js";
@@ -34,6 +34,7 @@ const workerDir = process.env.NODE_ENV === "test" ? "../../../../lib/chain/bls/m
34
34
  export type BlsMultiThreadWorkerPoolModules = {
35
35
  logger: Logger;
36
36
  metrics: Metrics | null;
37
+ index2pubkey: Index2PubkeyCache;
37
38
  };
38
39
 
39
40
  export type BlsMultiThreadWorkerPoolOptions = {
@@ -113,6 +114,7 @@ type WorkerDescriptor = {
113
114
  export class BlsMultiThreadWorkerPool implements IBlsVerifier {
114
115
  private readonly logger: Logger;
115
116
  private readonly metrics: Metrics | null;
117
+ private readonly index2pubkey: Index2PubkeyCache;
116
118
 
117
119
  private readonly workers: WorkerDescriptor[];
118
120
  private readonly jobs = new LinkedList<JobQueueItem>();
@@ -128,9 +130,10 @@ export class BlsMultiThreadWorkerPool implements IBlsVerifier {
128
130
  private workersBusy = 0;
129
131
 
130
132
  constructor(options: BlsMultiThreadWorkerPoolOptions, modules: BlsMultiThreadWorkerPoolModules) {
131
- const {logger, metrics} = modules;
133
+ const {logger, metrics, index2pubkey} = modules;
132
134
  this.logger = logger;
133
135
  this.metrics = metrics;
136
+ this.index2pubkey = index2pubkey;
134
137
  this.blsVerifyAllMultiThread = options.blsVerifyAllMultiThread ?? false;
135
138
 
136
139
  // Use compressed for herumi for now.
@@ -170,7 +173,7 @@ export class BlsMultiThreadWorkerPool implements IBlsVerifier {
170
173
  try {
171
174
  return verifySignatureSetsMaybeBatch(
172
175
  sets.map((set) => ({
173
- publicKey: getAggregatedPubkey(set),
176
+ publicKey: getAggregatedPubkey(set, this.index2pubkey),
174
177
  message: set.signingRoot.valueOf(),
175
178
  signature: set.signature,
176
179
  }))
@@ -395,7 +398,7 @@ export class BlsMultiThreadWorkerPool implements IBlsVerifier {
395
398
  try {
396
399
  // Note: This can throw, must be handled per-job.
397
400
  // Pubkey and signature aggregation is defered here
398
- workReq = await jobItemWorkReq(job, this.metrics);
401
+ workReq = await jobItemWorkReq(job, this.index2pubkey, this.metrics);
399
402
  } catch (e) {
400
403
  this.metrics?.blsThreadPool.errorAggregateSignatureSetsCount.inc({type: job.type});
401
404
 
@@ -1,5 +1,5 @@
1
1
  import {PublicKey, asyncAggregateWithRandomness} from "@chainsafe/blst";
2
- import {ISignatureSet, SignatureSetType} from "@lodestar/state-transition";
2
+ import {ISignatureSet, Index2PubkeyCache, SignatureSetType} from "@lodestar/state-transition";
3
3
  import {Metrics} from "../../../metrics/metrics.js";
4
4
  import {LinkedList} from "../../../util/array.js";
5
5
  import {VerifySignatureOpts} from "../interface.js";
@@ -48,14 +48,18 @@ export function jobItemSigSets(job: JobQueueItem): number {
48
48
  * Prepare BlsWorkReq from JobQueueItem
49
49
  * WARNING: May throw with untrusted user input
50
50
  */
51
- export async function jobItemWorkReq(job: JobQueueItem, metrics: Metrics | null): Promise<BlsWorkReq> {
51
+ export async function jobItemWorkReq(
52
+ job: JobQueueItem,
53
+ index2pubkey: Index2PubkeyCache,
54
+ metrics: Metrics | null
55
+ ): Promise<BlsWorkReq> {
52
56
  switch (job.type) {
53
57
  case JobQueueItemType.default:
54
58
  return {
55
59
  opts: job.opts,
56
60
  sets: job.sets.map((set) => ({
57
61
  // this can throw, handled in the consumer code
58
- publicKey: getAggregatedPubkey(set, metrics).toBytes(),
62
+ publicKey: getAggregatedPubkey(set, index2pubkey, metrics).toBytes(),
59
63
  signature: set.signature,
60
64
  message: set.signingRoot,
61
65
  })),
@@ -1,5 +1,5 @@
1
1
  import {PublicKey, Signature, aggregatePublicKeys, aggregateSignatures, verify} from "@chainsafe/blst";
2
- import {ISignatureSet} from "@lodestar/state-transition";
2
+ import {ISignatureSet, Index2PubkeyCache} from "@lodestar/state-transition";
3
3
  import {Metrics} from "../../metrics/index.js";
4
4
  import {IBlsVerifier} from "./interface.js";
5
5
  import {verifySignatureSetsMaybeBatch} from "./maybeBatch.js";
@@ -7,16 +7,18 @@ import {getAggregatedPubkey, getAggregatedPubkeysCount} from "./utils.js";
7
7
 
8
8
  export class BlsSingleThreadVerifier implements IBlsVerifier {
9
9
  private readonly metrics: Metrics | null;
10
+ private readonly index2pubkey: Index2PubkeyCache;
10
11
 
11
- constructor({metrics = null}: {metrics: Metrics | null}) {
12
+ constructor({metrics = null, index2pubkey}: {metrics: Metrics | null; index2pubkey: Index2PubkeyCache}) {
12
13
  this.metrics = metrics;
14
+ this.index2pubkey = index2pubkey;
13
15
  }
14
16
 
15
17
  async verifySignatureSets(sets: ISignatureSet[]): Promise<boolean> {
16
18
  this.metrics?.bls.aggregatedPubkeys.inc(getAggregatedPubkeysCount(sets));
17
19
 
18
20
  const setsAggregated = sets.map((set) => ({
19
- publicKey: getAggregatedPubkey(set),
21
+ publicKey: getAggregatedPubkey(set, this.index2pubkey, this.metrics),
20
22
  message: set.signingRoot,
21
23
  signature: set.signature,
22
24
  }));