@digitaldefiance/ecies-lib 4.12.8 → 4.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -12
- package/package.json +3 -3
- package/src/builders/ecies-builder.d.ts +24 -1
- package/src/builders/ecies-builder.d.ts.map +1 -1
- package/src/builders/ecies-builder.js +24 -1
- package/src/builders/ecies-builder.js.map +1 -1
- package/src/builders/member-builder.d.ts +57 -1
- package/src/builders/member-builder.d.ts.map +1 -1
- package/src/builders/member-builder.js +57 -1
- package/src/builders/member-builder.js.map +1 -1
- package/src/constants.d.ts +99 -10
- package/src/constants.d.ts.map +1 -1
- package/src/constants.js +162 -20
- package/src/constants.js.map +1 -1
- package/src/core/errors/crypto-error.d.ts +28 -1
- package/src/core/errors/crypto-error.d.ts.map +1 -1
- package/src/core/errors/crypto-error.js +28 -1
- package/src/core/errors/crypto-error.js.map +1 -1
- package/src/core/types/result.d.ts +21 -1
- package/src/core/types/result.d.ts.map +1 -1
- package/src/core/types/result.js +17 -1
- package/src/core/types/result.js.map +1 -1
- package/src/enumerations/ecies-cipher-suite.d.ts +11 -0
- package/src/enumerations/ecies-cipher-suite.d.ts.map +1 -1
- package/src/enumerations/ecies-cipher-suite.js +11 -1
- package/src/enumerations/ecies-cipher-suite.js.map +1 -1
- package/src/enumerations/ecies-encryption-type.d.ts +26 -3
- package/src/enumerations/ecies-encryption-type.d.ts.map +1 -1
- package/src/enumerations/ecies-encryption-type.js +29 -10
- package/src/enumerations/ecies-encryption-type.js.map +1 -1
- package/src/enumerations/ecies-error-type.d.ts +48 -3
- package/src/enumerations/ecies-error-type.d.ts.map +1 -1
- package/src/enumerations/ecies-error-type.js +45 -0
- package/src/enumerations/ecies-error-type.js.map +1 -1
- package/src/enumerations/ecies-string-key.d.ts +4 -0
- package/src/enumerations/ecies-string-key.d.ts.map +1 -1
- package/src/enumerations/ecies-string-key.js +4 -0
- package/src/enumerations/ecies-string-key.js.map +1 -1
- package/src/enumerations/ecies-version.d.ts +5 -0
- package/src/enumerations/ecies-version.d.ts.map +1 -1
- package/src/enumerations/ecies-version.js +5 -0
- package/src/enumerations/ecies-version.js.map +1 -1
- package/src/enumerations/guid-brand-type.d.ts +13 -8
- package/src/enumerations/guid-brand-type.d.ts.map +1 -1
- package/src/enumerations/guid-brand-type.js +13 -8
- package/src/enumerations/guid-brand-type.js.map +1 -1
- package/src/enumerations/guid-error-type.d.ts +8 -0
- package/src/enumerations/guid-error-type.d.ts.map +1 -1
- package/src/enumerations/guid-error-type.js +8 -0
- package/src/enumerations/guid-error-type.js.map +1 -1
- package/src/enumerations/index.d.ts +4 -0
- package/src/enumerations/index.d.ts.map +1 -1
- package/src/enumerations/index.js +4 -0
- package/src/enumerations/index.js.map +1 -1
- package/src/enumerations/invalid-email-type.d.ts +7 -0
- package/src/enumerations/invalid-email-type.d.ts.map +1 -1
- package/src/enumerations/invalid-email-type.js +7 -0
- package/src/enumerations/invalid-email-type.js.map +1 -1
- package/src/enumerations/length-encoding-type.d.ts +8 -0
- package/src/enumerations/length-encoding-type.d.ts.map +1 -1
- package/src/enumerations/length-encoding-type.js +8 -0
- package/src/enumerations/length-encoding-type.js.map +1 -1
- package/src/enumerations/length-error-type.d.ts +7 -0
- package/src/enumerations/length-error-type.d.ts.map +1 -1
- package/src/enumerations/length-error-type.js +7 -0
- package/src/enumerations/length-error-type.js.map +1 -1
- package/src/enumerations/password-login-error-type.d.ts +6 -0
- package/src/enumerations/password-login-error-type.d.ts.map +1 -1
- package/src/enumerations/password-login-error-type.js +6 -0
- package/src/enumerations/password-login-error-type.js.map +1 -1
- package/src/enumerations/pbkdf2-error-type.d.ts +7 -0
- package/src/enumerations/pbkdf2-error-type.d.ts.map +1 -1
- package/src/enumerations/pbkdf2-error-type.js +7 -0
- package/src/enumerations/pbkdf2-error-type.js.map +1 -1
- package/src/enumerations/pbkdf2-profile.d.ts +7 -0
- package/src/enumerations/pbkdf2-profile.d.ts.map +1 -1
- package/src/enumerations/pbkdf2-profile.js +7 -0
- package/src/enumerations/pbkdf2-profile.js.map +1 -1
- package/src/enumerations/secure-storage-error-type.d.ts +7 -0
- package/src/enumerations/secure-storage-error-type.d.ts.map +1 -1
- package/src/enumerations/secure-storage-error-type.js +7 -0
- package/src/enumerations/secure-storage-error-type.js.map +1 -1
- package/src/errors/index.d.ts +5 -0
- package/src/errors/index.d.ts.map +1 -1
- package/src/errors/index.js +5 -0
- package/src/errors/index.js.map +1 -1
- package/src/errors/invalid-email.d.ts +4 -0
- package/src/errors/invalid-email.d.ts.map +1 -1
- package/src/errors/invalid-email.js +4 -0
- package/src/errors/invalid-email.js.map +1 -1
- package/src/errors/length.d.ts +4 -0
- package/src/errors/length.d.ts.map +1 -1
- package/src/errors/length.js +4 -0
- package/src/errors/length.js.map +1 -1
- package/src/errors/member.d.ts +4 -0
- package/src/errors/member.d.ts.map +1 -1
- package/src/errors/member.js +4 -0
- package/src/errors/member.js.map +1 -1
- package/src/errors/pbkdf2.d.ts +4 -0
- package/src/errors/pbkdf2.d.ts.map +1 -1
- package/src/errors/pbkdf2.js +4 -0
- package/src/errors/pbkdf2.js.map +1 -1
- package/src/errors/secure-storage.d.ts +4 -0
- package/src/errors/secure-storage.d.ts.map +1 -1
- package/src/errors/secure-storage.js +4 -0
- package/src/errors/secure-storage.js.map +1 -1
- package/src/errors/simple-ecies.d.ts +4 -0
- package/src/errors/simple-ecies.d.ts.map +1 -1
- package/src/errors/simple-ecies.js +4 -0
- package/src/errors/simple-ecies.js.map +1 -1
- package/src/errors/simple-test-error.d.ts +3 -0
- package/src/errors/simple-test-error.d.ts.map +1 -1
- package/src/errors/simple-test-error.js +3 -0
- package/src/errors/simple-test-error.js.map +1 -1
- package/src/errors/translatable.d.ts +8 -0
- package/src/errors/translatable.d.ts.map +1 -0
- package/src/errors/translatable.js +20 -0
- package/src/errors/translatable.js.map +1 -0
- package/src/interfaces/checksum-config.d.ts +3 -0
- package/src/interfaces/checksum-config.d.ts.map +1 -1
- package/src/interfaces/checksum-consts.d.ts +4 -0
- package/src/interfaces/checksum-consts.d.ts.map +1 -1
- package/src/interfaces/constants.d.ts +21 -6
- package/src/interfaces/constants.d.ts.map +1 -1
- package/src/interfaces/constants.js +5 -0
- package/src/interfaces/constants.js.map +1 -1
- package/src/interfaces/ecies-config.d.ts +3 -0
- package/src/interfaces/ecies-config.d.ts.map +1 -1
- package/src/interfaces/ecies-consts.d.ts +42 -7
- package/src/interfaces/ecies-consts.d.ts.map +1 -1
- package/src/interfaces/ecies-file-service.d.ts +3 -0
- package/src/interfaces/ecies-file-service.d.ts.map +1 -1
- package/src/interfaces/guid.d.ts +4 -0
- package/src/interfaces/guid.d.ts.map +1 -1
- package/src/interfaces/index.d.ts +4 -0
- package/src/interfaces/index.d.ts.map +1 -1
- package/src/interfaces/index.js +4 -0
- package/src/interfaces/index.js.map +1 -1
- package/src/interfaces/pbkdf2-config.d.ts +8 -0
- package/src/interfaces/pbkdf2-config.d.ts.map +1 -1
- package/src/interfaces/pbkdf2-consts.d.ts +7 -3
- package/src/interfaces/pbkdf2-consts.d.ts.map +1 -1
- package/src/interfaces/pbkdf2-result.d.ts +7 -0
- package/src/interfaces/pbkdf2-result.d.ts.map +1 -1
- package/src/interfaces/platform-id.d.ts +10 -2
- package/src/interfaces/platform-id.d.ts.map +1 -1
- package/src/interfaces/platform-id.js +8 -0
- package/src/interfaces/platform-id.js.map +1 -1
- package/src/interfaces/voting-service.d.ts +5 -6
- package/src/interfaces/voting-service.d.ts.map +1 -1
- package/src/lib/configuration-provenance-utils.d.ts +5 -1
- package/src/lib/configuration-provenance-utils.d.ts.map +1 -1
- package/src/lib/configuration-provenance-utils.js +5 -1
- package/src/lib/configuration-provenance-utils.js.map +1 -1
- package/src/lib/guid.d.ts +47 -29
- package/src/lib/guid.d.ts.map +1 -1
- package/src/lib/guid.js +127 -104
- package/src/lib/guid.js.map +1 -1
- package/src/lib/id-providers/guidv4-provider.d.ts +8 -8
- package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -1
- package/src/lib/id-providers/guidv4-provider.js +10 -10
- package/src/lib/id-providers/guidv4-provider.js.map +1 -1
- package/src/lib/invariants/index.d.ts +3 -0
- package/src/lib/invariants/index.d.ts.map +1 -1
- package/src/lib/invariants/index.js +3 -0
- package/src/lib/invariants/index.js.map +1 -1
- package/src/lib/voting/enumerations/audit-event-type.d.ts +3 -0
- package/src/lib/voting/enumerations/audit-event-type.d.ts.map +1 -1
- package/src/lib/voting/enumerations/audit-event-type.js +3 -0
- package/src/lib/voting/enumerations/audit-event-type.js.map +1 -1
- package/src/lib/voting/enumerations/event-type.d.ts +3 -0
- package/src/lib/voting/enumerations/event-type.d.ts.map +1 -1
- package/src/lib/voting/enumerations/event-type.js +3 -0
- package/src/lib/voting/enumerations/event-type.js.map +1 -1
- package/src/lib/voting/enumerations/index.d.ts +3 -0
- package/src/lib/voting/enumerations/index.d.ts.map +1 -1
- package/src/lib/voting/enumerations/index.js +3 -0
- package/src/lib/voting/enumerations/index.js.map +1 -1
- package/src/lib/voting/enumerations/jurisdictional-level.d.ts +3 -0
- package/src/lib/voting/enumerations/jurisdictional-level.d.ts.map +1 -1
- package/src/lib/voting/enumerations/jurisdictional-level.js +3 -0
- package/src/lib/voting/enumerations/jurisdictional-level.js.map +1 -1
- package/src/lib/voting/enumerations/security-level.d.ts +3 -0
- package/src/lib/voting/enumerations/security-level.d.ts.map +1 -1
- package/src/lib/voting/enumerations/security-level.js +3 -0
- package/src/lib/voting/enumerations/security-level.js.map +1 -1
- package/src/lib/voting/interfaces/aggregated-tally.d.ts +3 -0
- package/src/lib/voting/interfaces/aggregated-tally.d.ts.map +1 -1
- package/src/lib/voting/interfaces/audit-entry.d.ts +3 -0
- package/src/lib/voting/interfaces/audit-entry.d.ts.map +1 -1
- package/src/lib/voting/interfaces/audit-log.d.ts +3 -0
- package/src/lib/voting/interfaces/audit-log.d.ts.map +1 -1
- package/src/lib/voting/interfaces/bulletin-board-entry.d.ts +3 -0
- package/src/lib/voting/interfaces/bulletin-board-entry.d.ts.map +1 -1
- package/src/lib/voting/interfaces/bulletin-board.d.ts +3 -0
- package/src/lib/voting/interfaces/bulletin-board.d.ts.map +1 -1
- package/src/lib/voting/interfaces/checkpoint-manager.d.ts +3 -0
- package/src/lib/voting/interfaces/checkpoint-manager.d.ts.map +1 -1
- package/src/lib/voting/interfaces/checkpoint-metadata.d.ts +3 -0
- package/src/lib/voting/interfaces/checkpoint-metadata.d.ts.map +1 -1
- package/src/lib/voting/interfaces/event-log-entry.d.ts +3 -0
- package/src/lib/voting/interfaces/event-log-entry.d.ts.map +1 -1
- package/src/lib/voting/interfaces/event-logger.d.ts +3 -0
- package/src/lib/voting/interfaces/event-logger.d.ts.map +1 -1
- package/src/lib/voting/interfaces/index.d.ts +3 -0
- package/src/lib/voting/interfaces/index.d.ts.map +1 -1
- package/src/lib/voting/interfaces/index.js.map +1 -1
- package/src/lib/voting/interfaces/jurisdiction-config.d.ts +3 -0
- package/src/lib/voting/interfaces/jurisdiction-config.d.ts.map +1 -1
- package/src/lib/voting/interfaces/poll-configuration.d.ts +3 -0
- package/src/lib/voting/interfaces/poll-configuration.d.ts.map +1 -1
- package/src/lib/voting/interfaces/state-snapshot.d.ts +3 -0
- package/src/lib/voting/interfaces/state-snapshot.d.ts.map +1 -1
- package/src/lib/voting/interfaces/tally-proof.d.ts +3 -0
- package/src/lib/voting/interfaces/tally-proof.d.ts.map +1 -1
- package/src/lib/voting/interfaces/vote-logger.d.ts +3 -0
- package/src/lib/voting/interfaces/vote-logger.d.ts.map +1 -1
- package/src/lib/voting/test-voter-pool.d.ts.map +1 -1
- package/src/lib/voting/test-voter-pool.js +4 -0
- package/src/lib/voting/test-voter-pool.js.map +1 -1
- package/src/member.d.ts +198 -9
- package/src/member.d.ts.map +1 -1
- package/src/member.js +198 -15
- package/src/member.js.map +1 -1
- package/src/pbkdf2-profiles.d.ts +4 -0
- package/src/pbkdf2-profiles.d.ts.map +1 -1
- package/src/phone-number.d.ts +12 -0
- package/src/phone-number.d.ts.map +1 -1
- package/src/phone-number.js +12 -0
- package/src/phone-number.js.map +1 -1
- package/src/regexes.d.ts +15 -1
- package/src/regexes.d.ts.map +1 -1
- package/src/regexes.js +16 -2
- package/src/regexes.js.map +1 -1
- package/src/secure-buffer.d.ts +119 -8
- package/src/secure-buffer.d.ts.map +1 -1
- package/src/secure-buffer.js +119 -8
- package/src/secure-buffer.js.map +1 -1
- package/src/secure-string.d.ts +118 -1
- package/src/secure-string.d.ts.map +1 -1
- package/src/secure-string.js +118 -1
- package/src/secure-string.js.map +1 -1
- package/src/services/aes-gcm.d.ts.map +1 -1
- package/src/services/aes-gcm.js.map +1 -1
- package/src/services/chunk-processor.d.ts.map +1 -1
- package/src/services/chunk-processor.js +2 -2
- package/src/services/chunk-processor.js.map +1 -1
- package/src/services/crc.d.ts +80 -2
- package/src/services/crc.d.ts.map +1 -1
- package/src/services/crc.js +80 -2
- package/src/services/crc.js.map +1 -1
- package/src/services/ecies/crypto-core.d.ts +2 -1
- package/src/services/ecies/crypto-core.d.ts.map +1 -1
- package/src/services/ecies/crypto-core.js +4 -1
- package/src/services/ecies/crypto-core.js.map +1 -1
- package/src/services/ecies/example.d.ts.map +1 -1
- package/src/services/ecies/example.js +4 -4
- package/src/services/ecies/example.js.map +1 -1
- package/src/services/ecies/file.d.ts +4 -0
- package/src/services/ecies/file.d.ts.map +1 -1
- package/src/services/ecies/file.js +6 -6
- package/src/services/ecies/file.js.map +1 -1
- package/src/services/ecies/index.d.ts +4 -2
- package/src/services/ecies/index.d.ts.map +1 -1
- package/src/services/ecies/index.js +4 -2
- package/src/services/ecies/index.js.map +1 -1
- package/src/services/ecies/integration.d.ts.map +1 -1
- package/src/services/ecies/integration.js +10 -4
- package/src/services/ecies/integration.js.map +1 -1
- package/src/services/ecies/interfaces/decryption-result.d.ts +3 -0
- package/src/services/ecies/interfaces/decryption-result.d.ts.map +1 -1
- package/src/services/ecies/interfaces/encryption-result.d.ts +3 -0
- package/src/services/ecies/interfaces/encryption-result.d.ts.map +1 -1
- package/src/services/ecies/interfaces/index.d.ts +3 -0
- package/src/services/ecies/interfaces/index.d.ts.map +1 -1
- package/src/services/ecies/interfaces/multi-encrypted-message.d.ts +3 -0
- package/src/services/ecies/interfaces/multi-encrypted-message.d.ts.map +1 -1
- package/src/services/ecies/interfaces/multi-encrypted-parsed-header.d.ts +3 -0
- package/src/services/ecies/interfaces/multi-encrypted-parsed-header.d.ts.map +1 -1
- package/src/services/ecies/interfaces/multi-recipient.d.ts +3 -0
- package/src/services/ecies/interfaces/multi-recipient.d.ts.map +1 -1
- package/src/services/ecies/interfaces/simple-keypair.d.ts +3 -0
- package/src/services/ecies/interfaces/simple-keypair.d.ts.map +1 -1
- package/src/services/ecies/interfaces/single-encrypted-parsed-header.d.ts +3 -0
- package/src/services/ecies/interfaces/single-encrypted-parsed-header.d.ts.map +1 -1
- package/src/services/ecies/interfaces/wallet-seed.d.ts +3 -0
- package/src/services/ecies/interfaces/wallet-seed.d.ts.map +1 -1
- package/src/services/ecies/manual-test.d.ts.map +1 -1
- package/src/services/ecies/manual-test.js +7 -7
- package/src/services/ecies/manual-test.js.map +1 -1
- package/src/services/ecies/multi-recipient.d.ts +1 -1
- package/src/services/ecies/multi-recipient.d.ts.map +1 -1
- package/src/services/ecies/multi-recipient.js +1 -1
- package/src/services/ecies/multi-recipient.js.map +1 -1
- package/src/services/ecies/service.d.ts +21 -5
- package/src/services/ecies/service.d.ts.map +1 -1
- package/src/services/ecies/service.js +33 -17
- package/src/services/ecies/service.js.map +1 -1
- package/src/services/ecies/single-recipient.d.ts +2 -2
- package/src/services/ecies/single-recipient.d.ts.map +1 -1
- package/src/services/ecies/single-recipient.js +28 -33
- package/src/services/ecies/single-recipient.js.map +1 -1
- package/src/services/encryption-stream.d.ts.map +1 -1
- package/src/services/encryption-stream.js +1 -1
- package/src/services/encryption-stream.js.map +1 -1
- package/src/services/index.d.ts +4 -0
- package/src/services/index.d.ts.map +1 -1
- package/src/services/index.js +4 -0
- package/src/services/index.js.map +1 -1
- package/src/services/multi-recipient-processor.d.ts +15 -9
- package/src/services/multi-recipient-processor.d.ts.map +1 -1
- package/src/services/multi-recipient-processor.js +51 -39
- package/src/services/multi-recipient-processor.js.map +1 -1
- package/src/services/password-login.d.ts +41 -5
- package/src/services/password-login.d.ts.map +1 -1
- package/src/services/password-login.js +43 -7
- package/src/services/password-login.js.map +1 -1
- package/src/services/resumable-encryption.d.ts.map +1 -1
- package/src/services/resumable-encryption.js +5 -1
- package/src/services/resumable-encryption.js.map +1 -1
- package/src/test-mocks/index.d.ts +4 -0
- package/src/test-mocks/index.d.ts.map +1 -1
- package/src/test-mocks/index.js +4 -0
- package/src/test-mocks/index.js.map +1 -1
- package/src/test-mocks/mock-frontend-member.d.ts +91 -0
- package/src/test-mocks/mock-frontend-member.d.ts.map +1 -1
- package/src/test-mocks/mock-frontend-member.js +91 -0
- package/src/test-mocks/mock-frontend-member.js.map +1 -1
- package/src/testing.d.ts +4 -0
- package/src/testing.d.ts.map +1 -1
- package/src/testing.js +4 -1
- package/src/testing.js.map +1 -1
- package/src/transforms/checksumTransform.d.ts +17 -0
- package/src/transforms/checksumTransform.d.ts.map +1 -1
- package/src/transforms/checksumTransform.js +17 -0
- package/src/transforms/checksumTransform.js.map +1 -1
- package/src/transforms/eciesDecryptTransform.d.ts +19 -0
- package/src/transforms/eciesDecryptTransform.d.ts.map +1 -1
- package/src/transforms/eciesDecryptTransform.js +21 -2
- package/src/transforms/eciesDecryptTransform.js.map +1 -1
- package/src/transforms/eciesEncryptTransform.d.ts +20 -0
- package/src/transforms/eciesEncryptTransform.d.ts.map +1 -1
- package/src/transforms/eciesEncryptTransform.js +23 -3
- package/src/transforms/eciesEncryptTransform.js.map +1 -1
- package/src/transforms/index.d.ts +4 -0
- package/src/transforms/index.d.ts.map +1 -1
- package/src/transforms/index.js +4 -0
- package/src/transforms/index.js.map +1 -1
- package/src/transforms/xorMultipleTransform.d.ts +21 -0
- package/src/transforms/xorMultipleTransform.d.ts.map +1 -1
- package/src/transforms/xorMultipleTransform.js +21 -0
- package/src/transforms/xorMultipleTransform.js.map +1 -1
- package/src/transforms/xorTransform.d.ts +13 -0
- package/src/transforms/xorTransform.d.ts.map +1 -1
- package/src/transforms/xorTransform.js +13 -0
- package/src/transforms/xorTransform.js.map +1 -1
- package/src/translations/de.d.ts +3 -0
- package/src/translations/de.d.ts.map +1 -1
- package/src/translations/de.js +3 -0
- package/src/translations/de.js.map +1 -1
- package/src/translations/en-US.d.ts +3 -0
- package/src/translations/en-US.d.ts.map +1 -1
- package/src/translations/en-US.js +3 -0
- package/src/translations/en-US.js.map +1 -1
- package/src/translations/es.d.ts +3 -0
- package/src/translations/es.d.ts.map +1 -1
- package/src/translations/es.js +3 -0
- package/src/translations/es.js.map +1 -1
- package/src/translations/fr.d.ts +3 -0
- package/src/translations/fr.d.ts.map +1 -1
- package/src/translations/fr.js +3 -0
- package/src/translations/fr.js.map +1 -1
- package/src/translations/ja.d.ts +3 -0
- package/src/translations/ja.d.ts.map +1 -1
- package/src/translations/ja.js +3 -0
- package/src/translations/ja.js.map +1 -1
- package/src/translations/uk.d.ts +3 -0
- package/src/translations/uk.d.ts.map +1 -1
- package/src/translations/uk.js +3 -0
- package/src/translations/uk.js.map +1 -1
- package/src/translations/zh-cn.d.ts +3 -0
- package/src/translations/zh-cn.d.ts.map +1 -1
- package/src/translations/zh-cn.js +3 -0
- package/src/translations/zh-cn.js.map +1 -1
- package/src/typed-configuration.d.ts +2 -2
- package/src/typed-configuration.d.ts.map +1 -1
- package/src/typed-configuration.js.map +1 -1
- package/src/types/deep-partial.d.ts +16 -0
- package/src/types/deep-partial.d.ts.map +1 -1
- package/src/types/guid-versions.d.ts +5 -9
- package/src/types/guid-versions.d.ts.map +1 -1
- package/src/types.d.ts +30 -1
- package/src/types.d.ts.map +1 -1
- package/src/types.js +4 -0
- package/src/types.js.map +1 -1
- package/src/utils.d.ts +69 -18
- package/src/utils.d.ts.map +1 -1
- package/src/utils.js +70 -19
- package/src/utils.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption-stream.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/encryption-stream.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"encryption-stream.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/encryption-stream.ts"],"names":[],"mappings":"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"}
|
package/src/services/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EACV,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EACV,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,OAAO,CAAC"}
|
package/src/services/index.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Service exports for the ECIES library.
|
|
4
|
+
* Contains all service classes for cryptographic operations, encryption, and key management.
|
|
5
|
+
*/
|
|
2
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
7
|
exports.VotingService = void 0;
|
|
4
8
|
const tslib_1 = require("tslib");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/index.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,oDAA0B;AAC1B,4DAAkC;AAClC,kDAAwB;AACxB,8DAAoC;AACpC,sEAA4C;AAC5C,2DAAiC;AACjC,mDAAyB;AACzB,6DAAmC;AACnC,iEAAuC;AACvC,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAKtB,gDAAsB"}
|
|
@@ -1,24 +1,30 @@
|
|
|
1
|
-
import { PlatformID } from '../interfaces';
|
|
1
|
+
import { IECIESConfig, IECIESConstants, PlatformID } from '../interfaces';
|
|
2
2
|
import { IConstants } from '../interfaces/constants';
|
|
3
3
|
import { IMultiRecipientChunk, IMultiRecipientChunkHeader } from '../interfaces/multi-recipient-chunk';
|
|
4
|
-
import {
|
|
4
|
+
import { TypedIdProviderWrapper } from '../typed-configuration';
|
|
5
|
+
import { AESGCMService } from './aes-gcm';
|
|
6
|
+
import { EciesCryptoCore, EciesMultiRecipient } from './ecies';
|
|
5
7
|
/**
|
|
6
8
|
* Processes multi-recipient chunks using symmetric encryption.
|
|
7
9
|
* Supports dynamic recipient ID sizes based on the configured ID provider.
|
|
8
10
|
*/
|
|
9
11
|
export declare class MultiRecipientProcessor<TID extends PlatformID = Uint8Array> {
|
|
10
|
-
private readonly
|
|
11
|
-
private readonly
|
|
12
|
+
private readonly aesGcm;
|
|
13
|
+
private readonly cryptoCore;
|
|
14
|
+
private readonly consts;
|
|
15
|
+
private readonly _constants;
|
|
16
|
+
private readonly eciesMultiRecipient;
|
|
17
|
+
private readonly constants;
|
|
12
18
|
private readonly recipientIdSize;
|
|
13
|
-
private readonly
|
|
19
|
+
private readonly idProvider;
|
|
20
|
+
private readonly engine;
|
|
14
21
|
private readonly ecies;
|
|
15
|
-
private readonly constants;
|
|
16
22
|
/**
|
|
17
23
|
* Create a new multi-recipient processor.
|
|
18
|
-
* @param ecies - ECIES service for key encryption
|
|
19
|
-
* @param config - Configuration containing ID provider (defaults to global Constants)
|
|
20
24
|
*/
|
|
21
|
-
constructor(
|
|
25
|
+
constructor(constants: IConstants, config: IECIESConfig, cryptoCoreOrService: EciesCryptoCore | {
|
|
26
|
+
core?: EciesCryptoCore;
|
|
27
|
+
}, idProvider?: TypedIdProviderWrapper<TID>, consts?: IECIESConstants, aesGcm?: AESGCMService, eciesMultiRecipient?: EciesMultiRecipient<TID>);
|
|
22
28
|
/**
|
|
23
29
|
* Encrypt chunk for multiple recipients
|
|
24
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-recipient-processor.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/multi-recipient-processor.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"multi-recipient-processor.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/multi-recipient-processor.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,YAAY,EACZ,eAAe,EAEf,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAEL,oBAAoB,EACpB,0BAA0B,EAG3B,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAEL,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAgB,eAAe,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE7E;;;GAGG;AACH,qBAAa,uBAAuB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IACtE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA2B;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IACrD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAE1C;;OAEG;gBAED,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,YAAY,EACpB,mBAAmB,EAAE,eAAe,GAAG;QAAE,IAAI,CAAC,EAAE,eAAe,CAAA;KAAE,EACjE,UAAU,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,EACxC,MAAM,CAAC,EAAE,eAAe,EACxB,MAAM,CAAC,EAAE,aAAa,EACtB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC;IAyBhD;;OAEG;IACG,YAAY,CAChB,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,UAAU,CAAC;QAAC,SAAS,EAAE,UAAU,CAAA;KAAE,CAAC,EAC5D,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,OAAO,EACf,YAAY,EAAE,UAAU,EACxB,gBAAgB,CAAC,EAAE,UAAU,GAC5B,OAAO,CAAC,oBAAoB,CAAC;IAsMhC;;OAEG;IACG,YAAY,CAChB,SAAS,EAAE,UAAU,EACrB,WAAW,EAAE,UAAU,EACvB,UAAU,EAAE,UAAU,EACtB,eAAe,CAAC,EAAE,UAAU,GAC3B,OAAO,CAAC;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,0BAA0B,CAAA;KAAE,CAAC;IAuOpE,OAAO,CAAC,WAAW;CAUpB"}
|
|
@@ -6,31 +6,48 @@ const enumerations_1 = require("../enumerations");
|
|
|
6
6
|
const i18n_setup_1 = require("../i18n-setup");
|
|
7
7
|
const multi_recipient_chunk_1 = require("../interfaces/multi-recipient-chunk");
|
|
8
8
|
const buffer_compat_1 = require("../lib/buffer-compat");
|
|
9
|
+
const typed_configuration_1 = require("../typed-configuration");
|
|
9
10
|
const utils_1 = require("../utils");
|
|
10
11
|
const aes_gcm_1 = require("./aes-gcm");
|
|
12
|
+
const ecies_1 = require("./ecies");
|
|
11
13
|
/**
|
|
12
14
|
* Processes multi-recipient chunks using symmetric encryption.
|
|
13
15
|
* Supports dynamic recipient ID sizes based on the configured ID provider.
|
|
14
16
|
*/
|
|
15
17
|
class MultiRecipientProcessor {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
aesGcm;
|
|
19
|
+
cryptoCore;
|
|
20
|
+
consts;
|
|
21
|
+
_constants;
|
|
22
|
+
eciesMultiRecipient;
|
|
23
|
+
constants;
|
|
18
24
|
recipientIdSize;
|
|
19
|
-
|
|
25
|
+
idProvider;
|
|
26
|
+
engine;
|
|
20
27
|
ecies;
|
|
21
|
-
constants;
|
|
22
28
|
/**
|
|
23
29
|
* Create a new multi-recipient processor.
|
|
24
|
-
* @param ecies - ECIES service for key encryption
|
|
25
|
-
* @param config - Configuration containing ID provider (defaults to global Constants)
|
|
26
30
|
*/
|
|
27
|
-
constructor(
|
|
28
|
-
this.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
constructor(constants, config, cryptoCoreOrService, idProvider, consts, aesGcm, eciesMultiRecipient) {
|
|
32
|
+
this._constants = constants;
|
|
33
|
+
const core = cryptoCoreOrService?.core ??
|
|
34
|
+
cryptoCoreOrService;
|
|
35
|
+
this.cryptoCore = core;
|
|
36
|
+
this.consts = consts ?? core.consts;
|
|
37
|
+
const resolvedIdProvider = idProvider ?? (0, typed_configuration_1.getEnhancedIdProvider)();
|
|
38
|
+
this.idProvider = resolvedIdProvider;
|
|
31
39
|
this.engine = (0, i18n_setup_1.getEciesI18nEngine)();
|
|
32
|
-
this.
|
|
33
|
-
|
|
40
|
+
this.ecies = new ecies_1.ECIESService(constants, consts);
|
|
41
|
+
// Use injected dependencies or create defaults
|
|
42
|
+
// Note: aesGcm needs IConstants, but we only have IECIESConstants from core
|
|
43
|
+
// We'll let it use the default getNodeRuntimeConfiguration()
|
|
44
|
+
this.aesGcm = aesGcm ?? new aes_gcm_1.AESGCMService();
|
|
45
|
+
this.eciesMultiRecipient =
|
|
46
|
+
eciesMultiRecipient ??
|
|
47
|
+
new ecies_1.EciesMultiRecipient(constants, config, consts, idProvider);
|
|
48
|
+
this.recipientIdSize =
|
|
49
|
+
this.consts?.MULTIPLE?.RECIPIENT_ID_SIZE ?? resolvedIdProvider.byteLength;
|
|
50
|
+
this.constants = (0, multi_recipient_chunk_1.getMultiRecipientConstants)(this.recipientIdSize);
|
|
34
51
|
}
|
|
35
52
|
/**
|
|
36
53
|
* Encrypt chunk for multiple recipients
|
|
@@ -38,7 +55,7 @@ class MultiRecipientProcessor {
|
|
|
38
55
|
async encryptChunk(data, recipients, chunkIndex, isLast, symmetricKey, senderPrivateKey) {
|
|
39
56
|
// Validate inputs
|
|
40
57
|
if (recipients.length === 0 ||
|
|
41
|
-
recipients.length > this.
|
|
58
|
+
recipients.length > this.constants.MAX_RECIPIENTS) {
|
|
42
59
|
throw new Error(this.engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_InvalidRecipientCountTemplate, { count: recipients.length }));
|
|
43
60
|
}
|
|
44
61
|
if (symmetricKey.length !== 32) {
|
|
@@ -50,7 +67,7 @@ class MultiRecipientProcessor {
|
|
|
50
67
|
// Sign-then-Encrypt
|
|
51
68
|
let dataToEncrypt = data;
|
|
52
69
|
if (senderPrivateKey) {
|
|
53
|
-
const signature = this.
|
|
70
|
+
const signature = this.cryptoCore.sign(senderPrivateKey, data);
|
|
54
71
|
dataToEncrypt = (0, utils_1.concatUint8Arrays)(signature, data);
|
|
55
72
|
}
|
|
56
73
|
if (dataToEncrypt.length > 0x7fffffff) {
|
|
@@ -66,7 +83,7 @@ class MultiRecipientProcessor {
|
|
|
66
83
|
seenIds.add(idStr);
|
|
67
84
|
}
|
|
68
85
|
// Generate ONE ephemeral key pair for all recipients
|
|
69
|
-
const ephemeralKeyPair = await this.
|
|
86
|
+
const ephemeralKeyPair = await this.cryptoCore.generateEphemeralKeyPair();
|
|
70
87
|
// Build recipient headers
|
|
71
88
|
const recipientHeaders = [];
|
|
72
89
|
for (const recipient of recipients) {
|
|
@@ -84,9 +101,7 @@ class MultiRecipientProcessor {
|
|
|
84
101
|
// Calculate sizes with overflow check
|
|
85
102
|
let recipientHeadersSize = 0;
|
|
86
103
|
for (const h of recipientHeaders) {
|
|
87
|
-
const headerSize = this.recipientIdSize +
|
|
88
|
-
this.multiRecipientConstants.KEY_SIZE_BYTES +
|
|
89
|
-
h.keySize;
|
|
104
|
+
const headerSize = this.recipientIdSize + this.constants.KEY_SIZE_BYTES + h.keySize;
|
|
90
105
|
if (recipientHeadersSize + headerSize < recipientHeadersSize) {
|
|
91
106
|
throw new Error(this.engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_RecipientHeadersSizeOverflow));
|
|
92
107
|
}
|
|
@@ -95,9 +110,9 @@ class MultiRecipientProcessor {
|
|
|
95
110
|
// Calculate encrypted size (Data + Tag)
|
|
96
111
|
// AES-GCM tag is 16 bytes
|
|
97
112
|
const encryptedSize = dataToEncrypt.length + 16;
|
|
98
|
-
const totalSize = this.
|
|
113
|
+
const totalSize = this.constants.HEADER_SIZE +
|
|
99
114
|
recipientHeadersSize +
|
|
100
|
-
this.
|
|
115
|
+
this._constants.ECIES.IV_SIZE + // IV
|
|
101
116
|
encryptedSize;
|
|
102
117
|
// Check for integer overflow (max safe: 2^31 - 1 for Uint8Array)
|
|
103
118
|
if (totalSize > 0x7fffffff || totalSize < 0) {
|
|
@@ -108,9 +123,9 @@ class MultiRecipientProcessor {
|
|
|
108
123
|
const view = new DataView(chunk.buffer);
|
|
109
124
|
let offset = 0;
|
|
110
125
|
// Write header
|
|
111
|
-
view.setUint32(offset, this.
|
|
126
|
+
view.setUint32(offset, this.constants.MAGIC, false);
|
|
112
127
|
offset += 4;
|
|
113
|
-
view.setUint16(offset, this.
|
|
128
|
+
view.setUint16(offset, this.constants.VERSION, false);
|
|
114
129
|
offset += 2;
|
|
115
130
|
view.setUint16(offset, recipients.length, false);
|
|
116
131
|
offset += 2;
|
|
@@ -120,26 +135,26 @@ class MultiRecipientProcessor {
|
|
|
120
135
|
offset += 4;
|
|
121
136
|
view.setUint32(offset, encryptedSize, false);
|
|
122
137
|
offset += 4;
|
|
123
|
-
view.setUint8(offset, isLast ? this.
|
|
138
|
+
view.setUint8(offset, isLast ? this.constants.FLAG_IS_LAST : 0);
|
|
124
139
|
offset += 1;
|
|
125
140
|
// Write Ephemeral Public Key (33 bytes)
|
|
126
141
|
chunk.set(ephemeralKeyPair.publicKey, offset);
|
|
127
142
|
offset += 33;
|
|
128
143
|
// Padding to HEADER_SIZE (64 bytes)
|
|
129
|
-
offset = this.
|
|
144
|
+
offset = this.constants.HEADER_SIZE;
|
|
130
145
|
// Write recipient headers
|
|
131
146
|
for (const header of recipientHeaders) {
|
|
132
147
|
chunk.set(header.id, offset);
|
|
133
148
|
offset += this.recipientIdSize;
|
|
134
149
|
view.setUint16(offset, header.keySize, false);
|
|
135
|
-
offset += this.
|
|
150
|
+
offset += this.constants.KEY_SIZE_BYTES;
|
|
136
151
|
chunk.set(header.encryptedKey, offset);
|
|
137
152
|
offset += header.keySize;
|
|
138
153
|
}
|
|
139
154
|
// Extract the full header (including recipient headers) to use as AAD
|
|
140
155
|
const headerBytes = chunk.slice(0, offset);
|
|
141
156
|
// Encrypt data with AES-256-GCM using Header as AAD
|
|
142
|
-
const encryptResult = await this.
|
|
157
|
+
const encryptResult = await this.aesGcm.encrypt(dataToEncrypt, symmetricKey, true, // Return tag separately
|
|
143
158
|
constants_1.Constants.ECIES, headerBytes);
|
|
144
159
|
// Write IV
|
|
145
160
|
chunk.set(encryptResult.iv, offset);
|
|
@@ -163,7 +178,7 @@ class MultiRecipientProcessor {
|
|
|
163
178
|
*/
|
|
164
179
|
async decryptChunk(chunkData, recipientId, privateKey, senderPublicKey) {
|
|
165
180
|
const engine = (0, i18n_setup_1.getEciesI18nEngine)();
|
|
166
|
-
if (chunkData.length < this.
|
|
181
|
+
if (chunkData.length < this.constants.HEADER_SIZE) {
|
|
167
182
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_ChunkTooSmall));
|
|
168
183
|
}
|
|
169
184
|
const view = new DataView(chunkData.buffer, chunkData.byteOffset);
|
|
@@ -171,18 +186,18 @@ class MultiRecipientProcessor {
|
|
|
171
186
|
// Parse header
|
|
172
187
|
const magic = view.getUint32(offset, false);
|
|
173
188
|
offset += 4;
|
|
174
|
-
if (magic !== this.
|
|
189
|
+
if (magic !== this.constants.MAGIC) {
|
|
175
190
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_InvalidChunkMagic));
|
|
176
191
|
}
|
|
177
192
|
const version = view.getUint16(offset, false);
|
|
178
193
|
offset += 2;
|
|
179
|
-
if (version !== this.
|
|
194
|
+
if (version !== this.constants.VERSION) {
|
|
180
195
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_UnsupportedVersionTemplate, { version }));
|
|
181
196
|
}
|
|
182
197
|
const recipientCount = view.getUint16(offset, false);
|
|
183
198
|
offset += 2;
|
|
184
199
|
if (recipientCount === 0 ||
|
|
185
|
-
recipientCount > this.
|
|
200
|
+
recipientCount > this.constants.MAX_RECIPIENTS) {
|
|
186
201
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_InvalidRecipientCountTemplate, { count: recipientCount }));
|
|
187
202
|
}
|
|
188
203
|
const chunkIndex = view.getUint32(offset, false);
|
|
@@ -196,12 +211,10 @@ class MultiRecipientProcessor {
|
|
|
196
211
|
// Read Ephemeral Public Key (33 bytes)
|
|
197
212
|
const ephemeralPublicKey = chunkData.slice(offset, offset + 33);
|
|
198
213
|
offset += 33;
|
|
199
|
-
offset = this.
|
|
214
|
+
offset = this.constants.HEADER_SIZE;
|
|
200
215
|
// Validate encryptedSize against chunk size
|
|
201
216
|
// We know it must be at least HEADER + IV + EncryptedSize (which includes tag)
|
|
202
|
-
const minChunkSize = this.
|
|
203
|
-
constants_1.Constants.ECIES.IV_SIZE +
|
|
204
|
-
encryptedSize;
|
|
217
|
+
const minChunkSize = this.constants.HEADER_SIZE + constants_1.Constants.ECIES.IV_SIZE + encryptedSize;
|
|
205
218
|
if (chunkData.length < minChunkSize) {
|
|
206
219
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_ChunkTooSmallForEncryptedSize));
|
|
207
220
|
}
|
|
@@ -216,12 +229,11 @@ class MultiRecipientProcessor {
|
|
|
216
229
|
const id = chunkData.slice(tempOffset, tempOffset + this.recipientIdSize);
|
|
217
230
|
tempOffset += this.recipientIdSize;
|
|
218
231
|
// Check if we have enough data for keySize field
|
|
219
|
-
if (tempOffset + this.
|
|
220
|
-
chunkData.length) {
|
|
232
|
+
if (tempOffset + this.constants.KEY_SIZE_BYTES > chunkData.length) {
|
|
221
233
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_ChunkTruncatedKeySize));
|
|
222
234
|
}
|
|
223
235
|
const keySize = view.getUint16(tempOffset, false);
|
|
224
|
-
tempOffset += this.
|
|
236
|
+
tempOffset += this.constants.KEY_SIZE_BYTES;
|
|
225
237
|
// Validate keySize (typical ECIES: 100-400 bytes)
|
|
226
238
|
if (keySize === 0 || keySize > 1000) {
|
|
227
239
|
throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_MultiRecipient_InvalidKeySizeTemplate, { size: keySize }));
|
|
@@ -259,7 +271,7 @@ class MultiRecipientProcessor {
|
|
|
259
271
|
const encryptedWithTag = chunkData.slice(offset, offset + encryptedSize);
|
|
260
272
|
offset += encryptedSize;
|
|
261
273
|
// Decrypt with AAD
|
|
262
|
-
const decrypted = await this.
|
|
274
|
+
const decrypted = await this.aesGcm.decrypt(iv, encryptedWithTag, symmetricKey, true, constants_1.Constants.ECIES, headerBytes);
|
|
263
275
|
// Verify signature if sender public key provided
|
|
264
276
|
let finalData = decrypted;
|
|
265
277
|
if (senderPublicKey) {
|
|
@@ -268,7 +280,7 @@ class MultiRecipientProcessor {
|
|
|
268
280
|
}
|
|
269
281
|
const signature = decrypted.slice(0, 64);
|
|
270
282
|
const message = decrypted.slice(64);
|
|
271
|
-
const isValid = this.
|
|
283
|
+
const isValid = this.cryptoCore.verify(senderPublicKey, message, signature);
|
|
272
284
|
if (!isValid) {
|
|
273
285
|
throw new Error('Invalid sender signature in chunk');
|
|
274
286
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-recipient-processor.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/multi-recipient-processor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"multi-recipient-processor.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/multi-recipient-processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,16 +5,38 @@ import { SecureString } from '../secure-string';
|
|
|
5
5
|
import { AESGCMService } from './aes-gcm';
|
|
6
6
|
import { ECIESService } from './ecies/service';
|
|
7
7
|
import { Pbkdf2Service } from './pbkdf2';
|
|
8
|
+
/**
|
|
9
|
+
* Service for password-based login using PBKDF2 key derivation.
|
|
10
|
+
* Encrypts private keys and mnemonics with password-derived keys.
|
|
11
|
+
*/
|
|
8
12
|
export declare class PasswordLoginService {
|
|
9
13
|
protected readonly aesGcmService: AESGCMService;
|
|
10
14
|
protected readonly eciesService: ECIESService;
|
|
11
15
|
protected readonly pbkdf2Service: Pbkdf2Service;
|
|
12
16
|
protected readonly eciesConsts: IECIESConstants;
|
|
17
|
+
/** Storage key for encrypted private key */
|
|
13
18
|
static readonly privateKeyStorageKey = "encryptedPrivateKey";
|
|
19
|
+
/** Storage key for password salt */
|
|
14
20
|
static readonly saltStorageKey = "passwordLoginSalt";
|
|
21
|
+
/** Storage key for encrypted mnemonic */
|
|
15
22
|
static readonly encryptedMnemonicStorageKey = "encryptedMnemonic";
|
|
23
|
+
/** Storage key for PBKDF2 profile */
|
|
16
24
|
static readonly profileStorageKey = "pbkdf2Profile";
|
|
25
|
+
/**
|
|
26
|
+
* Create a new password login service.
|
|
27
|
+
* @param aesGcmService AES-GCM service for encryption
|
|
28
|
+
* @param eciesService ECIES service for key operations
|
|
29
|
+
* @param pbkdf2Service PBKDF2 service for key derivation
|
|
30
|
+
* @param eciesParams ECIES constants
|
|
31
|
+
*/
|
|
17
32
|
constructor(aesGcmService: AESGCMService, eciesService: ECIESService, pbkdf2Service: Pbkdf2Service, eciesParams?: IECIESConstants);
|
|
33
|
+
/**
|
|
34
|
+
* Create a password login bundle with encrypted private key and mnemonic.
|
|
35
|
+
* @param mnemonic The user's mnemonic phrase
|
|
36
|
+
* @param password The user's password
|
|
37
|
+
* @param profile The PBKDF2 profile to use
|
|
38
|
+
* @returns Bundle containing salt, encrypted data, and wallet
|
|
39
|
+
*/
|
|
18
40
|
createPasswordLoginBundle(mnemonic: SecureString, password: SecureString, profile?: Pbkdf2ProfileEnum): Promise<{
|
|
19
41
|
salt: Uint8Array;
|
|
20
42
|
encryptedPrivateKey: Uint8Array;
|
|
@@ -22,27 +44,41 @@ export declare class PasswordLoginService {
|
|
|
22
44
|
wallet: Wallet;
|
|
23
45
|
}>;
|
|
24
46
|
/**
|
|
25
|
-
* Set up password login
|
|
26
|
-
* @param mnemonic The user's mnemonic
|
|
47
|
+
* Set up password login and store encrypted data in localStorage.
|
|
48
|
+
* @param mnemonic The user's mnemonic phrase
|
|
27
49
|
* @param password The user's password
|
|
50
|
+
* @param profile The PBKDF2 profile to use
|
|
51
|
+
* @returns The user's wallet
|
|
52
|
+
* @throws TypedHandleableError if storage fails
|
|
28
53
|
*/
|
|
29
54
|
setupPasswordLoginLocalStorageBundle(mnemonic: SecureString, password: SecureString, profile?: Pbkdf2ProfileEnum): Promise<Wallet>;
|
|
55
|
+
/**
|
|
56
|
+
* Recover wallet and mnemonic from encrypted password bundle.
|
|
57
|
+
* @param salt The password salt
|
|
58
|
+
* @param encryptedPrivateKey The encrypted private key
|
|
59
|
+
* @param encryptedMnemonic The encrypted mnemonic
|
|
60
|
+
* @param password The user's password
|
|
61
|
+
* @param profile The PBKDF2 profile used
|
|
62
|
+
* @returns The user's wallet and mnemonic
|
|
63
|
+
* @throws TypedHandleableError if data is missing or decryption fails
|
|
64
|
+
*/
|
|
30
65
|
getWalletAndMnemonicFromEncryptedPasswordBundle(salt: Uint8Array, encryptedPrivateKey: Uint8Array, encryptedMnemonic: Uint8Array, password: SecureString, profile?: Pbkdf2ProfileEnum): Promise<{
|
|
31
66
|
wallet: Wallet;
|
|
32
67
|
mnemonic: SecureString;
|
|
33
68
|
}>;
|
|
34
69
|
/**
|
|
35
|
-
* Recover wallet and mnemonic from
|
|
70
|
+
* Recover wallet and mnemonic from localStorage.
|
|
36
71
|
* @param password The user's password
|
|
37
72
|
* @returns The user's wallet and mnemonic
|
|
73
|
+
* @throws TypedHandleableError if password login is not set up
|
|
38
74
|
*/
|
|
39
75
|
getWalletAndMnemonicFromLocalStorageBundle(password: SecureString): Promise<{
|
|
40
76
|
wallet: Wallet;
|
|
41
77
|
mnemonic: SecureString;
|
|
42
78
|
}>;
|
|
43
79
|
/**
|
|
44
|
-
*
|
|
45
|
-
* @returns True if
|
|
80
|
+
* Check if password login is set up in localStorage.
|
|
81
|
+
* @returns True if all required data is present
|
|
46
82
|
*/
|
|
47
83
|
static isPasswordLoginSetup(): boolean;
|
|
48
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password-login.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAChD,gBAAuB,oBAAoB,yBAAyB;IACpE,gBAAuB,cAAc,uBAAuB;IAC5D,gBAAuB,2BAA2B,uBAAuB;IACzE,gBAAuB,iBAAiB,mBAAmB;
|
|
1
|
+
{"version":3,"file":"password-login.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAChD,4CAA4C;IAC5C,gBAAuB,oBAAoB,yBAAyB;IACpE,oCAAoC;IACpC,gBAAuB,cAAc,uBAAuB;IAC5D,yCAAyC;IACzC,gBAAuB,2BAA2B,uBAAuB;IACzE,qCAAqC;IACrC,gBAAuB,iBAAiB,mBAAmB;IAE3D;;;;;;OAMG;gBAED,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,WAAW,GAAE,eAAiC;IAQhD;;;;;;OAMG;IACU,yBAAyB,CACpC,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC;QACT,IAAI,EAAE,UAAU,CAAC;QACjB,mBAAmB,EAAE,UAAU,CAAC;QAChC,iBAAiB,EAAE,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IA2CF;;;;;;;OAOG;IACU,oCAAoC,CAC/C,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC,MAAM,CAAC;IAqClB;;;;;;;;;OASG;IACU,+CAA+C,CAC1D,IAAI,EAAE,UAAU,EAChB,mBAAmB,EAAE,UAAU,EAC/B,iBAAiB,EAAE,UAAU,EAC7B,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAgDtD;;;;;OAKG;IACU,0CAA0C,CACrD,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAiDtD;;;OAGG;WACW,oBAAoB,IAAI,OAAO;CAkB9C"}
|
|
@@ -10,21 +10,43 @@ const pbkdf2_profile_1 = require("../enumerations/pbkdf2-profile");
|
|
|
10
10
|
const i18n_setup_1 = require("../i18n-setup");
|
|
11
11
|
const secure_string_1 = require("../secure-string");
|
|
12
12
|
const utils_1 = require("../utils");
|
|
13
|
+
/**
|
|
14
|
+
* Service for password-based login using PBKDF2 key derivation.
|
|
15
|
+
* Encrypts private keys and mnemonics with password-derived keys.
|
|
16
|
+
*/
|
|
13
17
|
class PasswordLoginService {
|
|
14
18
|
aesGcmService;
|
|
15
19
|
eciesService;
|
|
16
20
|
pbkdf2Service;
|
|
17
21
|
eciesConsts;
|
|
22
|
+
/** Storage key for encrypted private key */
|
|
18
23
|
static privateKeyStorageKey = 'encryptedPrivateKey';
|
|
24
|
+
/** Storage key for password salt */
|
|
19
25
|
static saltStorageKey = 'passwordLoginSalt';
|
|
26
|
+
/** Storage key for encrypted mnemonic */
|
|
20
27
|
static encryptedMnemonicStorageKey = 'encryptedMnemonic';
|
|
28
|
+
/** Storage key for PBKDF2 profile */
|
|
21
29
|
static profileStorageKey = 'pbkdf2Profile';
|
|
30
|
+
/**
|
|
31
|
+
* Create a new password login service.
|
|
32
|
+
* @param aesGcmService AES-GCM service for encryption
|
|
33
|
+
* @param eciesService ECIES service for key operations
|
|
34
|
+
* @param pbkdf2Service PBKDF2 service for key derivation
|
|
35
|
+
* @param eciesParams ECIES constants
|
|
36
|
+
*/
|
|
22
37
|
constructor(aesGcmService, eciesService, pbkdf2Service, eciesParams = constants_1.Constants.ECIES) {
|
|
23
38
|
this.aesGcmService = aesGcmService;
|
|
24
39
|
this.eciesService = eciesService;
|
|
25
40
|
this.pbkdf2Service = pbkdf2Service;
|
|
26
41
|
this.eciesConsts = eciesParams;
|
|
27
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Create a password login bundle with encrypted private key and mnemonic.
|
|
45
|
+
* @param mnemonic The user's mnemonic phrase
|
|
46
|
+
* @param password The user's password
|
|
47
|
+
* @param profile The PBKDF2 profile to use
|
|
48
|
+
* @returns Bundle containing salt, encrypted data, and wallet
|
|
49
|
+
*/
|
|
28
50
|
async createPasswordLoginBundle(mnemonic, password, profile = pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD) {
|
|
29
51
|
const { wallet } = this.eciesService.walletAndSeedFromMnemonic(mnemonic);
|
|
30
52
|
const derivedKey = await this.pbkdf2Service.deriveKeyFromPasswordWithProfileAsync(password.valueAsUint8Array, profile);
|
|
@@ -36,7 +58,7 @@ class PasswordLoginService {
|
|
|
36
58
|
}
|
|
37
59
|
const encryptedPrivateKey = this.aesGcmService.combineIvTagAndEncryptedData(iv, encrypted, tag);
|
|
38
60
|
// now use the public key to encrypt the mnemonic and store it
|
|
39
|
-
const encryptedMnemonic = await this.eciesService.encrypt(ecies_encryption_type_1.EciesEncryptionTypeEnum.
|
|
61
|
+
const encryptedMnemonic = await this.eciesService.encrypt(ecies_encryption_type_1.EciesEncryptionTypeEnum.Basic, wallet.getPublicKey(), mnemonic.valueAsUint8Array);
|
|
40
62
|
return {
|
|
41
63
|
salt: derivedKey.salt,
|
|
42
64
|
encryptedPrivateKey: encryptedPrivateKey,
|
|
@@ -45,9 +67,12 @@ class PasswordLoginService {
|
|
|
45
67
|
};
|
|
46
68
|
}
|
|
47
69
|
/**
|
|
48
|
-
* Set up password login
|
|
49
|
-
* @param mnemonic The user's mnemonic
|
|
70
|
+
* Set up password login and store encrypted data in localStorage.
|
|
71
|
+
* @param mnemonic The user's mnemonic phrase
|
|
50
72
|
* @param password The user's password
|
|
73
|
+
* @param profile The PBKDF2 profile to use
|
|
74
|
+
* @returns The user's wallet
|
|
75
|
+
* @throws TypedHandleableError if storage fails
|
|
51
76
|
*/
|
|
52
77
|
async setupPasswordLoginLocalStorageBundle(mnemonic, password, profile = pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD) {
|
|
53
78
|
const { salt, encryptedPrivateKey, encryptedMnemonic, wallet } = await this.createPasswordLoginBundle(mnemonic, password, profile);
|
|
@@ -63,6 +88,16 @@ class PasswordLoginService {
|
|
|
63
88
|
}
|
|
64
89
|
return wallet;
|
|
65
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Recover wallet and mnemonic from encrypted password bundle.
|
|
93
|
+
* @param salt The password salt
|
|
94
|
+
* @param encryptedPrivateKey The encrypted private key
|
|
95
|
+
* @param encryptedMnemonic The encrypted mnemonic
|
|
96
|
+
* @param password The user's password
|
|
97
|
+
* @param profile The PBKDF2 profile used
|
|
98
|
+
* @returns The user's wallet and mnemonic
|
|
99
|
+
* @throws TypedHandleableError if data is missing or decryption fails
|
|
100
|
+
*/
|
|
66
101
|
async getWalletAndMnemonicFromEncryptedPasswordBundle(salt, encryptedPrivateKey, encryptedMnemonic, password, profile = pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD) {
|
|
67
102
|
if (!salt || !encryptedPrivateKey || !encryptedMnemonic) {
|
|
68
103
|
throw new i18n_lib_1.TypedHandleableError(i18n_setup_1.EciesComponentId, enumerations_1.PasswordLoginErrorTypeEnum.PasswordLoginNotSetUp, (0, i18n_lib_1.buildReasonMap)(enumerations_1.PasswordLoginErrorTypeEnum, ['Error', 'PasswordLoginError']), new Error());
|
|
@@ -73,13 +108,14 @@ class PasswordLoginService {
|
|
|
73
108
|
const privateKeyBytes = await this.aesGcmService.decrypt(iv, encryptedDataWithTag, derivedKey.hash, true, this.eciesConsts);
|
|
74
109
|
const wallet = wallet_1.Wallet.fromPrivateKey(privateKeyBytes);
|
|
75
110
|
// now decrypt the mnemonic
|
|
76
|
-
const decryptedMnemonic = await this.eciesService.
|
|
111
|
+
const decryptedMnemonic = await this.eciesService.decryptBasicWithHeader(wallet.getPrivateKey(), encryptedMnemonic);
|
|
77
112
|
return { wallet, mnemonic: new secure_string_1.SecureString(decryptedMnemonic) };
|
|
78
113
|
}
|
|
79
114
|
/**
|
|
80
|
-
* Recover wallet and mnemonic from
|
|
115
|
+
* Recover wallet and mnemonic from localStorage.
|
|
81
116
|
* @param password The user's password
|
|
82
117
|
* @returns The user's wallet and mnemonic
|
|
118
|
+
* @throws TypedHandleableError if password login is not set up
|
|
83
119
|
*/
|
|
84
120
|
async getWalletAndMnemonicFromLocalStorageBundle(password) {
|
|
85
121
|
const saltHex = localStorage.getItem(PasswordLoginService.saltStorageKey);
|
|
@@ -101,8 +137,8 @@ class PasswordLoginService {
|
|
|
101
137
|
return await this.getWalletAndMnemonicFromEncryptedPasswordBundle(salt, encryptedPrivateKey, encryptedMnemonic, password, profile);
|
|
102
138
|
}
|
|
103
139
|
/**
|
|
104
|
-
*
|
|
105
|
-
* @returns True if
|
|
140
|
+
* Check if password login is set up in localStorage.
|
|
141
|
+
* @returns True if all required data is present
|
|
106
142
|
*/
|
|
107
143
|
static isPasswordLoginSetup() {
|
|
108
144
|
const saltHex = localStorage.getItem(PasswordLoginService.saltStorageKey);
|