From d98042ee625eb58c3d1fbb3bcf1b294977960029 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Tue, 13 Feb 2024 10:17:43 -0300 Subject: [PATCH 1/7] =?UTF-8?q?escapando=20e=20removendo=20testes=20que=20?= =?UTF-8?q?n=C3=A3o=20se=20aplicaram=20por=20enquanto=20ou=20n=C3=A3o=20te?= =?UTF-8?q?m=20mais=20serventia?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/ciphers/kdf.test.ts | 43 +++++++++--------------------------- 1 file changed, 11 insertions(+), 32 deletions(-) diff --git a/packages/ciphers/kdf.test.ts b/packages/ciphers/kdf.test.ts index 23a9b42..c01de9b 100644 --- a/packages/ciphers/kdf.test.ts +++ b/packages/ciphers/kdf.test.ts @@ -29,7 +29,7 @@ xdescribe('kdf success flow', () => { it('[3] kdf with hasher sha512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512' + hasher: 'sha512' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -49,7 +49,7 @@ xdescribe('kdf success flow', () => { it('[4] kdf with hasher sha512_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512_256' + hasher: 'sha512_256' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -68,7 +68,7 @@ xdescribe('kdf success flow', () => { it('[5] kdf with hasher sha384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha384' + hasher: 'sha384' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -87,7 +87,7 @@ xdescribe('kdf success flow', () => { it('[6] kdf with hasher sha3_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_512' + hasher: 'sha3_512' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -106,7 +106,7 @@ xdescribe('kdf success flow', () => { it('[7] kdf with hasher sha3_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_384' + hasher: 'sha3_384' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -125,7 +125,7 @@ xdescribe('kdf success flow', () => { it('[8] kdf with hasher sha3_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_256' + hasher: 'sha3_256' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -144,7 +144,7 @@ xdescribe('kdf success flow', () => { it('[9] kdf with hasher sha3_224', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_224' + hasher: 'sha3_224' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -163,7 +163,7 @@ xdescribe('kdf success flow', () => { it('[10] kdf with hasher keccak_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_512' + hasher: 'keccak_512' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -182,7 +182,7 @@ xdescribe('kdf success flow', () => { it('[11] kdf with hasher keccak_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_384' + hasher: 'keccak_384' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -201,7 +201,7 @@ xdescribe('kdf success flow', () => { it('[12] kdf with hasher keccak_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_256' + hasher: 'keccak_256' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -220,7 +220,7 @@ xdescribe('kdf success flow', () => { it('[13] kdf with hasher keccak_224', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_224' + hasher: 'keccak_224' as any as 'sha256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -237,24 +237,3 @@ xdescribe('kdf success flow', () => { expect(decrypted).toEqual(originalMessage); }); }); - -describe('kdf failure flow', () => { - it('[1] overriding kdf config with wrong default values', async () => { - const originalMessage = 'mensagem secreta, favor não ler em voz alta'; - const password = 'senha123'; - - const encoded = await EncryptedURI.encrypt({ - algorithm: 'aes/ctr', - content: originalMessage, - password - }); - - const decrypted = await EncryptedURI.decrypt(encoded, password, { - kdf: 'pbkdf2', - hasher: 'sha256', - rounds: 32, - derivateKeyLength: 32 - }); - expect(decrypted).not.toEqual(originalMessage); - }); -}); \ No newline at end of file From 63f257868969f88c52d16c2e62aab8df5b0f41b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Tue, 13 Feb 2024 11:35:32 -0300 Subject: [PATCH 2/7] =?UTF-8?q?revisando=20testes=20unit=C3=A1rios=20de=20?= =?UTF-8?q?bcifras=20geradas=20por=20outras=20bibliotecas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/ciphers/aes.test.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/ciphers/aes.test.ts b/packages/ciphers/aes.test.ts index 5e63de3..53b5762 100755 --- a/packages/ciphers/aes.test.ts +++ b/packages/ciphers/aes.test.ts @@ -19,14 +19,15 @@ describe('success flow aes', () => { }); it('cbc generated from other implementation with the same algorithm type and params', async () => { - const decoded = await EncryptedURI.decrypt('encrypted:aes?iv=1dc8d28370372579a75feac6b5bf5290;U2FsdGVkX18K2mCM3jqJz9SSPC2Rss61NOk4JWeG5IE=', 'teste123', { - rounds: 250000, - hasher: 'sha256', - derivateKeyLength: 32 - }); + const decoded = await EncryptedURI.decrypt('encrypted:aes/cbc?iv=1dc8d28370372579a75feac6b5bf5290&c=1000&dklen=8&hasher=md5;U2FsdGVkX18K2mCM3jqJz9SSPC2Rss61NOk4JWeG5IE=', 'teste123'); expect(decoded).toEqual('teste123'); }); + it('cbc generated from other implementation with the same algorithm type and params', async () => { + const decoded = await EncryptedURI.decrypt('encrypted:aes/cbc?iv=9d668dee3bccfd9d3d5fb786aab11894&c=1000&dklen=8&hasher=md5;U2FsdGVkX182g9bXg4UB/MsE9Dlz4lJcGC7WW4WGAVc=', 'exemplo'); + expect(decoded).toEqual('exemplo'); + }); + it('ctr', async () => { const originalMessage = 'mensagem secreta, favor não ler em voz alta'; const password = 'senha123'; From 9fb022f2f38728e2177780fe5879dc2639d51587 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Wed, 14 Feb 2024 06:19:56 -0300 Subject: [PATCH 3/7] =?UTF-8?q?removendo=20testes=20que=20faziam=20compara?= =?UTF-8?q?=C3=A7=C3=A3o=20com=20encrypted=20uris=20gerados=20pelo=20crypt?= =?UTF-8?q?ojs=20pois=20acredito=20que=20usam=20MD5=20como=20gerador=20de?= =?UTF-8?q?=20hash=20padr=C3=A3o=20para=20KDF,=20e=20MD5=20n=C3=A3o=20?= =?UTF-8?q?=C3=A9=20suportado=20pela=20biblioteca=20@noble/hashes,=20uma?= =?UTF-8?q?=20acredito=20SHA2seja=20por56=20=C3=A9=20considerado=20m=20pel?= =?UTF-8?q?a=20@noble/ciphers,=20a=20gera=C3=A7=C3=A3o=20de=20hashs=20de?= =?UTF-8?q?=20KDF=20nela=20=C3=A9=20feita=20com=20SHA256?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test-report/result.js | 2 +- .../test-report/result.js | 2 +- packages/ciphers/aes.test.ts | 10 ---------- packages/ciphers/hashes/index.ts | 13 +------------ packages/ciphers/hashes/keccak_224.ts | 4 ---- packages/ciphers/hashes/keccak_256.ts | 4 ---- packages/ciphers/hashes/keccak_384.ts | 5 ----- packages/ciphers/hashes/keccak_512.ts | 5 ----- packages/ciphers/hashes/sha384.ts | 4 ---- packages/ciphers/hashes/sha3_224.ts | 4 ---- packages/ciphers/hashes/sha3_256.ts | 4 ---- packages/ciphers/hashes/sha3_384.ts | 4 ---- packages/ciphers/hashes/sha3_512.ts | 4 ---- packages/ciphers/hashes/sha512.ts | 4 ---- packages/ciphers/hashes/sha512_256.ts | 4 ---- 15 files changed, 3 insertions(+), 70 deletions(-) delete mode 100644 packages/ciphers/hashes/keccak_224.ts delete mode 100644 packages/ciphers/hashes/keccak_256.ts delete mode 100644 packages/ciphers/hashes/keccak_384.ts delete mode 100644 packages/ciphers/hashes/keccak_512.ts delete mode 100644 packages/ciphers/hashes/sha384.ts delete mode 100644 packages/ciphers/hashes/sha3_224.ts delete mode 100644 packages/ciphers/hashes/sha3_256.ts delete mode 100644 packages/ciphers/hashes/sha3_384.ts delete mode 100644 packages/ciphers/hashes/sha3_512.ts delete mode 100644 packages/ciphers/hashes/sha512.ts delete mode 100644 packages/ciphers/hashes/sha512_256.ts diff --git a/docs/ciphers/jest-html-reporters-attach/test-report/result.js b/docs/ciphers/jest-html-reporters-attach/test-report/result.js index 052d009..864a0b5 100644 --- a/docs/ciphers/jest-html-reporters-attach/test-report/result.js +++ b/docs/ciphers/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":2,"numFailedTests":2,"numPassedTestSuites":1,"numPassedTests":8,"numPendingTestSuites":0,"numPendingTests":22,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":32,"startTime":1707825745814,"success":false,"testResults":[{"numFailingTests":1,"numPassingTests":0,"numPendingTests":12,"numTodoTests":0,"perfStats":{"end":1707825755735,"runtime":9037,"slow":true,"start":1707825746698},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf failure flow › [1] overriding kdf config with wrong default values\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mnot\u001b[2m.\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\n Expected: not \u001b[32m\"mensagem secreta, favor não ler em voz alta\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 256 |\u001b[39m derivateKeyLength\u001b[33m:\u001b[39m \u001b[35m32\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 257 |\u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 258 |\u001b[39m expect(decrypted)\u001b[33m.\u001b[39mnot\u001b[33m.\u001b[39mtoEqual(originalMessage)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 259 |\u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 260 |\u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:258:27)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"pending","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"pending","title":"[13] kdf with hasher keccak_224"},{"ancestorTitles":["kdf failure flow"],"duration":85,"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mnot\u001b[2m.\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\nExpected: not \u001b[32m\"mensagem secreta, favor não ler em voz alta\"\u001b[39m\n\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:258:27)"],"fullName":"kdf failure flow [1] overriding kdf config with wrong default values","status":"failed","title":"[1] overriding kdf config with wrong default values"}]},{"numFailingTests":1,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707825756082,"runtime":9396,"slow":true,"start":1707825746686},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1msuccess flow aes › cbc generated from other implementation with the same algorithm type and params\u001b[39m\u001b[22m\n\n OperationError: The operation failed for an operation-specific reason\n\u001b[2m\u001b[22m\n\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["success flow aes"],"duration":103,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":6,"failureMessages":["OperationError: The operation failed for an operation-specific reason\n at new DOMException (node:internal/per_context/domexception:53:5)\n at __node_internal_ (node:internal/util:695:10)\n at AESCipherJob.onDone (node:internal/crypto/util:420:19)"],"fullName":"success flow aes cbc generated from other implementation with the same algorithm type and params","status":"failed","title":"cbc generated from other implementation with the same algorithm type and params"},{"ancestorTitles":["success flow aes"],"duration":13,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":13,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":12,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":19,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":0,"numPassingTests":3,"numPendingTests":10,"numTodoTests":0,"perfStats":{"end":1707825756850,"runtime":10161,"slow":true,"start":1707825746689},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":57,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":17,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":9,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-444294862,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707825756965,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":2,"numPassedTests":8,"numPendingTestSuites":1,"numPendingTests":22,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707902187083,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":0,"numPendingTests":12,"numTodoTests":0,"perfStats":{"end":1707902195697,"runtime":7838,"slow":true,"start":1707902187859},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"pending","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"pending","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":0,"numPassingTests":3,"numPendingTests":10,"numTodoTests":0,"perfStats":{"end":1707902195881,"runtime":7991,"slow":true,"start":1707902187890},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":61,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":8,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]},{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707902196493,"runtime":8643,"slow":true,"start":1707902187850},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":53,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":14,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":140700023,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707902196615,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/docs/core/jest-html-reporters-attach/test-report/result.js b/docs/core/jest-html-reporters-attach/test-report/result.js index 89bdc28..b14708c 100644 --- a/docs/core/jest-html-reporters-attach/test-report/result.js +++ b/docs/core/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":36,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":36,"startTime":1707825981360,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":36,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707825986940,"runtime":5379,"slow":true,"start":1707825981561},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":11,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":4,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":-232361682,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707825986963,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":36,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":36,"startTime":1707902179345,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":36,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707902184052,"runtime":4532,"slow":false,"start":1707902179520},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":8,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":0,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":1224921832,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707902184081,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/packages/ciphers/aes.test.ts b/packages/ciphers/aes.test.ts index 53b5762..db539fc 100755 --- a/packages/ciphers/aes.test.ts +++ b/packages/ciphers/aes.test.ts @@ -18,16 +18,6 @@ describe('success flow aes', () => { expect(decoded).toEqual(originalMessage); }); - it('cbc generated from other implementation with the same algorithm type and params', async () => { - const decoded = await EncryptedURI.decrypt('encrypted:aes/cbc?iv=1dc8d28370372579a75feac6b5bf5290&c=1000&dklen=8&hasher=md5;U2FsdGVkX18K2mCM3jqJz9SSPC2Rss61NOk4JWeG5IE=', 'teste123'); - expect(decoded).toEqual('teste123'); - }); - - it('cbc generated from other implementation with the same algorithm type and params', async () => { - const decoded = await EncryptedURI.decrypt('encrypted:aes/cbc?iv=9d668dee3bccfd9d3d5fb786aab11894&c=1000&dklen=8&hasher=md5;U2FsdGVkX182g9bXg4UB/MsE9Dlz4lJcGC7WW4WGAVc=', 'exemplo'); - expect(decoded).toEqual('exemplo'); - }); - it('ctr', async () => { const originalMessage = 'mensagem secreta, favor não ler em voz alta'; const password = 'senha123'; diff --git a/packages/ciphers/hashes/index.ts b/packages/ciphers/hashes/index.ts index 844373c..4dc1e44 100644 --- a/packages/ciphers/hashes/index.ts +++ b/packages/ciphers/hashes/index.ts @@ -1,12 +1 @@ -export * from './keccak_224'; -export * from './keccak_256'; -export * from './keccak_384'; -export * from './keccak_512'; -export * from './sha256'; -export * from './sha384'; -export * from './sha3_224'; -export * from './sha3_256'; -export * from './sha3_384'; -export * from './sha3_512'; -export * from './sha512'; -export * from './sha512_256'; +export * from './sha256'; \ No newline at end of file diff --git a/packages/ciphers/hashes/keccak_224.ts b/packages/ciphers/hashes/keccak_224.ts deleted file mode 100644 index 17a7560..0000000 --- a/packages/ciphers/hashes/keccak_224.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { keccak_224 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('keccak_224', keccak_224); diff --git a/packages/ciphers/hashes/keccak_256.ts b/packages/ciphers/hashes/keccak_256.ts deleted file mode 100644 index 171ee77..0000000 --- a/packages/ciphers/hashes/keccak_256.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { keccak_256 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('keccak_256', keccak_256); diff --git a/packages/ciphers/hashes/keccak_384.ts b/packages/ciphers/hashes/keccak_384.ts deleted file mode 100644 index 22d0f56..0000000 --- a/packages/ciphers/hashes/keccak_384.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { keccak_384 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('keccak_384', keccak_384); - diff --git a/packages/ciphers/hashes/keccak_512.ts b/packages/ciphers/hashes/keccak_512.ts deleted file mode 100644 index 5a72736..0000000 --- a/packages/ciphers/hashes/keccak_512.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { keccak_512 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('keccak_512', keccak_512); - diff --git a/packages/ciphers/hashes/sha384.ts b/packages/ciphers/hashes/sha384.ts deleted file mode 100644 index 93fd6be..0000000 --- a/packages/ciphers/hashes/sha384.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha384 } from '@noble/hashes/sha512' -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha384', sha384); diff --git a/packages/ciphers/hashes/sha3_224.ts b/packages/ciphers/hashes/sha3_224.ts deleted file mode 100644 index 2cce5ea..0000000 --- a/packages/ciphers/hashes/sha3_224.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha3_224 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha3_224', sha3_224); diff --git a/packages/ciphers/hashes/sha3_256.ts b/packages/ciphers/hashes/sha3_256.ts deleted file mode 100644 index d38c1d4..0000000 --- a/packages/ciphers/hashes/sha3_256.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha3_256 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha3_256', sha3_256); diff --git a/packages/ciphers/hashes/sha3_384.ts b/packages/ciphers/hashes/sha3_384.ts deleted file mode 100644 index 6f7de5a..0000000 --- a/packages/ciphers/hashes/sha3_384.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha3_384 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha3_384', sha3_384); diff --git a/packages/ciphers/hashes/sha3_512.ts b/packages/ciphers/hashes/sha3_512.ts deleted file mode 100644 index 28decea..0000000 --- a/packages/ciphers/hashes/sha3_512.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha3_512 } from '@noble/hashes/sha3'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha3_512', sha3_512); diff --git a/packages/ciphers/hashes/sha512.ts b/packages/ciphers/hashes/sha512.ts deleted file mode 100644 index f907145..0000000 --- a/packages/ciphers/hashes/sha512.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha512 } from '@noble/hashes/sha512'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha512', sha512); diff --git a/packages/ciphers/hashes/sha512_256.ts b/packages/ciphers/hashes/sha512_256.ts deleted file mode 100644 index 66efa46..0000000 --- a/packages/ciphers/hashes/sha512_256.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { sha512_256 } from '@noble/hashes/sha512'; -import { HashSupport } from './hash-support'; - -HashSupport.addSupport('sha512_256', sha512_256); From b7904b5ce55b4c4d9ebc8149a063cbfa852c6c82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Wed, 14 Feb 2024 06:39:07 -0300 Subject: [PATCH 4/7] =?UTF-8?q?atualizando=20documenta=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index ee4c084..1f3d8f7 100755 --- a/README.md +++ b/README.md @@ -61,7 +61,7 @@ Algorithm with no param: Basic use, how to decode and encrypt and how to decode and decrypt: ```typescript -import { EncryptedURIAlgorithm, EncryptedURIDecrypter, EncryptedURIEncrypter, TEncryptedURI, TEncryptedURIKDFConfig, TEncryptedURIResultset, TURIParams } from '@encrypted-uri/core'; +import { EncryptedURIAlgorithm, EncryptedURIDecrypter, EncryptedURIEncrypter, TEncryptedURI, TEncryptedURIResultset, TURIParams } from '@encrypted-uri/core'; import { ecb } from '@noble/ciphers/aes'; import { bytesToUtf8, utf8ToBytes } from '@noble/ciphers/utils'; import { randomBytes } from '@noble/hashes/utils'; @@ -70,10 +70,9 @@ import { base64 } from '@scure/base'; class EncryptedURIAESECBDecrypter extends EncryptedURIDecrypter { constructor( decoded: TEncryptedURI, - password: string, - defaultsKDF: Required + password: string ) { - super(decoded, password, defaultsKDF); + super(decoded, password); } async decrypt(): Promise { @@ -90,10 +89,11 @@ class EncryptedURIAESECBDecrypter extends Enc algorithm: 'aes/ecb', decrypter: EncryptedURIAESECBDecrypter }) +// eslint-disable-next-line @typescript-eslint/no-unused-vars class EncryptedURIAESECBEncrypter extends EncryptedURIEncrypter { constructor( - protected override params: TEncryptedURIResultset + params: TEncryptedURIResultset ) { super(params); } @@ -102,18 +102,19 @@ class EncryptedURIAESECBEncrypter extends Enc const content = utf8ToBytes(this.params.content); const saltLength = 8; const salt = randomBytes(saltLength); - const rawCipher = await ecb(kdf(this.params.password, salt, this.params.kdf)).encrypt(content); + const rawCipher = await ecb(kdf(this.params.password, salt, this.params)).encrypt(content); const cipher = base64.encode(OpenSSLSerializer.encode(rawCipher, salt)); return Promise.resolve({ cipher }); } } + ``` Advanced use, how to add default encrypter and how to add more alias to an algorithm: ```typescript -import { EncryptedURI, EncryptedURIAlgorithm, EncryptedURIDecrypter, EncryptedURIEncrypter, TEncryptedURI, TEncryptedURIKDFConfig, TEncryptedURIResultset } from '@encrypted-uri/core'; +import { EncryptedURI, EncryptedURIAlgorithm, EncryptedURIDecrypter, EncryptedURIEncrypter, TEncryptedURI, TEncryptedURIResultset } from '@encrypted-uri/core'; import { bytesToUtf8, hexToBytes, utf8ToBytes } from '@noble/ciphers/utils'; import { cbc } from '@noble/ciphers/webcrypto/aes'; import { randomBytes } from '@noble/hashes/utils'; @@ -122,10 +123,9 @@ import { base64 } from '@scure/base'; class EncryptedURIAESCBCDecrypter extends EncryptedURIDecrypter { constructor( decoded: TEncryptedURI, - password: string, - defaultsKDF: Required + password: string ) { - super(decoded, password, defaultsKDF); + super(decoded, password); } async decrypt(): Promise { @@ -147,7 +147,7 @@ class EncryptedURIAESCBCDecrypter extends EncryptedURIDecrypter { constructor( - protected override params: TEncryptedURIResultset + params: TEncryptedURIResultset ) { super(params); } @@ -158,7 +158,7 @@ class EncryptedURIAESCBCEncrypter extends EncryptedURIEncrypter Date: Wed, 14 Feb 2024 12:20:08 -0300 Subject: [PATCH 5/7] =?UTF-8?q?corre=C3=A7=C3=A3o=20de=20defeitos=20identi?= =?UTF-8?q?ficados=20com=20a=20amplia=C3=A7=C3=A3o=20da=20cobertura=20de?= =?UTF-8?q?=20testes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test-report/result.js | 2 +- .../test-report/result.js | 2 +- packages/ciphers/README.md | 4 +-- packages/ciphers/aes/kdf.ts | 2 +- packages/ciphers/kdf.test.ts | 5 ++-- packages/ciphers/package.json | 4 +-- packages/core/index.test.ts | 26 +++++++++++++++++ packages/core/index.ts | 29 +++++++++---------- packages/core/package-lock.json | 4 +-- packages/core/package.json | 2 +- 10 files changed, 50 insertions(+), 30 deletions(-) diff --git a/docs/ciphers/jest-html-reporters-attach/test-report/result.js b/docs/ciphers/jest-html-reporters-attach/test-report/result.js index 864a0b5..df4dbdb 100644 --- a/docs/ciphers/jest-html-reporters-attach/test-report/result.js +++ b/docs/ciphers/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":2,"numPassedTests":8,"numPendingTestSuites":1,"numPendingTests":22,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707902187083,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":0,"numPendingTests":12,"numTodoTests":0,"perfStats":{"end":1707902195697,"runtime":7838,"slow":true,"start":1707902187859},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"pending","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":null,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"pending","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":0,"numPassingTests":3,"numPendingTests":10,"numTodoTests":0,"perfStats":{"end":1707902195881,"runtime":7991,"slow":true,"start":1707902187890},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":61,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":8,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]},{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707902196493,"runtime":8643,"slow":true,"start":1707902187850},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":53,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":10,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":14,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":140700023,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707902196615,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":1,"numFailedTests":11,"numPassedTestSuites":2,"numPassedTests":9,"numPendingTestSuites":0,"numPendingTests":10,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707923945733,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923956072,"runtime":9487,"slow":true,"start":1707923946585},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":96,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":12,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":17,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":14,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":22,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":11,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923956259,"runtime":9775,"slow":true,"start":1707923946484},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [3] kdf with hasher sha512\u001b[39m\u001b[22m\n\n \"sha512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESGCMEncrypter.encrypt (\u001b[22m\u001b[2maes/gcm/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:38:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [4] kdf with hasher sha512_256\u001b[39m\u001b[22m\n\n \"sha512_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESGCMEncrypter.encrypt (\u001b[22m\u001b[2maes/gcm/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:57:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [5] kdf with hasher sha384\u001b[39m\u001b[22m\n\n \"sha384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESSIVEncrypter.encrypt (\u001b[22m\u001b[2maes/siv/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:76:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [6] kdf with hasher sha3_512\u001b[39m\u001b[22m\n\n \"sha3_512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCTREncrypter.encrypt (\u001b[22m\u001b[2maes/ctr/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:95:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [7] kdf with hasher sha3_384\u001b[39m\u001b[22m\n\n \"sha3_384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCTREncrypter.encrypt (\u001b[22m\u001b[2maes/ctr/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:114:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [8] kdf with hasher sha3_256\u001b[39m\u001b[22m\n\n \"sha3_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESECBEncrypter.encrypt (\u001b[22m\u001b[2maes/ecb/index.ts\u001b[2m:45:36)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:133:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [9] kdf with hasher sha3_224\u001b[39m\u001b[22m\n\n \"sha3_224\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESECBEncrypter.encrypt (\u001b[22m\u001b[2maes/ecb/index.ts\u001b[2m:45:36)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:152:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [10] kdf with hasher keccak_512\u001b[39m\u001b[22m\n\n \"keccak_512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:171:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [11] kdf with hasher keccak_384\u001b[39m\u001b[22m\n\n \"keccak_384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:190:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [12] kdf with hasher keccak_256\u001b[39m\u001b[22m\n\n \"keccak_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:209:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [13] kdf with hasher keccak_224\u001b[39m\u001b[22m\n\n \"keccak_224\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:228:40)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["kdf success flow"],"duration":67,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESGCMEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/gcm/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:38:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"failed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha512_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESGCMEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/gcm/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:57:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"failed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESSIVEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/siv/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:76:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"failed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha3_512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCTREncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ctr/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:95:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"failed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha3_384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCTREncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ctr/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:114:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"failed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha3_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESECBEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ecb/index.ts:45:36)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:133:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"failed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"sha3_224\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESECBEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ecb/index.ts:45:36)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:152:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"failed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:171:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"failed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:190:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"failed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:209:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"failed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_224\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:228:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"failed","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":0,"numPassingTests":3,"numPendingTests":10,"numTodoTests":0,"perfStats":{"end":1707923960348,"runtime":13765,"slow":true,"start":1707923946583},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":4406,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":9,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-734325570,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707923960484,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/docs/core/jest-html-reporters-attach/test-report/result.js b/docs/core/jest-html-reporters-attach/test-report/result.js index b14708c..66d6dce 100644 --- a/docs/core/jest-html-reporters-attach/test-report/result.js +++ b/docs/core/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":36,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":36,"startTime":1707902179345,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":36,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707902184052,"runtime":4532,"slow":false,"start":1707902179520},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":8,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":0,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":1224921832,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707902184081,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":37,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":37,"startTime":1707923937699,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":37,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923942451,"runtime":4570,"slow":false,"start":1707923937881},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":9,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [1] EncryptedURI get KDF config from decoded URI","status":"passed","title":"[1] EncryptedURI get KDF config from decoded URI"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":-2022634148,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707923942486,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/packages/ciphers/README.md b/packages/ciphers/README.md index 049a56b..f6592b2 100755 --- a/packages/ciphers/README.md +++ b/packages/ciphers/README.md @@ -7,12 +7,10 @@ [![Npm Total Downloads](https://img.shields.io/npm/dt/@encrypted-uri/ciphers.svg)](https://github.com/antonioconselheiro/encrypted-uri) [![Npm Monthly Downloads](https://img.shields.io/npm/dm/@encrypted-uri/ciphers.svg)](https://github.com/antonioconselheiro/encrypted-uri) -Include AES algorithms from @noble/ciphers into Encrypted URI (@encrypted-uri/core). Only ```initialization vector``` and ```number once``` params are included. +Include AES algorithms from @noble/ciphers into Encrypted URI (@encrypted-uri/core). Support for Encrypted URI using _@scure_ and _@noble_ packages. -*under beta test* - ## Installation ```npm install @encrypted-uri/core @encrypted-uri/ciphers --save``` diff --git a/packages/ciphers/aes/kdf.ts b/packages/ciphers/aes/kdf.ts index 168af7c..94416f2 100644 --- a/packages/ciphers/aes/kdf.ts +++ b/packages/ciphers/aes/kdf.ts @@ -11,7 +11,7 @@ export function kdf( const saltLength = 8; if (salt.length !== saltLength) { - throw new Error(`salt length must be 8 bytes, ${salt.length} bytes was given`); + throw new Error(`salt length must be ${saltLength} bytes, ${salt.length} bytes was given`); } if (cfg.kdf === 'pbkdf2') { diff --git a/packages/ciphers/kdf.test.ts b/packages/ciphers/kdf.test.ts index c01de9b..1e1ad00 100644 --- a/packages/ciphers/kdf.test.ts +++ b/packages/ciphers/kdf.test.ts @@ -2,14 +2,14 @@ import { EncryptedURI, TEncryptedURIKDFConfig } from '@encrypted-uri/core'; import './aes'; import './hashes'; -xdescribe('kdf success flow', () => { +describe('kdf success flow', () => { it('[2] kdf include all parameters including default', async () => { const kdf: TEncryptedURIKDFConfig = { kdf: 'pbkdf2', ignoreDefaults: false, hasher: 'sha256', - rounds: 100, + rounds: 10, derivateKeyLength: 32 }; @@ -41,7 +41,6 @@ xdescribe('kdf success flow', () => { password, kdf }); - console.info(' >>> encoded', encoded) const decrypted = await EncryptedURI.decrypt(encoded, password); expect(decrypted).toEqual(originalMessage); diff --git a/packages/ciphers/package.json b/packages/ciphers/package.json index a3b3e46..1f1c19b 100755 --- a/packages/ciphers/package.json +++ b/packages/ciphers/package.json @@ -1,6 +1,6 @@ { "name": "@encrypted-uri/ciphers", - "version": "1.0.10", + "version": "1.1.1", "description": "encrypt and decrypt from encrypted uri", "repository": { "type": "git", @@ -37,6 +37,6 @@ "tslib": "^2.6.2" }, "peerDependencies": { - "@encrypted-uri/core": "^1.0.0" + "@encrypted-uri/core": "^1.1.1" } } diff --git a/packages/core/index.test.ts b/packages/core/index.test.ts index 7fb0922..f04b602 100755 --- a/packages/core/index.test.ts +++ b/packages/core/index.test.ts @@ -344,3 +344,29 @@ describe('EncryptedURI object', () => { }) }); }); + +describe('EncryptedURI getKDFConfig', () => { + it('[1] EncryptedURI get KDF config from decoded URI', () => { + const configs = EncryptedURI.getKDFConfig({ + algorithm: 'aes/cbc', + content: 'mensagem secreta, favor não ler em voz alta', + password: 'senha123', + kdf: { + kdf: 'pbkdf2', + ignoreDefaults: false, + hasher: 'sha256', + rounds: 10, + derivateKeyLength: 32 + } + }); + + expect(configs).toEqual({ + kdf: 'pbkdf2', + ignoreDefaults: false, + hasher: 'sha256', + rounds: 10, + derivateKeyLength: 32 + }); + + }); +}); \ No newline at end of file diff --git a/packages/core/index.ts b/packages/core/index.ts index b24dfaf..aebb00c 100755 --- a/packages/core/index.ts +++ b/packages/core/index.ts @@ -106,7 +106,11 @@ class EncryptedURIDecoder { ): Required { let config: TEncryptedURIKDFConfig = EncryptedURI.defaultConfigs; if (kdfConfig) { - config = this.castParamsToConfig(kdfConfig.params); + if ('kdf' in kdfConfig && kdfConfig.kdf) { + config = kdfConfig.kdf; + } else if (kdfConfig.params) { + config = this.castParamsToConfig(kdfConfig.params); + } } const configWithDefaults: Required = { @@ -215,22 +219,16 @@ class EncryptedURIEncoder { private static propertyShouldBeIgnored( configs: TEncryptedURIKDFConfig, - configName: keyof TEncryptedURIKDFConfig, - overridingDefaultConfig?: TEncryptedURIKDFConfig + configName: keyof TEncryptedURIKDFConfig ): boolean { - const defaultConfigs = { - ...EncryptedURI.defaultConfigs, - ...overridingDefaultConfig - }; - const configWithDefaults: Required = { - ...defaultConfigs, + ...EncryptedURI.defaultConfigs, ...configs }; if ( !configWithDefaults[configName] || - defaultConfigs[configName] === configWithDefaults[configName] && + EncryptedURI.defaultConfigs[configName] === configWithDefaults[configName] && configWithDefaults.ignoreDefaults ) { return true; @@ -240,32 +238,31 @@ class EncryptedURIEncoder { } static castKDFConfigToParams( - content: { kdf?: TEncryptedURIKDFConfig }, - overridingDefaultConfig?: TEncryptedURIKDFConfig + content: { kdf?: TEncryptedURIKDFConfig } ): TEncryptedURIParams { const params: TEncryptedURIParams = {}; if (content.kdf) { if (!this.propertyShouldBeIgnored( - content.kdf, 'kdf', overridingDefaultConfig + content.kdf, 'kdf' )) { params.kdf = content.kdf.kdf; } if (!this.propertyShouldBeIgnored( - content.kdf, 'hasher', overridingDefaultConfig + content.kdf, 'hasher' )) { params.h = content.kdf.hasher; } if (!this.propertyShouldBeIgnored( - content.kdf, 'derivateKeyLength', overridingDefaultConfig + content.kdf, 'derivateKeyLength' )) { params.dklen = String(content.kdf.derivateKeyLength); } if (!this.propertyShouldBeIgnored( - content.kdf, 'rounds', overridingDefaultConfig + content.kdf, 'rounds' )) { params.c = String(content.kdf.rounds); } diff --git a/packages/core/package-lock.json b/packages/core/package-lock.json index 6c31d64..1ef2a3e 100644 --- a/packages/core/package-lock.json +++ b/packages/core/package-lock.json @@ -1,12 +1,12 @@ { "name": "@encrypted-uri/core", - "version": "1.1.0", + "version": "1.1.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@encrypted-uri/core", - "version": "1.1.0", + "version": "1.1.1", "license": "Unlicense", "dependencies": { "@belomonte/iterable-string": "^1.0.2", diff --git a/packages/core/package.json b/packages/core/package.json index df7f239..c2bc995 100755 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@encrypted-uri/core", - "version": "1.1.0", + "version": "1.1.1", "description": "decrypt and encrypt encrypted uri", "repository": { "type": "git", From 64c5d65af8bd9d2f36369f085138600e8c422a80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Wed, 14 Feb 2024 13:39:46 -0300 Subject: [PATCH 6/7] =?UTF-8?q?retornando=20possibilidade=20de=20hashes=20?= =?UTF-8?q?para=20kdf=20e=20corrigindo=20os=20defeitos=20apontos=20pelos?= =?UTF-8?q?=20testes=20unit=C3=A1rios=20relacionados=20a=20este=20trecho?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 0 TODO | 0 .../test-report/result.js | 2 +- docs/ciphers/test-report.html | 0 .../test-report/result.js | 2 +- docs/core/test-report.html | 0 package-lock.json | 0 packages/ciphers/aes/cbc/index.ts | 8 ++++-- packages/ciphers/aes/kdf.ts | 5 ++-- packages/ciphers/aes/openssl-serializer.ts | 0 packages/ciphers/aes/salt.ts | 0 packages/ciphers/hashes/hash-support.ts | 0 packages/ciphers/hashes/index.ts | 13 +++++++++- packages/ciphers/hashes/keccak_224.ts | 4 +++ packages/ciphers/hashes/keccak_256.ts | 4 +++ packages/ciphers/hashes/keccak_384.ts | 5 ++++ packages/ciphers/hashes/keccak_512.ts | 5 ++++ packages/ciphers/hashes/sha256.ts | 0 packages/ciphers/hashes/sha384.ts | 4 +++ packages/ciphers/hashes/sha3_224.ts | 4 +++ packages/ciphers/hashes/sha3_256.ts | 4 +++ packages/ciphers/hashes/sha3_384.ts | 4 +++ packages/ciphers/hashes/sha3_512.ts | 4 +++ packages/ciphers/hashes/sha512.ts | 4 +++ packages/ciphers/hashes/sha512_256.ts | 4 +++ packages/ciphers/jest.config.js | 0 packages/ciphers/kdf.test.ts | 0 packages/ciphers/package-lock.json | 0 packages/ciphers/params.test.ts | 2 +- packages/core/index.test.ts | 25 ++++++++++++++++++- packages/core/index.ts | 9 +++---- packages/core/package-lock.json | 0 32 files changed, 97 insertions(+), 15 deletions(-) mode change 100644 => 100755 .vscode/settings.json mode change 100644 => 100755 TODO mode change 100644 => 100755 docs/ciphers/test-report.html mode change 100644 => 100755 docs/core/test-report.html mode change 100644 => 100755 package-lock.json mode change 100644 => 100755 packages/ciphers/aes/kdf.ts mode change 100644 => 100755 packages/ciphers/aes/openssl-serializer.ts mode change 100644 => 100755 packages/ciphers/aes/salt.ts mode change 100644 => 100755 packages/ciphers/hashes/hash-support.ts mode change 100644 => 100755 packages/ciphers/hashes/index.ts create mode 100755 packages/ciphers/hashes/keccak_224.ts create mode 100755 packages/ciphers/hashes/keccak_256.ts create mode 100755 packages/ciphers/hashes/keccak_384.ts create mode 100755 packages/ciphers/hashes/keccak_512.ts mode change 100644 => 100755 packages/ciphers/hashes/sha256.ts create mode 100755 packages/ciphers/hashes/sha384.ts create mode 100755 packages/ciphers/hashes/sha3_224.ts create mode 100755 packages/ciphers/hashes/sha3_256.ts create mode 100755 packages/ciphers/hashes/sha3_384.ts create mode 100755 packages/ciphers/hashes/sha3_512.ts create mode 100755 packages/ciphers/hashes/sha512.ts create mode 100755 packages/ciphers/hashes/sha512_256.ts mode change 100644 => 100755 packages/ciphers/jest.config.js mode change 100644 => 100755 packages/ciphers/kdf.test.ts mode change 100644 => 100755 packages/ciphers/package-lock.json mode change 100644 => 100755 packages/ciphers/params.test.ts mode change 100644 => 100755 packages/core/package-lock.json diff --git a/.vscode/settings.json b/.vscode/settings.json old mode 100644 new mode 100755 diff --git a/TODO b/TODO old mode 100644 new mode 100755 diff --git a/docs/ciphers/jest-html-reporters-attach/test-report/result.js b/docs/ciphers/jest-html-reporters-attach/test-report/result.js index df4dbdb..bd0a8b1 100644 --- a/docs/ciphers/jest-html-reporters-attach/test-report/result.js +++ b/docs/ciphers/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":1,"numFailedTests":11,"numPassedTestSuites":2,"numPassedTests":9,"numPendingTestSuites":0,"numPendingTests":10,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707923945733,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923956072,"runtime":9487,"slow":true,"start":1707923946585},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":96,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":12,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":17,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":14,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":22,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":11,"numPassingTests":1,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923956259,"runtime":9775,"slow":true,"start":1707923946484},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [3] kdf with hasher sha512\u001b[39m\u001b[22m\n\n \"sha512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESGCMEncrypter.encrypt (\u001b[22m\u001b[2maes/gcm/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:38:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [4] kdf with hasher sha512_256\u001b[39m\u001b[22m\n\n \"sha512_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESGCMEncrypter.encrypt (\u001b[22m\u001b[2maes/gcm/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:57:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [5] kdf with hasher sha384\u001b[39m\u001b[22m\n\n \"sha384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESSIVEncrypter.encrypt (\u001b[22m\u001b[2maes/siv/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:76:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [6] kdf with hasher sha3_512\u001b[39m\u001b[22m\n\n \"sha3_512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCTREncrypter.encrypt (\u001b[22m\u001b[2maes/ctr/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:95:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [7] kdf with hasher sha3_384\u001b[39m\u001b[22m\n\n \"sha3_384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCTREncrypter.encrypt (\u001b[22m\u001b[2maes/ctr/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:114:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [8] kdf with hasher sha3_256\u001b[39m\u001b[22m\n\n \"sha3_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESECBEncrypter.encrypt (\u001b[22m\u001b[2maes/ecb/index.ts\u001b[2m:45:36)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:133:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [9] kdf with hasher sha3_224\u001b[39m\u001b[22m\n\n \"sha3_224\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESECBEncrypter.encrypt (\u001b[22m\u001b[2maes/ecb/index.ts\u001b[2m:45:36)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:152:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [10] kdf with hasher keccak_512\u001b[39m\u001b[22m\n\n \"keccak_512\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:171:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [11] kdf with hasher keccak_384\u001b[39m\u001b[22m\n\n \"keccak_384\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:190:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [12] kdf with hasher keccak_256\u001b[39m\u001b[22m\n\n \"keccak_256\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:209:40)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mkdf success flow › [13] kdf with hasher keccak_224\u001b[39m\u001b[22m\n\n \"keccak_224\" not supported\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 |\u001b[39m \u001b[36mconst\u001b[39m hasher \u001b[33m=\u001b[39m \u001b[36mthis\u001b[39m\u001b[33m.\u001b[39msupported[hasherName]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 22 |\u001b[39m \u001b[36mif\u001b[39m (\u001b[33m!\u001b[39mhasher) {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 23 |\u001b[39m \u001b[36mthrow\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mError\u001b[39m(\u001b[32m`\"${hasherName}\" not supported`\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 |\u001b[39m }\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 |\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 26 |\u001b[39m \u001b[36mreturn\u001b[39m hasher\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.get (\u001b[22m\u001b[2mhashes/hash-support.ts\u001b[2m:23:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat kdf (\u001b[22m\u001b[2maes/kdf.ts\u001b[2m:18:31)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat EncryptedURIAESCBCEncrypter.encrypt (\u001b[22m\u001b[2maes/cbc/index.ts\u001b[2m:49:33)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Function.encrypt (\u001b[22m\u001b[2mnode_modules/packages/core/index.ts\u001b[2m:501:58)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mkdf.test.ts\u001b[39m\u001b[0m\u001b[2m:228:40)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["kdf success flow"],"duration":67,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESGCMEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/gcm/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:38:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"failed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha512_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESGCMEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/gcm/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:57:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"failed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESSIVEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/siv/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:76:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"failed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":3,"failureMessages":["Error: \"sha3_512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCTREncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ctr/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:95:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"failed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha3_384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCTREncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ctr/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:114:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"failed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":2,"failureMessages":["Error: \"sha3_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESECBEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ecb/index.ts:45:36)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:133:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"failed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"sha3_224\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESECBEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/ecb/index.ts:45:36)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:152:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"failed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_512\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:171:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"failed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_384\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:190:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"failed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_256\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:209:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"failed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":1,"failureMessages":["Error: \"keccak_224\" not supported\n at Function.get (/encrypted-uri/packages/ciphers/hashes/hash-support.ts:23:13)\n at kdf (/encrypted-uri/packages/ciphers/aes/kdf.ts:18:31)\n at EncryptedURIAESCBCEncrypter.encrypt (/encrypted-uri/packages/ciphers/aes/cbc/index.ts:49:33)\n at Function.encrypt (/encrypted-uri/packages/ciphers/node_modules/packages/core/index.ts:501:58)\n at Object. (/encrypted-uri/packages/ciphers/kdf.test.ts:228:40)\n at Promise.then.completed (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:298:28)\n at new Promise ()\n at callAsyncCircusFn (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/utils.js:231:10)\n at _callCircusTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:316:40)\n at _runTest (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:252:3)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:126:9)\n at _runTestsForDescribeBlock (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:121:9)\n at run (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/run.js:71:3)\n at runAndTransformResultsToJestFormat (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21)\n at jestAdapter (/encrypted-uri/packages/ciphers/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19)\n at runTestInternal (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:367:16)\n at runTest (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/runTest.js:444:34)\n at Object.worker (/encrypted-uri/packages/ciphers/node_modules/jest-runner/build/testWorker.js:106:12)"],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"failed","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":0,"numPassingTests":3,"numPendingTests":10,"numTodoTests":0,"perfStats":{"end":1707923960348,"runtime":13765,"slow":true,"start":1707923946583},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"pending","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"pending","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"pending","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"pending","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"pending","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"pending","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"pending","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"pending","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"pending","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":null,"failureMessages":[],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"pending","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":4406,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":9,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-734325570,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707923960484,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":1,"numFailedTests":1,"numPassedTestSuites":2,"numPassedTests":29,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707928635102,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928645627,"runtime":9653,"slow":true,"start":1707928635974},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":161,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":23,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":24,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":24,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":28,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":0,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928646347,"runtime":10364,"slow":true,"start":1707928635983},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["kdf success flow"],"duration":232,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":112,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":62,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":136,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":91,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":33,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":39,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":46,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":33,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":20,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":20,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"passed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":48,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"passed","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":1,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928650742,"runtime":14750,"slow":true,"start":1707928635992},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mhashing customization › [12] kdf with hasher keccak_256\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\n Expected: \u001b[32mundefined\u001b[39m\n Received: \u001b[31m\"aes/cbc\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 228 |\u001b[39m \u001b[36mconst\u001b[39m parser \u001b[33m=\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mEncryptedURIParser\u001b[39m(encoded)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 229 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mkdf)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 230 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39malgorithm)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 231 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mc)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 232 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mdklen)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 233 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mh)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'keccak_256'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mparams.test.ts\u001b[39m\u001b[0m\u001b[2m:230:38)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["hashing customization"],"duration":248,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":77,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":59,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":76,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":22,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":15,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":16,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":15,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":12,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":24,"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\nExpected: \u001b[32mundefined\u001b[39m\nReceived: \u001b[31m\"aes/cbc\"\u001b[39m\n at Object. (/encrypted-uri/packages/ciphers/params.test.ts:230:38)"],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"failed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":4661,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":5,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-1137276660,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707928650863,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/docs/ciphers/test-report.html b/docs/ciphers/test-report.html old mode 100644 new mode 100755 diff --git a/docs/core/jest-html-reporters-attach/test-report/result.js b/docs/core/jest-html-reporters-attach/test-report/result.js index 66d6dce..4ba5ce2 100644 --- a/docs/core/jest-html-reporters-attach/test-report/result.js +++ b/docs/core/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":37,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":37,"startTime":1707923937699,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":37,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707923942451,"runtime":4570,"slow":false,"start":1707923937881},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":9,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [1] EncryptedURI get KDF config from decoded URI","status":"passed","title":"[1] EncryptedURI get KDF config from decoded URI"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":-2022634148,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707923942486,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":38,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":38,"startTime":1707928385683,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":38,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928392203,"runtime":6312,"slow":true,"start":1707928385891},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":12,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":3,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":0,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":0,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [1] EncryptedURI get KDF config from KDF config","status":"passed","title":"[1] EncryptedURI get KDF config from KDF config"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [2] EncryptedURI get KDF config from decoded URI","status":"passed","title":"[2] EncryptedURI get KDF config from decoded URI"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":116361545,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707928392226,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/docs/core/test-report.html b/docs/core/test-report.html old mode 100644 new mode 100755 diff --git a/package-lock.json b/package-lock.json old mode 100644 new mode 100755 diff --git a/packages/ciphers/aes/cbc/index.ts b/packages/ciphers/aes/cbc/index.ts index a69cb8a..332edd3 100755 --- a/packages/ciphers/aes/cbc/index.ts +++ b/packages/ciphers/aes/cbc/index.ts @@ -20,8 +20,10 @@ class EncryptedURIAESCBCDecrypter extends EncryptedURIDecrypter>> this.decoded: ', this.decoded); + const derivatedKey = kdf(this.password, params.salt, this.decoded); - const result = await cbc(kdf(this.password, params.salt, this.decoded), hexToBytes(ivhex)) + const result = await cbc(derivatedKey, hexToBytes(ivhex)) .decrypt(params.cipher); return bytesToUtf8(result); @@ -46,7 +48,9 @@ class EncryptedURIAESCBCEncrypter extends EncryptedURIEncrypter>> this.params: ', this.params); + const derivatedKey = kdf(this.params.password, salt, this.params); + const cipher = await cbc(derivatedKey, iv).encrypt(content); return Promise.resolve({ cipher: base64.encode(OpenSSLSerializer.encode(cipher, salt)), diff --git a/packages/ciphers/aes/kdf.ts b/packages/ciphers/aes/kdf.ts old mode 100644 new mode 100755 index 94416f2..67b38f0 --- a/packages/ciphers/aes/kdf.ts +++ b/packages/ciphers/aes/kdf.ts @@ -5,9 +5,10 @@ import { HashSupport } from '../hashes/hash-support'; export function kdf( password: string, salt: Uint8Array, - decoded?: TEncryptedURI | TEncryptedURIResultset + kdfConfig?: TEncryptedURI | TEncryptedURIResultset ): Uint8Array { - const cfg = EncryptedURI.getKDFConfig(decoded); + const cfg = EncryptedURI.getKDFConfig(kdfConfig); + console.info(' >>> cfg: ', cfg); const saltLength = 8; if (salt.length !== saltLength) { diff --git a/packages/ciphers/aes/openssl-serializer.ts b/packages/ciphers/aes/openssl-serializer.ts old mode 100644 new mode 100755 diff --git a/packages/ciphers/aes/salt.ts b/packages/ciphers/aes/salt.ts old mode 100644 new mode 100755 diff --git a/packages/ciphers/hashes/hash-support.ts b/packages/ciphers/hashes/hash-support.ts old mode 100644 new mode 100755 diff --git a/packages/ciphers/hashes/index.ts b/packages/ciphers/hashes/index.ts old mode 100644 new mode 100755 index 4dc1e44..844373c --- a/packages/ciphers/hashes/index.ts +++ b/packages/ciphers/hashes/index.ts @@ -1 +1,12 @@ -export * from './sha256'; \ No newline at end of file +export * from './keccak_224'; +export * from './keccak_256'; +export * from './keccak_384'; +export * from './keccak_512'; +export * from './sha256'; +export * from './sha384'; +export * from './sha3_224'; +export * from './sha3_256'; +export * from './sha3_384'; +export * from './sha3_512'; +export * from './sha512'; +export * from './sha512_256'; diff --git a/packages/ciphers/hashes/keccak_224.ts b/packages/ciphers/hashes/keccak_224.ts new file mode 100755 index 0000000..17a7560 --- /dev/null +++ b/packages/ciphers/hashes/keccak_224.ts @@ -0,0 +1,4 @@ +import { keccak_224 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('keccak_224', keccak_224); diff --git a/packages/ciphers/hashes/keccak_256.ts b/packages/ciphers/hashes/keccak_256.ts new file mode 100755 index 0000000..171ee77 --- /dev/null +++ b/packages/ciphers/hashes/keccak_256.ts @@ -0,0 +1,4 @@ +import { keccak_256 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('keccak_256', keccak_256); diff --git a/packages/ciphers/hashes/keccak_384.ts b/packages/ciphers/hashes/keccak_384.ts new file mode 100755 index 0000000..22d0f56 --- /dev/null +++ b/packages/ciphers/hashes/keccak_384.ts @@ -0,0 +1,5 @@ +import { keccak_384 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('keccak_384', keccak_384); + diff --git a/packages/ciphers/hashes/keccak_512.ts b/packages/ciphers/hashes/keccak_512.ts new file mode 100755 index 0000000..5a72736 --- /dev/null +++ b/packages/ciphers/hashes/keccak_512.ts @@ -0,0 +1,5 @@ +import { keccak_512 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('keccak_512', keccak_512); + diff --git a/packages/ciphers/hashes/sha256.ts b/packages/ciphers/hashes/sha256.ts old mode 100644 new mode 100755 diff --git a/packages/ciphers/hashes/sha384.ts b/packages/ciphers/hashes/sha384.ts new file mode 100755 index 0000000..93fd6be --- /dev/null +++ b/packages/ciphers/hashes/sha384.ts @@ -0,0 +1,4 @@ +import { sha384 } from '@noble/hashes/sha512' +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha384', sha384); diff --git a/packages/ciphers/hashes/sha3_224.ts b/packages/ciphers/hashes/sha3_224.ts new file mode 100755 index 0000000..2cce5ea --- /dev/null +++ b/packages/ciphers/hashes/sha3_224.ts @@ -0,0 +1,4 @@ +import { sha3_224 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha3_224', sha3_224); diff --git a/packages/ciphers/hashes/sha3_256.ts b/packages/ciphers/hashes/sha3_256.ts new file mode 100755 index 0000000..d38c1d4 --- /dev/null +++ b/packages/ciphers/hashes/sha3_256.ts @@ -0,0 +1,4 @@ +import { sha3_256 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha3_256', sha3_256); diff --git a/packages/ciphers/hashes/sha3_384.ts b/packages/ciphers/hashes/sha3_384.ts new file mode 100755 index 0000000..6f7de5a --- /dev/null +++ b/packages/ciphers/hashes/sha3_384.ts @@ -0,0 +1,4 @@ +import { sha3_384 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha3_384', sha3_384); diff --git a/packages/ciphers/hashes/sha3_512.ts b/packages/ciphers/hashes/sha3_512.ts new file mode 100755 index 0000000..28decea --- /dev/null +++ b/packages/ciphers/hashes/sha3_512.ts @@ -0,0 +1,4 @@ +import { sha3_512 } from '@noble/hashes/sha3'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha3_512', sha3_512); diff --git a/packages/ciphers/hashes/sha512.ts b/packages/ciphers/hashes/sha512.ts new file mode 100755 index 0000000..f907145 --- /dev/null +++ b/packages/ciphers/hashes/sha512.ts @@ -0,0 +1,4 @@ +import { sha512 } from '@noble/hashes/sha512'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha512', sha512); diff --git a/packages/ciphers/hashes/sha512_256.ts b/packages/ciphers/hashes/sha512_256.ts new file mode 100755 index 0000000..66efa46 --- /dev/null +++ b/packages/ciphers/hashes/sha512_256.ts @@ -0,0 +1,4 @@ +import { sha512_256 } from '@noble/hashes/sha512'; +import { HashSupport } from './hash-support'; + +HashSupport.addSupport('sha512_256', sha512_256); diff --git a/packages/ciphers/jest.config.js b/packages/ciphers/jest.config.js old mode 100644 new mode 100755 diff --git a/packages/ciphers/kdf.test.ts b/packages/ciphers/kdf.test.ts old mode 100644 new mode 100755 diff --git a/packages/ciphers/package-lock.json b/packages/ciphers/package-lock.json old mode 100644 new mode 100755 diff --git a/packages/ciphers/params.test.ts b/packages/ciphers/params.test.ts old mode 100644 new mode 100755 index cbc27bc..c30e830 --- a/packages/ciphers/params.test.ts +++ b/packages/ciphers/params.test.ts @@ -2,7 +2,7 @@ import { EncryptedURI, EncryptedURIParser, TEncryptedURIKDFConfig } from '@encry import './aes'; import './hashes'; -xdescribe('hashing customization', () => { +describe('hashing customization', () => { it('[3] kdf with hasher sha512', async () => { const kdf: TEncryptedURIKDFConfig = { hasher: 'sha512' as any as 'sha256' diff --git a/packages/core/index.test.ts b/packages/core/index.test.ts index f04b602..ea9db52 100755 --- a/packages/core/index.test.ts +++ b/packages/core/index.test.ts @@ -346,7 +346,7 @@ describe('EncryptedURI object', () => { }); describe('EncryptedURI getKDFConfig', () => { - it('[1] EncryptedURI get KDF config from decoded URI', () => { + it('[1] EncryptedURI get KDF config from KDF config', () => { const configs = EncryptedURI.getKDFConfig({ algorithm: 'aes/cbc', content: 'mensagem secreta, favor não ler em voz alta', @@ -369,4 +369,27 @@ describe('EncryptedURI getKDFConfig', () => { }); }); + + + it('[2] EncryptedURI get KDF config from decoded URI', () => { + const configs = EncryptedURI.getKDFConfig({ + algorithm: 'aes/cbc', + cipher: 'U2FsdGVkX18WeA03azX1tWETWsG/oSiQYzgI0en6RPgQ7Z2i9YbxCL3VcfzL6nsFo5Sdf0xF/UVatnJEehkcHQ==', + queryString: 'iv=44b9c510f05a8461c0ad153ba915d9dc&h=keccak_224', + params: { + iv: '44b9c510f05a8461c0ad153ba915d9dc', + h: 'keccak_224' + } + }); + + expect(configs).toEqual({ + kdf: 'pbkdf2', + ignoreDefaults: true, + hasher: 'keccak_224', + rounds: 32, + derivateKeyLength: 32 + }); + + }); + }); \ No newline at end of file diff --git a/packages/core/index.ts b/packages/core/index.ts index aebb00c..cda0c26 100755 --- a/packages/core/index.ts +++ b/packages/core/index.ts @@ -53,7 +53,7 @@ export type TEncryptedURIKDFConfig = { * * @default sha256 */ - hasher?: 'sha256'; + hasher?: string | 'sha256' | 'sha512'| 'sha512_256'| 'sha384'| 'sha3_512'| 'sha3_384'| 'sha3_256'| 'sha3_224'| 'keccak_512'| 'keccak_384'| 'keccak_256'| 'keccak_224'; /** * Iterations of hashing for pbkdf2 @@ -134,10 +134,7 @@ class EncryptedURIDecoder { config.kdf = params.kdf as 'pbkdf2'; } - if (typeof params.h === 'string' - // remove this when this issue is implemented: - // https://github.com/antonioconselheiro/encrypted-uri/issues/27 - && params.h === 'sha256') { + if (typeof params.h === 'string') { config.hasher = params.h; } @@ -395,7 +392,7 @@ export type TEncryptedURIParams = { * number of counts, rounds serialized as string * this is a pbkdf2 kdf param * - * @default '1' + * @default '32' */ c?: string; diff --git a/packages/core/package-lock.json b/packages/core/package-lock.json old mode 100644 new mode 100755 From 199094b9989c95e66c5a6d07fd30378f574c5212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Conselheiro?= Date: Wed, 14 Feb 2024 19:56:19 -0300 Subject: [PATCH 7/7] =?UTF-8?q?removendo=20logs=20de=20debug=20e=20subterf?= =?UTF-8?q?ugios=20t=C3=A9cnicos=20n=C3=A3o=20mais=20necess=C3=A1rios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test-report/result.js | 2 +- .../test-report/result.js | 2 +- packages/ciphers/aes/cbc/index.ts | 4 +-- packages/ciphers/aes/kdf.ts | 2 -- packages/ciphers/kdf.test.ts | 22 ++++++++-------- packages/ciphers/params.test.ts | 20 +++++++------- packages/core/index.ts | 26 ++++--------------- 7 files changed, 30 insertions(+), 48 deletions(-) diff --git a/docs/ciphers/jest-html-reporters-attach/test-report/result.js b/docs/ciphers/jest-html-reporters-attach/test-report/result.js index bd0a8b1..cc57bca 100644 --- a/docs/ciphers/jest-html-reporters-attach/test-report/result.js +++ b/docs/ciphers/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":1,"numFailedTests":1,"numPassedTestSuites":2,"numPassedTests":29,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707928635102,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928645627,"runtime":9653,"slow":true,"start":1707928635974},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":161,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":23,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":24,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":24,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":28,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":0,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928646347,"runtime":10364,"slow":true,"start":1707928635983},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["kdf success flow"],"duration":232,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":112,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":62,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":136,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":91,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":33,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":39,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":46,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":33,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":20,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":20,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"passed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":48,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"passed","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":1,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928650742,"runtime":14750,"slow":true,"start":1707928635992},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mhashing customization › [12] kdf with hasher keccak_256\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\n Expected: \u001b[32mundefined\u001b[39m\n Received: \u001b[31m\"aes/cbc\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 228 |\u001b[39m \u001b[36mconst\u001b[39m parser \u001b[33m=\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mEncryptedURIParser\u001b[39m(encoded)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 229 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mkdf)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 230 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39malgorithm)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 231 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mc)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 232 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mdklen)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 233 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mh)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'keccak_256'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mparams.test.ts\u001b[39m\u001b[0m\u001b[2m:230:38)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["hashing customization"],"duration":248,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":77,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":59,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":76,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":22,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":15,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":16,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":15,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":12,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":24,"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\nExpected: \u001b[32mundefined\u001b[39m\nReceived: \u001b[31m\"aes/cbc\"\u001b[39m\n at Object. (/encrypted-uri/packages/ciphers/params.test.ts:230:38)"],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"failed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":4661,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":6,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":5,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-1137276660,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707928650863,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":1,"numFailedTests":1,"numPassedTestSuites":2,"numPassedTests":29,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":3,"numTotalTests":30,"startTime":1707948544728,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":5,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707948557281,"runtime":11443,"slow":true,"start":1707948545838},"testFilePath":"/encrypted-uri/packages/ciphers/aes.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["success flow aes"],"duration":325,"failureMessages":[],"fullName":"success flow aes cbc","status":"passed","title":"cbc"},{"ancestorTitles":["success flow aes"],"duration":31,"failureMessages":[],"fullName":"success flow aes ctr","status":"passed","title":"ctr"},{"ancestorTitles":["success flow aes"],"duration":15,"failureMessages":[],"fullName":"success flow aes ecb","status":"passed","title":"ecb"},{"ancestorTitles":["success flow aes"],"duration":19,"failureMessages":[],"fullName":"success flow aes gcm","status":"passed","title":"gcm"},{"ancestorTitles":["success flow aes"],"duration":29,"failureMessages":[],"fullName":"success flow aes siv","status":"passed","title":"siv"}]},{"numFailingTests":0,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707948557797,"runtime":11959,"slow":true,"start":1707948545838},"testFilePath":"/encrypted-uri/packages/ciphers/kdf.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["kdf success flow"],"duration":317,"failureMessages":[],"fullName":"kdf success flow [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["kdf success flow"],"duration":76,"failureMessages":[],"fullName":"kdf success flow [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["kdf success flow"],"duration":120,"failureMessages":[],"fullName":"kdf success flow [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["kdf success flow"],"duration":97,"failureMessages":[],"fullName":"kdf success flow [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["kdf success flow"],"duration":80,"failureMessages":[],"fullName":"kdf success flow [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["kdf success flow"],"duration":33,"failureMessages":[],"fullName":"kdf success flow [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["kdf success flow"],"duration":37,"failureMessages":[],"fullName":"kdf success flow [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["kdf success flow"],"duration":50,"failureMessages":[],"fullName":"kdf success flow [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["kdf success flow"],"duration":36,"failureMessages":[],"fullName":"kdf success flow [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["kdf success flow"],"duration":35,"failureMessages":[],"fullName":"kdf success flow [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["kdf success flow"],"duration":21,"failureMessages":[],"fullName":"kdf success flow [12] kdf with hasher keccak_256","status":"passed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["kdf success flow"],"duration":31,"failureMessages":[],"fullName":"kdf success flow [13] kdf with hasher keccak_224","status":"passed","title":"[13] kdf with hasher keccak_224"}]},{"numFailingTests":1,"numPassingTests":12,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707948562545,"runtime":16707,"slow":true,"start":1707948545838},"testFilePath":"/encrypted-uri/packages/ciphers/params.test.ts","failureMessage":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mhashing customization › [12] kdf with hasher keccak_256\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\n Expected: \u001b[32mundefined\u001b[39m\n Received: \u001b[31m\"aes/cbc\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 228 |\u001b[39m \u001b[36mconst\u001b[39m parser \u001b[33m=\u001b[39m \u001b[36mnew\u001b[39m \u001b[33mEncryptedURIParser\u001b[39m(encoded)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 229 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mkdf)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 230 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39malgorithm)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 231 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mc)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 232 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mdklen)\u001b[33m.\u001b[39mtoEqual(undefined)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 233 |\u001b[39m expect(parser\u001b[33m.\u001b[39mdecoded\u001b[33m.\u001b[39mparams\u001b[33m?\u001b[39m\u001b[33m.\u001b[39mh)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'keccak_256'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[22m\u001b[2m\u001b[0m\u001b[36mparams.test.ts\u001b[39m\u001b[0m\u001b[2m:230:38)\u001b[22m\u001b[2m\u001b[22m\n","testResults":[{"ancestorTitles":["hashing customization"],"duration":342,"failureMessages":[],"fullName":"hashing customization [3] kdf with hasher sha512","status":"passed","title":"[3] kdf with hasher sha512"},{"ancestorTitles":["hashing customization"],"duration":49,"failureMessages":[],"fullName":"hashing customization [4] kdf with hasher sha512_256","status":"passed","title":"[4] kdf with hasher sha512_256"},{"ancestorTitles":["hashing customization"],"duration":61,"failureMessages":[],"fullName":"hashing customization [5] kdf with hasher sha384","status":"passed","title":"[5] kdf with hasher sha384"},{"ancestorTitles":["hashing customization"],"duration":63,"failureMessages":[],"fullName":"hashing customization [6] kdf with hasher sha3_512","status":"passed","title":"[6] kdf with hasher sha3_512"},{"ancestorTitles":["hashing customization"],"duration":23,"failureMessages":[],"fullName":"hashing customization [7] kdf with hasher sha3_384","status":"passed","title":"[7] kdf with hasher sha3_384"},{"ancestorTitles":["hashing customization"],"duration":23,"failureMessages":[],"fullName":"hashing customization [8] kdf with hasher sha3_256","status":"passed","title":"[8] kdf with hasher sha3_256"},{"ancestorTitles":["hashing customization"],"duration":28,"failureMessages":[],"fullName":"hashing customization [9] kdf with hasher sha3_224","status":"passed","title":"[9] kdf with hasher sha3_224"},{"ancestorTitles":["hashing customization"],"duration":25,"failureMessages":[],"fullName":"hashing customization [10] kdf with hasher keccak_512","status":"passed","title":"[10] kdf with hasher keccak_512"},{"ancestorTitles":["hashing customization"],"duration":22,"failureMessages":[],"fullName":"hashing customization [11] kdf with hasher keccak_384","status":"passed","title":"[11] kdf with hasher keccak_384"},{"ancestorTitles":["hashing customization"],"duration":28,"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\nExpected: \u001b[32mundefined\u001b[39m\nReceived: \u001b[31m\"aes/cbc\"\u001b[39m\n at Object. (/encrypted-uri/packages/ciphers/params.test.ts:230:38)"],"fullName":"hashing customization [12] kdf with hasher keccak_256","status":"failed","title":"[12] kdf with hasher keccak_256"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":4856,"failureMessages":[],"fullName":"checking if params are correctly encoded [1] overriding default values in decrypt","status":"passed","title":"[1] overriding default values in decrypt"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":10,"failureMessages":[],"fullName":"checking if params are correctly encoded [2] kdf include all parameters including default","status":"passed","title":"[2] kdf include all parameters including default"},{"ancestorTitles":["checking if params are correctly encoded"],"duration":8,"failureMessages":[],"fullName":"checking if params are correctly encoded [3] kdf with algorithm not set","status":"passed","title":"[3] kdf with algorithm not set"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/ciphers/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/ciphers/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/ciphers","runTestsByPath":false,"seed":-2103888769,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/ciphers/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707948562670,"_reporterOptions":{"publicPath":"../../docs/ciphers","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/docs/core/jest-html-reporters-attach/test-report/result.js b/docs/core/jest-html-reporters-attach/test-report/result.js index 4ba5ce2..0e8de27 100644 --- a/docs/core/jest-html-reporters-attach/test-report/result.js +++ b/docs/core/jest-html-reporters-attach/test-report/result.js @@ -1 +1 @@ -window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":38,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":38,"startTime":1707928385683,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":38,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707928392203,"runtime":6312,"slow":true,"start":1707928385891},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":12,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":3,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":0,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":0,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":3,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [1] EncryptedURI get KDF config from KDF config","status":"passed","title":"[1] EncryptedURI get KDF config from KDF config"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [2] EncryptedURI get KDF config from decoded URI","status":"passed","title":"[2] EncryptedURI get KDF config from decoded URI"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":116361545,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707928392226,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file +window.jest_html_reporters_callback__({"numFailedTestSuites":0,"numFailedTests":0,"numPassedTestSuites":1,"numPassedTests":38,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":38,"startTime":1707948528799,"success":false,"testResults":[{"numFailingTests":0,"numPassingTests":38,"numPendingTests":0,"numTodoTests":0,"perfStats":{"end":1707948538921,"runtime":9484,"slow":true,"start":1707948529437},"testFilePath":"/encrypted-uri/packages/core/index.test.ts","failureMessage":null,"testResults":[{"ancestorTitles":["decode uri with default values"],"duration":12,"failureMessages":[],"fullName":"decode uri with default values [1] decode uri with default values not include","status":"passed","title":"[1] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [2] decode uri with some default values not include","status":"passed","title":"[2] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":1,"failureMessages":[],"fullName":"decode uri with default values [3] decode uri with some default values not include","status":"passed","title":"[3] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":3,"failureMessages":[],"fullName":"decode uri with default values [4] decode uri with default values not include","status":"passed","title":"[4] decode uri with default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":4,"failureMessages":[],"fullName":"decode uri with default values [5] decode uri with some default values not include","status":"passed","title":"[5] decode uri with some default values not include"},{"ancestorTitles":["decode uri with default values"],"duration":2,"failureMessages":[],"fullName":"decode uri with default values [6] decode uri with some default values not include","status":"passed","title":"[6] decode uri with some default values not include"},{"ancestorTitles":["decode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"decode uri with customized values [1] decode aes/gcm with customized values","status":"passed","title":"[1] decode aes/gcm with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [2] decode salsa20 with customized values","status":"passed","title":"[2] decode salsa20 with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [3] decode xchacha with customized values","status":"passed","title":"[3] decode xchacha with customized values"},{"ancestorTitles":["decode uri with customized values"],"duration":2,"failureMessages":[],"fullName":"decode uri with customized values [4] decode chacha12 with customized values","status":"passed","title":"[4] decode chacha12 with customized values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [1] encode with default config with default values","status":"passed","title":"[1] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":2,"failureMessages":[],"fullName":"encode uri with configs using default values [2] encode with default config with default values","status":"passed","title":"[2] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [3] encode with default config with default values","status":"passed","title":"[3] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [4] encode with default config with default values","status":"passed","title":"[4] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [5] encode with default config with default values","status":"passed","title":"[5] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [6] encode with default config with default values","status":"passed","title":"[6] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [7] encode with default config with default values","status":"passed","title":"[7] encode with default config with default values"},{"ancestorTitles":["encode uri with configs using default values"],"duration":1,"failureMessages":[],"fullName":"encode uri with configs using default values [8] encode with default config with default values","status":"passed","title":"[8] encode with default config with default values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [1] encode aes/gcm with customized values","status":"passed","title":"[1] encode aes/gcm with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [2] encode salsa20 with customized values","status":"passed","title":"[2] encode salsa20 with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":0,"failureMessages":[],"fullName":"encode uri with customized values [3] encode xchacha with customized values","status":"passed","title":"[3] encode xchacha with customized values"},{"ancestorTitles":["encode uri with customized values"],"duration":1,"failureMessages":[],"fullName":"encode uri with customized values [4] encode chacha12 with customized values","status":"passed","title":"[4] encode chacha12 with customized values"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [2] match valid encrypted uri","status":"passed","title":"[2] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":2,"failureMessages":[],"fullName":"uri matcher [3] match valid encrypted uri","status":"passed","title":"[3] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [4] match valid encrypted uri","status":"passed","title":"[4] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [5] match valid encrypted uri","status":"passed","title":"[5] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [6] match valid encrypted uri","status":"passed","title":"[6] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [7] match valid encrypted uri","status":"passed","title":"[7] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":0,"failureMessages":[],"fullName":"uri matcher [8] match valid encrypted uri","status":"passed","title":"[8] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [9] match valid encrypted uri","status":"passed","title":"[9] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [10] match valid encrypted uri","status":"passed","title":"[10] match valid encrypted uri"},{"ancestorTitles":["uri matcher"],"duration":1,"failureMessages":[],"fullName":"uri matcher [11] match valid encrypted uri","status":"passed","title":"[11] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI object [1] match valid encrypted uri","status":"passed","title":"[1] match valid encrypted uri"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [2] EncryptedURI must run decrypt for custom algorithm","status":"passed","title":"[2] EncryptedURI must run decrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI object"],"duration":2,"failureMessages":[],"fullName":"EncryptedURI object [3] EncryptedURI must run encrypt for custom algorithm","status":"passed","title":"[3] EncryptedURI must run encrypt for custom algorithm"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [1] EncryptedURI get KDF config from KDF config","status":"passed","title":"[1] EncryptedURI get KDF config from KDF config"},{"ancestorTitles":["EncryptedURI getKDFConfig"],"duration":1,"failureMessages":[],"fullName":"EncryptedURI getKDFConfig [2] EncryptedURI get KDF config from decoded URI","status":"passed","title":"[2] EncryptedURI get KDF config from decoded URI"}]}],"config":{"bail":0,"changedFilesWithAncestor":false,"ci":false,"collectCoverage":false,"collectCoverageFrom":[],"coverageDirectory":"/encrypted-uri/packages/core/coverage","coverageProvider":"babel","coverageReporters":["json","text","lcov","clover"],"detectLeaks":false,"detectOpenHandles":false,"errorOnDeprecated":false,"expand":false,"findRelatedTests":false,"forceExit":false,"json":false,"lastCommit":false,"listTests":false,"logHeapUsage":false,"maxConcurrency":5,"maxWorkers":7,"noStackTrace":false,"nonFlagArgs":[],"notify":false,"notifyMode":"failure-change","onlyChanged":false,"onlyFailures":false,"openHandlesTimeout":1000,"passWithNoTests":false,"projects":[],"reporters":[["default",{}],["/encrypted-uri/packages/core/node_modules/jest-html-reporters/index.js",{"publicPath":"../../docs/core","filename":"test-report.html","expand":true}]],"rootDir":"/encrypted-uri/packages/core","runTestsByPath":false,"seed":-1428097188,"skipFilter":false,"snapshotFormat":{"escapeString":false,"printBasicPrototype":false},"testFailureExitCode":1,"testPathPattern":"","testSequencer":"/encrypted-uri/packages/core/node_modules/@jest/test-sequencer/build/index.js","updateSnapshot":"new","useStderr":false,"verbose":true,"watch":false,"watchAll":false,"watchman":true,"workerThreads":false},"endTime":1707948538943,"_reporterOptions":{"publicPath":"../../docs/core","filename":"test-report.html","expand":true,"pageTitle":"","hideIcon":false,"testCommand":"","openReport":false,"failureMessageOnly":0,"enableMergeData":false,"dataMergeLevel":1,"inlineSource":false,"urlForTestFiles":"","darkTheme":false,"includeConsoleLog":false,"stripSkippedTest":false},"logInfoMapping":{},"attachInfos":{}}) \ No newline at end of file diff --git a/packages/ciphers/aes/cbc/index.ts b/packages/ciphers/aes/cbc/index.ts index 332edd3..2ee942a 100755 --- a/packages/ciphers/aes/cbc/index.ts +++ b/packages/ciphers/aes/cbc/index.ts @@ -20,7 +20,7 @@ class EncryptedURIAESCBCDecrypter extends EncryptedURIDecrypter>> this.decoded: ', this.decoded); + const derivatedKey = kdf(this.password, params.salt, this.decoded); const result = await cbc(derivatedKey, hexToBytes(ivhex)) @@ -48,7 +48,7 @@ class EncryptedURIAESCBCEncrypter extends EncryptedURIEncrypter>> this.params: ', this.params); + const derivatedKey = kdf(this.params.password, salt, this.params); const cipher = await cbc(derivatedKey, iv).encrypt(content); diff --git a/packages/ciphers/aes/kdf.ts b/packages/ciphers/aes/kdf.ts index 67b38f0..7c8990b 100755 --- a/packages/ciphers/aes/kdf.ts +++ b/packages/ciphers/aes/kdf.ts @@ -8,8 +8,6 @@ export function kdf( kdfConfig?: TEncryptedURI | TEncryptedURIResultset ): Uint8Array { const cfg = EncryptedURI.getKDFConfig(kdfConfig); - console.info(' >>> cfg: ', cfg); - const saltLength = 8; if (salt.length !== saltLength) { throw new Error(`salt length must be ${saltLength} bytes, ${salt.length} bytes was given`); diff --git a/packages/ciphers/kdf.test.ts b/packages/ciphers/kdf.test.ts index 1e1ad00..5e87e12 100755 --- a/packages/ciphers/kdf.test.ts +++ b/packages/ciphers/kdf.test.ts @@ -29,7 +29,7 @@ describe('kdf success flow', () => { it('[3] kdf with hasher sha512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512' as any as 'sha256' + hasher: 'sha512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -48,7 +48,7 @@ describe('kdf success flow', () => { it('[4] kdf with hasher sha512_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512_256' as any as 'sha256' + hasher: 'sha512_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -67,7 +67,7 @@ describe('kdf success flow', () => { it('[5] kdf with hasher sha384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha384' as any as 'sha256' + hasher: 'sha384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -86,7 +86,7 @@ describe('kdf success flow', () => { it('[6] kdf with hasher sha3_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_512' as any as 'sha256' + hasher: 'sha3_512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -105,7 +105,7 @@ describe('kdf success flow', () => { it('[7] kdf with hasher sha3_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_384' as any as 'sha256' + hasher: 'sha3_384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -124,7 +124,7 @@ describe('kdf success flow', () => { it('[8] kdf with hasher sha3_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_256' as any as 'sha256' + hasher: 'sha3_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -143,7 +143,7 @@ describe('kdf success flow', () => { it('[9] kdf with hasher sha3_224', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_224' as any as 'sha256' + hasher: 'sha3_224' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -162,7 +162,7 @@ describe('kdf success flow', () => { it('[10] kdf with hasher keccak_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_512' as any as 'sha256' + hasher: 'keccak_512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -181,7 +181,7 @@ describe('kdf success flow', () => { it('[11] kdf with hasher keccak_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_384' as any as 'sha256' + hasher: 'keccak_384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -200,7 +200,7 @@ describe('kdf success flow', () => { it('[12] kdf with hasher keccak_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_256' as any as 'sha256' + hasher: 'keccak_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -219,7 +219,7 @@ describe('kdf success flow', () => { it('[13] kdf with hasher keccak_224', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_224' as any as 'sha256' + hasher: 'keccak_224' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; diff --git a/packages/ciphers/params.test.ts b/packages/ciphers/params.test.ts index c30e830..b8a5ed2 100755 --- a/packages/ciphers/params.test.ts +++ b/packages/ciphers/params.test.ts @@ -5,7 +5,7 @@ import './hashes'; describe('hashing customization', () => { it('[3] kdf with hasher sha512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512' as any as 'sha256' + hasher: 'sha512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -28,7 +28,7 @@ describe('hashing customization', () => { it('[4] kdf with hasher sha512_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha512_256' as any as 'sha256' + hasher: 'sha512_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -51,7 +51,7 @@ describe('hashing customization', () => { it('[5] kdf with hasher sha384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha384' as any as 'sha256' + hasher: 'sha384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -74,7 +74,7 @@ describe('hashing customization', () => { it('[6] kdf with hasher sha3_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_512' as any as 'sha256' + hasher: 'sha3_512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -97,7 +97,7 @@ describe('hashing customization', () => { it('[7] kdf with hasher sha3_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_384' as any as 'sha256' + hasher: 'sha3_384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -120,7 +120,7 @@ describe('hashing customization', () => { it('[8] kdf with hasher sha3_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_256' as any as 'sha256' + hasher: 'sha3_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -143,7 +143,7 @@ describe('hashing customization', () => { it('[9] kdf with hasher sha3_224', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'sha3_224' as any as 'sha256' + hasher: 'sha3_224' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -166,7 +166,7 @@ describe('hashing customization', () => { it('[10] kdf with hasher keccak_512', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_512' as any as 'sha256' + hasher: 'keccak_512' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -189,7 +189,7 @@ describe('hashing customization', () => { it('[11] kdf with hasher keccak_384', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_384' as any as 'sha256' + hasher: 'keccak_384' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; @@ -212,7 +212,7 @@ describe('hashing customization', () => { it('[12] kdf with hasher keccak_256', async () => { const kdf: TEncryptedURIKDFConfig = { - hasher: 'keccak_256' as any as 'sha256' + hasher: 'keccak_256' }; const originalMessage = 'mensagem secreta, favor não ler em voz alta'; diff --git a/packages/core/index.ts b/packages/core/index.ts index cda0c26..e694b23 100755 --- a/packages/core/index.ts +++ b/packages/core/index.ts @@ -37,20 +37,6 @@ export type TEncryptedURIKDFConfig = { /** * Hashing algorithm supported by pbkdf2 * - * I have tried to include more hashers, but they - * thrown exception and I don't understand why, If - * you need other hasher then sha256 to be able to - * be configured, you must help me opening a pull - * request with the solution and unit tests validating - * it, those are the hashers for kdf that I can't solve: - * - * sha512, sha512_256, sha384, sha3_512, - * sha3_384, sha3_256, sha3_224, keccak_512, - * keccak_384, keccak_256, keccak_224 - * - * Issue: - * https://github.com/antonioconselheiro/encrypted-uri/issues/27 - * * @default sha256 */ hasher?: string | 'sha256' | 'sha512'| 'sha512_256'| 'sha384'| 'sha3_512'| 'sha3_384'| 'sha3_256'| 'sha3_224'| 'keccak_512'| 'keccak_384'| 'keccak_256'| 'keccak_224'; @@ -140,13 +126,11 @@ class EncryptedURIDecoder { if (typeof params.dklen === 'string') { const derivateKeyLength = Number(params.dklen); - const fixedDerivateKeyLengthValue = 32; - if (Number.isSafeInteger(derivateKeyLength) - // remove this when implements this issue: - // https://github.com/antonioconselheiro/encrypted-uri/issues/27 - && derivateKeyLength === fixedDerivateKeyLengthValue - ) { - config.derivateKeyLength = derivateKeyLength; + if (Number.isSafeInteger(derivateKeyLength)) { + // remove any quando issue for resolvido + // https://github.com/antonioconselheiro/encrypted-uri/issues/31 + // eslint-disable-next-line @typescript-eslint/no-explicit-any + config.derivateKeyLength = derivateKeyLength as any; } }