From d1a3bd3a3864b2ff2dd186147aeb22ae3ee05fe1 Mon Sep 17 00:00:00 2001 From: Tuyen Nguyen Date: Tue, 9 Jan 2024 14:08:02 +0700 Subject: [PATCH] chore: revert sszBytes utils --- packages/beacon-node/src/util/sszBytes.ts | 21 +------------------ .../state-transition/src/util/sszBytes.ts | 13 ------------ 2 files changed, 1 insertion(+), 33 deletions(-) diff --git a/packages/beacon-node/src/util/sszBytes.ts b/packages/beacon-node/src/util/sszBytes.ts index 7851324f9bcf..cd12c4bd9c18 100644 --- a/packages/beacon-node/src/util/sszBytes.ts +++ b/packages/beacon-node/src/util/sszBytes.ts @@ -1,9 +1,7 @@ import {BitArray, deserializeUint8ArrayBitListFromBytes} from "@chainsafe/ssz"; -import {ChainForkConfig} from "@lodestar/config"; -import {BLSSignature, RootHex, Slot, ssz} from "@lodestar/types"; +import {BLSSignature, RootHex, Slot} from "@lodestar/types"; import {toHex} from "@lodestar/utils"; import {BYTES_PER_FIELD_ELEMENT, FIELD_ELEMENTS_PER_BLOB} from "@lodestar/params"; -import {getStateTypeFromBytes} from "./multifork.js"; export type BlockRootHex = RootHex; export type AttDataBase64 = string; @@ -202,23 +200,6 @@ export function getSlotFromBlobSidecarSerialized(data: Uint8Array): Slot | null return getSlotFromOffset(data, SLOT_BYTES_POSITION_IN_SIGNED_BLOB_SIDECAR); } -type BeaconStateType = - | typeof ssz.phase0.BeaconState - | typeof ssz.altair.BeaconState - | typeof ssz.bellatrix.BeaconState - | typeof ssz.capella.BeaconState - | typeof ssz.deneb.BeaconState; - -export function getValidatorsBytesFromStateBytes(config: ChainForkConfig, stateBytes: Uint8Array): Uint8Array { - const stateType = getStateTypeFromBytes(config, stateBytes) as BeaconStateType; - const dataView = new DataView(stateBytes.buffer, stateBytes.byteOffset, stateBytes.byteLength); - const fieldRanges = stateType.getFieldRanges(dataView, 0, stateBytes.length); - const allFields = Object.keys(stateType.fields); - const validatorsFieldIndex = allFields.indexOf("validators"); - const validatorsRange = fieldRanges[validatorsFieldIndex]; - return stateBytes.slice(validatorsRange.start, validatorsRange.end); -} - function getSlotFromOffset(data: Uint8Array, offset: number): Slot { // TODO: Optimize const dv = new DataView(data.buffer, data.byteOffset, data.byteLength); diff --git a/packages/state-transition/src/util/sszBytes.ts b/packages/state-transition/src/util/sszBytes.ts index bcb3f468a426..25b65626a0dd 100644 --- a/packages/state-transition/src/util/sszBytes.ts +++ b/packages/state-transition/src/util/sszBytes.ts @@ -25,19 +25,6 @@ const SLOT_BYTE_COUNT = 8; */ export const VALIDATOR_BYTES_SIZE = 121; -const BLS_PUBKEY_SIZE = 48; - -export function getWithdrawalCredentialFirstByteFromValidatorBytes( - validatorBytes: Uint8Array, - validatorIndex: number -): number | null { - if (validatorBytes.length < VALIDATOR_BYTES_SIZE * (validatorIndex + 1)) { - return null; - } - - return validatorBytes[VALIDATOR_BYTES_SIZE * validatorIndex + BLS_PUBKEY_SIZE]; -} - /** * 8 + 32 = 40 * ```