@aztec/blob-lib 0.0.1-commit.fce3e4f → 0.0.1-commit.fffb133c

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 (83) hide show
  1. package/dest/batched_blob.d.ts +8 -2
  2. package/dest/batched_blob.d.ts.map +1 -1
  3. package/dest/blob.d.ts +11 -5
  4. package/dest/blob.d.ts.map +1 -1
  5. package/dest/blob.js +7 -6
  6. package/dest/blob_batching.d.ts +15 -2
  7. package/dest/blob_batching.d.ts.map +1 -1
  8. package/dest/blob_batching.js +6 -4
  9. package/dest/blob_utils.d.ts +3 -2
  10. package/dest/blob_utils.d.ts.map +1 -1
  11. package/dest/blob_utils.js +1 -1
  12. package/dest/circuit_types/blob_accumulator.d.ts +3 -2
  13. package/dest/circuit_types/blob_accumulator.d.ts.map +1 -1
  14. package/dest/circuit_types/blob_accumulator.js +2 -1
  15. package/dest/circuit_types/final_blob_accumulator.d.ts +3 -2
  16. package/dest/circuit_types/final_blob_accumulator.d.ts.map +1 -1
  17. package/dest/circuit_types/final_blob_accumulator.js +5 -2
  18. package/dest/circuit_types/final_blob_batching_challenges.d.ts +3 -2
  19. package/dest/circuit_types/final_blob_batching_challenges.d.ts.map +1 -1
  20. package/dest/circuit_types/final_blob_batching_challenges.js +2 -1
  21. package/dest/encoding/block_blob_data.d.ts +10 -2
  22. package/dest/encoding/block_blob_data.d.ts.map +1 -1
  23. package/dest/encoding/block_blob_data.js +11 -1
  24. package/dest/encoding/block_end_marker.d.ts +4 -3
  25. package/dest/encoding/block_end_marker.d.ts.map +1 -1
  26. package/dest/encoding/block_end_marker.js +3 -2
  27. package/dest/encoding/block_end_state_field.d.ts +2 -2
  28. package/dest/encoding/block_end_state_field.d.ts.map +1 -1
  29. package/dest/encoding/block_end_state_field.js +1 -1
  30. package/dest/encoding/checkpoint_blob_data.d.ts +2 -2
  31. package/dest/encoding/checkpoint_blob_data.d.ts.map +1 -1
  32. package/dest/encoding/checkpoint_blob_data.js +6 -6
  33. package/dest/encoding/checkpoint_end_marker.d.ts +2 -2
  34. package/dest/encoding/checkpoint_end_marker.d.ts.map +1 -1
  35. package/dest/encoding/checkpoint_end_marker.js +1 -1
  36. package/dest/encoding/fixtures.d.ts +1 -1
  37. package/dest/encoding/fixtures.d.ts.map +1 -1
  38. package/dest/encoding/fixtures.js +3 -2
  39. package/dest/encoding/tx_blob_data.d.ts +2 -2
  40. package/dest/encoding/tx_blob_data.d.ts.map +1 -1
  41. package/dest/encoding/tx_blob_data.js +1 -1
  42. package/dest/encoding/tx_start_marker.d.ts +2 -2
  43. package/dest/encoding/tx_start_marker.d.ts.map +1 -1
  44. package/dest/encoding/tx_start_marker.js +1 -1
  45. package/dest/hash.d.ts +3 -2
  46. package/dest/hash.d.ts.map +1 -1
  47. package/dest/hash.js +5 -4
  48. package/dest/index.d.ts +2 -1
  49. package/dest/index.d.ts.map +1 -1
  50. package/dest/index.js +1 -0
  51. package/dest/interface.d.ts +1 -2
  52. package/dest/interface.d.ts.map +1 -1
  53. package/dest/kzg_context.d.ts +6 -2
  54. package/dest/kzg_context.d.ts.map +1 -1
  55. package/dest/kzg_context.js +12 -3
  56. package/dest/sponge_blob.d.ts +4 -2
  57. package/dest/sponge_blob.d.ts.map +1 -1
  58. package/dest/sponge_blob.js +2 -2
  59. package/dest/testing.d.ts +1 -1
  60. package/dest/testing.d.ts.map +1 -1
  61. package/dest/testing.js +2 -1
  62. package/package.json +7 -7
  63. package/src/batched_blob.ts +2 -1
  64. package/src/blob.ts +7 -6
  65. package/src/blob_batching.ts +11 -4
  66. package/src/blob_utils.ts +2 -1
  67. package/src/circuit_types/blob_accumulator.ts +2 -1
  68. package/src/circuit_types/final_blob_accumulator.ts +2 -1
  69. package/src/circuit_types/final_blob_batching_challenges.ts +2 -1
  70. package/src/encoding/block_blob_data.ts +14 -2
  71. package/src/encoding/block_end_marker.ts +4 -3
  72. package/src/encoding/block_end_state_field.ts +1 -1
  73. package/src/encoding/checkpoint_blob_data.ts +13 -6
  74. package/src/encoding/checkpoint_end_marker.ts +1 -1
  75. package/src/encoding/fixtures.ts +3 -2
  76. package/src/encoding/tx_blob_data.ts +1 -1
  77. package/src/encoding/tx_start_marker.ts +1 -1
  78. package/src/hash.ts +6 -4
  79. package/src/index.ts +1 -0
  80. package/src/interface.ts +0 -1
  81. package/src/kzg_context.ts +12 -1
  82. package/src/sponge_blob.ts +2 -2
  83. package/src/testing.ts +2 -1
@@ -1,5 +1,5 @@
1
1
  import { CHECKPOINT_END_PREFIX } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
 
4
4
  import { BlobDeserializationError } from '../errors.js';
5
5
 
@@ -9,7 +9,8 @@ import {
9
9
  PRIVATE_LOG_SIZE_IN_FIELDS,
10
10
  } from '@aztec/constants';
11
11
  import { makeTuple } from '@aztec/foundation/array';
12
- import { Fr } from '@aztec/foundation/fields';
12
+ import { BlockNumber } from '@aztec/foundation/branded-types';
13
+ import { Fr } from '@aztec/foundation/curves/bn254';
13
14
 
14
15
  import type { BlockBlobData, BlockEndBlobData } from './block_blob_data.js';
15
16
  import type { BlockEndMarker } from './block_end_marker.js';
@@ -109,7 +110,7 @@ export function makeBlockEndMarker({
109
110
  }: { seed?: number } & Partial<BlockEndMarker> = {}): BlockEndMarker {
110
111
  return {
111
112
  numTxs: seed,
112
- blockNumber: seed + 1,
113
+ blockNumber: BlockNumber(seed + 1),
113
114
  timestamp: BigInt(seed + 2),
114
115
  ...overrides,
115
116
  };
@@ -1,5 +1,5 @@
1
1
  import { chunk } from '@aztec/foundation/collection';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { FieldReader } from '@aztec/foundation/serialize';
4
4
 
5
5
  import { BlobDeserializationError } from '../errors.js';
@@ -1,5 +1,5 @@
1
1
  import { TX_START_PREFIX } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
 
4
4
  import { BlobDeserializationError } from '../errors.js';
5
5
 
package/src/hash.ts CHANGED
@@ -1,7 +1,9 @@
1
- import { poseidon2Hash, sha256, sha256ToField } from '@aztec/foundation/crypto';
2
- import { BLS12Fr, Fr } from '@aztec/foundation/fields';
1
+ import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
2
+ import { sha256, sha256ToField } from '@aztec/foundation/crypto/sha256';
3
+ import { BLS12Fr } from '@aztec/foundation/curves/bls12';
4
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
5
 
4
- import { BYTES_PER_BLOB, BYTES_PER_COMMITMENT, kzg } from './kzg_context.js';
6
+ import { BYTES_PER_BLOB, BYTES_PER_COMMITMENT, getKzg } from './kzg_context.js';
5
7
  import { SpongeBlob } from './sponge_blob.js';
6
8
 
7
9
  const VERSIONED_HASH_VERSION_KZG = 0x01;
@@ -47,7 +49,7 @@ export function computeBlobCommitment(data: Uint8Array): Buffer {
47
49
  throw new Error(`Expected ${BYTES_PER_BLOB} bytes per blob. Got ${data.length}.`);
48
50
  }
49
51
 
50
- return Buffer.from(kzg.blobToKzgCommitment(data));
52
+ return Buffer.from(getKzg().blobToKzgCommitment(data));
51
53
  }
52
54
 
53
55
  /**
package/src/index.ts CHANGED
@@ -7,3 +7,4 @@ export * from './encoding/index.js';
7
7
  export * from './hash.js';
8
8
  export * from './interface.js';
9
9
  export * from './sponge_blob.js';
10
+ export * from './kzg_context.js';
package/src/interface.ts CHANGED
@@ -3,6 +3,5 @@
3
3
  */
4
4
  export interface BlobJson {
5
5
  blob: string;
6
- index: string;
7
6
  kzg_commitment: string;
8
7
  }
@@ -2,4 +2,15 @@ import { DasContextJs } from '@crate-crypto/node-eth-kzg';
2
2
 
3
3
  export * from '@crate-crypto/node-eth-kzg';
4
4
 
5
- export const kzg = DasContextJs.create({ usePrecomp: true });
5
+ let kzgInstance: DasContextJs | undefined;
6
+
7
+ /**
8
+ * Returns the lazily-initialized KZG context.
9
+ * The first call takes ~3 seconds to initialize the precomputation tables.
10
+ */
11
+ export function getKzg(): DasContextJs {
12
+ if (!kzgInstance) {
13
+ kzgInstance = DasContextJs.create({ usePrecomp: true });
14
+ }
15
+ return kzgInstance;
16
+ }
@@ -1,7 +1,7 @@
1
1
  import { BLOBS_PER_CHECKPOINT, FIELDS_PER_BLOB, TWO_POW_64 } from '@aztec/constants';
2
2
  import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
3
- import { poseidon2Permutation } from '@aztec/foundation/crypto';
4
- import { Fr } from '@aztec/foundation/fields';
3
+ import { poseidon2Permutation } from '@aztec/foundation/crypto/poseidon';
4
+ import { Fr } from '@aztec/foundation/curves/bn254';
5
5
  import {
6
6
  BufferReader,
7
7
  FieldReader,
package/src/testing.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { makeTuple } from '@aztec/foundation/array';
2
- import { BLS12Fq, BLS12Fr, BLS12Point, BLSPointNotOnCurveError, Fr } from '@aztec/foundation/fields';
2
+ import { BLS12Fq, BLS12Fr, BLS12Point, BLSPointNotOnCurveError } from '@aztec/foundation/curves/bls12';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
4
 
4
5
  import { Blob } from './blob.js';
5
6
  import { BlobAccumulator } from './circuit_types/blob_accumulator.js';