@opentdf/sdk 0.2.0-beta.1758 → 0.2.0-beta.1941
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 +45 -38
- package/dist/cjs/src/access.js +47 -11
- package/dist/cjs/src/auth/auth.js +5 -5
- package/dist/cjs/src/auth/oidc-clientcredentials-provider.js +1 -1
- package/dist/cjs/src/auth/oidc-externaljwt-provider.js +1 -1
- package/dist/cjs/src/auth/oidc-refreshtoken-provider.js +1 -1
- package/dist/cjs/src/auth/oidc.js +1 -1
- package/dist/cjs/src/auth/providers.js +1 -1
- package/dist/cjs/src/concurrency.js +3 -4
- package/dist/cjs/src/encodings/base64.js +4 -4
- package/dist/cjs/src/encodings/hex.js +5 -6
- package/dist/cjs/src/encodings/index.js +18 -8
- package/dist/cjs/src/errors.js +1 -1
- package/dist/cjs/src/index.js +28 -318
- package/dist/cjs/src/nanoclients.js +285 -0
- package/dist/cjs/src/nanoindex.js +47 -0
- package/dist/cjs/src/nanotdf/Client.js +18 -8
- package/dist/cjs/src/nanotdf/NanoTDF.js +1 -1
- package/dist/cjs/src/nanotdf/decrypt.js +2 -2
- package/dist/cjs/src/nanotdf/encrypt-dataset.js +2 -2
- package/dist/cjs/src/nanotdf/encrypt.js +2 -2
- package/dist/cjs/src/nanotdf/helpers/calculateByCurve.js +3 -4
- package/dist/cjs/src/nanotdf/helpers/getHkdfSalt.js +2 -2
- package/dist/cjs/src/nanotdf/models/Ciphers.js +3 -3
- package/dist/cjs/src/nanotdf/models/EcCurves.js +3 -3
- package/dist/cjs/src/nanotdf/models/Header.js +1 -1
- package/dist/cjs/src/nanotdf/models/Payload.js +1 -1
- package/dist/cjs/src/nanotdf/models/Policy/AbstractPolicy.js +1 -1
- package/dist/cjs/src/nanotdf/models/Policy/EmbeddedPolicy.js +1 -1
- package/dist/cjs/src/nanotdf/models/Policy/PolicyFactory.js +1 -1
- package/dist/cjs/src/nanotdf/models/ResourceLocator.js +1 -1
- package/dist/cjs/src/nanotdf/models/Signature.js +1 -1
- package/dist/cjs/src/nanotdf-crypto/ciphers.js +1 -1
- package/dist/cjs/src/nanotdf-crypto/decrypt.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/digest.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/ecdsaSignature.js +4 -5
- package/dist/cjs/src/nanotdf-crypto/encrypt.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/exportCryptoKey.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/generateKeyPair.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/generateRandomNumber.js +2 -2
- package/dist/cjs/src/nanotdf-crypto/index.js +21 -13
- package/dist/cjs/src/nanotdf-crypto/keyAgreement.js +10 -8
- package/dist/cjs/src/nanotdf-crypto/pemPublicToCrypto.js +20 -11
- package/dist/cjs/src/opentdf.js +243 -0
- package/dist/cjs/src/policy/api.js +2 -3
- package/dist/cjs/src/policy/granter.js +3 -4
- package/dist/cjs/src/seekable.js +157 -0
- package/dist/cjs/src/tdf/AttributeObject.js +2 -4
- package/dist/cjs/src/tdf/Policy.js +1 -2
- package/dist/cjs/src/utils.js +12 -14
- package/dist/cjs/src/version.js +6 -2
- package/dist/cjs/tdf3/index.js +27 -15
- package/dist/cjs/tdf3/src/assertions.js +25 -11
- package/dist/cjs/tdf3/src/binary.js +1 -1
- package/dist/cjs/tdf3/src/ciphers/aes-gcm-cipher.js +1 -1
- package/dist/cjs/tdf3/src/ciphers/symmetric-cipher-base.js +1 -1
- package/dist/cjs/tdf3/src/client/DecoratedReadableStream.js +7 -74
- package/dist/cjs/tdf3/src/client/builders.js +26 -22
- package/dist/cjs/tdf3/src/client/index.js +88 -61
- package/dist/cjs/tdf3/src/client/validation.js +3 -3
- package/dist/cjs/tdf3/src/crypto/crypto-utils.js +1 -1
- package/dist/cjs/tdf3/src/crypto/index.js +18 -18
- package/dist/cjs/tdf3/src/index.js +22 -11
- package/dist/cjs/tdf3/src/models/attribute-set.js +1 -1
- package/dist/cjs/tdf3/src/models/encryption-information.js +3 -3
- package/dist/cjs/tdf3/src/models/key-access.js +67 -35
- package/dist/cjs/tdf3/src/models/policy.js +3 -3
- package/dist/cjs/tdf3/src/tdf.js +177 -151
- package/dist/cjs/tdf3/src/utils/buffer-crc32.js +2 -3
- package/dist/cjs/tdf3/src/utils/index.js +30 -28
- package/dist/cjs/tdf3/src/utils/keysplit.js +4 -5
- package/dist/cjs/tdf3/src/utils/unwrap.js +21 -0
- package/dist/cjs/tdf3/src/utils/zip-reader.js +4 -4
- package/dist/cjs/tdf3/src/utils/zip-writer.js +4 -4
- package/dist/types/src/access.d.ts +3 -0
- package/dist/types/src/access.d.ts.map +1 -1
- package/dist/types/src/auth/providers.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +5 -136
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/nanoclients.d.ts +107 -0
- package/dist/types/src/nanoclients.d.ts.map +1 -0
- package/dist/types/src/nanoindex.d.ts +5 -0
- package/dist/types/src/nanoindex.d.ts.map +1 -0
- package/dist/types/src/nanotdf/enum/CipherEnum.d.ts +1 -1
- package/dist/types/src/nanotdf/enum/CipherEnum.d.ts.map +1 -1
- package/dist/types/src/nanotdf/enum/PolicyTypeEnum.d.ts +1 -1
- package/dist/types/src/nanotdf/enum/PolicyTypeEnum.d.ts.map +1 -1
- package/dist/types/src/nanotdf/models/DefaultParams.d.ts +1 -1
- package/dist/types/src/nanotdf/models/ResourceLocator.d.ts.map +1 -1
- package/dist/types/src/nanotdf-crypto/generateKeyPair.d.ts +1 -1
- package/dist/types/src/nanotdf-crypto/generateKeyPair.d.ts.map +1 -1
- package/dist/types/src/nanotdf-crypto/generateRandomNumber.d.ts +1 -1
- package/dist/types/src/nanotdf-crypto/generateRandomNumber.d.ts.map +1 -1
- package/dist/types/src/nanotdf-crypto/index.d.ts +2 -3
- package/dist/types/src/nanotdf-crypto/index.d.ts.map +1 -1
- package/dist/types/src/nanotdf-crypto/keyAgreement.d.ts.map +1 -1
- package/dist/types/src/opentdf.d.ts +106 -0
- package/dist/types/src/opentdf.d.ts.map +1 -0
- package/dist/types/src/seekable.d.ts +39 -0
- package/dist/types/src/seekable.d.ts.map +1 -0
- package/dist/types/src/tdf/AttributeObject.d.ts +0 -2
- package/dist/types/src/tdf/AttributeObject.d.ts.map +1 -1
- package/dist/types/src/tdf/NanoTDF/NanoTDF.d.ts +2 -2
- package/dist/types/src/tdf/NanoTDF/NanoTDF.d.ts.map +1 -1
- package/dist/types/src/tdf/Policy.d.ts.map +1 -1
- package/dist/types/src/tdf/PolicyObject.d.ts +0 -1
- package/dist/types/src/tdf/PolicyObject.d.ts.map +1 -1
- package/dist/types/src/utils.d.ts +0 -1
- package/dist/types/src/utils.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +4 -0
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/types/tdf3/index.d.ts +3 -2
- package/dist/types/tdf3/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/assertions.d.ts +3 -3
- package/dist/types/tdf3/src/assertions.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/DecoratedReadableStream.d.ts +1 -13
- package/dist/types/tdf3/src/client/DecoratedReadableStream.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/builders.d.ts +43 -37
- package/dist/types/tdf3/src/client/builders.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/index.d.ts +8 -9
- package/dist/types/tdf3/src/client/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/validation.d.ts +3 -3
- package/dist/types/tdf3/src/client/validation.d.ts.map +1 -1
- package/dist/types/tdf3/src/crypto/crypto-utils.d.ts.map +1 -1
- package/dist/types/tdf3/src/index.d.ts +1 -1
- package/dist/types/tdf3/src/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/models/key-access.d.ts +63 -15
- package/dist/types/tdf3/src/models/key-access.d.ts.map +1 -1
- package/dist/types/tdf3/src/models/manifest.d.ts +2 -0
- package/dist/types/tdf3/src/models/manifest.d.ts.map +1 -1
- package/dist/types/tdf3/src/models/policy.d.ts +0 -1
- package/dist/types/tdf3/src/models/policy.d.ts.map +1 -1
- package/dist/types/tdf3/src/tdf.d.ts +20 -24
- package/dist/types/tdf3/src/tdf.d.ts.map +1 -1
- package/dist/types/tdf3/src/utils/index.d.ts +0 -2
- package/dist/types/tdf3/src/utils/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/utils/unwrap.d.ts +2 -0
- package/dist/types/tdf3/src/utils/unwrap.d.ts.map +1 -0
- package/dist/types/tdf3/src/utils/zip-reader.d.ts +1 -1
- package/dist/types/tdf3/src/utils/zip-reader.d.ts.map +1 -1
- package/dist/types/tdf3/src/utils/zip-writer.d.ts +2 -2
- package/dist/web/src/access.js +40 -7
- package/dist/web/src/auth/auth.js +1 -1
- package/dist/web/src/auth/oidc-clientcredentials-provider.js +1 -1
- package/dist/web/src/auth/oidc-externaljwt-provider.js +1 -1
- package/dist/web/src/auth/oidc-refreshtoken-provider.js +1 -1
- package/dist/web/src/auth/oidc.js +1 -1
- package/dist/web/src/auth/providers.js +1 -1
- package/dist/web/src/concurrency.js +1 -1
- package/dist/web/src/encodings/base64.js +1 -1
- package/dist/web/src/encodings/hex.js +1 -1
- package/dist/web/src/errors.js +1 -1
- package/dist/web/src/index.js +6 -310
- package/dist/web/src/nanoclients.js +280 -0
- package/dist/web/src/nanoindex.js +5 -0
- package/dist/web/src/nanotdf/Client.js +1 -1
- package/dist/web/src/nanotdf/NanoTDF.js +1 -1
- package/dist/web/src/nanotdf/encrypt-dataset.js +1 -1
- package/dist/web/src/nanotdf/encrypt.js +1 -1
- package/dist/web/src/nanotdf/models/Ciphers.js +1 -1
- package/dist/web/src/nanotdf/models/EcCurves.js +1 -1
- package/dist/web/src/nanotdf/models/Header.js +1 -1
- package/dist/web/src/nanotdf/models/Payload.js +1 -1
- package/dist/web/src/nanotdf/models/Policy/AbstractPolicy.js +1 -1
- package/dist/web/src/nanotdf/models/Policy/EmbeddedPolicy.js +1 -1
- package/dist/web/src/nanotdf/models/Policy/PolicyFactory.js +1 -1
- package/dist/web/src/nanotdf/models/ResourceLocator.js +1 -1
- package/dist/web/src/nanotdf/models/Signature.js +1 -1
- package/dist/web/src/nanotdf-crypto/ciphers.js +1 -1
- package/dist/web/src/nanotdf-crypto/ecdsaSignature.js +1 -1
- package/dist/web/src/nanotdf-crypto/generateKeyPair.js +2 -2
- package/dist/web/src/nanotdf-crypto/generateRandomNumber.js +2 -2
- package/dist/web/src/nanotdf-crypto/index.js +3 -4
- package/dist/web/src/nanotdf-crypto/keyAgreement.js +9 -6
- package/dist/web/src/nanotdf-crypto/pemPublicToCrypto.js +1 -1
- package/dist/web/src/opentdf.js +234 -0
- package/dist/web/src/policy/api.js +1 -1
- package/dist/web/src/policy/granter.js +1 -1
- package/dist/web/src/seekable.js +148 -0
- package/dist/web/src/tdf/AttributeObject.js +1 -2
- package/dist/web/src/tdf/Policy.js +1 -2
- package/dist/web/src/utils.js +2 -3
- package/dist/web/src/version.js +5 -1
- package/dist/web/tdf3/index.js +3 -2
- package/dist/web/tdf3/src/assertions.js +21 -6
- package/dist/web/tdf3/src/binary.js +1 -1
- package/dist/web/tdf3/src/ciphers/aes-gcm-cipher.js +1 -1
- package/dist/web/tdf3/src/ciphers/symmetric-cipher-base.js +1 -1
- package/dist/web/tdf3/src/client/DecoratedReadableStream.js +4 -68
- package/dist/web/tdf3/src/client/builders.js +26 -22
- package/dist/web/tdf3/src/client/index.js +69 -52
- package/dist/web/tdf3/src/client/validation.js +1 -1
- package/dist/web/tdf3/src/crypto/crypto-utils.js +1 -1
- package/dist/web/tdf3/src/crypto/index.js +1 -1
- package/dist/web/tdf3/src/index.js +2 -2
- package/dist/web/tdf3/src/models/attribute-set.js +1 -1
- package/dist/web/tdf3/src/models/encryption-information.js +3 -3
- package/dist/web/tdf3/src/models/key-access.js +47 -24
- package/dist/web/tdf3/src/models/policy.js +1 -1
- package/dist/web/tdf3/src/tdf.js +149 -130
- package/dist/web/tdf3/src/utils/buffer-crc32.js +1 -1
- package/dist/web/tdf3/src/utils/index.js +1 -5
- package/dist/web/tdf3/src/utils/keysplit.js +1 -1
- package/dist/web/tdf3/src/utils/unwrap.js +18 -0
- package/dist/web/tdf3/src/utils/zip-reader.js +1 -1
- package/dist/web/tdf3/src/utils/zip-writer.js +1 -1
- package/package.json +45 -42
- package/src/access.ts +37 -1
- package/src/index.ts +5 -435
- package/src/nanoclients.ts +405 -0
- package/src/nanoindex.ts +4 -0
- package/src/nanotdf-crypto/generateKeyPair.ts +1 -1
- package/src/nanotdf-crypto/generateRandomNumber.ts +1 -1
- package/src/nanotdf-crypto/index.ts +2 -3
- package/src/nanotdf-crypto/keyAgreement.ts +14 -7
- package/src/opentdf.ts +441 -0
- package/{tdf3/src/utils/chunkers.ts → src/seekable.ts} +69 -20
- package/src/tdf/AttributeObject.ts +0 -3
- package/src/tdf/Policy.ts +0 -1
- package/src/tdf/PolicyObject.ts +0 -1
- package/src/utils.ts +1 -3
- package/src/version.ts +5 -0
- package/tdf3/index.ts +14 -2
- package/tdf3/src/assertions.ts +33 -8
- package/tdf3/src/client/DecoratedReadableStream.ts +2 -78
- package/tdf3/src/client/builders.ts +44 -26
- package/tdf3/src/client/index.ts +101 -86
- package/tdf3/src/index.ts +1 -1
- package/tdf3/src/models/encryption-information.ts +2 -2
- package/tdf3/src/models/key-access.ts +120 -38
- package/tdf3/src/models/manifest.ts +3 -0
- package/tdf3/src/models/policy.ts +0 -1
- package/tdf3/src/tdf.ts +251 -207
- package/tdf3/src/utils/index.ts +0 -5
- package/tdf3/src/utils/unwrap.ts +17 -0
- package/tdf3/src/utils/zip-reader.ts +1 -1
- package/dist/cjs/src/nanotdf-crypto/importRawKey.js +0 -18
- package/dist/cjs/tdf3/src/templates/default.html.js +0 -98
- package/dist/cjs/tdf3/src/templates/escaper.js +0 -15
- package/dist/cjs/tdf3/src/templates/index.js +0 -12
- package/dist/cjs/tdf3/src/utils/chunkers.js +0 -114
- package/dist/cjs/tdf3/src/version.js +0 -6
- package/dist/types/src/nanotdf-crypto/importRawKey.d.ts +0 -13
- package/dist/types/src/nanotdf-crypto/importRawKey.d.ts.map +0 -1
- package/dist/types/tdf3/src/templates/default.html.d.ts +0 -8
- package/dist/types/tdf3/src/templates/default.html.d.ts.map +0 -1
- package/dist/types/tdf3/src/templates/escaper.d.ts +0 -6
- package/dist/types/tdf3/src/templates/escaper.d.ts.map +0 -1
- package/dist/types/tdf3/src/templates/index.d.ts +0 -3
- package/dist/types/tdf3/src/templates/index.d.ts.map +0 -1
- package/dist/types/tdf3/src/utils/chunkers.d.ts +0 -29
- package/dist/types/tdf3/src/utils/chunkers.d.ts.map +0 -1
- package/dist/types/tdf3/src/version.d.ts +0 -3
- package/dist/types/tdf3/src/version.d.ts.map +0 -1
- package/dist/web/src/nanotdf-crypto/importRawKey.js +0 -15
- package/dist/web/tdf3/src/templates/default.html.js +0 -96
- package/dist/web/tdf3/src/templates/escaper.js +0 -10
- package/dist/web/tdf3/src/templates/index.js +0 -3
- package/dist/web/tdf3/src/utils/chunkers.js +0 -107
- package/dist/web/tdf3/src/version.js +0 -3
- package/src/nanotdf-crypto/importRawKey.ts +0 -19
- package/tdf3/src/templates/default.html.ts +0 -105
- package/tdf3/src/templates/escaper.ts +0 -10
- package/tdf3/src/templates/index.ts +0 -2
- package/tdf3/src/version.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnE,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Client, NanoTDF } from './nanotdf/index.js';
|
|
2
|
+
import { type TypedArray } from './tdf/TypedArray.js';
|
|
3
|
+
import { ClientConfig } from './nanotdf/Client.js';
|
|
4
|
+
export type EncryptOptions = {
|
|
5
|
+
ecdsaBinding: boolean;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* NanoTDF SDK Client. Deprecated in favor of OpenTDF.
|
|
9
|
+
*
|
|
10
|
+
*/
|
|
11
|
+
export declare class NanoTDFClient extends Client {
|
|
12
|
+
/**
|
|
13
|
+
* Decrypt ciphertext
|
|
14
|
+
*
|
|
15
|
+
* Pass a base64 string, TypedArray, or ArrayBuffer ciphertext and get a promise which resolves plaintext
|
|
16
|
+
*
|
|
17
|
+
* @param ciphertext Ciphertext to decrypt
|
|
18
|
+
*/
|
|
19
|
+
decrypt(ciphertext: string | TypedArray | ArrayBuffer): Promise<ArrayBuffer>;
|
|
20
|
+
/**
|
|
21
|
+
* Decrypt ciphertext of the legacy TDF, with the older, smaller i.v. calculation.
|
|
22
|
+
*
|
|
23
|
+
* Pass a base64 string, TypedArray, or ArrayBuffer ciphertext and get a promise which resolves plaintext
|
|
24
|
+
*
|
|
25
|
+
* @param ciphertext Ciphertext to decrypt
|
|
26
|
+
*/
|
|
27
|
+
decryptLegacyTDF(ciphertext: string | TypedArray | ArrayBuffer): Promise<ArrayBuffer>;
|
|
28
|
+
/**
|
|
29
|
+
* Encrypts the given data using the NanoTDF encryption scheme.
|
|
30
|
+
*
|
|
31
|
+
* @param {string | TypedArray | ArrayBuffer} data - The data to be encrypted.
|
|
32
|
+
* @param {EncryptOptions} [options=defaultOptions] - The encryption options (currently unused).
|
|
33
|
+
* @returns {Promise<ArrayBuffer>} A promise that resolves to the encrypted data as an ArrayBuffer.
|
|
34
|
+
* @throws {Error} If the initialization vector is not a number.
|
|
35
|
+
*/
|
|
36
|
+
encrypt(data: string | TypedArray | ArrayBuffer, options?: EncryptOptions): Promise<ArrayBuffer>;
|
|
37
|
+
}
|
|
38
|
+
export type DatasetConfig = ClientConfig & {
|
|
39
|
+
maxKeyIterations?: number;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* NanoTDF Dataset SDK Client
|
|
43
|
+
*
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```
|
|
47
|
+
* import { clientSecretAuthProvider, NanoTDFDatasetClient } from '@opentdf/sdk';
|
|
48
|
+
*
|
|
49
|
+
* const OIDC_ENDPOINT = 'http://localhost:65432/auth/realms/opentdf';
|
|
50
|
+
* const KAS_URL = 'http://localhost:65432/api/kas/';
|
|
51
|
+
*
|
|
52
|
+
* const ciphertext = '...';
|
|
53
|
+
* const client = new NanoTDFDatasetClient({
|
|
54
|
+
* authProvider: await clientSecretAuthProvider({
|
|
55
|
+
* clientId: 'tdf-client',
|
|
56
|
+
* clientSecret: '123-456',
|
|
57
|
+
* exchange: 'client',
|
|
58
|
+
* oidcOrigin: OIDC_ENDPOINT,
|
|
59
|
+
* }),
|
|
60
|
+
* kasEndpoint: KAS_URL,
|
|
61
|
+
* });
|
|
62
|
+
* const plaintext = client.decrypt(ciphertext);
|
|
63
|
+
* console.log('Plaintext', plaintext);
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export declare class NanoTDFDatasetClient extends Client {
|
|
67
|
+
static readonly NTDF_MAX_KEY_ITERATIONS = 8388606;
|
|
68
|
+
private maxKeyIteration;
|
|
69
|
+
private keyIterationCount;
|
|
70
|
+
private cachedEphemeralKey?;
|
|
71
|
+
private unwrappedKey?;
|
|
72
|
+
private symmetricKey?;
|
|
73
|
+
private cachedHeader?;
|
|
74
|
+
private ecdsaBinding;
|
|
75
|
+
/**
|
|
76
|
+
* Create new NanoTDF Dataset Client
|
|
77
|
+
*
|
|
78
|
+
* The Ephemeral Key Pair can either be provided or will be generate when fetching the entity object. Once set it
|
|
79
|
+
* cannot be changed. If a new ephemeral key is desired it a new client should be initialized.
|
|
80
|
+
* There is no performance impact for creating a new client IFF the ephemeral key pair is provided.
|
|
81
|
+
*
|
|
82
|
+
* @param clientConfig OIDC client credentials
|
|
83
|
+
* @param kasUrl Key access service URL
|
|
84
|
+
* @param ephemeralKeyPair (optional) ephemeral key pair to use
|
|
85
|
+
* @param maxKeyIterations Max iteration to performe without a key rotation
|
|
86
|
+
*/
|
|
87
|
+
constructor(opts: DatasetConfig);
|
|
88
|
+
/**
|
|
89
|
+
* Encrypt data
|
|
90
|
+
*
|
|
91
|
+
* Pass a string, TypedArray, or ArrayBuffer data and get a promise which resolves ciphertext
|
|
92
|
+
*
|
|
93
|
+
* @param data to decrypt
|
|
94
|
+
*/
|
|
95
|
+
encrypt(data: string | TypedArray | ArrayBuffer, options?: EncryptOptions): Promise<ArrayBuffer>;
|
|
96
|
+
/**
|
|
97
|
+
* Decrypt ciphertext
|
|
98
|
+
*
|
|
99
|
+
* Pass a base64 string, TypedArray, or ArrayBuffer ciphertext and get a promise which resolves plaintext
|
|
100
|
+
*
|
|
101
|
+
* @param ciphertext Ciphertext to decrypt
|
|
102
|
+
*/
|
|
103
|
+
decrypt(ciphertext: string | TypedArray | ArrayBuffer): Promise<ArrayBuffer>;
|
|
104
|
+
rewrapAndDecrypt(nanotdf: NanoTDF): Promise<ArrayBuffer>;
|
|
105
|
+
generateIV(): Uint8Array;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=nanoclients.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nanoclients.d.ts","sourceRoot":"","sources":["../../../src/nanoclients.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,OAAO,EAOR,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAOF;;;GAGG;AACH,qBAAa,aAAc,SAAQ,MAAM;IACvC;;;;;;OAMG;IACG,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAuBlF;;;;;;OAMG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAoB3F;;;;;;;OAOG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC;CAyDxB;AAED,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,oBAAqB,SAAQ,MAAM;IAG9C,MAAM,CAAC,QAAQ,CAAC,uBAAuB,WAAW;IAElD,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,kBAAkB,CAAC,CAAa;IACxC,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAU;IAE9B;;;;;;;;;;;OAWG;gBACS,IAAI,EAAE,aAAa;IAe/B;;;;;;OAMG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,EACvC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC;IA+EvB;;;;;;OAMG;IACG,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAuB5E,gBAAgB,CAAC,OAAO,EAAE,OAAO;IAsBvC,UAAU,IAAI,UAAU;CAkCzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nanoindex.d.ts","sourceRoot":"","sources":["../../../src/nanoindex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CipherEnum.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/enum/CipherEnum.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,cAAc,IAAA;
|
|
1
|
+
{"version":3,"file":"CipherEnum.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/enum/CipherEnum.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,cAAc,IAAA,CAAE,iBAAiB;IACjC,cAAc,IAAA;IACd,eAAe,IAAA;IACf,eAAe,IAAA;IACf,eAAe,IAAA;IACf,eAAe,IAAA;CAChB;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolicyTypeEnum.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/enum/PolicyTypeEnum.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,MAAM,IAAA;IACN,YAAY,IAAA;IACZ,iBAAiB,IAAA;
|
|
1
|
+
{"version":3,"file":"PolicyTypeEnum.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/enum/PolicyTypeEnum.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,MAAM,IAAA;IACN,YAAY,IAAA;IACZ,iBAAiB,IAAA,CAAE,iBAAiB;IACpC,oBAAoB,IAAA;CACrB;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -9,7 +9,7 @@ import PolicyTypeEnum from '../enum/PolicyTypeEnum.js';
|
|
|
9
9
|
declare const DefaultParams: {
|
|
10
10
|
ecdsaBinding: boolean;
|
|
11
11
|
ephemeralCurveName: CurveNameEnum;
|
|
12
|
-
magicNumberVersion: Uint8Array
|
|
12
|
+
magicNumberVersion: Uint8Array<ArrayBufferLike>;
|
|
13
13
|
offlineMode: boolean;
|
|
14
14
|
policyType: PolicyTypeEnum;
|
|
15
15
|
signature: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLocator.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/models/ResourceLocator.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,6BAA6B,MAAM,0CAA0C,CAAC;AAErF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAYhC,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"ResourceLocator.d.ts","sourceRoot":"","sources":["../../../../../src/nanotdf/models/ResourceLocator.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,6BAA6B,MAAM,0CAA0C,CAAC;AAErF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAYhC,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM;IACpB,QAAQ,CAAC,MAAM,EAAE,6BAA6B;IAhBhD,MAAM,CAAC,QAAQ,CAAC,eAAe,KAAK;IACpC,MAAM,CAAC,QAAQ,CAAC,eAAe,KAAK;IACpC,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAK;IAClC,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAK;IAClC,MAAM,CAAC,QAAQ,CAAC,WAAW,KAAK;IAChC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAU;IACnD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAU;IACnD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAU;IACnD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAU;gBAGzC,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,EAAE,CAAC,EAAE,MAAM,YAAA,EACX,MAAM,GAAE,6BAAkE;IAGrF;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe;IA2CjE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU;IAiE7B;;;;OAIG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,KAAK,CASxB;IAED;;OAEG;IACH,QAAQ,IAAI,UAAU;IAuBtB;;;;;OAKG;IACH,IAAI,UAAU,IAAI,MAAM,CAEvB;CACF"}
|
|
@@ -5,6 +5,6 @@ interface GenerateKeyPairOptions {
|
|
|
5
5
|
keyUsages: Array<KeyUsageType>;
|
|
6
6
|
isExtractable: boolean;
|
|
7
7
|
}
|
|
8
|
-
export
|
|
8
|
+
export declare function generateKeyPair({ type: name, curve: namedCurve, keyUsages, isExtractable }?: GenerateKeyPairOptions): Promise<CryptoKeyPair | never>;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=generateKeyPair.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateKeyPair.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/generateKeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAErE,UAAU,sBAAsB;IAC9B,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC;IAC/C,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,
|
|
1
|
+
{"version":3,"file":"generateKeyPair.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/generateKeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAErE,UAAU,sBAAsB;IAC9B,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC;IAC/C,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,eAAe,CACnC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,GAAE,sBAK5D,GACA,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAEhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRandomNumber.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/generateRandomNumber.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"generateRandomNumber.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/generateRandomNumber.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAI/D"}
|
|
@@ -2,11 +2,10 @@ export { Ciphers } from './ciphers.js';
|
|
|
2
2
|
export { default as decrypt } from './decrypt.js';
|
|
3
3
|
export { default as digest } from './digest.js';
|
|
4
4
|
export { default as encrypt } from './encrypt.js';
|
|
5
|
-
export {
|
|
6
|
-
export { default as importRawKey } from './importRawKey.js';
|
|
5
|
+
export { generateKeyPair } from './generateKeyPair.js';
|
|
7
6
|
export { keyAgreement } from './keyAgreement.js';
|
|
8
7
|
export { default as exportCryptoKey } from './exportCryptoKey.js';
|
|
9
|
-
export {
|
|
8
|
+
export { generateRandomNumber } from './generateRandomNumber.js';
|
|
10
9
|
export { pemPublicToCrypto, pemCertToCrypto } from './pemPublicToCrypto.js';
|
|
11
10
|
export * as enums from './enums.js';
|
|
12
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyAgreement.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/keyAgreement.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"keyAgreement.d.ts","sourceRoot":"","sources":["../../../../src/nanotdf-crypto/keyAgreement.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA4BH,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,uBAAuB,CAAC;IAClC,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,GAAG,WAAW,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,SAAS,EACrB,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,OAAO,CAAC,mBAAmB,CAcnC,GACA,OAAO,CAAC,SAAS,CAAC,CA0EpB"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { type AuthProvider } from './auth/providers.js';
|
|
2
|
+
export { Client as TDF3Client } from '../tdf3/src/client/index.js';
|
|
3
|
+
import Header from './nanotdf/models/Header.js';
|
|
4
|
+
import { type Source } from './seekable.js';
|
|
5
|
+
import { AssertionConfig, AssertionVerificationKeys } from '../tdf3/src/assertions.js';
|
|
6
|
+
import { type KasPublicKeyAlgorithm, isPublicKeyAlgorithm } from './access.js';
|
|
7
|
+
import { type Manifest } from '../tdf3/src/models/manifest.js';
|
|
8
|
+
export { type KasPublicKeyAlgorithm, isPublicKeyAlgorithm };
|
|
9
|
+
export type Keys = {
|
|
10
|
+
[keyID: string]: CryptoKey | CryptoKeyPair;
|
|
11
|
+
};
|
|
12
|
+
export type CreateOptions = {
|
|
13
|
+
autoconfigure?: boolean;
|
|
14
|
+
attributes?: string[];
|
|
15
|
+
byteLimit?: number;
|
|
16
|
+
defaultKASEndpoint?: string;
|
|
17
|
+
signers?: Keys;
|
|
18
|
+
source: Source;
|
|
19
|
+
};
|
|
20
|
+
export type CreateNanoTDFOptions = CreateOptions & {
|
|
21
|
+
bindingType?: 'ecdsa' | 'gmac';
|
|
22
|
+
ecdsaBindingKeyID?: string;
|
|
23
|
+
signingKeyID?: string;
|
|
24
|
+
};
|
|
25
|
+
export type CreateNanoTDFCollectionOptions = CreateNanoTDFOptions & {
|
|
26
|
+
maxKeyIterations?: number;
|
|
27
|
+
};
|
|
28
|
+
export type Metadata = object;
|
|
29
|
+
export type MimeType = `${string}/${string}`;
|
|
30
|
+
export type SplitStep = {
|
|
31
|
+
kas: string;
|
|
32
|
+
sid?: string;
|
|
33
|
+
};
|
|
34
|
+
export type CreateZTDFOptions = CreateOptions & {
|
|
35
|
+
assertionConfigs?: AssertionConfig[];
|
|
36
|
+
metadata?: Metadata;
|
|
37
|
+
mimeType?: MimeType;
|
|
38
|
+
splitPlan?: SplitStep[];
|
|
39
|
+
windowSize?: number;
|
|
40
|
+
wrappingKeyAlgorithm?: KasPublicKeyAlgorithm;
|
|
41
|
+
};
|
|
42
|
+
export type ReadOptions = {
|
|
43
|
+
source: Source;
|
|
44
|
+
allowedKASEndpoints?: string[];
|
|
45
|
+
ignoreAllowlist?: boolean;
|
|
46
|
+
assertionVerificationKeys?: AssertionVerificationKeys;
|
|
47
|
+
noVerify?: boolean;
|
|
48
|
+
concurrencyLimit?: number;
|
|
49
|
+
wrappingKeyAlgorithm?: KasPublicKeyAlgorithm;
|
|
50
|
+
};
|
|
51
|
+
export type OpenTDFOptions = {
|
|
52
|
+
policyEndpoint?: string;
|
|
53
|
+
authProvider: AuthProvider;
|
|
54
|
+
defaultCreateOptions?: Omit<CreateOptions, 'source'>;
|
|
55
|
+
defaultReadOptions?: Omit<ReadOptions, 'source'>;
|
|
56
|
+
disableDPoP?: boolean;
|
|
57
|
+
dpopKeys?: Promise<CryptoKeyPair>;
|
|
58
|
+
rewrapCacheOptions?: RewrapCacheOptions;
|
|
59
|
+
};
|
|
60
|
+
export type DecoratedStream = ReadableStream<Uint8Array> & {
|
|
61
|
+
metadata?: Promise<unknown>;
|
|
62
|
+
manifest?: Promise<Manifest>;
|
|
63
|
+
header?: Header;
|
|
64
|
+
};
|
|
65
|
+
export type RewrapCacheOptions = {
|
|
66
|
+
bypass?: boolean;
|
|
67
|
+
maxAge?: number;
|
|
68
|
+
pollInterval?: number;
|
|
69
|
+
};
|
|
70
|
+
export declare class RewrapCache {
|
|
71
|
+
private cache?;
|
|
72
|
+
private closer?;
|
|
73
|
+
constructor(opts?: RewrapCacheOptions);
|
|
74
|
+
get(key: Uint8Array): CryptoKey | undefined;
|
|
75
|
+
set(key: Uint8Array, value: CryptoKey): void;
|
|
76
|
+
close(): void;
|
|
77
|
+
}
|
|
78
|
+
export declare class OpenTDF {
|
|
79
|
+
readonly policyEndpoint: string;
|
|
80
|
+
readonly authProvider: AuthProvider;
|
|
81
|
+
readonly dpopEnabled: boolean;
|
|
82
|
+
defaultCreateOptions: Omit<CreateOptions, 'source'>;
|
|
83
|
+
defaultReadOptions: Omit<ReadOptions, 'source'>;
|
|
84
|
+
readonly dpopKeys: Promise<CryptoKeyPair>;
|
|
85
|
+
private readonly rewrapCache;
|
|
86
|
+
private tdf3Client;
|
|
87
|
+
constructor({ authProvider, dpopKeys, defaultCreateOptions, defaultReadOptions, disableDPoP, policyEndpoint, rewrapCacheOptions, }: OpenTDFOptions);
|
|
88
|
+
createNanoTDF(opts: CreateNanoTDFOptions): Promise<DecoratedStream>;
|
|
89
|
+
/**
|
|
90
|
+
* Creates a new collection object, which can be used to encrypt a series of data with the same policy.
|
|
91
|
+
* @returns
|
|
92
|
+
*/
|
|
93
|
+
createNanoTDFCollection(opts: CreateNanoTDFCollectionOptions): Promise<NanoTDFCollection>;
|
|
94
|
+
createZTDF(opts: CreateZTDFOptions): Promise<DecoratedStream>;
|
|
95
|
+
/**
|
|
96
|
+
* Decrypts a nanotdf object. Optionally, stores the collection header and its DEK.
|
|
97
|
+
* @param ciphertext
|
|
98
|
+
*/
|
|
99
|
+
read(opts: ReadOptions): Promise<DecoratedStream>;
|
|
100
|
+
close(): void;
|
|
101
|
+
}
|
|
102
|
+
export type NanoTDFCollection = {
|
|
103
|
+
encrypt: (source: Source) => Promise<ReadableStream<Uint8Array>>;
|
|
104
|
+
close: () => Promise<void>;
|
|
105
|
+
};
|
|
106
|
+
//# sourceMappingURL=opentdf.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opentdf.d.ts","sourceRoot":"","sources":["../../../src/opentdf.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read data from a seekable stream.
|
|
3
|
+
* This is an abstraction for URLs with range queries and local file objects.
|
|
4
|
+
* @param byteStart First byte to read. If negative, reads from the end. If absent, reads everything
|
|
5
|
+
* @param byteEnd Index after last byte to read (exclusive)
|
|
6
|
+
*/
|
|
7
|
+
export type Chunker = (byteStart?: number, byteEnd?: number) => Promise<Uint8Array>;
|
|
8
|
+
/**
|
|
9
|
+
* Type union for a variety of inputs.
|
|
10
|
+
*/
|
|
11
|
+
export type Source = {
|
|
12
|
+
type: 'buffer';
|
|
13
|
+
location: Uint8Array;
|
|
14
|
+
} | {
|
|
15
|
+
type: 'chunker';
|
|
16
|
+
location: Chunker;
|
|
17
|
+
} | {
|
|
18
|
+
type: 'file-browser';
|
|
19
|
+
location: Blob;
|
|
20
|
+
} | {
|
|
21
|
+
type: 'remote';
|
|
22
|
+
location: string;
|
|
23
|
+
} | {
|
|
24
|
+
type: 'stream';
|
|
25
|
+
location: ReadableStream<Uint8Array>;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Creates a seekable object from a browser file object.
|
|
29
|
+
* @param fileRef the browser file data
|
|
30
|
+
*/
|
|
31
|
+
export declare const fromBrowserFile: (fileRef: Blob) => Chunker;
|
|
32
|
+
export declare const fromBuffer: (source: Uint8Array) => Chunker;
|
|
33
|
+
export declare const fromString: (source: string) => Chunker;
|
|
34
|
+
export declare const fromUrl: (location: string) => Promise<Chunker>;
|
|
35
|
+
export declare const fromSource: ({ type, location }: Source) => Promise<Chunker>;
|
|
36
|
+
export declare function sourceToStream(source: Source): Promise<ReadableStream<Uint8Array>>;
|
|
37
|
+
export declare const fromDataSource: ({ type, location }: Source) => Promise<Chunker>;
|
|
38
|
+
export type DataSource = Source;
|
|
39
|
+
//# sourceMappingURL=seekable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seekable.d.ts","sourceRoot":"","sources":["../../../src/seekable.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAEpF;;GAEG;AACH,MAAM,MAAM,MAAM,GACd;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;CAAE,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,eAAe,YAAa,IAAI,KAAG,OAS/C,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,KAAG,OAI/C,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,OAE3C,CAAC;AAqDF,eAAO,MAAM,OAAO,aAAoB,MAAM,KAAG,OAAO,CAAC,OAAO,CAc/D,CAAC;AAEF,eAAO,MAAM,UAAU,uBAA8B,MAAM,KAAG,OAAO,CAAC,OAAO,CA2B5E,CAAC;AAEF,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAgCxF;AAGD,eAAO,MAAM,cAAc,uBAhE0B,MAAM,KAAG,OAAO,CAAC,OAAO,CAgErC,CAAC;AAGzC,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC"}
|
|
@@ -6,8 +6,6 @@ export interface AttributeObject {
|
|
|
6
6
|
/** PEM encoded public key */
|
|
7
7
|
readonly pubKey: string;
|
|
8
8
|
readonly kasUrl: string;
|
|
9
|
-
/** The most recent version 1.1.0. */
|
|
10
|
-
readonly schemaVersion?: string;
|
|
11
9
|
}
|
|
12
10
|
export declare function createAttribute(attribute: string, pubKey: KasPublicKeyInfo, kasUrl: string): Promise<AttributeObject>;
|
|
13
11
|
//# sourceMappingURL=AttributeObject.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttributeObject.d.ts","sourceRoot":"","sources":["../../../../src/tdf/AttributeObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"AttributeObject.d.ts","sourceRoot":"","sources":["../../../../src/tdf/AttributeObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC,CAQ1B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
declare enum CipherType {
|
|
2
|
-
Aes256Gcm64 = 0
|
|
2
|
+
Aes256Gcm64 = 0,// Default cipher
|
|
3
3
|
Aes256Gcm96 = 1,
|
|
4
4
|
Aes256Gcm104 = 2,
|
|
5
5
|
Aes256Gcm112 = 3,
|
|
@@ -25,7 +25,7 @@ export declare enum ResourceLocatorProtocol {
|
|
|
25
25
|
export declare enum PolicyType {
|
|
26
26
|
Remote = 0,
|
|
27
27
|
EmbeddedText = 1,
|
|
28
|
-
EmbeddedEncrypted = 2
|
|
28
|
+
EmbeddedEncrypted = 2,// Default policy
|
|
29
29
|
EmbeddedEncryptedPKA = 3
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NanoTDF.d.ts","sourceRoot":"","sources":["../../../../../src/tdf/NanoTDF/NanoTDF.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,WAAW,IAAA;
|
|
1
|
+
{"version":3,"file":"NanoTDF.d.ts","sourceRoot":"","sources":["../../../../../src/tdf/NanoTDF/NanoTDF.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU;IACb,WAAW,IAAA,CAAE,iBAAiB;IAC9B,WAAW,IAAA;IACX,YAAY,IAAA;IACZ,YAAY,IAAA;IACZ,YAAY,IAAA;IACZ,YAAY,IAAA;CACb;AAED;;;;GAIG;AACH,aAAK,SAAS;IACZ,SAAS,IAAA;IACT,SAAS,IAAA;IACT,SAAS,IAAA;CACV;AAED,oBAAY,uBAAuB;IACjC,IAAI,IAAA;IACJ,KAAK,IAAA;IACL,WAAW,IAAA;IACX,uBAAuB,MAAO;CAC/B;AAED,oBAAY,UAAU;IACpB,MAAM,IAAA;IACN,YAAY,IAAA;IACZ,iBAAiB,IAAA,CAAE,iBAAiB;IACpC,oBAAoB,IAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM;IAC1C,QAAQ,EAAE,uBAAuB,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM;IAC5C,OAAO,EAAE,UAAU,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IAErB,kBAAkB,EAAE,UAAU,CAAC;IAG/B,GAAG,EAAE,eAAe,CAAC;IAGrB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,SAAS,CAAC;IAG9B,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,EAAE,SAAS,CAAC;IAC9B,eAAe,EAAE,UAAU,CAAC;IAE5B,aAAa,EAAE,MAAM,CAAC;IAGtB,MAAM,EAAE,YAAY,GAAG,cAAc,CAAC;IAGtC,kBAAkB,EAAE,UAAU,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,UAAU,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,UAAU,CAAC;IACpB,iBAAiB,EAAE,UAAU,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;CACtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Policy.d.ts","sourceRoot":"","sources":["../../../../src/tdf/Policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,qBAAa,MAAM;IACjB,MAAM,CAAC,eAAe,SAAW;IAEjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,UAAU,CAAgB;
|
|
1
|
+
{"version":3,"file":"Policy.d.ts","sourceRoot":"","sources":["../../../../src/tdf/Policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,qBAAa,MAAM;IACjB,MAAM,CAAC,eAAe,SAAW;IAEjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,UAAU,CAAgB;IAElC;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IASrC;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IAI9C;;;;OAIG;IACH,MAAM,IAAI,MAAM;CASjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolicyObject.d.ts","sourceRoot":"","sources":["../../../../src/tdf/PolicyObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"PolicyObject.d.ts","sourceRoot":"","sources":["../../../../src/tdf/PolicyObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;CACjC"}
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
export declare function validateSecureUrl(url: string): boolean;
|
|
16
16
|
export declare function padSlashToUrl(u: string): string;
|
|
17
17
|
export declare function isBrowser(): boolean;
|
|
18
|
-
export declare const isFirefox: () => boolean;
|
|
19
18
|
export declare const rstrip: (str: string, suffix?: string) => string;
|
|
20
19
|
/**
|
|
21
20
|
* Rough estimate of number of seconds to add to the current system clock time
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CActD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED,wBAAgB,SAAS,YAExB;AAED,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CActD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED,wBAAgB,SAAS,YAExB;AAED,eAAO,MAAM,MAAM,QAAS,MAAM,sBAAiB,MAKlD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,+BAA2C,OAAO,CAAC,MAAM,CAIjF,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAEjC;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,YAAa,UAAU,kBAAkB,MAAM,KAAG,MAYrF,CAAC;AAEF,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW/C;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAS7E;AAED,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAU1E;AAED,wBAAsB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWhF"}
|
|
@@ -6,4 +6,8 @@ export declare const version = "0.2.0";
|
|
|
6
6
|
* A string name used to label requests as coming from this library client.
|
|
7
7
|
*/
|
|
8
8
|
export declare const clientType = "web-sdk";
|
|
9
|
+
/**
|
|
10
|
+
* Version of the opentdf/spec this library is targeting
|
|
11
|
+
*/
|
|
12
|
+
export declare const tdfSpecVersion = "4.3.0";
|
|
9
13
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/version.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,UAAU,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/version.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,UAAU,YAAY,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,cAAc,UAAU,CAAC"}
|
|
@@ -7,10 +7,11 @@ import { Client, Errors, TDF3Client } from './src/index.js';
|
|
|
7
7
|
import { type KeyInfo, SplitKey, type EncryptionInformation } from './src/models/encryption-information.js';
|
|
8
8
|
import { AuthProvider, type HttpMethod, HttpRequest, withHeaders } from '../src/auth/auth.js';
|
|
9
9
|
import { AesGcmCipher } from './src/ciphers/aes-gcm-cipher.js';
|
|
10
|
-
import { NanoTDFClient, NanoTDFDatasetClient, AuthProviders, version, clientType } from '../src/
|
|
10
|
+
import { NanoTDFClient, NanoTDFDatasetClient, AuthProviders, version, clientType } from '../src/nanoindex.js';
|
|
11
11
|
import { Algorithms, type AlgorithmName, type AlgorithmUrn } from './src/ciphers/algorithms.js';
|
|
12
|
-
import { type Chunker } from '
|
|
12
|
+
import { type Chunker } from '../src/seekable.js';
|
|
13
13
|
export type { AlgorithmName, AlgorithmUrn, AuthProvider, Chunker, CryptoService, DecryptResult, EncryptResult, HttpMethod, PemKeyPair, EncryptKeyMiddleware, EncryptStreamMiddleware, DecryptKeyMiddleware, DecryptStreamMiddleware, SplitStep, };
|
|
14
14
|
export { AesGcmCipher, Algorithms, AuthProviders, Binary, Client, ClientConfig, DecoratedReadableStream, DecryptParams, DecryptParamsBuilder, DecryptSource, EncryptionInformation, EncryptParams, EncryptParamsBuilder, Errors, HttpRequest, KeyInfo, NanoTDFClient, NanoTDFDatasetClient, SplitKey, TDF3Client, clientType, createSessionKeys, withHeaders, version, };
|
|
15
15
|
export * as WebCryptoService from './src/crypto/index.js';
|
|
16
|
+
export { type CreateNanoTDFCollectionOptions, type CreateNanoTDFOptions, type CreateOptions, type CreateZTDFOptions, type DecoratedStream, type Keys, type OpenTDFOptions, type NanoTDFCollection, type ReadOptions, OpenTDF, } from '../src/opentdf.js';
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../tdf3/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EACL,KAAK,aAAa,EAClB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,KAAK,OAAO,EACZ,QAAQ,EACR,KAAK,qBAAqB,EAC3B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,OAAO,EACP,UAAU,EACX,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../tdf3/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EACL,KAAK,aAAa,EAClB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,KAAK,OAAO,EACZ,QAAQ,EACR,KAAK,qBAAqB,EAC3B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,OAAO,EACP,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChG,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,YAAY,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,SAAS,GACV,CAAC;AAEF,OAAO,EACL,YAAY,EACZ,UAAU,EACV,aAAa,EACb,MAAM,EACN,MAAM,EACN,YAAY,EACZ,uBAAuB,EACvB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,WAAW,EACX,OAAO,EACP,aAAa,EACb,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,OAAO,GACR,CAAC;AAEF,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,IAAI,EACT,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,OAAO,GACR,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type KeyLike } from 'jose';
|
|
2
|
-
export type AssertionKeyAlg = 'RS256' | 'HS256';
|
|
2
|
+
export type AssertionKeyAlg = 'ES256' | 'RS256' | 'HS256';
|
|
3
3
|
export type AssertionType = 'handling' | 'other';
|
|
4
4
|
export type Scope = 'tdo' | 'payload';
|
|
5
5
|
export type AppliesToState = 'encrypted' | 'unencrypted';
|
|
@@ -39,11 +39,11 @@ export declare function isAssertionConfig(obj: unknown): obj is AssertionConfig;
|
|
|
39
39
|
* @returns {Promise<[string, string]>} A promise that resolves to a tuple containing the assertion hash and signature.
|
|
40
40
|
* @throws {Error} If the verification fails.
|
|
41
41
|
*/
|
|
42
|
-
export declare function verify(thiz: Assertion, aggregateHash:
|
|
42
|
+
export declare function verify(thiz: Assertion, aggregateHash: Uint8Array, key: AssertionKey, isLegacyTDF: boolean): Promise<void>;
|
|
43
43
|
/**
|
|
44
44
|
* Creates an Assertion object with the specified properties.
|
|
45
45
|
*/
|
|
46
|
-
export declare function CreateAssertion(aggregateHash:
|
|
46
|
+
export declare function CreateAssertion(aggregateHash: Uint8Array, assertionConfig: AssertionConfig): Promise<Assertion>;
|
|
47
47
|
export type AssertionKey = {
|
|
48
48
|
alg: AssertionKeyAlg;
|
|
49
49
|
key: KeyLike | Uint8Array;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../../../../tdf3/src/assertions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,MAAM,CAAC;AAIxD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../../../../tdf3/src/assertions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,MAAM,CAAC;AAIxD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,CAAC;AACjD,MAAM,MAAM,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;AACtC,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,aAAa,CAAC;AACzD,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC;AAGlC,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAGF,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAGF,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,IAAI,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAKxD;AAiCD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,eAAe,CAmBtE;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,EACf,aAAa,EAAE,UAAU,EACzB,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,aAAa,EAAE,UAAU,EACzB,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,SAAS,CAAC,CAuBpB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,eAAe,CAAC;IACrB,GAAG,EAAE,OAAO,GAAG,UAAU,CAAC;CAC3B,CAAC;AAIF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B,CAAC;AAGF,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACpC,CAAC"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
import { EventEmitter } from 'eventemitter3';
|
|
3
1
|
import { type Metadata } from '../tdf.js';
|
|
4
2
|
import { type Manifest } from '../models/index.js';
|
|
5
3
|
export declare function streamToBuffer(stream: ReadableStream<Uint8Array>): Promise<Uint8Array>;
|
|
@@ -14,16 +12,13 @@ export declare class DecoratedReadableStream {
|
|
|
14
12
|
tdfSize: number;
|
|
15
13
|
fileSize: number | undefined;
|
|
16
14
|
stream: ReadableStream<Uint8Array>;
|
|
17
|
-
ee: EventEmitter;
|
|
18
|
-
on: EventEmitter['on'];
|
|
19
|
-
emit: EventEmitter['emit'];
|
|
20
15
|
metadata?: Metadata;
|
|
21
16
|
manifest: Manifest;
|
|
22
17
|
fileStreamServiceWorker?: string;
|
|
23
18
|
constructor(underlyingSource: UnderlyingSource & {
|
|
24
19
|
fileStreamServiceWorker?: string;
|
|
25
20
|
});
|
|
26
|
-
getMetadata(): Promise<
|
|
21
|
+
getMetadata(): Promise<Metadata | undefined>;
|
|
27
22
|
/**
|
|
28
23
|
* Dump the stream content to a buffer. This will consume the stream.
|
|
29
24
|
* @return the plaintext in Buffer form.
|
|
@@ -40,13 +35,6 @@ export declare class DecoratedReadableStream {
|
|
|
40
35
|
* for encrypt.
|
|
41
36
|
*/
|
|
42
37
|
toString(): Promise<string>;
|
|
43
|
-
/**
|
|
44
|
-
* Dump the stream content to a local file. This will consume the stream.
|
|
45
|
-
*
|
|
46
|
-
* @param filepath The path of the local file to write plaintext to.
|
|
47
|
-
* @param encoding The charset encoding to use. Defaults to utf-8.
|
|
48
|
-
*/
|
|
49
|
-
toFile(filepath?: string, options?: BufferEncoding | DecoratedReadableStreamSinkOptions): Promise<void>;
|
|
50
38
|
}
|
|
51
39
|
export declare function isDecoratedReadableStream(s: unknown): s is DecoratedReadableStream;
|
|
52
40
|
//# sourceMappingURL=DecoratedReadableStream.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecoratedReadableStream.d.ts","sourceRoot":"","sources":["../../../../../tdf3/src/client/DecoratedReadableStream.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DecoratedReadableStream.d.ts","sourceRoot":"","sources":["../../../../../tdf3/src/client/DecoratedReadableStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,wBAAsB,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAG5F;AAED,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,qBAAa,uBAAuB;IAClC,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,uBAAuB,CAAC,EAAE,MAAM,CAAC;gBAG/B,gBAAgB,EAAE,gBAAgB,GAAG;QACnC,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC;IAUG,WAAW;IAIjB;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;IAIrC;;;;;;;;;OASG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;CAGlC;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,uBAAuB,CAMlF"}
|