@aztec/foundation 2.1.0-rc.9 → 2.1.1-rc.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.
Files changed (44) hide show
  1. package/dest/collection/array.d.ts +2 -0
  2. package/dest/collection/array.d.ts.map +1 -1
  3. package/dest/collection/array.js +12 -3
  4. package/dest/config/env_var.d.ts +1 -1
  5. package/dest/config/env_var.d.ts.map +1 -1
  6. package/dest/config/network_name.d.ts +1 -1
  7. package/dest/config/network_name.d.ts.map +1 -1
  8. package/dest/config/network_name.js +2 -2
  9. package/dest/crypto/bls/bn254_keystore.d.ts +296 -0
  10. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
  11. package/dest/crypto/bls/bn254_keystore.js +218 -0
  12. package/dest/crypto/bls/index.d.ts +13 -0
  13. package/dest/crypto/bls/index.d.ts.map +1 -0
  14. package/dest/crypto/bls/index.js +87 -0
  15. package/dest/crypto/bn254/bn254_utils.d.ts +39 -0
  16. package/dest/crypto/bn254/bn254_utils.d.ts.map +1 -0
  17. package/dest/crypto/bn254/bn254_utils.js +56 -0
  18. package/dest/crypto/bn254/index.d.ts +55 -0
  19. package/dest/crypto/bn254/index.d.ts.map +1 -0
  20. package/dest/crypto/bn254/index.js +142 -0
  21. package/dest/crypto/index.d.ts +2 -0
  22. package/dest/crypto/index.d.ts.map +1 -1
  23. package/dest/crypto/index.js +2 -0
  24. package/dest/crypto/secp256k1-signer/utils.d.ts +48 -2
  25. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  26. package/dest/crypto/secp256k1-signer/utils.js +87 -5
  27. package/dest/fields/fields.d.ts +5 -0
  28. package/dest/fields/fields.d.ts.map +1 -1
  29. package/dest/fields/fields.js +15 -0
  30. package/dest/string/index.d.ts +4 -0
  31. package/dest/string/index.d.ts.map +1 -1
  32. package/dest/string/index.js +1 -1
  33. package/package.json +6 -3
  34. package/src/collection/array.ts +15 -3
  35. package/src/config/env_var.ts +3 -1
  36. package/src/config/network_name.ts +3 -3
  37. package/src/crypto/bls/bn254_keystore.ts +287 -0
  38. package/src/crypto/bls/index.ts +77 -0
  39. package/src/crypto/bn254/bn254_utils.ts +64 -0
  40. package/src/crypto/bn254/index.ts +170 -0
  41. package/src/crypto/index.ts +2 -0
  42. package/src/crypto/secp256k1-signer/utils.ts +115 -7
  43. package/src/fields/fields.ts +15 -0
  44. package/src/string/index.ts +3 -0
@@ -97,6 +97,8 @@ export declare function maxBy<T>(arr: T[], fn: (x: T) => number | bigint): T | u
97
97
  export declare function sum(arr: number[]): number;
98
98
  /** Computes the median of a numeric array. Returns undefined if array is empty. */
99
99
  export declare function median(arr: number[]): number | undefined;
100
+ /** Computes the median of a bigint array. Returns undefined if array is empty. */
101
+ export declare function median(arr: bigint[]): bigint | undefined;
100
102
  /** Computes the mean of a numeric array. Returns undefined if the array is empty. */
101
103
  export declare function mean(values: number[]): number | undefined;
102
104
  /** Computes the variance of a numeric array. Returns undefined if there are less than 2 points. */
@@ -1 +1 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
@@ -141,15 +141,24 @@
141
141
  /** Computes the sum of a numeric array. */ export function sum(arr) {
142
142
  return arr.reduce((a, b)=>a + b, 0);
143
143
  }
144
- /** Computes the median of a numeric array. Returns undefined if array is empty. */ export function median(arr) {
144
+ export function median(arr) {
145
145
  if (arr.length === 0) {
146
146
  return undefined;
147
147
  }
148
+ // Handle number array
149
+ if (typeof arr[0] === 'number') {
150
+ const sorted = [
151
+ ...arr
152
+ ].sort((a, b)=>a - b);
153
+ const mid = Math.floor(sorted.length / 2);
154
+ return sorted.length % 2 !== 0 ? sorted[mid] : (sorted[mid - 1] + sorted[mid]) / 2;
155
+ }
156
+ // Handle bigint array
148
157
  const sorted = [
149
158
  ...arr
150
- ].sort((a, b)=>a - b);
159
+ ].sort((a, b)=>a < b ? -1 : a > b ? 1 : 0);
151
160
  const mid = Math.floor(sorted.length / 2);
152
- return sorted.length % 2 !== 0 ? sorted[mid] : (sorted[mid - 1] + sorted[mid]) / 2;
161
+ return sorted.length % 2 !== 0 ? sorted[mid] : (sorted[mid - 1] + sorted[mid]) / 2n;
153
162
  }
154
163
  /** Computes the mean of a numeric array. Returns undefined if the array is empty. */ export function mean(values) {
155
164
  if (values.length === 0) {
@@ -1,2 +1,2 @@
1
- export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_SINK_ARCHIVE_API_URL' | 'BLOB_SINK_PORT' | 'BLOB_SINK_URL' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_PXE_URL' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_AMM_TXS' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'DEPLOY_AZTEC_CONTRACTS_SALT' | 'ETHEREUM_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'NO_PXE' | 'USE_GCLOUD_LOGGING' | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT' | 'OTEL_EXPORTER_OTLP_LOGS_ENDPOINT' | 'OTEL_COLLECT_INTERVAL_MS' | 'OTEL_EXCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | 'P2P_GOSSIPSUB_D' | 'P2P_GOSSIPSUB_DHI' | 'P2P_GOSSIPSUB_DLO' | 'P2P_GOSSIPSUB_DLAZY' | 'P2P_GOSSIPSUB_FLOOD_PUBLISH' | 'P2P_GOSSIPSUB_INTERVAL_MS' | 'P2P_GOSSIPSUB_MCACHE_GOSSIP' | 'P2P_GOSSIPSUB_MCACHE_LENGTH' | 'P2P_GOSSIPSUB_SEEN_TTL' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT' | 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT' | 'P2P_L2_QUEUE_SIZE' | 'P2P_MAX_PEERS' | 'P2P_PEER_CHECK_INTERVAL_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_TX_POOL_SIZE' | 'P2P_TX_POOL_OVERFLOW_FACTOR' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | 'PROVER_AGENT_COUNT' | 'PROVER_AGENT_PROOF_TYPES' | 'PROVER_AGENT_POLL_INTERVAL_MS' | 'PROVER_BROKER_HOST' | 'PROVER_BROKER_JOB_TIMEOUT_MS' | 'PROVER_BROKER_POLL_INTERVAL_MS' | 'PROVER_BROKER_JOB_MAX_RETRIES' | 'PROVER_BROKER_BATCH_INTERVAL_MS' | 'PROVER_BROKER_BATCH_SIZE' | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_MAX_BLOCK_SIZE_IN_BYTES' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_TX_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_MAX_L1_TX_INCLUSION_TIME_INTO_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_PROVEN_BLOCKS_ONLY' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_TX_MONITOR_MAX_ATTEMPTS' | 'L1_TX_MONITOR_CHECK_INTERVAL_MS' | 'L1_TX_MONITOR_STALL_TIME_MS' | 'L1_TX_MONITOR_TX_TIMEOUT_MS' | 'L1_TX_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'ALWAYS_REEXECUTE_BLOCK_PROPOSALS' | 'AUTO_UPDATE' | 'AUTO_UPDATE_URL' | 'WEB3_SIGNER_URL';
1
+ export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_SINK_ARCHIVE_API_URL' | 'BLOB_SINK_PORT' | 'BLOB_SINK_URL' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_PXE_URL' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_AMM_TXS' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'DEPLOY_AZTEC_CONTRACTS_SALT' | 'ETHEREUM_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'NO_PXE' | 'USE_GCLOUD_LOGGING' | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT' | 'OTEL_EXPORTER_OTLP_LOGS_ENDPOINT' | 'OTEL_COLLECT_INTERVAL_MS' | 'OTEL_EXCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | 'P2P_GOSSIPSUB_D' | 'P2P_GOSSIPSUB_DHI' | 'P2P_GOSSIPSUB_DLO' | 'P2P_GOSSIPSUB_DLAZY' | 'P2P_GOSSIPSUB_FLOOD_PUBLISH' | 'P2P_GOSSIPSUB_INTERVAL_MS' | 'P2P_GOSSIPSUB_MCACHE_GOSSIP' | 'P2P_GOSSIPSUB_MCACHE_LENGTH' | 'P2P_GOSSIPSUB_SEEN_TTL' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT' | 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT' | 'P2P_L2_QUEUE_SIZE' | 'P2P_MAX_PEERS' | 'P2P_PEER_CHECK_INTERVAL_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_TX_POOL_SIZE' | 'P2P_TX_POOL_OVERFLOW_FACTOR' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | 'PROVER_AGENT_COUNT' | 'PROVER_AGENT_PROOF_TYPES' | 'PROVER_AGENT_POLL_INTERVAL_MS' | 'PROVER_BROKER_HOST' | 'PROVER_BROKER_JOB_TIMEOUT_MS' | 'PROVER_BROKER_POLL_INTERVAL_MS' | 'PROVER_BROKER_JOB_MAX_RETRIES' | 'PROVER_BROKER_BATCH_INTERVAL_MS' | 'PROVER_BROKER_BATCH_SIZE' | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_MAX_BLOCK_SIZE_IN_BYTES' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_TX_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_MAX_L1_TX_INCLUSION_TIME_INTO_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_PROVEN_BLOCKS_ONLY' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_TX_MONITOR_MAX_ATTEMPTS' | 'L1_TX_MONITOR_CHECK_INTERVAL_MS' | 'L1_TX_MONITOR_STALL_TIME_MS' | 'L1_TX_MONITOR_TX_TIMEOUT_MS' | 'L1_TX_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'ALWAYS_REEXECUTE_BLOCK_PROPOSALS' | 'AUTO_UPDATE' | 'AUTO_UPDATE_URL' | 'WEB3_SIGNER_URL' | 'SKIP_ARCHIVER_INITIAL_SYNC' | 'BLOB_ALLOW_EMPTY_SOURCES';
2
2
  //# sourceMappingURL=env_var.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env_var.d.ts","sourceRoot":"","sources":["../../src/config/env_var.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export type NetworkNames = 'local' | 'staging-ignition' | 'staging-public' | 'testnet' | 'ignition';
1
+ export type NetworkNames = 'local' | 'staging-ignition' | 'staging-public' | 'testnet' | 'mainnet';
2
2
  export declare function getActiveNetworkName(name?: string): NetworkNames;
3
3
  //# sourceMappingURL=network_name.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"network_name.d.ts","sourceRoot":"","sources":["../../src/config/network_name.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,SAAS,GAAG,UAAU,CAAC;AAEpG,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAchE"}
1
+ {"version":3,"file":"network_name.d.ts","sourceRoot":"","sources":["../../src/config/network_name.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,SAAS,GAAG,SAAS,CAAC;AAEnG,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAchE"}
@@ -8,8 +8,8 @@ export function getActiveNetworkName(name) {
8
8
  return network;
9
9
  } else if (network === 'testnet' || network === 'alpha-testnet') {
10
10
  return 'testnet';
11
- } else if (network === 'ignition') {
12
- return 'ignition';
11
+ } else if (network === 'mainnet') {
12
+ return 'mainnet';
13
13
  }
14
14
  throw new Error(`Unknown network: ${network}`);
15
15
  }
@@ -0,0 +1,296 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * BN254 Keystore Format
4
+ *
5
+ * Implements encryption and decryption of keystores for BN254 BLS private keys
6
+ * using PBKDF2 and AES-128-CTR. This format is inspired by EIP-2335 but adapted
7
+ * for BN254 keys rather than BLS12-381.
8
+ *
9
+ * @see https://eips.ethereum.org/EIPS/eip-2335
10
+ */
11
+ /**
12
+ * Zod schema for validating BN254 keystore structure
13
+ */
14
+ declare const bn254KeystoreSchema: z.ZodObject<{
15
+ crypto: z.ZodObject<{
16
+ kdf: z.ZodObject<{
17
+ function: z.ZodLiteral<"pbkdf2">;
18
+ params: z.ZodObject<{
19
+ dklen: z.ZodNumber;
20
+ c: z.ZodNumber;
21
+ prf: z.ZodString;
22
+ salt: z.ZodString;
23
+ }, "strip", z.ZodTypeAny, {
24
+ c: number;
25
+ dklen: number;
26
+ prf: string;
27
+ salt: string;
28
+ }, {
29
+ c: number;
30
+ dklen: number;
31
+ prf: string;
32
+ salt: string;
33
+ }>;
34
+ message: z.ZodString;
35
+ }, "strip", z.ZodTypeAny, {
36
+ function: "pbkdf2";
37
+ params: {
38
+ c: number;
39
+ dklen: number;
40
+ prf: string;
41
+ salt: string;
42
+ };
43
+ message: string;
44
+ }, {
45
+ function: "pbkdf2";
46
+ params: {
47
+ c: number;
48
+ dklen: number;
49
+ prf: string;
50
+ salt: string;
51
+ };
52
+ message: string;
53
+ }>;
54
+ checksum: z.ZodObject<{
55
+ function: z.ZodLiteral<"sha256">;
56
+ params: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
57
+ message: z.ZodString;
58
+ }, "strip", z.ZodTypeAny, {
59
+ function: "sha256";
60
+ params: {};
61
+ message: string;
62
+ }, {
63
+ function: "sha256";
64
+ params: {};
65
+ message: string;
66
+ }>;
67
+ cipher: z.ZodObject<{
68
+ function: z.ZodLiteral<"aes-128-ctr">;
69
+ params: z.ZodObject<{
70
+ iv: z.ZodString;
71
+ }, "strip", z.ZodTypeAny, {
72
+ iv: string;
73
+ }, {
74
+ iv: string;
75
+ }>;
76
+ message: z.ZodString;
77
+ }, "strip", z.ZodTypeAny, {
78
+ function: "aes-128-ctr";
79
+ params: {
80
+ iv: string;
81
+ };
82
+ message: string;
83
+ }, {
84
+ function: "aes-128-ctr";
85
+ params: {
86
+ iv: string;
87
+ };
88
+ message: string;
89
+ }>;
90
+ }, "strip", z.ZodTypeAny, {
91
+ kdf: {
92
+ function: "pbkdf2";
93
+ params: {
94
+ c: number;
95
+ dklen: number;
96
+ prf: string;
97
+ salt: string;
98
+ };
99
+ message: string;
100
+ };
101
+ checksum: {
102
+ function: "sha256";
103
+ params: {};
104
+ message: string;
105
+ };
106
+ cipher: {
107
+ function: "aes-128-ctr";
108
+ params: {
109
+ iv: string;
110
+ };
111
+ message: string;
112
+ };
113
+ }, {
114
+ kdf: {
115
+ function: "pbkdf2";
116
+ params: {
117
+ c: number;
118
+ dklen: number;
119
+ prf: string;
120
+ salt: string;
121
+ };
122
+ message: string;
123
+ };
124
+ checksum: {
125
+ function: "sha256";
126
+ params: {};
127
+ message: string;
128
+ };
129
+ cipher: {
130
+ function: "aes-128-ctr";
131
+ params: {
132
+ iv: string;
133
+ };
134
+ message: string;
135
+ };
136
+ }>;
137
+ description: z.ZodOptional<z.ZodString>;
138
+ pubkey: z.ZodString;
139
+ path: z.ZodString;
140
+ uuid: z.ZodString;
141
+ version: z.ZodNumber;
142
+ }, "strip", z.ZodTypeAny, {
143
+ path: string;
144
+ version: number;
145
+ crypto: {
146
+ kdf: {
147
+ function: "pbkdf2";
148
+ params: {
149
+ c: number;
150
+ dklen: number;
151
+ prf: string;
152
+ salt: string;
153
+ };
154
+ message: string;
155
+ };
156
+ checksum: {
157
+ function: "sha256";
158
+ params: {};
159
+ message: string;
160
+ };
161
+ cipher: {
162
+ function: "aes-128-ctr";
163
+ params: {
164
+ iv: string;
165
+ };
166
+ message: string;
167
+ };
168
+ };
169
+ pubkey: string;
170
+ uuid: string;
171
+ description?: string | undefined;
172
+ }, {
173
+ path: string;
174
+ version: number;
175
+ crypto: {
176
+ kdf: {
177
+ function: "pbkdf2";
178
+ params: {
179
+ c: number;
180
+ dklen: number;
181
+ prf: string;
182
+ salt: string;
183
+ };
184
+ message: string;
185
+ };
186
+ checksum: {
187
+ function: "sha256";
188
+ params: {};
189
+ message: string;
190
+ };
191
+ cipher: {
192
+ function: "aes-128-ctr";
193
+ params: {
194
+ iv: string;
195
+ };
196
+ message: string;
197
+ };
198
+ };
199
+ pubkey: string;
200
+ uuid: string;
201
+ description?: string | undefined;
202
+ }>;
203
+ /**
204
+ * Error thrown when BN254 keystore operations fail
205
+ */
206
+ export declare class Bn254KeystoreError extends Error {
207
+ cause?: Error | undefined;
208
+ constructor(message: string, cause?: Error | undefined);
209
+ }
210
+ export type Bn254Keystore = z.infer<typeof bn254KeystoreSchema>;
211
+ /**
212
+ * The JSON structure of a BN254 keystore file.
213
+ * @deprecated Use the inferred type from bn254KeystoreSchema instead
214
+ */
215
+ export interface Bn254KeystoreInterface {
216
+ crypto: {
217
+ kdf: {
218
+ function: 'pbkdf2';
219
+ params: {
220
+ dklen: number;
221
+ c: number;
222
+ prf: string;
223
+ salt: string;
224
+ };
225
+ message: string;
226
+ };
227
+ checksum: {
228
+ function: 'sha256';
229
+ params: Record<string, never>;
230
+ message: string;
231
+ };
232
+ cipher: {
233
+ function: 'aes-128-ctr';
234
+ params: {
235
+ iv: string;
236
+ };
237
+ message: string;
238
+ };
239
+ };
240
+ description: string;
241
+ pubkey: string;
242
+ path: string;
243
+ uuid: string;
244
+ version: number;
245
+ }
246
+ /**
247
+ * Creates a BN254 keystore object for a BN254 BLS private key.
248
+ *
249
+ * Uses PBKDF2 with SHA-256 for key derivation and AES-128-CTR for encryption,
250
+ * following the EIP-2335 specification format.
251
+ *
252
+ * @param password - Password for encrypting the private key
253
+ * @param privateKeyHex - Private key as 0x-prefixed hex string (32 bytes)
254
+ * @param pubkeyHex - Public key as hex string (compressed or uncompressed)
255
+ * @param derivationPath - BIP-44 style derivation path (e.g., "m/12381/3600/0/0/0")
256
+ * @returns BN254 keystore object ready to be serialized to JSON
257
+ * @throws Error if private key is not 32-byte hex
258
+ */
259
+ export declare function createBn254Keystore(password: string, privateKeyHex: string, pubkeyHex: string, derivationPath: string): Bn254Keystore;
260
+ /**
261
+ * Loads and validates a BN254 keystore file.
262
+ *
263
+ * @param filePath - Path to the BN254 keystore JSON file
264
+ * @returns Validated keystore object
265
+ * @throws Bn254KeystoreError if file cannot be read or validated
266
+ */
267
+ export declare function loadBn254Keystore(filePath: string): Bn254Keystore;
268
+ /**
269
+ * Decrypts a BN254 BLS private key from a keystore file.
270
+ *
271
+ * @param filePath - Path to the BN254 keystore JSON file
272
+ * @param password - Password to decrypt the keystore
273
+ * @returns Decrypted private key as 0x-prefixed hex string (32 bytes)
274
+ * @throws Bn254KeystoreError if decryption fails or checksum is invalid
275
+ */
276
+ export declare function decryptBn254Keystore(filePath: string, password: string): string;
277
+ /**
278
+ * Decrypts a BN254 BLS private key from a keystore object.
279
+ *
280
+ * @param keystore - BN254 keystore object
281
+ * @param password - Password to decrypt the keystore
282
+ * @returns Decrypted private key as 0x-prefixed hex string (32 bytes)
283
+ * @throws Bn254KeystoreError if decryption fails or checksum is invalid
284
+ */
285
+ export declare function decryptBn254KeystoreFromObject(keystore: Bn254Keystore, password: string): string;
286
+ /**
287
+ * Validates that a decrypted private key matches the public key in the keystore.
288
+ *
289
+ * @param privateKeyHex - Decrypted private key (0x-prefixed)
290
+ * @param expectedPubkey - Expected public key from keystore
291
+ * @param computePublicKey - Function to compute public key from private key
292
+ * @returns true if keys match, false otherwise
293
+ */
294
+ export declare function verifyBn254Keypair(privateKeyHex: string, expectedPubkey: string, computePublicKey: (privateKey: string) => string): boolean;
295
+ export {};
296
+ //# sourceMappingURL=bn254_keystore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bn254_keystore.d.ts","sourceRoot":"","sources":["../../../src/crypto/bls/bn254_keystore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AAEH;;GAEG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BvB,CAAC;AAEH;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAGzB,KAAK,CAAC,EAAE,KAAK;gBAD7B,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QACN,GAAG,EAAE;YACH,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC;gBACd,CAAC,EAAE,MAAM,CAAC;gBACV,GAAG,EAAE,MAAM,CAAC;gBACZ,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,MAAM,EAAE;YACN,QAAQ,EAAE,aAAa,CAAC;YACxB,MAAM,EAAE;gBACN,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,aAAa,CA8Cf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAgBjE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG/E;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiDhG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAC/C,OAAO,CAST"}