@brightchain/brightchain-lib 0.1.0 → 0.1.2
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 +348 -87
- package/package.json +15 -1
- package/src/browser.d.ts +5 -1
- package/src/browser.d.ts.map +1 -1
- package/src/browser.js +10 -2
- package/src/browser.js.map +1 -1
- package/src/index.d.ts +2 -1
- package/src/index.d.ts.map +1 -1
- package/src/index.js +2 -1
- package/src/index.js.map +1 -1
- package/src/lib/blockPaddingTransform.d.ts +2 -2
- package/src/lib/blockPaddingTransform.d.ts.map +1 -1
- package/src/lib/blockPaddingTransform.js +26 -9
- package/src/lib/blockPaddingTransform.js.map +1 -1
- package/src/lib/blocks/base.d.ts +1 -1
- package/src/lib/blocks/base.d.ts.map +1 -1
- package/src/lib/blocks/encryptedBlockFactory.d.ts +2 -2
- package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
- package/src/lib/blocks/encryptedBlockFactory.js +22 -16
- package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
- package/src/lib/blocks/ephemeral.d.ts +1 -1
- package/src/lib/blocks/ephemeral.d.ts.map +1 -1
- package/src/lib/blocks/ephemeral.js +8 -5
- package/src/lib/blocks/ephemeral.js.map +1 -1
- package/src/lib/blocks/memoryTuple.d.ts +13 -13
- package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
- package/src/lib/blocks/memoryTuple.js +29 -15
- package/src/lib/blocks/memoryTuple.js.map +1 -1
- package/src/lib/blocks/random.d.ts +9 -13
- package/src/lib/blocks/random.d.ts.map +1 -1
- package/src/lib/blocks/random.js +25 -24
- package/src/lib/blocks/random.js.map +1 -1
- package/src/lib/blocks/rawData.d.ts +1 -5
- package/src/lib/blocks/rawData.d.ts.map +1 -1
- package/src/lib/blocks/rawData.js +8 -8
- package/src/lib/blocks/rawData.js.map +1 -1
- package/src/lib/blocks/whitened.d.ts +12 -12
- package/src/lib/blocks/whitened.d.ts.map +1 -1
- package/src/lib/blocks/whitened.js +32 -20
- package/src/lib/blocks/whitened.js.map +1 -1
- package/src/lib/browserBrightChain.d.ts +30 -0
- package/src/lib/browserBrightChain.d.ts.map +1 -0
- package/src/lib/browserBrightChain.js +82 -0
- package/src/lib/browserBrightChain.js.map +1 -0
- package/src/lib/browserCrypto.d.ts +9 -0
- package/src/lib/browserCrypto.d.ts.map +1 -0
- package/src/lib/browserCrypto.js +34 -0
- package/src/lib/browserCrypto.js.map +1 -0
- package/src/lib/browserKeyring.d.ts +21 -0
- package/src/lib/browserKeyring.d.ts.map +1 -0
- package/src/lib/browserKeyring.js +133 -0
- package/src/lib/browserKeyring.js.map +1 -0
- package/src/lib/browserStream.d.ts +40 -0
- package/src/lib/browserStream.d.ts.map +1 -0
- package/src/lib/browserStream.js +154 -0
- package/src/lib/browserStream.js.map +1 -0
- package/src/lib/cblStream.d.ts +2 -2
- package/src/lib/cblStream.d.ts.map +1 -1
- package/src/lib/cblStream.js +21 -43
- package/src/lib/cblStream.js.map +1 -1
- package/src/lib/enumerations/systemKeyringErrorType.d.ts +2 -1
- package/src/lib/enumerations/systemKeyringErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/systemKeyringErrorType.js +1 -0
- package/src/lib/enumerations/systemKeyringErrorType.js.map +1 -1
- package/src/lib/errors/systemKeyringError.d.ts.map +1 -1
- package/src/lib/errors/systemKeyringError.js +1 -0
- package/src/lib/errors/systemKeyringError.js.map +1 -1
- package/src/lib/interfaces/blocks/base.d.ts +1 -1
- package/src/lib/interfaces/blocks/base.d.ts.map +1 -1
- package/src/lib/interfaces/keyringEntry.d.ts +3 -3
- package/src/lib/interfaces/keyringEntry.d.ts.map +1 -1
- package/src/lib/primeTupleGeneratorStream.d.ts +2 -2
- package/src/lib/primeTupleGeneratorStream.d.ts.map +1 -1
- package/src/lib/primeTupleGeneratorStream.js +19 -9
- package/src/lib/primeTupleGeneratorStream.js.map +1 -1
- package/src/lib/secureHeapStorage.d.ts.map +1 -1
- package/src/lib/secureHeapStorage.js +8 -5
- package/src/lib/secureHeapStorage.js.map +1 -1
- package/src/lib/services/fec.service.js +4 -4
- package/src/lib/services/fec.service.js.map +1 -1
- package/src/lib/services/tuple.service.d.ts +5 -5
- package/src/lib/services/tuple.service.d.ts.map +1 -1
- package/src/lib/services/tuple.service.js +47 -38
- package/src/lib/services/tuple.service.js.map +1 -1
- package/src/lib/systemKeyring.d.ts +3 -11
- package/src/lib/systemKeyring.d.ts.map +1 -1
- package/src/lib/systemKeyring.js +7 -95
- package/src/lib/systemKeyring.js.map +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PrimeTupleGeneratorStream = void 0;
|
|
4
|
-
const
|
|
4
|
+
const browserStream_1 = require("./browserStream");
|
|
5
5
|
const ephemeral_1 = require("./blocks/ephemeral");
|
|
6
6
|
const memoryTuple_1 = require("./blocks/memoryTuple");
|
|
7
7
|
const constants_1 = require("./constants");
|
|
@@ -27,7 +27,7 @@ const service_provider_1 = require("./services/service.provider");
|
|
|
27
27
|
* 3. Combines it with random and whitening blocks
|
|
28
28
|
* 4. Outputs the resulting tuple
|
|
29
29
|
*/
|
|
30
|
-
class PrimeTupleGeneratorStream extends
|
|
30
|
+
class PrimeTupleGeneratorStream extends browserStream_1.Transform {
|
|
31
31
|
constructor(blockSize, creator, whitenedBlockSource, randomBlockSource, options) {
|
|
32
32
|
super({ ...options, objectMode: true }); // Ensure objectMode is true
|
|
33
33
|
// Validate parameters
|
|
@@ -42,18 +42,28 @@ class PrimeTupleGeneratorStream extends stream_1.Transform {
|
|
|
42
42
|
}
|
|
43
43
|
this.blockSize = blockSize;
|
|
44
44
|
this.creator = creator;
|
|
45
|
-
this.buffer =
|
|
45
|
+
this.buffer = new Uint8Array(0);
|
|
46
46
|
this.randomBlockSource = randomBlockSource;
|
|
47
47
|
this.whitenedBlockSource = whitenedBlockSource;
|
|
48
48
|
}
|
|
49
49
|
async _transform(chunk, encoding, callback) {
|
|
50
50
|
try {
|
|
51
|
-
//
|
|
52
|
-
|
|
51
|
+
// Convert Buffer to Uint8Array if needed
|
|
52
|
+
let data;
|
|
53
|
+
if (chunk instanceof Uint8Array) {
|
|
54
|
+
data = chunk;
|
|
55
|
+
}
|
|
56
|
+
else if (Buffer.isBuffer(chunk)) {
|
|
57
|
+
data = new Uint8Array(chunk);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
53
60
|
throw new streamError_1.StreamError(streamErrorType_1.StreamErrorType.InputMustBeBuffer);
|
|
54
61
|
}
|
|
55
62
|
// Add chunk to buffer
|
|
56
|
-
|
|
63
|
+
const newBuffer = new Uint8Array(this.buffer.length + data.length);
|
|
64
|
+
newBuffer.set(this.buffer);
|
|
65
|
+
newBuffer.set(data, this.buffer.length);
|
|
66
|
+
this.buffer = newBuffer;
|
|
57
67
|
// Process complete blocks
|
|
58
68
|
while (this.buffer.length >= this.blockSize) {
|
|
59
69
|
await this.makeTuple();
|
|
@@ -99,7 +109,7 @@ class PrimeTupleGeneratorStream extends stream_1.Transform {
|
|
|
99
109
|
throw new invalidTupleCount_1.InvalidTupleCountError(blockCount);
|
|
100
110
|
}
|
|
101
111
|
// XOR blocks together
|
|
102
|
-
const xoredData =
|
|
112
|
+
const xoredData = new Uint8Array(sourceBlock.data);
|
|
103
113
|
for (const block of [...randomBlocks, ...whiteners]) {
|
|
104
114
|
const blockData = block.data;
|
|
105
115
|
for (let i = 0; i < xoredData.length; i++) {
|
|
@@ -129,8 +139,8 @@ class PrimeTupleGeneratorStream extends stream_1.Transform {
|
|
|
129
139
|
// Handle any remaining data
|
|
130
140
|
if (this.buffer.length > 0) {
|
|
131
141
|
// Pad the last block with zeros
|
|
132
|
-
const paddedData =
|
|
133
|
-
this.buffer
|
|
142
|
+
const paddedData = new Uint8Array(this.blockSize);
|
|
143
|
+
paddedData.set(this.buffer);
|
|
134
144
|
this.buffer = paddedData;
|
|
135
145
|
await this.makeTuple();
|
|
136
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primeTupleGeneratorStream.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/primeTupleGeneratorStream.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"primeTupleGeneratorStream.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/primeTupleGeneratorStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secureHeapStorage.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/secureHeapStorage.ts"],"names":[],"mappings":"AAEA,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"secureHeapStorage.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/secureHeapStorage.ts"],"names":[],"mappings":"AAEA,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;;IAMrC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOhD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS5C,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAS/B"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SecureHeapStorage = void 0;
|
|
4
|
-
const
|
|
4
|
+
const browserCrypto_1 = require("./browserCrypto");
|
|
5
5
|
class SecureHeapStorage {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.storage = new Map();
|
|
8
8
|
}
|
|
9
9
|
async store(key, value) {
|
|
10
|
-
// Convert to
|
|
11
|
-
const
|
|
10
|
+
// Convert to Uint8Array and store in protected memory
|
|
11
|
+
const encoder = new TextEncoder();
|
|
12
|
+
const buf = encoder.encode(value);
|
|
12
13
|
this.storage.set(key, buf);
|
|
13
14
|
}
|
|
14
15
|
async retrieve(key) {
|
|
@@ -16,13 +17,15 @@ class SecureHeapStorage {
|
|
|
16
17
|
if (!buf) {
|
|
17
18
|
throw new Error('Key not found');
|
|
18
19
|
}
|
|
19
|
-
|
|
20
|
+
const decoder = new TextDecoder();
|
|
21
|
+
return decoder.decode(buf);
|
|
20
22
|
}
|
|
21
23
|
wipe(key) {
|
|
22
24
|
const buf = this.storage.get(key);
|
|
23
25
|
if (buf) {
|
|
24
26
|
// Overwrite with random data before deletion
|
|
25
|
-
(0,
|
|
27
|
+
const randomData = (0, browserCrypto_1.randomBytes)(buf.length);
|
|
28
|
+
buf.set(randomData);
|
|
26
29
|
this.storage.delete(key);
|
|
27
30
|
}
|
|
28
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secureHeapStorage.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/secureHeapStorage.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"secureHeapStorage.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/secureHeapStorage.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAE9C,MAAa,iBAAiB;IAG5B;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,KAAa;QAC3C,sDAAsD;QACtD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,GAAW;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAEM,IAAI,CAAC,GAAW;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,GAAG,EAAE,CAAC;YACR,6CAA6C;YAC7C,MAAM,UAAU,GAAG,IAAA,2BAAW,EAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3C,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;CACF;AAhCD,8CAgCC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FecService = void 0;
|
|
4
4
|
const reed_solomon_erasure_wasm_1 = require("@subspace/reed-solomon-erasure.wasm");
|
|
5
|
-
const
|
|
5
|
+
const browserStream_1 = require("../browserStream");
|
|
6
6
|
const parity_1 = require("../blocks/parity");
|
|
7
7
|
const rawData_1 = require("../blocks/rawData");
|
|
8
8
|
const constants_1 = require("../constants");
|
|
@@ -120,7 +120,7 @@ class FecService {
|
|
|
120
120
|
.map(() => new Uint8Array(0));
|
|
121
121
|
// Handle both Buffer and Readable cases
|
|
122
122
|
const inputData = input.data;
|
|
123
|
-
if (inputData instanceof
|
|
123
|
+
if (inputData instanceof browserStream_1.Readable) {
|
|
124
124
|
throw new fecError_1.FecError(fecErrorType_1.FecErrorType.InputDataMustBeBuffer);
|
|
125
125
|
}
|
|
126
126
|
// Process each chunk
|
|
@@ -177,7 +177,7 @@ class FecService {
|
|
|
177
177
|
const availableShards = [false, ...Array(parityBlocks.length).fill(true)];
|
|
178
178
|
// Handle both Buffer and Readable cases
|
|
179
179
|
const damagedData = damagedBlock.data;
|
|
180
|
-
if (damagedData instanceof
|
|
180
|
+
if (damagedData instanceof browserStream_1.Readable) {
|
|
181
181
|
throw new fecError_1.FecError(fecErrorType_1.FecErrorType.DamagedBlockDataMustBeBuffer);
|
|
182
182
|
}
|
|
183
183
|
// Recover each shard
|
|
@@ -190,7 +190,7 @@ class FecService {
|
|
|
190
190
|
let offset = damagedChunk.length;
|
|
191
191
|
for (const block of parityBlocks) {
|
|
192
192
|
const parityData = block.data;
|
|
193
|
-
if (parityData instanceof
|
|
193
|
+
if (parityData instanceof browserStream_1.Readable) {
|
|
194
194
|
throw new fecError_1.FecError(fecErrorType_1.FecErrorType.ParityBlockDataMustBeBuffer);
|
|
195
195
|
}
|
|
196
196
|
const parityChunk = parityData.subarray(i * shardSize, (i + 1) * shardSize);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fec.service.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/fec.service.ts"],"names":[],"mappings":";;;AAAA,mFAAyE;AACzE,
|
|
1
|
+
{"version":3,"file":"fec.service.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/fec.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Member, PlatformID } from '@digitaldefiance/ecies-lib';
|
|
2
|
-
import {
|
|
2
|
+
import { Readable } from '../browserStream';
|
|
3
3
|
import { BaseBlock } from '../blocks/base';
|
|
4
4
|
import { ConstituentBlockListBlock } from '../blocks/cbl';
|
|
5
5
|
import { BlockHandle } from '../blocks/handle';
|
|
@@ -22,9 +22,9 @@ export declare class TupleService<TID extends PlatformID = Uint8Array> {
|
|
|
22
22
|
private readonly cblService;
|
|
23
23
|
constructor(checksumService: ChecksumService, cblService: CBLService<TID>);
|
|
24
24
|
/**
|
|
25
|
-
* Convert data to
|
|
25
|
+
* Convert data to Uint8Array regardless of whether it's a Readable or Uint8Array
|
|
26
26
|
*/
|
|
27
|
-
private
|
|
27
|
+
private toUint8Array;
|
|
28
28
|
/**
|
|
29
29
|
* XOR a source block with whitening and random blocks
|
|
30
30
|
*/
|
|
@@ -52,11 +52,11 @@ export declare class TupleService<TID extends PlatformID = Uint8Array> {
|
|
|
52
52
|
/**
|
|
53
53
|
* Process a data stream into tuples and create a CBL
|
|
54
54
|
*/
|
|
55
|
-
dataStreamToPlaintextTuplesAndCBL(creator: Member<TID>, blockSize: BlockSize, source:
|
|
55
|
+
dataStreamToPlaintextTuplesAndCBL(creator: Member<TID>, blockSize: BlockSize, source: Readable, sourceLength: number, whitenedBlockSource: () => WhitenedBlock | undefined, randomBlockSource: () => RandomBlock, persistTuple: (tuple: InMemoryBlockTuple) => Promise<void>): Promise<InMemoryBlockTuple>;
|
|
56
56
|
/**
|
|
57
57
|
* Process a data stream into encrypted tuples and create an encrypted CBL
|
|
58
58
|
*/
|
|
59
|
-
dataStreamToEncryptedTuplesAndCBL(creator: Member<TID>, blockSize: BlockSize, source:
|
|
59
|
+
dataStreamToEncryptedTuplesAndCBL(creator: Member<TID>, blockSize: BlockSize, source: Readable, sourceLength: number, whitenedBlockSource: () => WhitenedBlock | undefined, randomBlockSource: () => RandomBlock, persistTuple: (tuple: InMemoryBlockTuple) => Promise<void>): Promise<InMemoryBlockTuple>;
|
|
60
60
|
/**
|
|
61
61
|
* Get the number of random blocks needed for a tuple
|
|
62
62
|
* @param dataLength - The length of the data
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/tuple.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tuple.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/tuple.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TupleService = void 0;
|
|
4
|
-
const
|
|
4
|
+
const browserCrypto_1 = require("../browserCrypto");
|
|
5
5
|
const blockPaddingTransform_1 = require("../blockPaddingTransform");
|
|
6
6
|
const cbl_1 = require("../blocks/cbl");
|
|
7
7
|
const encrypted_1 = require("../blocks/encrypted");
|
|
@@ -30,20 +30,24 @@ class TupleService {
|
|
|
30
30
|
this.cblService = cblService;
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
|
-
* Convert data to
|
|
33
|
+
* Convert data to Uint8Array regardless of whether it's a Readable or Uint8Array
|
|
34
34
|
*/
|
|
35
|
-
async
|
|
36
|
-
if (Buffer.isBuffer(data)) {
|
|
37
|
-
return data;
|
|
38
|
-
}
|
|
35
|
+
async toUint8Array(data) {
|
|
39
36
|
if (data instanceof Uint8Array) {
|
|
40
|
-
return
|
|
37
|
+
return data;
|
|
41
38
|
}
|
|
42
39
|
const chunks = [];
|
|
43
40
|
for await (const chunk of data) {
|
|
44
|
-
chunks.push(
|
|
41
|
+
chunks.push(new Uint8Array(chunk));
|
|
45
42
|
}
|
|
46
|
-
|
|
43
|
+
const totalLength = chunks.reduce((sum, chunk) => sum + chunk.length, 0);
|
|
44
|
+
const result = new Uint8Array(totalLength);
|
|
45
|
+
let offset = 0;
|
|
46
|
+
for (const chunk of chunks) {
|
|
47
|
+
result.set(chunk, offset);
|
|
48
|
+
offset += chunk.length;
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
47
51
|
}
|
|
48
52
|
/**
|
|
49
53
|
* XOR a source block with whitening and random blocks
|
|
@@ -57,19 +61,19 @@ class TupleService {
|
|
|
57
61
|
throw new tupleError_1.TupleError(tupleErrorType_1.TupleErrorType.InvalidBlockCount);
|
|
58
62
|
}
|
|
59
63
|
try {
|
|
60
|
-
// Convert source data to
|
|
61
|
-
const sourceData = await this.
|
|
64
|
+
// Convert source data to Uint8Array
|
|
65
|
+
const sourceData = await this.toUint8Array(sourceBlock.data);
|
|
62
66
|
// Create a padded buffer initialized to zeros
|
|
63
|
-
const paddedData =
|
|
64
|
-
|
|
67
|
+
const paddedData = new Uint8Array(sourceBlock.blockSize);
|
|
68
|
+
paddedData.set(sourceData);
|
|
65
69
|
// XOR operations will be performed on the padded data
|
|
66
|
-
const xoredData =
|
|
70
|
+
const xoredData = new Uint8Array(paddedData);
|
|
67
71
|
// XOR with whitening blocks
|
|
68
72
|
for (const whitener of whiteners) {
|
|
69
73
|
if (whitener.blockSize !== sourceBlock.blockSize) {
|
|
70
74
|
throw new tupleError_1.TupleError(tupleErrorType_1.TupleErrorType.BlockSizeMismatch);
|
|
71
75
|
}
|
|
72
|
-
const whitenerData = await this.
|
|
76
|
+
const whitenerData = await this.toUint8Array(whitener.data);
|
|
73
77
|
for (let i = 0; i < sourceBlock.blockSize; i++) {
|
|
74
78
|
xoredData[i] ^= whitenerData[i];
|
|
75
79
|
}
|
|
@@ -79,7 +83,7 @@ class TupleService {
|
|
|
79
83
|
if (random.blockSize !== sourceBlock.blockSize) {
|
|
80
84
|
throw new tupleError_1.TupleError(tupleErrorType_1.TupleErrorType.BlockSizeMismatch);
|
|
81
85
|
}
|
|
82
|
-
const randomData = await this.
|
|
86
|
+
const randomData = await this.toUint8Array(random.data);
|
|
83
87
|
for (let i = 0; i < sourceBlock.blockSize; i++) {
|
|
84
88
|
xoredData[i] ^= randomData[i];
|
|
85
89
|
}
|
|
@@ -121,19 +125,19 @@ class TupleService {
|
|
|
121
125
|
}
|
|
122
126
|
try {
|
|
123
127
|
// Start with a padded buffer filled with cryptographically secure random data
|
|
124
|
-
const result = (0,
|
|
128
|
+
const result = (0, browserCrypto_1.randomBytes)(primeWhitenedBlock.blockSize);
|
|
125
129
|
// Get all block data upfront and ensure they're padded
|
|
126
|
-
const primeData = await this.
|
|
130
|
+
const primeData = await this.toUint8Array(primeWhitenedBlock.data);
|
|
127
131
|
const whitenerData = await Promise.all(whiteners.map(async (w) => {
|
|
128
|
-
const data = await this.
|
|
129
|
-
const padded = (0,
|
|
130
|
-
data.
|
|
132
|
+
const data = await this.toUint8Array(w.data);
|
|
133
|
+
const padded = (0, browserCrypto_1.randomBytes)(primeWhitenedBlock.blockSize);
|
|
134
|
+
padded.set(data.subarray(0, Math.min(data.length, primeWhitenedBlock.blockSize)));
|
|
131
135
|
return padded;
|
|
132
136
|
}));
|
|
133
137
|
const randomData = await Promise.all(randomBlocks.map(async (r) => {
|
|
134
|
-
const data = await this.
|
|
135
|
-
const padded = (0,
|
|
136
|
-
data.
|
|
138
|
+
const data = await this.toUint8Array(r.data);
|
|
139
|
+
const padded = (0, browserCrypto_1.randomBytes)(primeWhitenedBlock.blockSize);
|
|
140
|
+
padded.set(data.subarray(0, Math.min(data.length, primeWhitenedBlock.blockSize)));
|
|
137
141
|
return padded;
|
|
138
142
|
}));
|
|
139
143
|
// Verify block sizes
|
|
@@ -143,7 +147,7 @@ class TupleService {
|
|
|
143
147
|
}
|
|
144
148
|
});
|
|
145
149
|
// Copy prime data to result buffer, preserving random padding
|
|
146
|
-
primeData.
|
|
150
|
+
result.set(primeData.subarray(0, Math.min(primeData.length, primeWhitenedBlock.blockSize)));
|
|
147
151
|
// XOR with whitening blocks
|
|
148
152
|
for (const data of whitenerData) {
|
|
149
153
|
for (let i = 0; i < primeWhitenedBlock.blockSize; i++) {
|
|
@@ -225,13 +229,16 @@ class TupleService {
|
|
|
225
229
|
const tupleGeneratorStream = new primeTupleGeneratorStream_1.PrimeTupleGeneratorStream(blockSize, creator, whitenedBlockSource, randomBlockSource);
|
|
226
230
|
source.pipe(blockPaddingTransform).pipe(tupleGeneratorStream);
|
|
227
231
|
// Process tuples
|
|
228
|
-
let blockIDs =
|
|
232
|
+
let blockIDs = new Uint8Array(0);
|
|
229
233
|
let blockIDCount = 0;
|
|
230
234
|
await new Promise((resolve, reject) => {
|
|
231
235
|
tupleGeneratorStream.on('data', async (tuple) => {
|
|
232
236
|
try {
|
|
233
237
|
await persistTuple(tuple);
|
|
234
|
-
|
|
238
|
+
const newBlockIDs = new Uint8Array(blockIDs.length + tuple.blockIdsBuffer.length);
|
|
239
|
+
newBlockIDs.set(blockIDs);
|
|
240
|
+
newBlockIDs.set(tuple.blockIdsBuffer, blockIDs.length);
|
|
241
|
+
blockIDs = newBlockIDs;
|
|
235
242
|
blockIDCount += tuple.blocks.length;
|
|
236
243
|
}
|
|
237
244
|
catch (error) {
|
|
@@ -241,10 +248,10 @@ class TupleService {
|
|
|
241
248
|
tupleGeneratorStream.on('end', resolve);
|
|
242
249
|
tupleGeneratorStream.on('error', reject);
|
|
243
250
|
});
|
|
244
|
-
const
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
251
|
+
const headerData = this.cblService.makeCblHeader(creator, now, blockIDCount, sourceLength, blockIDs, blockSize, blockEncryptionType_1.BlockEncryptionType.None).headerData;
|
|
252
|
+
const data = new Uint8Array(headerData.length + blockIDs.length);
|
|
253
|
+
data.set(headerData);
|
|
254
|
+
data.set(blockIDs, headerData.length);
|
|
248
255
|
const checksum = this.checksumService.calculateChecksum(data);
|
|
249
256
|
// Create CBL
|
|
250
257
|
const cbl = new cbl_1.ConstituentBlockListBlock(data, creator);
|
|
@@ -306,12 +313,15 @@ class TupleService {
|
|
|
306
313
|
const tupleGeneratorStream = new primeTupleGeneratorStream_1.PrimeTupleGeneratorStream(blockSize, creator, whitenedBlockSource, randomBlockSource);
|
|
307
314
|
source.pipe(tupleGeneratorStream);
|
|
308
315
|
// Process tuples
|
|
309
|
-
let blockIDs =
|
|
316
|
+
let blockIDs = new Uint8Array(0);
|
|
310
317
|
await new Promise((resolve, reject) => {
|
|
311
318
|
tupleGeneratorStream.on('data', async (tuple) => {
|
|
312
319
|
try {
|
|
313
320
|
await persistTuple(tuple);
|
|
314
|
-
|
|
321
|
+
const newBlockIDs = new Uint8Array(blockIDs.length + tuple.blockIdsBuffer.length);
|
|
322
|
+
newBlockIDs.set(blockIDs);
|
|
323
|
+
newBlockIDs.set(tuple.blockIdsBuffer, blockIDs.length);
|
|
324
|
+
blockIDs = newBlockIDs;
|
|
315
325
|
}
|
|
316
326
|
catch (error) {
|
|
317
327
|
reject(error);
|
|
@@ -320,11 +330,10 @@ class TupleService {
|
|
|
320
330
|
tupleGeneratorStream.on('end', resolve);
|
|
321
331
|
tupleGeneratorStream.on('error', reject);
|
|
322
332
|
});
|
|
323
|
-
const cblHeader = this.cblService.makeCblHeader(creator, dateCreated, blockIDs.length, sourceLength,
|
|
324
|
-
const data =
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
]);
|
|
333
|
+
const cblHeader = this.cblService.makeCblHeader(creator, dateCreated, blockIDs.length, sourceLength, blockIDs, blockSize, blockEncryptionType_1.BlockEncryptionType.None);
|
|
334
|
+
const data = new Uint8Array(cblHeader.headerData.length + blockIDs.length);
|
|
335
|
+
data.set(cblHeader.headerData);
|
|
336
|
+
data.set(blockIDs, cblHeader.headerData.length);
|
|
328
337
|
const checksum = this.checksumService.calculateChecksum(data);
|
|
329
338
|
// Create and encrypt CBL
|
|
330
339
|
const cbl = new cbl_1.ConstituentBlockListBlock(data, creator);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.service.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/tuple.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tuple.service.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/tuple.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
export declare class SystemKeyring {
|
|
2
2
|
private static instance;
|
|
3
|
-
private
|
|
4
|
-
private readonly keys;
|
|
5
|
-
private readonly accessLog;
|
|
6
|
-
private readonly maxAccessRate;
|
|
3
|
+
private browserKeyring;
|
|
7
4
|
private constructor();
|
|
8
5
|
static getInstance(): SystemKeyring;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
retrieveKey(id: string, password: string): Promise<Buffer>;
|
|
12
|
-
private checkRateLimit;
|
|
13
|
-
private logAccess;
|
|
14
|
-
private persistToDisk;
|
|
15
|
-
private loadFromDisk;
|
|
6
|
+
storeKey(id: string, data: Uint8Array, password: string): Promise<void>;
|
|
7
|
+
retrieveKey(id: string, password: string): Promise<Uint8Array>;
|
|
16
8
|
initialize(): Promise<void>;
|
|
17
9
|
rotateKey(id: string, oldPassword: string, newPassword: string): Promise<void>;
|
|
18
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemKeyring.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/systemKeyring.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"systemKeyring.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/systemKeyring.ts"],"names":[],"mappings":"AAQA,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO;WAIO,WAAW,IAAI,aAAa;IAO7B,QAAQ,CACnB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAIH,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,SAAS,CACpB,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;CAGjB"}
|