@aztec/foundation 0.0.0-test.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dest/array/array.d.ts +71 -0
- package/dest/array/array.d.ts.map +1 -0
- package/dest/array/array.js +100 -0
- package/dest/array/index.d.ts +2 -0
- package/dest/array/index.d.ts.map +1 -0
- package/dest/array/index.js +1 -0
- package/dest/async-map/index.d.ts +13 -0
- package/dest/async-map/index.d.ts.map +1 -0
- package/dest/async-map/index.js +17 -0
- package/dest/async-pool/index.d.ts +3 -0
- package/dest/async-pool/index.d.ts.map +1 -0
- package/dest/async-pool/index.js +47 -0
- package/dest/bigint-buffer/index.d.ts +42 -0
- package/dest/bigint-buffer/index.d.ts.map +1 -0
- package/dest/bigint-buffer/index.js +76 -0
- package/dest/buffer/buffer32.d.ts +91 -0
- package/dest/buffer/buffer32.d.ts.map +1 -0
- package/dest/buffer/buffer32.js +115 -0
- package/dest/buffer/index.d.ts +2 -0
- package/dest/buffer/index.d.ts.map +1 -0
- package/dest/buffer/index.js +1 -0
- package/dest/collection/array.d.ts +101 -0
- package/dest/collection/array.d.ts.map +1 -0
- package/dest/collection/array.js +164 -0
- package/dest/collection/index.d.ts +3 -0
- package/dest/collection/index.d.ts.map +1 -0
- package/dest/collection/index.js +2 -0
- package/dest/collection/object.d.ts +14 -0
- package/dest/collection/object.d.ts.map +1 -0
- package/dest/collection/object.js +32 -0
- package/dest/committable/committable.d.ts +28 -0
- package/dest/committable/committable.d.ts.map +1 -0
- package/dest/committable/committable.js +36 -0
- package/dest/committable/index.d.ts +2 -0
- package/dest/committable/index.d.ts.map +1 -0
- package/dest/committable/index.js +1 -0
- package/dest/config/env_var.d.ts +2 -0
- package/dest/config/env_var.d.ts.map +1 -0
- package/dest/config/env_var.js +1 -0
- package/dest/config/index.d.ts +66 -0
- package/dest/config/index.d.ts.map +1 -0
- package/dest/config/index.js +125 -0
- package/dest/crypto/aes128/index.d.ts +34 -0
- package/dest/crypto/aes128/index.d.ts.map +1 -0
- package/dest/crypto/aes128/index.js +49 -0
- package/dest/crypto/ecdsa/index.d.ts +39 -0
- package/dest/crypto/ecdsa/index.d.ts.map +1 -0
- package/dest/crypto/ecdsa/index.js +88 -0
- package/dest/crypto/ecdsa/signature.d.ts +71 -0
- package/dest/crypto/ecdsa/signature.d.ts.map +1 -0
- package/dest/crypto/ecdsa/signature.js +92 -0
- package/dest/crypto/grumpkin/index.d.ts +47 -0
- package/dest/crypto/grumpkin/index.d.ts.map +1 -0
- package/dest/crypto/grumpkin/index.js +154 -0
- package/dest/crypto/index.d.ts +15 -0
- package/dest/crypto/index.d.ts.map +1 -0
- package/dest/crypto/index.js +14 -0
- package/dest/crypto/keccak/index.d.ts +28 -0
- package/dest/crypto/keccak/index.d.ts.map +1 -0
- package/dest/crypto/keccak/index.js +248 -0
- package/dest/crypto/keys/index.d.ts +5 -0
- package/dest/crypto/keys/index.d.ts.map +1 -0
- package/dest/crypto/keys/index.js +7 -0
- package/dest/crypto/pedersen/index.d.ts +2 -0
- package/dest/crypto/pedersen/index.d.ts.map +1 -0
- package/dest/crypto/pedersen/index.js +1 -0
- package/dest/crypto/pedersen/pedersen.elliptic.d.ts +13 -0
- package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +1 -0
- package/dest/crypto/pedersen/pedersen.elliptic.js +582 -0
- package/dest/crypto/pedersen/pedersen.noble.d.ts +11 -0
- package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -0
- package/dest/crypto/pedersen/pedersen.noble.js +558 -0
- package/dest/crypto/pedersen/pedersen.wasm.d.ts +21 -0
- package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -0
- package/dest/crypto/pedersen/pedersen.wasm.js +41 -0
- package/dest/crypto/poseidon/index.d.ts +26 -0
- package/dest/crypto/poseidon/index.d.ts.map +1 -0
- package/dest/crypto/poseidon/index.js +58 -0
- package/dest/crypto/random/index.d.ts +25 -0
- package/dest/crypto/random/index.d.ts.map +1 -0
- package/dest/crypto/random/index.js +70 -0
- package/dest/crypto/random/randomness_singleton.d.ts +25 -0
- package/dest/crypto/random/randomness_singleton.d.ts.map +1 -0
- package/dest/crypto/random/randomness_singleton.js +55 -0
- package/dest/crypto/schnorr/index.d.ts +30 -0
- package/dest/crypto/schnorr/index.d.ts.map +1 -0
- package/dest/crypto/schnorr/index.js +68 -0
- package/dest/crypto/schnorr/signature.d.ts +70 -0
- package/dest/crypto/schnorr/signature.d.ts.map +1 -0
- package/dest/crypto/schnorr/signature.js +93 -0
- package/dest/crypto/secp256k1/index.d.ts +32 -0
- package/dest/crypto/secp256k1/index.d.ts.map +1 -0
- package/dest/crypto/secp256k1/index.js +116 -0
- package/dest/crypto/secp256k1-signer/index.d.ts +3 -0
- package/dest/crypto/secp256k1-signer/index.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/index.js +2 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +24 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.js +30 -0
- package/dest/crypto/secp256k1-signer/utils.d.ts +40 -0
- package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/utils.js +84 -0
- package/dest/crypto/serialize.d.ts +53 -0
- package/dest/crypto/serialize.d.ts.map +1 -0
- package/dest/crypto/serialize.js +68 -0
- package/dest/crypto/sha256/index.d.ts +20 -0
- package/dest/crypto/sha256/index.d.ts.map +1 -0
- package/dest/crypto/sha256/index.js +166 -0
- package/dest/crypto/sha512/index.d.ts +11 -0
- package/dest/crypto/sha512/index.d.ts.map +1 -0
- package/dest/crypto/sha512/index.js +12 -0
- package/dest/crypto/signature/index.d.ts +19 -0
- package/dest/crypto/signature/index.d.ts.map +1 -0
- package/dest/crypto/signature/index.js +3 -0
- package/dest/crypto/sync/index.d.ts +3 -0
- package/dest/crypto/sync/index.d.ts.map +1 -0
- package/dest/crypto/sync/index.js +4 -0
- package/dest/crypto/sync/pedersen/index.d.ts +21 -0
- package/dest/crypto/sync/pedersen/index.d.ts.map +1 -0
- package/dest/crypto/sync/pedersen/index.js +38 -0
- package/dest/crypto/sync/poseidon/index.d.ts +26 -0
- package/dest/crypto/sync/poseidon/index.d.ts.map +1 -0
- package/dest/crypto/sync/poseidon/index.js +53 -0
- package/dest/decorators/index.d.ts +2 -0
- package/dest/decorators/index.d.ts.map +1 -0
- package/dest/decorators/index.js +1 -0
- package/dest/decorators/memoize.d.ts +2 -0
- package/dest/decorators/memoize.d.ts.map +1 -0
- package/dest/decorators/memoize.js +11 -0
- package/dest/error/index.d.ts +21 -0
- package/dest/error/index.d.ts.map +1 -0
- package/dest/error/index.js +17 -0
- package/dest/eth-address/index.d.ts +134 -0
- package/dest/eth-address/index.d.ts.map +1 -0
- package/dest/eth-address/index.js +198 -0
- package/dest/eth-signature/eth_signature.d.ts +62 -0
- package/dest/eth-signature/eth_signature.d.ts.map +1 -0
- package/dest/eth-signature/eth_signature.js +91 -0
- package/dest/eth-signature/index.d.ts +2 -0
- package/dest/eth-signature/index.d.ts.map +1 -0
- package/dest/eth-signature/index.js +1 -0
- package/dest/fields/coordinate.d.ts +68 -0
- package/dest/fields/coordinate.d.ts.map +1 -0
- package/dest/fields/coordinate.js +96 -0
- package/dest/fields/fields.d.ts +176 -0
- package/dest/fields/fields.d.ts.map +1 -0
- package/dest/fields/fields.js +383 -0
- package/dest/fields/index.d.ts +4 -0
- package/dest/fields/index.d.ts.map +1 -0
- package/dest/fields/index.js +3 -0
- package/dest/fields/point.d.ts +175 -0
- package/dest/fields/point.d.ts.map +1 -0
- package/dest/fields/point.js +260 -0
- package/dest/fs/index.d.ts +2 -0
- package/dest/fs/index.d.ts.map +1 -0
- package/dest/fs/index.js +1 -0
- package/dest/fs/run_in_dir.d.ts +2 -0
- package/dest/fs/run_in_dir.d.ts.map +1 -0
- package/dest/fs/run_in_dir.js +31 -0
- package/dest/index.d.ts +31 -0
- package/dest/index.d.ts.map +1 -0
- package/dest/index.js +31 -0
- package/dest/iterable/all.d.ts +9 -0
- package/dest/iterable/all.d.ts.map +1 -0
- package/dest/iterable/all.js +18 -0
- package/dest/iterable/filter.d.ts +10 -0
- package/dest/iterable/filter.d.ts.map +1 -0
- package/dest/iterable/filter.js +48 -0
- package/dest/iterable/index.d.ts +8 -0
- package/dest/iterable/index.d.ts.map +1 -0
- package/dest/iterable/index.js +7 -0
- package/dest/iterable/isAsyncIt.d.ts +7 -0
- package/dest/iterable/isAsyncIt.d.ts.map +1 -0
- package/dest/iterable/isAsyncIt.js +7 -0
- package/dest/iterable/map.d.ts +12 -0
- package/dest/iterable/map.d.ts.map +1 -0
- package/dest/iterable/map.js +36 -0
- package/dest/iterable/peek.d.ts +19 -0
- package/dest/iterable/peek.d.ts.map +1 -0
- package/dest/iterable/peek.js +33 -0
- package/dest/iterable/sort.d.ts +14 -0
- package/dest/iterable/sort.d.ts.map +1 -0
- package/dest/iterable/sort.js +15 -0
- package/dest/iterable/take.d.ts +10 -0
- package/dest/iterable/take.d.ts.map +1 -0
- package/dest/iterable/take.js +32 -0
- package/dest/iterable/toArray.d.ts +2 -0
- package/dest/iterable/toArray.d.ts.map +1 -0
- package/dest/iterable/toArray.js +7 -0
- package/dest/jest/setup.js +7 -0
- package/dest/json-rpc/client/fetch.d.ts +32 -0
- package/dest/json-rpc/client/fetch.d.ts.map +1 -0
- package/dest/json-rpc/client/fetch.js +77 -0
- package/dest/json-rpc/client/index.d.ts +3 -0
- package/dest/json-rpc/client/index.d.ts.map +1 -0
- package/dest/json-rpc/client/index.js +2 -0
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts +26 -0
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -0
- package/dest/json-rpc/client/safe_json_rpc_client.js +57 -0
- package/dest/json-rpc/client/undici.d.ts +5 -0
- package/dest/json-rpc/client/undici.d.ts.map +1 -0
- package/dest/json-rpc/client/undici.js +63 -0
- package/dest/json-rpc/convert.d.ts +27 -0
- package/dest/json-rpc/convert.d.ts.map +1 -0
- package/dest/json-rpc/convert.js +48 -0
- package/dest/json-rpc/fixtures/class_a.d.ts +11 -0
- package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/class_a.js +20 -0
- package/dest/json-rpc/fixtures/class_b.d.ts +11 -0
- package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/class_b.js +20 -0
- package/dest/json-rpc/fixtures/test_state.d.ts +89 -0
- package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/test_state.js +131 -0
- package/dest/json-rpc/index.d.ts +2 -0
- package/dest/json-rpc/index.d.ts.map +1 -0
- package/dest/json-rpc/index.js +1 -0
- package/dest/json-rpc/js_utils.d.ts +13 -0
- package/dest/json-rpc/js_utils.d.ts.map +1 -0
- package/dest/json-rpc/js_utils.js +16 -0
- package/dest/json-rpc/server/index.d.ts +2 -0
- package/dest/json-rpc/server/index.d.ts.map +1 -0
- package/dest/json-rpc/server/index.js +1 -0
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts +140 -0
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -0
- package/dest/json-rpc/server/safe_json_rpc_server.js +346 -0
- package/dest/json-rpc/server/telemetry.d.ts +2 -0
- package/dest/json-rpc/server/telemetry.d.ts.map +1 -0
- package/dest/json-rpc/server/telemetry.js +0 -0
- package/dest/json-rpc/test/index.d.ts +2 -0
- package/dest/json-rpc/test/index.d.ts.map +1 -0
- package/dest/json-rpc/test/index.js +1 -0
- package/dest/json-rpc/test/integration.d.ts +15 -0
- package/dest/json-rpc/test/integration.d.ts.map +1 -0
- package/dest/json-rpc/test/integration.js +21 -0
- package/dest/log/console.d.ts +11 -0
- package/dest/log/console.d.ts.map +1 -0
- package/dest/log/console.js +36 -0
- package/dest/log/debug.d.ts +56 -0
- package/dest/log/debug.d.ts.map +1 -0
- package/dest/log/debug.js +75 -0
- package/dest/log/gcloud-logger-config.d.ts +14 -0
- package/dest/log/gcloud-logger-config.d.ts.map +1 -0
- package/dest/log/gcloud-logger-config.js +66 -0
- package/dest/log/index.d.ts +7 -0
- package/dest/log/index.d.ts.map +1 -0
- package/dest/log/index.js +6 -0
- package/dest/log/libp2p_logger.d.ts +7 -0
- package/dest/log/libp2p_logger.d.ts.map +1 -0
- package/dest/log/libp2p_logger.js +55 -0
- package/dest/log/log-filters.d.ts +7 -0
- package/dest/log/log-filters.d.ts.map +1 -0
- package/dest/log/log-filters.js +59 -0
- package/dest/log/log-levels.d.ts +3 -0
- package/dest/log/log-levels.d.ts.map +1 -0
- package/dest/log/log-levels.js +10 -0
- package/dest/log/log_fn.d.ts +7 -0
- package/dest/log/log_fn.d.ts.map +1 -0
- package/dest/log/log_fn.js +1 -0
- package/dest/log/log_history.d.ts +31 -0
- package/dest/log/log_history.d.ts.map +1 -0
- package/dest/log/log_history.js +38 -0
- package/dest/log/pino-logger.d.ts +57 -0
- package/dest/log/pino-logger.d.ts.map +1 -0
- package/dest/log/pino-logger.js +207 -0
- package/dest/message/index.d.ts +32 -0
- package/dest/message/index.d.ts.map +1 -0
- package/dest/message/index.js +27 -0
- package/dest/mutex/index.d.ts +53 -0
- package/dest/mutex/index.d.ts.map +1 -0
- package/dest/mutex/index.js +78 -0
- package/dest/mutex/mutex_database.d.ts +10 -0
- package/dest/mutex/mutex_database.d.ts.map +1 -0
- package/dest/mutex/mutex_database.js +4 -0
- package/dest/noir/index.d.ts +2 -0
- package/dest/noir/index.d.ts.map +1 -0
- package/dest/noir/index.js +1 -0
- package/dest/noir/noir_package_config.d.ts +129 -0
- package/dest/noir/noir_package_config.d.ts.map +1 -0
- package/dest/noir/noir_package_config.js +36 -0
- package/dest/promise/index.d.ts +3 -0
- package/dest/promise/index.d.ts.map +1 -0
- package/dest/promise/index.js +2 -0
- package/dest/promise/running-promise.d.ts +47 -0
- package/dest/promise/running-promise.d.ts.map +1 -0
- package/dest/promise/running-promise.js +110 -0
- package/dest/promise/utils.d.ts +12 -0
- package/dest/promise/utils.d.ts.map +1 -0
- package/dest/promise/utils.js +20 -0
- package/dest/queue/base_memory_queue.d.ts +65 -0
- package/dest/queue/base_memory_queue.d.ts.map +1 -0
- package/dest/queue/base_memory_queue.js +116 -0
- package/dest/queue/batch_queue.d.ts +47 -0
- package/dest/queue/batch_queue.d.ts.map +1 -0
- package/dest/queue/batch_queue.js +105 -0
- package/dest/queue/bounded_serial_queue.d.ts +56 -0
- package/dest/queue/bounded_serial_queue.d.ts.map +1 -0
- package/dest/queue/bounded_serial_queue.js +84 -0
- package/dest/queue/fifo_memory_queue.d.ts +21 -0
- package/dest/queue/fifo_memory_queue.d.ts.map +1 -0
- package/dest/queue/fifo_memory_queue.js +29 -0
- package/dest/queue/index.d.ts +7 -0
- package/dest/queue/index.d.ts.map +1 -0
- package/dest/queue/index.js +6 -0
- package/dest/queue/priority_memory_queue.d.ts +13 -0
- package/dest/queue/priority_memory_queue.d.ts.map +1 -0
- package/dest/queue/priority_memory_queue.js +16 -0
- package/dest/queue/priority_queue.d.ts +14 -0
- package/dest/queue/priority_queue.d.ts.map +1 -0
- package/dest/queue/priority_queue.js +29 -0
- package/dest/queue/semaphore.d.ts +23 -0
- package/dest/queue/semaphore.d.ts.map +1 -0
- package/dest/queue/semaphore.js +26 -0
- package/dest/queue/serial_queue.d.ts +49 -0
- package/dest/queue/serial_queue.d.ts.map +1 -0
- package/dest/queue/serial_queue.js +72 -0
- package/dest/retry/index.d.ts +44 -0
- package/dest/retry/index.d.ts.map +1 -0
- package/dest/retry/index.js +93 -0
- package/dest/running-promise/index.d.ts +2 -0
- package/dest/running-promise/index.d.ts.map +1 -0
- package/dest/running-promise/index.js +1 -0
- package/dest/schemas/api.d.ts +21 -0
- package/dest/schemas/api.d.ts.map +1 -0
- package/dest/schemas/api.js +3 -0
- package/dest/schemas/index.d.ts +6 -0
- package/dest/schemas/index.d.ts.map +1 -0
- package/dest/schemas/index.js +5 -0
- package/dest/schemas/parse.d.ts +9 -0
- package/dest/schemas/parse.d.ts.map +1 -0
- package/dest/schemas/parse.js +22 -0
- package/dest/schemas/schemas.d.ts +45 -0
- package/dest/schemas/schemas.d.ts.map +1 -0
- package/dest/schemas/schemas.js +38 -0
- package/dest/schemas/types.d.ts +3 -0
- package/dest/schemas/types.d.ts.map +1 -0
- package/dest/schemas/types.js +1 -0
- package/dest/schemas/utils.d.ts +53 -0
- package/dest/schemas/utils.d.ts.map +1 -0
- package/dest/schemas/utils.js +60 -0
- package/dest/serialize/buffer_reader.d.ts +239 -0
- package/dest/serialize/buffer_reader.d.ts.map +1 -0
- package/dest/serialize/buffer_reader.js +290 -0
- package/dest/serialize/field_reader.d.ts +112 -0
- package/dest/serialize/field_reader.d.ts.map +1 -0
- package/dest/serialize/field_reader.js +147 -0
- package/dest/serialize/free_funcs.d.ts +105 -0
- package/dest/serialize/free_funcs.d.ts.map +1 -0
- package/dest/serialize/free_funcs.js +189 -0
- package/dest/serialize/index.d.ts +7 -0
- package/dest/serialize/index.d.ts.map +1 -0
- package/dest/serialize/index.js +6 -0
- package/dest/serialize/serialize.d.ts +182 -0
- package/dest/serialize/serialize.d.ts.map +1 -0
- package/dest/serialize/serialize.js +248 -0
- package/dest/serialize/type_registry.d.ts +23 -0
- package/dest/serialize/type_registry.d.ts.map +1 -0
- package/dest/serialize/type_registry.js +61 -0
- package/dest/serialize/types.d.ts +33 -0
- package/dest/serialize/types.d.ts.map +1 -0
- package/dest/serialize/types.js +21 -0
- package/dest/sleep/index.d.ts +51 -0
- package/dest/sleep/index.d.ts.map +1 -0
- package/dest/sleep/index.js +67 -0
- package/dest/string/index.d.ts +11 -0
- package/dest/string/index.d.ts.map +1 -0
- package/dest/string/index.js +24 -0
- package/dest/testing/files/index.d.ts +20 -0
- package/dest/testing/files/index.d.ts.map +1 -0
- package/dest/testing/files/index.js +58 -0
- package/dest/testing/index.d.ts +4 -0
- package/dest/testing/index.d.ts.map +1 -0
- package/dest/testing/index.js +3 -0
- package/dest/testing/port_allocator.d.ts +10 -0
- package/dest/testing/port_allocator.d.ts.map +1 -0
- package/dest/testing/port_allocator.js +29 -0
- package/dest/testing/snapshot_serializer.d.ts +5 -0
- package/dest/testing/snapshot_serializer.d.ts.map +1 -0
- package/dest/testing/snapshot_serializer.js +32 -0
- package/dest/testing/test_data.d.ts +7 -0
- package/dest/testing/test_data.d.ts.map +1 -0
- package/dest/testing/test_data.js +29 -0
- package/dest/timer/date.d.ts +13 -0
- package/dest/timer/date.d.ts.map +1 -0
- package/dest/timer/date.js +24 -0
- package/dest/timer/elapsed.d.ts +13 -0
- package/dest/timer/elapsed.d.ts.map +1 -0
- package/dest/timer/elapsed.js +25 -0
- package/dest/timer/index.d.ts +5 -0
- package/dest/timer/index.d.ts.map +1 -0
- package/dest/timer/index.js +4 -0
- package/dest/timer/timeout.d.ts +41 -0
- package/dest/timer/timeout.d.ts.map +1 -0
- package/dest/timer/timeout.js +66 -0
- package/dest/timer/timer.d.ts +37 -0
- package/dest/timer/timer.d.ts.map +1 -0
- package/dest/timer/timer.js +40 -0
- package/dest/transport/browser/index.d.ts +5 -0
- package/dest/transport/browser/index.d.ts.map +1 -0
- package/dest/transport/browser/index.js +4 -0
- package/dest/transport/browser/message_port_socket.d.ts +37 -0
- package/dest/transport/browser/message_port_socket.d.ts.map +1 -0
- package/dest/transport/browser/message_port_socket.js +42 -0
- package/dest/transport/browser/shared_worker_connector.d.ts +19 -0
- package/dest/transport/browser/shared_worker_connector.d.ts.map +1 -0
- package/dest/transport/browser/shared_worker_connector.js +19 -0
- package/dest/transport/browser/shared_worker_listener.d.ts +38 -0
- package/dest/transport/browser/shared_worker_listener.d.ts.map +1 -0
- package/dest/transport/browser/shared_worker_listener.js +33 -0
- package/dest/transport/browser/worker_connector.d.ts +26 -0
- package/dest/transport/browser/worker_connector.d.ts.map +1 -0
- package/dest/transport/browser/worker_connector.js +30 -0
- package/dest/transport/browser/worker_listener.d.ts +39 -0
- package/dest/transport/browser/worker_listener.d.ts.map +1 -0
- package/dest/transport/browser/worker_listener.js +35 -0
- package/dest/transport/dispatch/create_dispatch_fn.d.ts +25 -0
- package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -0
- package/dest/transport/dispatch/create_dispatch_fn.js +17 -0
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts +102 -0
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +1 -0
- package/dest/transport/dispatch/create_dispatch_proxy.js +59 -0
- package/dest/transport/dispatch/messages.d.ts +52 -0
- package/dest/transport/dispatch/messages.d.ts.map +1 -0
- package/dest/transport/dispatch/messages.js +13 -0
- package/dest/transport/index.d.ts +12 -0
- package/dest/transport/index.d.ts.map +1 -0
- package/dest/transport/index.js +11 -0
- package/dest/transport/interface/connector.d.ts +8 -0
- package/dest/transport/interface/connector.d.ts.map +1 -0
- package/dest/transport/interface/connector.js +3 -0
- package/dest/transport/interface/listener.d.ts +13 -0
- package/dest/transport/interface/listener.d.ts.map +1 -0
- package/dest/transport/interface/listener.js +4 -0
- package/dest/transport/interface/socket.d.ts +13 -0
- package/dest/transport/interface/socket.d.ts.map +1 -0
- package/dest/transport/interface/socket.js +7 -0
- package/dest/transport/interface/transferable.d.ts +68 -0
- package/dest/transport/interface/transferable.d.ts.map +1 -0
- package/dest/transport/interface/transferable.js +63 -0
- package/dest/transport/node/index.d.ts +3 -0
- package/dest/transport/node/index.d.ts.map +1 -0
- package/dest/transport/node/index.js +2 -0
- package/dest/transport/node/node_connector.d.ts +28 -0
- package/dest/transport/node/node_connector.d.ts.map +1 -0
- package/dest/transport/node/node_connector.js +26 -0
- package/dest/transport/node/node_connector_socket.d.ts +42 -0
- package/dest/transport/node/node_connector_socket.d.ts.map +1 -0
- package/dest/transport/node/node_connector_socket.js +44 -0
- package/dest/transport/node/node_listener.d.ts +26 -0
- package/dest/transport/node/node_listener.d.ts.map +1 -0
- package/dest/transport/node/node_listener.js +26 -0
- package/dest/transport/node/node_listener_socket.d.ts +37 -0
- package/dest/transport/node/node_listener_socket.d.ts.map +1 -0
- package/dest/transport/node/node_listener_socket.js +40 -0
- package/dest/transport/transport_client.d.ts +61 -0
- package/dest/transport/transport_client.d.ts.map +1 -0
- package/dest/transport/transport_client.js +96 -0
- package/dest/transport/transport_server.d.ts +56 -0
- package/dest/transport/transport_server.d.ts.map +1 -0
- package/dest/transport/transport_server.js +114 -0
- package/dest/trees/hasher.d.ts +39 -0
- package/dest/trees/hasher.d.ts.map +1 -0
- package/dest/trees/hasher.js +5 -0
- package/dest/trees/index.d.ts +11 -0
- package/dest/trees/index.d.ts.map +1 -0
- package/dest/trees/index.js +10 -0
- package/dest/trees/indexed_merkle_tree.d.ts +13 -0
- package/dest/trees/indexed_merkle_tree.d.ts.map +1 -0
- package/dest/trees/indexed_merkle_tree.js +27 -0
- package/dest/trees/indexed_merkle_tree_calculator.d.ts +23 -0
- package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -0
- package/dest/trees/indexed_merkle_tree_calculator.js +83 -0
- package/dest/trees/indexed_tree_leaf.d.ts +57 -0
- package/dest/trees/indexed_tree_leaf.d.ts.map +1 -0
- package/dest/trees/indexed_tree_leaf.js +5 -0
- package/dest/trees/membership_witness.d.ts +62 -0
- package/dest/trees/membership_witness.d.ts.map +1 -0
- package/dest/trees/membership_witness.js +70 -0
- package/dest/trees/merkle_tree.d.ts +18 -0
- package/dest/trees/merkle_tree.d.ts.map +1 -0
- package/dest/trees/merkle_tree.js +58 -0
- package/dest/trees/merkle_tree_calculator.d.ts +16 -0
- package/dest/trees/merkle_tree_calculator.d.ts.map +1 -0
- package/dest/trees/merkle_tree_calculator.js +61 -0
- package/dest/trees/sibling_path.d.ts +132 -0
- package/dest/trees/sibling_path.d.ts.map +1 -0
- package/dest/trees/sibling_path.js +144 -0
- package/dest/trees/unbalanced_merkle_tree.d.ts +17 -0
- package/dest/trees/unbalanced_merkle_tree.d.ts.map +1 -0
- package/dest/trees/unbalanced_merkle_tree.js +100 -0
- package/dest/trees/unbalanced_tree_store.d.ts +19 -0
- package/dest/trees/unbalanced_tree_store.d.ts.map +1 -0
- package/dest/trees/unbalanced_tree_store.js +94 -0
- package/dest/types/index.d.ts +19 -0
- package/dest/types/index.d.ts.map +1 -0
- package/dest/types/index.js +3 -0
- package/dest/url/index.d.ts +9 -0
- package/dest/url/index.d.ts.map +1 -0
- package/dest/url/index.js +62 -0
- package/dest/validation/index.d.ts +9 -0
- package/dest/validation/index.d.ts.map +1 -0
- package/dest/validation/index.js +15 -0
- package/dest/wasm/empty_wasi_sdk.d.ts +130 -0
- package/dest/wasm/empty_wasi_sdk.d.ts.map +1 -0
- package/dest/wasm/empty_wasi_sdk.js +148 -0
- package/dest/wasm/index.d.ts +2 -0
- package/dest/wasm/index.d.ts.map +1 -0
- package/dest/wasm/index.js +1 -0
- package/dest/wasm/wasm_module.d.ts +136 -0
- package/dest/wasm/wasm_module.d.ts.map +1 -0
- package/dest/wasm/wasm_module.js +196 -0
- package/dest/worker/browser/index.d.ts +3 -0
- package/dest/worker/browser/index.d.ts.map +1 -0
- package/dest/worker/browser/index.js +2 -0
- package/dest/worker/browser/start_web_module.d.ts +7 -0
- package/dest/worker/browser/start_web_module.d.ts.map +1 -0
- package/dest/worker/browser/start_web_module.js +27 -0
- package/dest/worker/browser/web_data_store.d.ts +24 -0
- package/dest/worker/browser/web_data_store.d.ts.map +1 -0
- package/dest/worker/browser/web_data_store.js +29 -0
- package/dest/worker/browser/web_worker.d.ts +10 -0
- package/dest/worker/browser/web_worker.d.ts.map +1 -0
- package/dest/worker/browser/web_worker.js +25 -0
- package/dest/worker/data_store.d.ts +21 -0
- package/dest/worker/data_store.d.ts.map +1 -0
- package/dest/worker/data_store.js +3 -0
- package/dest/worker/index.d.ts +3 -0
- package/dest/worker/index.d.ts.map +1 -0
- package/dest/worker/index.js +1 -0
- package/dest/worker/node/index.d.ts +3 -0
- package/dest/worker/node/index.d.ts.map +1 -0
- package/dest/worker/node/index.js +2 -0
- package/dest/worker/node/node_data_store.d.ts +13 -0
- package/dest/worker/node/node_data_store.d.ts.map +1 -0
- package/dest/worker/node/node_data_store.js +20 -0
- package/dest/worker/node/node_worker.d.ts +6 -0
- package/dest/worker/node/node_worker.d.ts.map +1 -0
- package/dest/worker/node/node_worker.js +22 -0
- package/dest/worker/node/start_node_module.d.ts +7 -0
- package/dest/worker/node/start_node_module.d.ts.map +1 -0
- package/dest/worker/node/start_node_module.js +31 -0
- package/dest/worker/wasm_worker.d.ts +9 -0
- package/dest/worker/wasm_worker.d.ts.map +1 -0
- package/dest/worker/wasm_worker.js +3 -0
- package/dest/worker/worker_pool.d.ts +40 -0
- package/dest/worker/worker_pool.d.ts.map +1 -0
- package/dest/worker/worker_pool.js +51 -0
- package/package.json +176 -0
- package/src/array/array.ts +150 -0
- package/src/array/index.ts +1 -0
- package/src/async-map/index.ts +18 -0
- package/src/async-pool/index.ts +50 -0
- package/src/bigint-buffer/index.ts +87 -0
- package/src/buffer/buffer32.ts +144 -0
- package/src/buffer/index.ts +1 -0
- package/src/collection/array.ts +203 -0
- package/src/collection/index.ts +2 -0
- package/src/collection/object.ts +52 -0
- package/src/committable/committable.ts +46 -0
- package/src/committable/index.ts +1 -0
- package/src/config/env_var.ts +207 -0
- package/src/config/index.ts +167 -0
- package/src/crypto/aes128/index.ts +59 -0
- package/src/crypto/ecdsa/index.ts +70 -0
- package/src/crypto/ecdsa/signature.ts +100 -0
- package/src/crypto/grumpkin/index.ts +97 -0
- package/src/crypto/index.ts +14 -0
- package/src/crypto/keccak/index.ts +283 -0
- package/src/crypto/keys/index.ts +10 -0
- package/src/crypto/pedersen/index.ts +1 -0
- package/src/crypto/pedersen/pedersen.elliptic.ts +584 -0
- package/src/crypto/pedersen/pedersen.noble.ts +573 -0
- package/src/crypto/pedersen/pedersen.wasm.ts +48 -0
- package/src/crypto/poseidon/index.ts +77 -0
- package/src/crypto/random/index.ts +85 -0
- package/src/crypto/random/randomness_singleton.ts +62 -0
- package/src/crypto/schnorr/index.ts +55 -0
- package/src/crypto/schnorr/signature.ts +116 -0
- package/src/crypto/secp256k1/index.ts +57 -0
- package/src/crypto/secp256k1-signer/index.ts +2 -0
- package/src/crypto/secp256k1-signer/secp256k1_signer.ts +38 -0
- package/src/crypto/secp256k1-signer/utils.ts +99 -0
- package/src/crypto/serialize.ts +85 -0
- package/src/crypto/sha256/index.ts +147 -0
- package/src/crypto/sha512/index.ts +16 -0
- package/src/crypto/signature/index.ts +17 -0
- package/src/crypto/sync/index.ts +6 -0
- package/src/crypto/sync/pedersen/index.ts +45 -0
- package/src/crypto/sync/poseidon/index.ts +76 -0
- package/src/decorators/index.ts +1 -0
- package/src/decorators/memoize.ts +11 -0
- package/src/error/index.ts +22 -0
- package/src/eth-address/index.ts +241 -0
- package/src/eth-signature/eth_signature.ts +128 -0
- package/src/eth-signature/index.ts +1 -0
- package/src/fields/coordinate.ts +104 -0
- package/src/fields/fields.ts +505 -0
- package/src/fields/index.ts +3 -0
- package/src/fields/point.ts +300 -0
- package/src/fs/index.ts +1 -0
- package/src/fs/run_in_dir.ts +33 -0
- package/src/index.ts +31 -0
- package/src/iterable/all.ts +32 -0
- package/src/iterable/filter.ts +77 -0
- package/src/iterable/index.ts +7 -0
- package/src/iterable/isAsyncIt.ts +8 -0
- package/src/iterable/map.ts +66 -0
- package/src/iterable/peek.ts +58 -0
- package/src/iterable/sort.ts +39 -0
- package/src/iterable/take.ts +54 -0
- package/src/iterable/toArray.ts +9 -0
- package/src/jest/setup.mjs +9 -0
- package/src/json-rpc/README.md +55 -0
- package/src/json-rpc/client/fetch.ts +103 -0
- package/src/json-rpc/client/index.ts +2 -0
- package/src/json-rpc/client/safe_json_rpc_client.ts +67 -0
- package/src/json-rpc/client/undici.ts +75 -0
- package/src/json-rpc/convert.ts +61 -0
- package/src/json-rpc/fixtures/class_a.ts +15 -0
- package/src/json-rpc/fixtures/class_b.ts +15 -0
- package/src/json-rpc/fixtures/test_state.ts +143 -0
- package/src/json-rpc/index.ts +1 -0
- package/src/json-rpc/js_utils.ts +21 -0
- package/src/json-rpc/server/index.ts +1 -0
- package/src/json-rpc/server/safe_json_rpc_server.ts +376 -0
- package/src/json-rpc/server/telemetry.ts +0 -0
- package/src/json-rpc/test/index.ts +1 -0
- package/src/json-rpc/test/integration.ts +35 -0
- package/src/log/console.ts +39 -0
- package/src/log/debug.ts +104 -0
- package/src/log/gcloud-logger-config.ts +71 -0
- package/src/log/index.ts +6 -0
- package/src/log/libp2p_logger.ts +67 -0
- package/src/log/log-filters.ts +63 -0
- package/src/log/log-levels.ts +3 -0
- package/src/log/log_fn.ts +5 -0
- package/src/log/log_history.ts +44 -0
- package/src/log/pino-logger.ts +243 -0
- package/src/message/index.ts +43 -0
- package/src/mutex/index.ts +84 -0
- package/src/mutex/mutex_database.ts +12 -0
- package/src/noir/index.ts +1 -0
- package/src/noir/noir_package_config.ts +54 -0
- package/src/promise/index.ts +2 -0
- package/src/promise/running-promise.ts +125 -0
- package/src/promise/utils.ts +29 -0
- package/src/queue/base_memory_queue.ts +138 -0
- package/src/queue/batch_queue.ts +120 -0
- package/src/queue/bounded_serial_queue.ts +100 -0
- package/src/queue/fifo_memory_queue.ts +39 -0
- package/src/queue/index.ts +6 -0
- package/src/queue/priority_memory_queue.ts +20 -0
- package/src/queue/priority_queue.ts +34 -0
- package/src/queue/semaphore.ts +33 -0
- package/src/queue/serial_queue.ts +86 -0
- package/src/retry/index.ts +100 -0
- package/src/running-promise/index.ts +1 -0
- package/src/schemas/api.ts +47 -0
- package/src/schemas/index.ts +5 -0
- package/src/schemas/parse.ts +29 -0
- package/src/schemas/schemas.ts +64 -0
- package/src/schemas/types.ts +3 -0
- package/src/schemas/utils.ts +112 -0
- package/src/serialize/buffer_reader.ts +383 -0
- package/src/serialize/field_reader.ts +184 -0
- package/src/serialize/free_funcs.ts +204 -0
- package/src/serialize/index.ts +6 -0
- package/src/serialize/serialize.ts +336 -0
- package/src/serialize/type_registry.ts +75 -0
- package/src/serialize/types.ts +40 -0
- package/src/sleep/index.ts +75 -0
- package/src/string/index.ts +31 -0
- package/src/testing/files/index.ts +69 -0
- package/src/testing/index.ts +3 -0
- package/src/testing/port_allocator.ts +31 -0
- package/src/testing/snapshot_serializer.ts +33 -0
- package/src/testing/test_data.ts +36 -0
- package/src/timer/date.ts +24 -0
- package/src/timer/elapsed.ts +23 -0
- package/src/timer/index.ts +4 -0
- package/src/timer/timeout.ts +70 -0
- package/src/timer/timer.ts +48 -0
- package/src/transport/browser/index.ts +4 -0
- package/src/transport/browser/message_port_socket.ts +48 -0
- package/src/transport/browser/shared_worker_connector.ts +21 -0
- package/src/transport/browser/shared_worker_listener.ts +53 -0
- package/src/transport/browser/worker_connector.ts +30 -0
- package/src/transport/browser/worker_listener.ts +54 -0
- package/src/transport/dispatch/create_dispatch_fn.ts +35 -0
- package/src/transport/dispatch/create_dispatch_proxy.ts +141 -0
- package/src/transport/dispatch/messages.ts +58 -0
- package/src/transport/index.ts +11 -0
- package/src/transport/interface/connector.ts +9 -0
- package/src/transport/interface/listener.ts +16 -0
- package/src/transport/interface/socket.ts +15 -0
- package/src/transport/interface/transferable.ts +125 -0
- package/src/transport/node/index.ts +2 -0
- package/src/transport/node/node_connector.ts +30 -0
- package/src/transport/node/node_connector_socket.ts +52 -0
- package/src/transport/node/node_listener.ts +34 -0
- package/src/transport/node/node_listener_socket.ts +48 -0
- package/src/transport/transport_client.ts +131 -0
- package/src/transport/transport_server.ts +108 -0
- package/src/trees/hasher.ts +39 -0
- package/src/trees/index.ts +10 -0
- package/src/trees/indexed_merkle_tree.ts +36 -0
- package/src/trees/indexed_merkle_tree_calculator.ts +94 -0
- package/src/trees/indexed_tree_leaf.ts +56 -0
- package/src/trees/membership_witness.ts +99 -0
- package/src/trees/merkle_tree.ts +72 -0
- package/src/trees/merkle_tree_calculator.ts +67 -0
- package/src/trees/sibling_path.ts +183 -0
- package/src/trees/unbalanced_merkle_tree.ts +103 -0
- package/src/trees/unbalanced_tree_store.ts +102 -0
- package/src/types/index.ts +25 -0
- package/src/url/index.ts +73 -0
- package/src/validation/index.ts +18 -0
- package/src/wasm/README.md +6 -0
- package/src/wasm/empty_wasi_sdk.ts +166 -0
- package/src/wasm/fixtures/gcd.wasm +0 -0
- package/src/wasm/fixtures/gcd.wat +27 -0
- package/src/wasm/index.ts +1 -0
- package/src/wasm/wasm_module.ts +260 -0
- package/src/worker/browser/index.ts +2 -0
- package/src/worker/browser/start_web_module.ts +24 -0
- package/src/worker/browser/web_data_store.ts +38 -0
- package/src/worker/browser/web_worker.ts +25 -0
- package/src/worker/data_store.ts +19 -0
- package/src/worker/index.ts +2 -0
- package/src/worker/node/index.ts +2 -0
- package/src/worker/node/node_data_store.ts +27 -0
- package/src/worker/node/node_worker.ts +23 -0
- package/src/worker/node/start_node_module.ts +30 -0
- package/src/worker/wasm_worker.ts +7 -0
- package/src/worker/worker_pool.ts +73 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { BarretenbergSync } from '@aztec/bb.js';
|
|
2
|
+
import { Fr, type GrumpkinScalar, Point } from '@aztec/foundation/fields';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Grumpkin elliptic curve operations.
|
|
6
|
+
*/
|
|
7
|
+
export class Grumpkin {
|
|
8
|
+
// prettier-ignore
|
|
9
|
+
static generator = Point.fromBuffer(Buffer.from([
|
|
10
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
11
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
|
12
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xcf, 0x13, 0x5e, 0x75, 0x06, 0xa4, 0x5d, 0x63,
|
|
13
|
+
0x2d, 0x27, 0x0d, 0x45, 0xf1, 0x18, 0x12, 0x94, 0x83, 0x3f, 0xc4, 0x8d, 0x82, 0x3f, 0x27, 0x2c,
|
|
14
|
+
]));
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Point generator
|
|
18
|
+
* @returns The generator for the curve.
|
|
19
|
+
*/
|
|
20
|
+
public generator(): Point {
|
|
21
|
+
return Grumpkin.generator;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Multiplies a point by a scalar (adds the point `scalar` amount of times).
|
|
26
|
+
* @param point - Point to multiply.
|
|
27
|
+
* @param scalar - Scalar to multiply by.
|
|
28
|
+
* @returns Result of the multiplication.
|
|
29
|
+
*/
|
|
30
|
+
public async mul(point: Point, scalar: GrumpkinScalar): Promise<Point> {
|
|
31
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
32
|
+
const [result] = api.getWasm().callWasmExport('ecc_grumpkin__mul', [point.toBuffer(), scalar.toBuffer()], [64]);
|
|
33
|
+
return Point.fromBuffer(Buffer.from(result));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Add two points.
|
|
38
|
+
* @param a - Point a in the addition
|
|
39
|
+
* @param b - Point b to add to a
|
|
40
|
+
* @returns Result of the addition.
|
|
41
|
+
*/
|
|
42
|
+
public async add(a: Point, b: Point): Promise<Point> {
|
|
43
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
44
|
+
const [result] = api.getWasm().callWasmExport('ecc_grumpkin__add', [a.toBuffer(), b.toBuffer()], [64]);
|
|
45
|
+
return Point.fromBuffer(Buffer.from(result));
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Multiplies a set of points by a scalar.
|
|
50
|
+
* @param points - Points to multiply.
|
|
51
|
+
* @param scalar - Scalar to multiply by.
|
|
52
|
+
* @returns Points multiplied by the scalar.
|
|
53
|
+
*/
|
|
54
|
+
public async batchMul(points: Point[], scalar: GrumpkinScalar) {
|
|
55
|
+
const concatenatedPoints: Buffer = Buffer.concat(points.map(point => point.toBuffer()));
|
|
56
|
+
|
|
57
|
+
const pointsByteLength = points.length * Point.SIZE_IN_BYTES;
|
|
58
|
+
|
|
59
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
60
|
+
const [result] = api
|
|
61
|
+
.getWasm()
|
|
62
|
+
.callWasmExport(
|
|
63
|
+
'ecc_grumpkin__batch_mul',
|
|
64
|
+
[concatenatedPoints, scalar.toBuffer(), points.length],
|
|
65
|
+
[pointsByteLength],
|
|
66
|
+
);
|
|
67
|
+
|
|
68
|
+
const parsedResult: Point[] = [];
|
|
69
|
+
for (let i = 0; i < pointsByteLength; i += 64) {
|
|
70
|
+
parsedResult.push(Point.fromBuffer(Buffer.from(result.subarray(i, i + 64))));
|
|
71
|
+
}
|
|
72
|
+
return parsedResult;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Gets a random field element.
|
|
77
|
+
* @returns Random field element.
|
|
78
|
+
*/
|
|
79
|
+
public async getRandomFr(): Promise<Fr> {
|
|
80
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
81
|
+
const [result] = api.getWasm().callWasmExport('ecc_grumpkin__get_random_scalar_mod_circuit_modulus', [], [32]);
|
|
82
|
+
return Fr.fromBuffer(Buffer.from(result));
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Converts a 512 bits long buffer to a field.
|
|
87
|
+
* @param uint512Buf - The buffer to convert.
|
|
88
|
+
* @returns Buffer representation of the field element.
|
|
89
|
+
*/
|
|
90
|
+
public async reduce512BufferToFr(uint512Buf: Buffer): Promise<Fr> {
|
|
91
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
92
|
+
const [result] = api
|
|
93
|
+
.getWasm()
|
|
94
|
+
.callWasmExport('ecc_grumpkin__reduce512_buffer_mod_circuit_modulus', [uint512Buf], [32]);
|
|
95
|
+
return Fr.fromBuffer(Buffer.from(result));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from './keccak/index.js';
|
|
2
|
+
export * from './random/index.js';
|
|
3
|
+
export * from './sha256/index.js';
|
|
4
|
+
export * from './sha512/index.js';
|
|
5
|
+
export * from './pedersen/index.js';
|
|
6
|
+
export * from './poseidon/index.js';
|
|
7
|
+
export * from './secp256k1-signer/index.js';
|
|
8
|
+
export * from './keys/index.js';
|
|
9
|
+
export * from './aes128/index.js';
|
|
10
|
+
export * from './grumpkin/index.js';
|
|
11
|
+
export * from './ecdsa/index.js';
|
|
12
|
+
export * from './secp256k1/index.js';
|
|
13
|
+
export * from './schnorr/index.js';
|
|
14
|
+
export * from './signature/index.js';
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { Keccak } from 'sha3';
|
|
2
|
+
|
|
3
|
+
import { Buffer32 } from '../../buffer/buffer32.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Computes the Keccak-256 hash of the given input buffer.
|
|
7
|
+
*
|
|
8
|
+
* @param input - The input buffer to be hashed.
|
|
9
|
+
* @returns The computed Keccak-256 hash as a Buffer.
|
|
10
|
+
*/
|
|
11
|
+
export function keccak256(input: Buffer | Buffer32) {
|
|
12
|
+
if (input instanceof Buffer32) {
|
|
13
|
+
input = input.buffer;
|
|
14
|
+
}
|
|
15
|
+
const hash = new Keccak(256);
|
|
16
|
+
return hash.update(input).digest();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Computes the keccak-256 hash of a given input string and returns the result as a hexadecimal string.
|
|
21
|
+
*/
|
|
22
|
+
export function keccak256String(input: string) {
|
|
23
|
+
const hash = new Keccak(256);
|
|
24
|
+
hash.reset();
|
|
25
|
+
hash.update(input);
|
|
26
|
+
return hash.digest('hex');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Computes the Keccak-224 hash of the given input buffer.
|
|
31
|
+
*
|
|
32
|
+
* @param input - The input buffer to be hashed.
|
|
33
|
+
* @returns The computed Keccak-224 hash as a Buffer.
|
|
34
|
+
*/
|
|
35
|
+
export function keccak224(input: Buffer) {
|
|
36
|
+
const hash = new Keccak(224);
|
|
37
|
+
return hash.update(input).digest();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Computes the Keccak-f1600 permutation of the input.
|
|
42
|
+
* @param state 25 64-bit words.
|
|
43
|
+
* @returns The permuted state.
|
|
44
|
+
*/
|
|
45
|
+
export function keccakf1600(state: bigint[]): bigint[] {
|
|
46
|
+
// Ideally we'd assert the size of the state and its constituent elements here.
|
|
47
|
+
// But since this gets included in the browser bundle, we can't use Node's assert module.
|
|
48
|
+
/* The implementation based on the "simple" implementation by Ronny Van Keer. */
|
|
49
|
+
/* Adapted from Barretenberg's CPP implementation. */
|
|
50
|
+
let Eba, Ebe, Ebi, Ebo, Ebu;
|
|
51
|
+
let Ega, Ege, Egi, Ego, Egu;
|
|
52
|
+
let Eka, Eke, Eki, Eko, Eku;
|
|
53
|
+
let Ema, Eme, Emi, Emo, Emu;
|
|
54
|
+
let Esa, Ese, Esi, Eso, Esu;
|
|
55
|
+
|
|
56
|
+
let Ba, Be, Bi, Bo, Bu;
|
|
57
|
+
|
|
58
|
+
let Da, De, Di, Do, Du;
|
|
59
|
+
|
|
60
|
+
let Aba = state[0];
|
|
61
|
+
let Abe = state[1];
|
|
62
|
+
let Abi = state[2];
|
|
63
|
+
let Abo = state[3];
|
|
64
|
+
let Abu = state[4];
|
|
65
|
+
let Aga = state[5];
|
|
66
|
+
let Age = state[6];
|
|
67
|
+
let Agi = state[7];
|
|
68
|
+
let Ago = state[8];
|
|
69
|
+
let Agu = state[9];
|
|
70
|
+
let Aka = state[10];
|
|
71
|
+
let Ake = state[11];
|
|
72
|
+
let Aki = state[12];
|
|
73
|
+
let Ako = state[13];
|
|
74
|
+
let Aku = state[14];
|
|
75
|
+
let Ama = state[15];
|
|
76
|
+
let Ame = state[16];
|
|
77
|
+
let Ami = state[17];
|
|
78
|
+
let Amo = state[18];
|
|
79
|
+
let Amu = state[19];
|
|
80
|
+
let Asa = state[20];
|
|
81
|
+
let Ase = state[21];
|
|
82
|
+
let Asi = state[22];
|
|
83
|
+
let Aso = state[23];
|
|
84
|
+
let Asu = state[24];
|
|
85
|
+
|
|
86
|
+
for (let round = 0; round < 24; round += 2) {
|
|
87
|
+
/* Round (round + 0): Axx -> Exx */
|
|
88
|
+
Ba = Aba ^ Aga ^ Aka ^ Ama ^ Asa;
|
|
89
|
+
Be = Abe ^ Age ^ Ake ^ Ame ^ Ase;
|
|
90
|
+
Bi = Abi ^ Agi ^ Aki ^ Ami ^ Asi;
|
|
91
|
+
Bo = Abo ^ Ago ^ Ako ^ Amo ^ Aso;
|
|
92
|
+
Bu = Abu ^ Agu ^ Aku ^ Amu ^ Asu;
|
|
93
|
+
|
|
94
|
+
Da = Bu ^ rol(Be, 1n);
|
|
95
|
+
De = Ba ^ rol(Bi, 1n);
|
|
96
|
+
Di = Be ^ rol(Bo, 1n);
|
|
97
|
+
Do = Bi ^ rol(Bu, 1n);
|
|
98
|
+
Du = Bo ^ rol(Ba, 1n);
|
|
99
|
+
|
|
100
|
+
Ba = Aba ^ Da;
|
|
101
|
+
Be = rol(Age ^ De, 44n);
|
|
102
|
+
Bi = rol(Aki ^ Di, 43n);
|
|
103
|
+
Bo = rol(Amo ^ Do, 21n);
|
|
104
|
+
Bu = rol(Asu ^ Du, 14n);
|
|
105
|
+
Eba = Ba ^ (~Be & Bi) ^ roundConstants[round];
|
|
106
|
+
Ebe = Be ^ (~Bi & Bo);
|
|
107
|
+
Ebi = Bi ^ (~Bo & Bu);
|
|
108
|
+
Ebo = Bo ^ (~Bu & Ba);
|
|
109
|
+
Ebu = Bu ^ (~Ba & Be);
|
|
110
|
+
|
|
111
|
+
Ba = rol(Abo ^ Do, 28n);
|
|
112
|
+
Be = rol(Agu ^ Du, 20n);
|
|
113
|
+
Bi = rol(Aka ^ Da, 3n);
|
|
114
|
+
Bo = rol(Ame ^ De, 45n);
|
|
115
|
+
Bu = rol(Asi ^ Di, 61n);
|
|
116
|
+
Ega = Ba ^ (~Be & Bi);
|
|
117
|
+
Ege = Be ^ (~Bi & Bo);
|
|
118
|
+
Egi = Bi ^ (~Bo & Bu);
|
|
119
|
+
Ego = Bo ^ (~Bu & Ba);
|
|
120
|
+
Egu = Bu ^ (~Ba & Be);
|
|
121
|
+
|
|
122
|
+
Ba = rol(Abe ^ De, 1n);
|
|
123
|
+
Be = rol(Agi ^ Di, 6n);
|
|
124
|
+
Bi = rol(Ako ^ Do, 25n);
|
|
125
|
+
Bo = rol(Amu ^ Du, 8n);
|
|
126
|
+
Bu = rol(Asa ^ Da, 18n);
|
|
127
|
+
Eka = Ba ^ (~Be & Bi);
|
|
128
|
+
Eke = Be ^ (~Bi & Bo);
|
|
129
|
+
Eki = Bi ^ (~Bo & Bu);
|
|
130
|
+
Eko = Bo ^ (~Bu & Ba);
|
|
131
|
+
Eku = Bu ^ (~Ba & Be);
|
|
132
|
+
|
|
133
|
+
Ba = rol(Abu ^ Du, 27n);
|
|
134
|
+
Be = rol(Aga ^ Da, 36n);
|
|
135
|
+
Bi = rol(Ake ^ De, 10n);
|
|
136
|
+
Bo = rol(Ami ^ Di, 15n);
|
|
137
|
+
Bu = rol(Aso ^ Do, 56n);
|
|
138
|
+
Ema = Ba ^ (~Be & Bi);
|
|
139
|
+
Eme = Be ^ (~Bi & Bo);
|
|
140
|
+
Emi = Bi ^ (~Bo & Bu);
|
|
141
|
+
Emo = Bo ^ (~Bu & Ba);
|
|
142
|
+
Emu = Bu ^ (~Ba & Be);
|
|
143
|
+
|
|
144
|
+
Ba = rol(Abi ^ Di, 62n);
|
|
145
|
+
Be = rol(Ago ^ Do, 55n);
|
|
146
|
+
Bi = rol(Aku ^ Du, 39n);
|
|
147
|
+
Bo = rol(Ama ^ Da, 41n);
|
|
148
|
+
Bu = rol(Ase ^ De, 2n);
|
|
149
|
+
Esa = Ba ^ (~Be & Bi);
|
|
150
|
+
Ese = Be ^ (~Bi & Bo);
|
|
151
|
+
Esi = Bi ^ (~Bo & Bu);
|
|
152
|
+
Eso = Bo ^ (~Bu & Ba);
|
|
153
|
+
Esu = Bu ^ (~Ba & Be);
|
|
154
|
+
|
|
155
|
+
/* Round (round + 1): Exx -> Axx */
|
|
156
|
+
|
|
157
|
+
Ba = Eba ^ Ega ^ Eka ^ Ema ^ Esa;
|
|
158
|
+
Be = Ebe ^ Ege ^ Eke ^ Eme ^ Ese;
|
|
159
|
+
Bi = Ebi ^ Egi ^ Eki ^ Emi ^ Esi;
|
|
160
|
+
Bo = Ebo ^ Ego ^ Eko ^ Emo ^ Eso;
|
|
161
|
+
Bu = Ebu ^ Egu ^ Eku ^ Emu ^ Esu;
|
|
162
|
+
|
|
163
|
+
Da = Bu ^ rol(Be, 1n);
|
|
164
|
+
De = Ba ^ rol(Bi, 1n);
|
|
165
|
+
Di = Be ^ rol(Bo, 1n);
|
|
166
|
+
Do = Bi ^ rol(Bu, 1n);
|
|
167
|
+
Du = Bo ^ rol(Ba, 1n);
|
|
168
|
+
|
|
169
|
+
Ba = Eba ^ Da;
|
|
170
|
+
Be = rol(Ege ^ De, 44n);
|
|
171
|
+
Bi = rol(Eki ^ Di, 43n);
|
|
172
|
+
Bo = rol(Emo ^ Do, 21n);
|
|
173
|
+
Bu = rol(Esu ^ Du, 14n);
|
|
174
|
+
Aba = Ba ^ (~Be & Bi) ^ roundConstants[round + 1];
|
|
175
|
+
Abe = Be ^ (~Bi & Bo);
|
|
176
|
+
Abi = Bi ^ (~Bo & Bu);
|
|
177
|
+
Abo = Bo ^ (~Bu & Ba);
|
|
178
|
+
Abu = Bu ^ (~Ba & Be);
|
|
179
|
+
|
|
180
|
+
Ba = rol(Ebo ^ Do, 28n);
|
|
181
|
+
Be = rol(Egu ^ Du, 20n);
|
|
182
|
+
Bi = rol(Eka ^ Da, 3n);
|
|
183
|
+
Bo = rol(Eme ^ De, 45n);
|
|
184
|
+
Bu = rol(Esi ^ Di, 61n);
|
|
185
|
+
Aga = Ba ^ (~Be & Bi);
|
|
186
|
+
Age = Be ^ (~Bi & Bo);
|
|
187
|
+
Agi = Bi ^ (~Bo & Bu);
|
|
188
|
+
Ago = Bo ^ (~Bu & Ba);
|
|
189
|
+
Agu = Bu ^ (~Ba & Be);
|
|
190
|
+
|
|
191
|
+
Ba = rol(Ebe ^ De, 1n);
|
|
192
|
+
Be = rol(Egi ^ Di, 6n);
|
|
193
|
+
Bi = rol(Eko ^ Do, 25n);
|
|
194
|
+
Bo = rol(Emu ^ Du, 8n);
|
|
195
|
+
Bu = rol(Esa ^ Da, 18n);
|
|
196
|
+
Aka = Ba ^ (~Be & Bi);
|
|
197
|
+
Ake = Be ^ (~Bi & Bo);
|
|
198
|
+
Aki = Bi ^ (~Bo & Bu);
|
|
199
|
+
Ako = Bo ^ (~Bu & Ba);
|
|
200
|
+
Aku = Bu ^ (~Ba & Be);
|
|
201
|
+
|
|
202
|
+
Ba = rol(Ebu ^ Du, 27n);
|
|
203
|
+
Be = rol(Ega ^ Da, 36n);
|
|
204
|
+
Bi = rol(Eke ^ De, 10n);
|
|
205
|
+
Bo = rol(Emi ^ Di, 15n);
|
|
206
|
+
Bu = rol(Eso ^ Do, 56n);
|
|
207
|
+
Ama = Ba ^ (~Be & Bi);
|
|
208
|
+
Ame = Be ^ (~Bi & Bo);
|
|
209
|
+
Ami = Bi ^ (~Bo & Bu);
|
|
210
|
+
Amo = Bo ^ (~Bu & Ba);
|
|
211
|
+
Amu = Bu ^ (~Ba & Be);
|
|
212
|
+
|
|
213
|
+
Ba = rol(Ebi ^ Di, 62n);
|
|
214
|
+
Be = rol(Ego ^ Do, 55n);
|
|
215
|
+
Bi = rol(Eku ^ Du, 39n);
|
|
216
|
+
Bo = rol(Ema ^ Da, 41n);
|
|
217
|
+
Bu = rol(Ese ^ De, 2n);
|
|
218
|
+
Asa = Ba ^ (~Be & Bi);
|
|
219
|
+
Ase = Be ^ (~Bi & Bo);
|
|
220
|
+
Asi = Bi ^ (~Bo & Bu);
|
|
221
|
+
Aso = Bo ^ (~Bu & Ba);
|
|
222
|
+
Asu = Bu ^ (~Ba & Be);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
state[0] = Aba;
|
|
226
|
+
state[1] = Abe;
|
|
227
|
+
state[2] = Abi;
|
|
228
|
+
state[3] = Abo;
|
|
229
|
+
state[4] = Abu;
|
|
230
|
+
state[5] = Aga;
|
|
231
|
+
state[6] = Age;
|
|
232
|
+
state[7] = Agi;
|
|
233
|
+
state[8] = Ago;
|
|
234
|
+
state[9] = Agu;
|
|
235
|
+
state[10] = Aka;
|
|
236
|
+
state[11] = Ake;
|
|
237
|
+
state[12] = Aki;
|
|
238
|
+
state[13] = Ako;
|
|
239
|
+
state[14] = Aku;
|
|
240
|
+
state[15] = Ama;
|
|
241
|
+
state[16] = Ame;
|
|
242
|
+
state[17] = Ami;
|
|
243
|
+
state[18] = Amo;
|
|
244
|
+
state[19] = Amu;
|
|
245
|
+
state[20] = Asa;
|
|
246
|
+
state[21] = Ase;
|
|
247
|
+
state[22] = Asi;
|
|
248
|
+
state[23] = Aso;
|
|
249
|
+
state[24] = Asu;
|
|
250
|
+
|
|
251
|
+
return state;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
function rol(x: bigint, s: bigint) {
|
|
255
|
+
return BigInt.asUintN(64, x << s) | (x >> (64n - s));
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
const roundConstants: bigint[] = [
|
|
259
|
+
0x0000000000000001n,
|
|
260
|
+
0x0000000000008082n,
|
|
261
|
+
0x800000000000808an,
|
|
262
|
+
0x8000000080008000n,
|
|
263
|
+
0x000000000000808bn,
|
|
264
|
+
0x0000000080000001n,
|
|
265
|
+
0x8000000080008081n,
|
|
266
|
+
0x8000000000008009n,
|
|
267
|
+
0x000000000000008an,
|
|
268
|
+
0x0000000000000088n,
|
|
269
|
+
0x0000000080008009n,
|
|
270
|
+
0x000000008000000an,
|
|
271
|
+
0x000000008000808bn,
|
|
272
|
+
0x800000000000008bn,
|
|
273
|
+
0x8000000000008089n,
|
|
274
|
+
0x8000000000008003n,
|
|
275
|
+
0x8000000000008002n,
|
|
276
|
+
0x8000000000000080n,
|
|
277
|
+
0x000000000000800an,
|
|
278
|
+
0x800000008000000an,
|
|
279
|
+
0x8000000080008081n,
|
|
280
|
+
0x8000000000008080n,
|
|
281
|
+
0x0000000080000001n,
|
|
282
|
+
0x8000000080008008n,
|
|
283
|
+
];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BarretenbergSync, RawBuffer } from '@aztec/bb.js';
|
|
2
|
+
|
|
3
|
+
import { Fr } from '../../fields/fields.js';
|
|
4
|
+
|
|
5
|
+
export async function vkAsFieldsMegaHonk(input: Buffer): Promise<Fr[]> {
|
|
6
|
+
const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
|
|
7
|
+
const result = api.acirVkAsFieldsMegaHonk(new RawBuffer(input));
|
|
8
|
+
|
|
9
|
+
return result.map(bbFr => Fr.fromBuffer(Buffer.from(bbFr.toBuffer()))); // TODO(#4189): remove this conversion
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './pedersen.wasm.js';
|