@brightchain/brightchain-lib 0.13.0 → 0.15.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/brightchain-lib/BROWSER_COMPAT.md +54 -0
- package/package.json +15 -4
- package/src/browser.d.ts +1 -1
- package/src/browser.d.ts.map +1 -1
- package/src/browser.js +3 -3
- package/src/browser.js.map +1 -1
- package/src/lib/blocks/cblBase.d.ts +16 -1
- package/src/lib/blocks/cblBase.d.ts.map +1 -1
- package/src/lib/blocks/cblBase.js +33 -4
- package/src/lib/blocks/cblBase.js.map +1 -1
- package/src/lib/blocks/encryptedBlockFactory.d.ts +6 -1
- package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
- package/src/lib/blocks/encryptedBlockFactory.js +14 -5
- package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
- package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
- package/src/lib/blocks/extendedCbl.js +2 -1
- package/src/lib/blocks/extendedCbl.js.map +1 -1
- package/src/lib/blocks/handle.d.ts +5 -0
- package/src/lib/blocks/handle.d.ts.map +1 -1
- package/src/lib/blocks/handle.js.map +1 -1
- package/src/lib/blocks/handleTuple.d.ts +9 -1
- package/src/lib/blocks/handleTuple.d.ts.map +1 -1
- package/src/lib/blocks/handleTuple.js +23 -1
- package/src/lib/blocks/handleTuple.js.map +1 -1
- package/src/lib/blocks/index.d.ts +1 -0
- package/src/lib/blocks/index.d.ts.map +1 -1
- package/src/lib/blocks/index.js +1 -0
- package/src/lib/blocks/index.js.map +1 -1
- package/src/lib/blocks/memoryTuple.d.ts +9 -2
- package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
- package/src/lib/blocks/memoryTuple.js +12 -3
- package/src/lib/blocks/memoryTuple.js.map +1 -1
- package/src/lib/blocks/vcbl.d.ts +27 -0
- package/src/lib/blocks/vcbl.d.ts.map +1 -0
- package/src/lib/blocks/vcbl.js +107 -0
- package/src/lib/blocks/vcbl.js.map +1 -0
- package/src/lib/constants.d.ts +5 -1
- package/src/lib/constants.d.ts.map +1 -1
- package/src/lib/constants.js +4 -0
- package/src/lib/constants.js.map +1 -1
- package/src/lib/crypto/index.d.ts +12 -0
- package/src/lib/crypto/index.d.ts.map +1 -0
- package/src/lib/crypto/index.js +23 -0
- package/src/lib/crypto/index.js.map +1 -0
- package/src/lib/crypto/platformCrypto.d.ts +132 -0
- package/src/lib/crypto/platformCrypto.d.ts.map +1 -0
- package/src/lib/crypto/platformCrypto.js +181 -0
- package/src/lib/crypto/platformCrypto.js.map +1 -0
- package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
- package/src/lib/enumeration-translations/blockType.js +16 -0
- package/src/lib/enumeration-translations/blockType.js.map +1 -1
- package/src/lib/enumerations/blockType.d.ts +12 -0
- package/src/lib/enumerations/blockType.d.ts.map +1 -1
- package/src/lib/enumerations/blockType.js +14 -0
- package/src/lib/enumerations/blockType.js.map +1 -1
- package/src/lib/enumerations/brightChainStrings.d.ts +5 -1
- package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -1
- package/src/lib/enumerations/brightChainStrings.js +5 -1
- package/src/lib/enumerations/brightChainStrings.js.map +1 -1
- package/src/lib/enumerations/cblErrorType.d.ts +2 -1
- package/src/lib/enumerations/cblErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/cblErrorType.js +1 -0
- package/src/lib/enumerations/cblErrorType.js.map +1 -1
- package/src/lib/enumerations/communication.d.ts +57 -0
- package/src/lib/enumerations/communication.d.ts.map +1 -0
- package/src/lib/enumerations/communication.js +89 -0
- package/src/lib/enumerations/communication.js.map +1 -0
- package/src/lib/enumerations/deviceType.d.ts +15 -0
- package/src/lib/enumerations/deviceType.d.ts.map +1 -0
- package/src/lib/enumerations/deviceType.js +19 -0
- package/src/lib/enumerations/deviceType.js.map +1 -0
- package/src/lib/enumerations/handleTupleErrorType.d.ts +2 -1
- package/src/lib/enumerations/handleTupleErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/handleTupleErrorType.js +1 -0
- package/src/lib/enumerations/handleTupleErrorType.js.map +1 -1
- package/src/lib/enumerations/index.d.ts +6 -0
- package/src/lib/enumerations/index.d.ts.map +1 -1
- package/src/lib/enumerations/index.js +11 -0
- package/src/lib/enumerations/index.js.map +1 -1
- package/src/lib/enumerations/messaging/deliveryStatus.d.ts +50 -0
- package/src/lib/enumerations/messaging/deliveryStatus.d.ts.map +1 -0
- package/src/lib/enumerations/messaging/deliveryStatus.js +68 -0
- package/src/lib/enumerations/messaging/deliveryStatus.js.map +1 -0
- package/src/lib/enumerations/messaging/emailErrorType.d.ts +36 -0
- package/src/lib/enumerations/messaging/emailErrorType.d.ts.map +1 -0
- package/src/lib/enumerations/messaging/emailErrorType.js +46 -0
- package/src/lib/enumerations/messaging/emailErrorType.js.map +1 -0
- package/src/lib/enumerations/messaging/index.d.ts +2 -1
- package/src/lib/enumerations/messaging/index.d.ts.map +1 -1
- package/src/lib/enumerations/messaging/index.js +2 -1
- package/src/lib/enumerations/messaging/index.js.map +1 -1
- package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts +4 -2
- package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts.map +1 -1
- package/src/lib/enumerations/messaging/messageEncryptionScheme.js +3 -1
- package/src/lib/enumerations/messaging/messageEncryptionScheme.js.map +1 -1
- package/src/lib/enumerations/paperKeyPurpose.d.ts +15 -0
- package/src/lib/enumerations/paperKeyPurpose.d.ts.map +1 -0
- package/src/lib/enumerations/paperKeyPurpose.js +19 -0
- package/src/lib/enumerations/paperKeyPurpose.js.map +1 -0
- package/src/lib/enumerations/proofPlatform.d.ts +24 -0
- package/src/lib/enumerations/proofPlatform.d.ts.map +1 -0
- package/src/lib/enumerations/proofPlatform.js +28 -0
- package/src/lib/enumerations/proofPlatform.js.map +1 -0
- package/src/lib/enumerations/readConcern.d.ts +22 -0
- package/src/lib/enumerations/readConcern.d.ts.map +1 -0
- package/src/lib/enumerations/readConcern.js +26 -0
- package/src/lib/enumerations/readConcern.js.map +1 -0
- package/src/lib/enumerations/tupleErrorType.d.ts +2 -1
- package/src/lib/enumerations/tupleErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/tupleErrorType.js +1 -0
- package/src/lib/enumerations/tupleErrorType.js.map +1 -1
- package/src/lib/enumerations/verificationStatus.d.ts +17 -0
- package/src/lib/enumerations/verificationStatus.d.ts.map +1 -0
- package/src/lib/enumerations/verificationStatus.js +21 -0
- package/src/lib/enumerations/verificationStatus.js.map +1 -0
- package/src/lib/errors/blockFetchError.d.ts +51 -0
- package/src/lib/errors/blockFetchError.d.ts.map +1 -0
- package/src/lib/errors/blockFetchError.js +63 -0
- package/src/lib/errors/blockFetchError.js.map +1 -0
- package/src/lib/errors/cblError.d.ts.map +1 -1
- package/src/lib/errors/cblError.js +1 -0
- package/src/lib/errors/cblError.js.map +1 -1
- package/src/lib/errors/handleTupleError.d.ts +10 -1
- package/src/lib/errors/handleTupleError.d.ts.map +1 -1
- package/src/lib/errors/handleTupleError.js +10 -1
- package/src/lib/errors/handleTupleError.js.map +1 -1
- package/src/lib/errors/index.d.ts +16 -0
- package/src/lib/errors/index.d.ts.map +1 -1
- package/src/lib/errors/index.js +22 -0
- package/src/lib/errors/index.js.map +1 -1
- package/src/lib/errors/messaging/emailError.d.ts +55 -0
- package/src/lib/errors/messaging/emailError.d.ts.map +1 -0
- package/src/lib/errors/messaging/emailError.js +64 -0
- package/src/lib/errors/messaging/emailError.js.map +1 -0
- package/src/lib/errors/messaging/index.d.ts +1 -0
- package/src/lib/errors/messaging/index.d.ts.map +1 -1
- package/src/lib/errors/messaging/index.js +1 -0
- package/src/lib/errors/messaging/index.js.map +1 -1
- package/src/lib/errors/poolDeletionError.d.ts +10 -0
- package/src/lib/errors/poolDeletionError.d.ts.map +1 -0
- package/src/lib/errors/poolDeletionError.js +16 -0
- package/src/lib/errors/poolDeletionError.js.map +1 -0
- package/src/lib/errors/poolDeletionTombstoneError.d.ts +12 -0
- package/src/lib/errors/poolDeletionTombstoneError.d.ts.map +1 -0
- package/src/lib/errors/poolDeletionTombstoneError.js +18 -0
- package/src/lib/errors/poolDeletionTombstoneError.js.map +1 -0
- package/src/lib/errors/tupleError.d.ts.map +1 -1
- package/src/lib/errors/tupleError.js +1 -0
- package/src/lib/errors/tupleError.js.map +1 -1
- package/src/lib/i18n/i18n-setup.d.ts +7 -2
- package/src/lib/i18n/i18n-setup.d.ts.map +1 -1
- package/src/lib/i18n/i18n-setup.js +84 -24
- package/src/lib/i18n/i18n-setup.js.map +1 -1
- package/src/lib/i18n/strings/englishUs.d.ts.map +1 -1
- package/src/lib/i18n/strings/englishUs.js +4 -0
- package/src/lib/i18n/strings/englishUs.js.map +1 -1
- package/src/lib/i18n/strings/french.d.ts.map +1 -1
- package/src/lib/i18n/strings/french.js +4 -0
- package/src/lib/i18n/strings/french.js.map +1 -1
- package/src/lib/i18n/strings/german.d.ts.map +1 -1
- package/src/lib/i18n/strings/german.js +4 -0
- package/src/lib/i18n/strings/german.js.map +1 -1
- package/src/lib/i18n/strings/japanese.d.ts.map +1 -1
- package/src/lib/i18n/strings/japanese.js +4 -0
- package/src/lib/i18n/strings/japanese.js.map +1 -1
- package/src/lib/i18n/strings/mandarin.d.ts.map +1 -1
- package/src/lib/i18n/strings/mandarin.js +4 -0
- package/src/lib/i18n/strings/mandarin.js.map +1 -1
- package/src/lib/i18n/strings/spanish.d.ts.map +1 -1
- package/src/lib/i18n/strings/spanish.js +4 -0
- package/src/lib/i18n/strings/spanish.js.map +1 -1
- package/src/lib/i18n/strings/ukrainian.d.ts.map +1 -1
- package/src/lib/i18n/strings/ukrainian.js +4 -0
- package/src/lib/i18n/strings/ukrainian.js.map +1 -1
- package/src/lib/index.d.ts +4 -0
- package/src/lib/index.d.ts.map +1 -1
- package/src/lib/index.js +4 -0
- package/src/lib/index.js.map +1 -1
- package/src/lib/interfaces/auth/index.d.ts +4 -0
- package/src/lib/interfaces/auth/index.d.ts.map +1 -0
- package/src/lib/interfaces/auth/index.js +8 -0
- package/src/lib/interfaces/auth/index.js.map +1 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.d.ts +19 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.d.ts.map +1 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.js +3 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.js.map +1 -0
- package/src/lib/interfaces/auth/poolAcl.d.ts +65 -0
- package/src/lib/interfaces/auth/poolAcl.d.ts.map +1 -0
- package/src/lib/interfaces/auth/poolAcl.js +52 -0
- package/src/lib/interfaces/auth/poolAcl.js.map +1 -0
- package/src/lib/interfaces/availability/availabilityService.d.ts +5 -3
- package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/availabilityService.js.map +1 -1
- package/src/lib/interfaces/availability/blockRegistry.d.ts +52 -3
- package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -1
- package/src/lib/interfaces/availability/blockRegistry.js +1 -1
- package/src/lib/interfaces/availability/discoveryProtocol.d.ts +81 -3
- package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -1
- package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -1
- package/src/lib/interfaces/availability/gossipService.d.ts +279 -8
- package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/gossipService.js +232 -0
- package/src/lib/interfaces/availability/gossipService.js.map +1 -1
- package/src/lib/interfaces/availability/index.d.ts +1 -0
- package/src/lib/interfaces/availability/index.d.ts.map +1 -1
- package/src/lib/interfaces/availability/index.js +1 -0
- package/src/lib/interfaces/availability/index.js.map +1 -1
- package/src/lib/interfaces/availability/locationRecord.d.ts +6 -0
- package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -1
- package/src/lib/interfaces/availability/locationRecord.js +12 -0
- package/src/lib/interfaces/availability/locationRecord.js.map +1 -1
- package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts +40 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts.map +1 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.js +19 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.js.map +1 -0
- package/src/lib/interfaces/availability/reconciliationService.d.ts +52 -0
- package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/reconciliationService.js.map +1 -1
- package/src/lib/interfaces/blockCapacity.d.ts +9 -0
- package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
- package/src/lib/interfaces/blockEncryption.d.ts +4 -2
- package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
- package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts +26 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.js +12 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.js.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.d.ts +71 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.js +22 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.js.map +1 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts +43 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.js +13 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.js.map +1 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.d.ts +70 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.js +18 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.js.map +1 -0
- package/src/lib/interfaces/blockFetch/index.d.ts +10 -0
- package/src/lib/interfaces/blockFetch/index.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/index.js +13 -0
- package/src/lib/interfaces/blockFetch/index.js.map +1 -0
- package/src/lib/interfaces/blocks/index.d.ts +1 -0
- package/src/lib/interfaces/blocks/index.d.ts.map +1 -1
- package/src/lib/interfaces/blocks/vcbl.d.ts +16 -0
- package/src/lib/interfaces/blocks/vcbl.d.ts.map +1 -0
- package/src/lib/interfaces/{messaging/messageRouter.js → blocks/vcbl.js} +1 -1
- package/src/lib/interfaces/blocks/vcbl.js.map +1 -0
- package/src/lib/interfaces/brightpass/auditLog.d.ts +25 -0
- package/src/lib/interfaces/brightpass/auditLog.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/auditLog.js +21 -0
- package/src/lib/interfaces/brightpass/auditLog.js.map +1 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.d.ts +11 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.d.ts.map +1 -0
- package/src/lib/interfaces/{network/networkTransport.js → brightpass/emergencyAccess.js} +1 -1
- package/src/lib/interfaces/brightpass/emergencyAccess.js.map +1 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts +11 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.js +3 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.js.map +1 -0
- package/src/lib/interfaces/brightpass/importTypes.d.ts +10 -0
- package/src/lib/interfaces/brightpass/importTypes.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/importTypes.js +3 -0
- package/src/lib/interfaces/brightpass/importTypes.js.map +1 -0
- package/src/lib/interfaces/brightpass/index.d.ts +7 -0
- package/src/lib/interfaces/brightpass/index.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/index.js +10 -0
- package/src/lib/interfaces/brightpass/index.js.map +1 -0
- package/src/lib/interfaces/brightpass/vaultEntry.d.ts +48 -0
- package/src/lib/interfaces/brightpass/vaultEntry.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/vaultEntry.js +3 -0
- package/src/lib/interfaces/brightpass/vaultEntry.js.map +1 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.d.ts +34 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.js +3 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.js.map +1 -0
- package/src/lib/interfaces/clusterKeys.d.ts +4 -2
- package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
- package/src/lib/interfaces/communication.d.ts +173 -0
- package/src/lib/interfaces/communication.d.ts.map +1 -0
- package/src/lib/interfaces/communication.js +17 -0
- package/src/lib/interfaces/communication.js.map +1 -0
- package/src/lib/interfaces/communicationEvents.d.ts +168 -0
- package/src/lib/interfaces/communicationEvents.d.ts.map +1 -0
- package/src/lib/interfaces/communicationEvents.js +12 -0
- package/src/lib/interfaces/communicationEvents.js.map +1 -0
- package/src/lib/interfaces/crypto/ethereumWallet.d.ts +72 -0
- package/src/lib/interfaces/crypto/ethereumWallet.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/ethereumWallet.js +12 -0
- package/src/lib/interfaces/crypto/ethereumWallet.js.map +1 -0
- package/src/lib/interfaces/crypto/gitSignature.d.ts +95 -0
- package/src/lib/interfaces/crypto/gitSignature.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/gitSignature.js +12 -0
- package/src/lib/interfaces/crypto/gitSignature.js.map +1 -0
- package/src/lib/interfaces/crypto/index.d.ts +3 -0
- package/src/lib/interfaces/crypto/index.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/index.js +3 -0
- package/src/lib/interfaces/crypto/index.js.map +1 -0
- package/src/lib/interfaces/dataKeyComponents.d.ts +7 -2
- package/src/lib/interfaces/dataKeyComponents.d.ts.map +1 -1
- package/src/lib/interfaces/encryptedBlockCreator.d.ts +4 -2
- package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
- package/src/lib/interfaces/events/communicationEventEmitter.d.ts +65 -0
- package/src/lib/interfaces/events/communicationEventEmitter.d.ts.map +1 -0
- package/src/lib/interfaces/events/communicationEventEmitter.js +60 -0
- package/src/lib/interfaces/events/communicationEventEmitter.js.map +1 -0
- package/src/lib/interfaces/events/index.d.ts +2 -0
- package/src/lib/interfaces/events/index.d.ts.map +1 -0
- package/src/lib/interfaces/events/index.js +5 -0
- package/src/lib/interfaces/events/index.js.map +1 -0
- package/src/lib/interfaces/failableResult.d.ts +15 -0
- package/src/lib/interfaces/failableResult.d.ts.map +1 -0
- package/src/lib/interfaces/failableResult.js +3 -0
- package/src/lib/interfaces/failableResult.js.map +1 -0
- package/src/lib/interfaces/identity/device.d.ts +59 -0
- package/src/lib/interfaces/identity/device.d.ts.map +1 -0
- package/src/lib/interfaces/identity/device.js +17 -0
- package/src/lib/interfaces/identity/device.js.map +1 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.d.ts +71 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.d.ts.map +1 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.js +16 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.js.map +1 -0
- package/src/lib/interfaces/identity/identityProof.d.ts +90 -0
- package/src/lib/interfaces/identity/identityProof.d.ts.map +1 -0
- package/src/lib/interfaces/identity/identityProof.js +18 -0
- package/src/lib/interfaces/identity/identityProof.js.map +1 -0
- package/src/lib/interfaces/identity/index.d.ts +7 -0
- package/src/lib/interfaces/identity/index.d.ts.map +1 -0
- package/src/lib/interfaces/identity/index.js +3 -0
- package/src/lib/interfaces/identity/index.js.map +1 -0
- package/src/lib/interfaces/identity/paperKey.d.ts +97 -0
- package/src/lib/interfaces/identity/paperKey.d.ts.map +1 -0
- package/src/lib/interfaces/identity/paperKey.js +17 -0
- package/src/lib/interfaces/identity/paperKey.js.map +1 -0
- package/src/lib/interfaces/identity/publicProfile.d.ts +74 -0
- package/src/lib/interfaces/identity/publicProfile.d.ts.map +1 -0
- package/src/lib/interfaces/identity/publicProfile.js +18 -0
- package/src/lib/interfaces/identity/publicProfile.js.map +1 -0
- package/src/lib/interfaces/identity/splitPaperKey.d.ts +73 -0
- package/src/lib/interfaces/identity/splitPaperKey.d.ts.map +1 -0
- package/src/lib/interfaces/identity/splitPaperKey.js +20 -0
- package/src/lib/interfaces/identity/splitPaperKey.js.map +1 -0
- package/src/lib/interfaces/index.d.ts +11 -2
- package/src/lib/interfaces/index.d.ts.map +1 -1
- package/src/lib/interfaces/index.js +12 -0
- package/src/lib/interfaces/index.js.map +1 -1
- package/src/lib/interfaces/messaging/attachmentMetadata.d.ts +47 -0
- package/src/lib/interfaces/messaging/attachmentMetadata.d.ts.map +1 -0
- package/src/lib/interfaces/messaging/attachmentMetadata.js +3 -0
- package/src/lib/interfaces/messaging/attachmentMetadata.js.map +1 -0
- package/src/lib/interfaces/messaging/emailAddress.d.ts +210 -0
- package/src/lib/interfaces/messaging/emailAddress.d.ts.map +1 -0
- package/src/lib/interfaces/messaging/emailAddress.js +213 -0
- package/src/lib/interfaces/messaging/emailAddress.js.map +1 -0
- package/src/lib/interfaces/messaging/emailDelivery.d.ts +80 -0
- package/src/lib/interfaces/messaging/emailDelivery.d.ts.map +1 -0
- package/src/lib/interfaces/messaging/emailDelivery.js +50 -0
- package/src/lib/interfaces/messaging/emailDelivery.js.map +1 -0
- package/src/lib/interfaces/messaging/emailMetadata.d.ts +269 -0
- package/src/lib/interfaces/messaging/emailMetadata.d.ts.map +1 -0
- package/src/lib/interfaces/messaging/emailMetadata.js +16 -0
- package/src/lib/interfaces/messaging/emailMetadata.js.map +1 -0
- package/src/lib/interfaces/messaging/index.d.ts +5 -1
- package/src/lib/interfaces/messaging/index.d.ts.map +1 -1
- package/src/lib/interfaces/messaging/index.js +5 -1
- package/src/lib/interfaces/messaging/index.js.map +1 -1
- package/src/lib/interfaces/messaging/messageMetadata.d.ts +2 -2
- package/src/lib/interfaces/messaging/messageMetadata.d.ts.map +1 -1
- package/src/lib/interfaces/messaging/messageMetadataStore.d.ts +2 -2
- package/src/lib/interfaces/messaging/messageMetadataStore.d.ts.map +1 -1
- package/src/lib/interfaces/messaging/mimePart.d.ts +214 -0
- package/src/lib/interfaces/messaging/mimePart.d.ts.map +1 -0
- package/src/lib/interfaces/messaging/mimePart.js +71 -0
- package/src/lib/interfaces/messaging/mimePart.js.map +1 -0
- package/src/lib/interfaces/network/index.d.ts +0 -1
- package/src/lib/interfaces/network/index.d.ts.map +1 -1
- package/src/lib/interfaces/network/node.d.ts +4 -2
- package/src/lib/interfaces/network/node.d.ts.map +1 -1
- package/src/lib/interfaces/network/nodeAdvertisement.d.ts +4 -2
- package/src/lib/interfaces/network/nodeAdvertisement.d.ts.map +1 -1
- package/src/lib/interfaces/privateVotingDerivation.d.ts +7 -2
- package/src/lib/interfaces/privateVotingDerivation.d.ts.map +1 -1
- package/src/lib/interfaces/requests/communicationRequests.d.ts +154 -0
- package/src/lib/interfaces/requests/communicationRequests.d.ts.map +1 -0
- package/src/lib/interfaces/requests/communicationRequests.js +10 -0
- package/src/lib/interfaces/requests/communicationRequests.js.map +1 -0
- package/src/lib/interfaces/requests/index.d.ts +2 -0
- package/src/lib/interfaces/requests/index.d.ts.map +1 -0
- package/src/lib/interfaces/requests/index.js +3 -0
- package/src/lib/interfaces/requests/index.js.map +1 -0
- package/src/lib/interfaces/responses/blockDataResponse.d.ts +11 -0
- package/src/lib/interfaces/responses/blockDataResponse.d.ts.map +1 -0
- package/src/lib/interfaces/responses/blockDataResponse.js +3 -0
- package/src/lib/interfaces/responses/blockDataResponse.js.map +1 -0
- package/src/lib/interfaces/responses/communicationResponses.d.ts +82 -0
- package/src/lib/interfaces/responses/communicationResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/communicationResponses.js +17 -0
- package/src/lib/interfaces/responses/communicationResponses.js.map +1 -0
- package/src/lib/interfaces/responses/cryptoResponses.d.ts +30 -0
- package/src/lib/interfaces/responses/cryptoResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/cryptoResponses.js +12 -0
- package/src/lib/interfaces/responses/cryptoResponses.js.map +1 -0
- package/src/lib/interfaces/responses/deviceResponses.d.ts +26 -0
- package/src/lib/interfaces/responses/deviceResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/deviceResponses.js +15 -0
- package/src/lib/interfaces/responses/deviceResponses.js.map +1 -0
- package/src/lib/interfaces/responses/directoryResponses.d.ts +26 -0
- package/src/lib/interfaces/responses/directoryResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/directoryResponses.js +12 -0
- package/src/lib/interfaces/responses/directoryResponses.js.map +1 -0
- package/src/lib/interfaces/responses/emailResponses.d.ts +40 -0
- package/src/lib/interfaces/responses/emailResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/emailResponses.js +18 -0
- package/src/lib/interfaces/responses/emailResponses.js.map +1 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.d.ts +42 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.js +11 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.js.map +1 -0
- package/src/lib/interfaces/responses/identityProofResponses.d.ts +33 -0
- package/src/lib/interfaces/responses/identityProofResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/identityProofResponses.js +12 -0
- package/src/lib/interfaces/responses/identityProofResponses.js.map +1 -0
- package/src/lib/interfaces/responses/index.d.ts +3 -1
- package/src/lib/interfaces/responses/index.d.ts.map +1 -1
- package/src/lib/interfaces/sealResults.d.ts +7 -2
- package/src/lib/interfaces/sealResults.d.ts.map +1 -1
- package/src/lib/interfaces/services/fecService.d.ts +7 -5
- package/src/lib/interfaces/services/fecService.d.ts.map +1 -1
- package/src/lib/interfaces/services/fecService.js +2 -0
- package/src/lib/interfaces/services/fecService.js.map +1 -1
- package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts +7 -2
- package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts.map +1 -1
- package/src/lib/interfaces/storage/blockMetadata.d.ts +8 -1
- package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -1
- package/src/lib/interfaces/storage/blockMetadata.js +3 -1
- package/src/lib/interfaces/storage/blockMetadata.js.map +1 -1
- package/src/lib/interfaces/storage/cblIndex.d.ts +141 -0
- package/src/lib/interfaces/storage/cblIndex.d.ts.map +1 -0
- package/src/lib/interfaces/storage/cblIndex.js +28 -0
- package/src/lib/interfaces/storage/cblIndex.js.map +1 -0
- package/src/lib/interfaces/storage/clientSession.d.ts +22 -0
- package/src/lib/interfaces/storage/clientSession.d.ts.map +1 -0
- package/src/lib/interfaces/storage/clientSession.js +3 -0
- package/src/lib/interfaces/storage/clientSession.js.map +1 -0
- package/src/lib/interfaces/storage/collection.d.ts +80 -0
- package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
- package/src/lib/interfaces/storage/collection.js +3 -0
- package/src/lib/interfaces/storage/collection.js.map +1 -0
- package/src/lib/interfaces/storage/database.d.ts +30 -0
- package/src/lib/interfaces/storage/database.d.ts.map +1 -0
- package/src/lib/interfaces/storage/database.js +3 -0
- package/src/lib/interfaces/storage/database.js.map +1 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts +43 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts.map +1 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.js +3 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.js.map +1 -0
- package/src/lib/interfaces/storage/documentTypes.d.ts +413 -0
- package/src/lib/interfaces/storage/documentTypes.d.ts.map +1 -0
- package/src/lib/interfaces/storage/documentTypes.js +8 -0
- package/src/lib/interfaces/storage/documentTypes.js.map +1 -0
- package/src/lib/interfaces/storage/encryptedPool.d.ts +64 -0
- package/src/lib/interfaces/storage/encryptedPool.d.ts.map +1 -0
- package/src/lib/interfaces/storage/encryptedPool.js +26 -0
- package/src/lib/interfaces/storage/encryptedPool.js.map +1 -0
- package/src/lib/interfaces/storage/headRegistry.d.ts +128 -0
- package/src/lib/interfaces/storage/headRegistry.d.ts.map +1 -0
- package/src/lib/interfaces/storage/headRegistry.js +3 -0
- package/src/lib/interfaces/storage/headRegistry.js.map +1 -0
- package/src/lib/interfaces/storage/index.d.ts +14 -0
- package/src/lib/interfaces/storage/index.d.ts.map +1 -1
- package/src/lib/interfaces/storage/index.js +14 -1
- package/src/lib/interfaces/storage/index.js.map +1 -1
- package/src/lib/interfaces/storage/pooledBlockStore.d.ts +163 -0
- package/src/lib/interfaces/storage/pooledBlockStore.d.ts.map +1 -0
- package/src/lib/interfaces/storage/pooledBlockStore.js +77 -0
- package/src/lib/interfaces/storage/pooledBlockStore.js.map +1 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.d.ts +47 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.d.ts.map +1 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.js +29 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.js.map +1 -0
- package/src/lib/interfaces/symmetricEncryptionResults.d.ts +7 -5
- package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
- package/src/lib/schemas/messaging/messageMetadataSchema.d.ts.map +1 -1
- package/src/lib/schemas/messaging/messageMetadataSchema.js.map +1 -1
- package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
- package/src/lib/services/blockCapacity.service.js +15 -0
- package/src/lib/services/blockCapacity.service.js.map +1 -1
- package/src/lib/services/brightpass/auditLogger.d.ts +41 -0
- package/src/lib/services/brightpass/auditLogger.d.ts.map +1 -0
- package/src/lib/services/brightpass/auditLogger.js +47 -0
- package/src/lib/services/brightpass/auditLogger.js.map +1 -0
- package/src/lib/services/brightpass/breachDetector.d.ts +68 -0
- package/src/lib/services/brightpass/breachDetector.d.ts.map +1 -0
- package/src/lib/services/brightpass/breachDetector.js +102 -0
- package/src/lib/services/brightpass/breachDetector.js.map +1 -0
- package/src/lib/services/brightpass/importParser.d.ts +105 -0
- package/src/lib/services/brightpass/importParser.d.ts.map +1 -0
- package/src/lib/services/brightpass/importParser.js +380 -0
- package/src/lib/services/brightpass/importParser.js.map +1 -0
- package/src/lib/services/brightpass/index.d.ts +16 -0
- package/src/lib/services/brightpass/index.d.ts.map +1 -0
- package/src/lib/services/brightpass/index.js +19 -0
- package/src/lib/services/brightpass/index.js.map +1 -0
- package/src/lib/services/brightpass/passwordGenerator.d.ts +111 -0
- package/src/lib/services/brightpass/passwordGenerator.d.ts.map +1 -0
- package/src/lib/services/brightpass/passwordGenerator.js +162 -0
- package/src/lib/services/brightpass/passwordGenerator.js.map +1 -0
- package/src/lib/services/brightpass/totpEngine.d.ts +191 -0
- package/src/lib/services/brightpass/totpEngine.d.ts.map +1 -0
- package/src/lib/services/brightpass/totpEngine.js +198 -0
- package/src/lib/services/brightpass/totpEngine.js.map +1 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.d.ts +26 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.d.ts.map +1 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.js +42 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.js.map +1 -0
- package/src/lib/services/brightpass/vaultSerializer.d.ts +14 -0
- package/src/lib/services/brightpass/vaultSerializer.d.ts.map +1 -0
- package/src/lib/services/brightpass/vaultSerializer.js +77 -0
- package/src/lib/services/brightpass/vaultSerializer.js.map +1 -0
- package/src/lib/services/cblService.d.ts +4 -2
- package/src/lib/services/cblService.d.ts.map +1 -1
- package/src/lib/services/cblService.js +8 -4
- package/src/lib/services/cblService.js.map +1 -1
- package/src/lib/services/communication/channelService.d.ts +208 -0
- package/src/lib/services/communication/channelService.d.ts.map +1 -0
- package/src/lib/services/communication/channelService.js +575 -0
- package/src/lib/services/communication/channelService.js.map +1 -0
- package/src/lib/services/communication/conversationService.d.ts +130 -0
- package/src/lib/services/communication/conversationService.d.ts.map +1 -0
- package/src/lib/services/communication/conversationService.js +279 -0
- package/src/lib/services/communication/conversationService.js.map +1 -0
- package/src/lib/services/communication/explodingMessageService.d.ts +168 -0
- package/src/lib/services/communication/explodingMessageService.d.ts.map +1 -0
- package/src/lib/services/communication/explodingMessageService.js +287 -0
- package/src/lib/services/communication/explodingMessageService.js.map +1 -0
- package/src/lib/services/communication/groupService.d.ts +165 -0
- package/src/lib/services/communication/groupService.d.ts.map +1 -0
- package/src/lib/services/communication/groupService.js +437 -0
- package/src/lib/services/communication/groupService.js.map +1 -0
- package/src/lib/services/communication/index.d.ts +16 -0
- package/src/lib/services/communication/index.d.ts.map +1 -0
- package/src/lib/services/communication/index.js +63 -0
- package/src/lib/services/communication/index.js.map +1 -0
- package/src/lib/services/communication/messageOperationsService.d.ts +81 -0
- package/src/lib/services/communication/messageOperationsService.d.ts.map +1 -0
- package/src/lib/services/communication/messageOperationsService.js +162 -0
- package/src/lib/services/communication/messageOperationsService.js.map +1 -0
- package/src/lib/services/communication/permissionService.d.ts +47 -0
- package/src/lib/services/communication/permissionService.d.ts.map +1 -0
- package/src/lib/services/communication/permissionService.js +82 -0
- package/src/lib/services/communication/permissionService.js.map +1 -0
- package/src/lib/services/communication/searchService.d.ts +30 -0
- package/src/lib/services/communication/searchService.d.ts.map +1 -0
- package/src/lib/services/communication/searchService.js +83 -0
- package/src/lib/services/communication/searchService.js.map +1 -0
- package/src/lib/services/crypto/ethereumWalletService.d.ts +159 -0
- package/src/lib/services/crypto/ethereumWalletService.d.ts.map +1 -0
- package/src/lib/services/crypto/ethereumWalletService.js +345 -0
- package/src/lib/services/crypto/ethereumWalletService.js.map +1 -0
- package/src/lib/services/crypto/gitSigningService.d.ts +145 -0
- package/src/lib/services/crypto/gitSigningService.d.ts.map +1 -0
- package/src/lib/services/crypto/gitSigningService.js +291 -0
- package/src/lib/services/crypto/gitSigningService.js.map +1 -0
- package/src/lib/services/crypto/index.d.ts +3 -0
- package/src/lib/services/crypto/index.d.ts.map +1 -0
- package/src/lib/services/crypto/index.js +6 -0
- package/src/lib/services/crypto/index.js.map +1 -0
- package/src/lib/services/identity/deviceProvisioningService.d.ts +146 -0
- package/src/lib/services/identity/deviceProvisioningService.d.ts.map +1 -0
- package/src/lib/services/identity/deviceProvisioningService.js +219 -0
- package/src/lib/services/identity/deviceProvisioningService.js.map +1 -0
- package/src/lib/services/identity/identityProofService.d.ts +139 -0
- package/src/lib/services/identity/identityProofService.d.ts.map +1 -0
- package/src/lib/services/identity/identityProofService.js +245 -0
- package/src/lib/services/identity/identityProofService.js.map +1 -0
- package/src/lib/services/identity/index.d.ts +14 -0
- package/src/lib/services/identity/index.d.ts.map +1 -0
- package/src/lib/services/identity/index.js +17 -0
- package/src/lib/services/identity/index.js.map +1 -0
- package/src/lib/services/identity/memberIdentityProofService.d.ts +179 -0
- package/src/lib/services/identity/memberIdentityProofService.d.ts.map +1 -0
- package/src/lib/services/identity/memberIdentityProofService.js +232 -0
- package/src/lib/services/identity/memberIdentityProofService.js.map +1 -0
- package/src/lib/services/identity/memberPaperKeyService.d.ts +223 -0
- package/src/lib/services/identity/memberPaperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/memberPaperKeyService.js +279 -0
- package/src/lib/services/identity/memberPaperKeyService.js.map +1 -0
- package/src/lib/services/identity/paperKeyService.d.ts +106 -0
- package/src/lib/services/identity/paperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/paperKeyService.js +161 -0
- package/src/lib/services/identity/paperKeyService.js.map +1 -0
- package/src/lib/services/identity/publicKeyDirectoryService.d.ts +210 -0
- package/src/lib/services/identity/publicKeyDirectoryService.d.ts.map +1 -0
- package/src/lib/services/identity/publicKeyDirectoryService.js +328 -0
- package/src/lib/services/identity/publicKeyDirectoryService.js.map +1 -0
- package/src/lib/services/identity/splitPaperKeyService.d.ts +92 -0
- package/src/lib/services/identity/splitPaperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/splitPaperKeyService.js +305 -0
- package/src/lib/services/identity/splitPaperKeyService.js.map +1 -0
- package/src/lib/services/index.d.ts +4 -0
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +7 -0
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/services/messaging/deliveryTimeoutService.js +2 -2
- package/src/lib/services/messaging/deliveryTimeoutService.js.map +1 -1
- package/src/lib/services/messaging/emailEncryptionService.d.ts +250 -0
- package/src/lib/services/messaging/emailEncryptionService.d.ts.map +1 -0
- package/src/lib/services/messaging/emailEncryptionService.js +420 -0
- package/src/lib/services/messaging/emailEncryptionService.js.map +1 -0
- package/src/lib/services/messaging/emailMessageService.d.ts +669 -0
- package/src/lib/services/messaging/emailMessageService.d.ts.map +1 -0
- package/src/lib/services/messaging/emailMessageService.js +1030 -0
- package/src/lib/services/messaging/emailMessageService.js.map +1 -0
- package/src/lib/services/messaging/emailParser.d.ts +476 -0
- package/src/lib/services/messaging/emailParser.d.ts.map +1 -0
- package/src/lib/services/messaging/emailParser.js +1316 -0
- package/src/lib/services/messaging/emailParser.js.map +1 -0
- package/src/lib/services/messaging/emailSerializer.d.ts +403 -0
- package/src/lib/services/messaging/emailSerializer.d.ts.map +1 -0
- package/src/lib/services/messaging/emailSerializer.js +852 -0
- package/src/lib/services/messaging/emailSerializer.js.map +1 -0
- package/src/lib/services/messaging/emailValidator.d.ts +448 -0
- package/src/lib/services/messaging/emailValidator.d.ts.map +1 -0
- package/src/lib/services/messaging/emailValidator.js +810 -0
- package/src/lib/services/messaging/emailValidator.js.map +1 -0
- package/src/lib/services/messaging/gossipRetryService.d.ts +204 -0
- package/src/lib/services/messaging/gossipRetryService.d.ts.map +1 -0
- package/src/lib/services/messaging/gossipRetryService.js +319 -0
- package/src/lib/services/messaging/gossipRetryService.js.map +1 -0
- package/src/lib/services/messaging/inMemoryEmailMetadataStore.d.ts +60 -0
- package/src/lib/services/messaging/inMemoryEmailMetadataStore.d.ts.map +1 -0
- package/src/lib/services/messaging/inMemoryEmailMetadataStore.js +281 -0
- package/src/lib/services/messaging/inMemoryEmailMetadataStore.js.map +1 -0
- package/src/lib/services/messaging/index.d.ts +11 -5
- package/src/lib/services/messaging/index.d.ts.map +1 -1
- package/src/lib/services/messaging/index.js +19 -5
- package/src/lib/services/messaging/index.js.map +1 -1
- package/src/lib/services/messaging/messageCBLService.js +2 -2
- package/src/lib/services/messaging/messageCBLService.js.map +1 -1
- package/src/lib/services/tuple.service.d.ts +27 -2
- package/src/lib/services/tuple.service.d.ts.map +1 -1
- package/src/lib/services/tuple.service.js +62 -20
- package/src/lib/services/tuple.service.js.map +1 -1
- package/src/lib/services/vcblService.d.ts +36 -0
- package/src/lib/services/vcblService.d.ts.map +1 -0
- package/src/lib/services/vcblService.js +326 -0
- package/src/lib/services/vcblService.js.map +1 -0
- package/src/lib/stores/index.d.ts +1 -0
- package/src/lib/stores/index.d.ts.map +1 -1
- package/src/lib/stores/index.js +1 -0
- package/src/lib/stores/index.js.map +1 -1
- package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts +2 -2
- package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts.map +1 -1
- package/src/lib/stores/messaging/memoryMessageMetadataStore.js +2 -2
- package/src/lib/stores/messaging/memoryMessageMetadataStore.js.map +1 -1
- package/src/lib/stores/pooledMemoryBlockStore.d.ts +134 -0
- package/src/lib/stores/pooledMemoryBlockStore.d.ts.map +1 -0
- package/src/lib/stores/pooledMemoryBlockStore.js +583 -0
- package/src/lib/stores/pooledMemoryBlockStore.js.map +1 -0
- package/src/lib/types/checksum.d.ts +11 -0
- package/src/lib/types/checksum.d.ts.map +1 -1
- package/src/lib/types/checksum.js +11 -0
- package/src/lib/types/checksum.js.map +1 -1
- package/src/lib/utils/index.d.ts +9 -0
- package/src/lib/utils/index.d.ts.map +1 -1
- package/src/lib/utils/index.js +12 -0
- package/src/lib/utils/index.js.map +1 -1
- package/src/lib/utils/pagination.d.ts +27 -0
- package/src/lib/utils/pagination.d.ts.map +1 -0
- package/src/lib/utils/pagination.js +38 -0
- package/src/lib/utils/pagination.js.map +1 -0
- package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts +0 -18
- package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts.map +0 -1
- package/src/lib/enumerations/messaging/messageDeliveryStatus.js +0 -22
- package/src/lib/enumerations/messaging/messageDeliveryStatus.js.map +0 -1
- package/src/lib/enumerations/messaging/routingStrategy.d.ts +0 -12
- package/src/lib/enumerations/messaging/routingStrategy.d.ts.map +0 -1
- package/src/lib/enumerations/messaging/routingStrategy.js +0 -16
- package/src/lib/enumerations/messaging/routingStrategy.js.map +0 -1
- package/src/lib/interfaces/messaging/messageRouter.d.ts +0 -48
- package/src/lib/interfaces/messaging/messageRouter.d.ts.map +0 -1
- package/src/lib/interfaces/messaging/messageRouter.js.map +0 -1
- package/src/lib/interfaces/network/networkTransport.d.ts +0 -19
- package/src/lib/interfaces/network/networkTransport.d.ts.map +0 -1
- package/src/lib/interfaces/network/networkTransport.js.map +0 -1
- package/src/lib/services/messaging/broadcastMessageRouter.d.ts +0 -18
- package/src/lib/services/messaging/broadcastMessageRouter.d.ts.map +0 -1
- package/src/lib/services/messaging/broadcastMessageRouter.js +0 -32
- package/src/lib/services/messaging/broadcastMessageRouter.js.map +0 -1
- package/src/lib/services/messaging/directMessageRouter.d.ts +0 -25
- package/src/lib/services/messaging/directMessageRouter.d.ts.map +0 -1
- package/src/lib/services/messaging/directMessageRouter.js +0 -58
- package/src/lib/services/messaging/directMessageRouter.js.map +0 -1
- package/src/lib/services/messaging/messageForwardingService.d.ts +0 -40
- package/src/lib/services/messaging/messageForwardingService.d.ts.map +0 -1
- package/src/lib/services/messaging/messageForwardingService.js +0 -74
- package/src/lib/services/messaging/messageForwardingService.js.map +0 -1
- package/src/lib/services/messaging/messageRouter.d.ts +0 -24
- package/src/lib/services/messaging/messageRouter.d.ts.map +0 -1
- package/src/lib/services/messaging/messageRouter.js +0 -111
- package/src/lib/services/messaging/messageRouter.js.map +0 -1
- package/src/lib/services/messaging/webSocketTransport.d.ts +0 -34
- package/src/lib/services/messaging/webSocketTransport.d.ts.map +0 -1
- package/src/lib/services/messaging/webSocketTransport.js +0 -115
- package/src/lib/services/messaging/webSocketTransport.js.map +0 -1
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Split Paper Key Service for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* Splits a 24-word BIP39 paper key into N Shamir's Secret Sharing
|
|
6
|
+
* shares with a configurable threshold T. Any T shares can reconstruct
|
|
7
|
+
* the original paper key; fewer than T shares reveal nothing.
|
|
8
|
+
*
|
|
9
|
+
* Each share is encoded as a human-readable word sequence using the
|
|
10
|
+
* BIP39 English wordlist as a dictionary (11 bits per word). Because
|
|
11
|
+
* Shamir shares include metadata (bit-width, share index) and internal
|
|
12
|
+
* padding, they are larger than the original 32-byte entropy, so they
|
|
13
|
+
* cannot be represented as standard BIP39 mnemonics. Instead, the
|
|
14
|
+
* service uses a raw 11-bit-per-word encoding that preserves the full
|
|
15
|
+
* share hex string for lossless round-trip reconstruction.
|
|
16
|
+
*
|
|
17
|
+
* Requirements: 2.1, 2.2, 2.3, 2.4, 2.7
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.SplitPaperKeyService = void 0;
|
|
21
|
+
const secretsModule = require("@digitaldefiance/secrets");
|
|
22
|
+
const bip39_1 = require("@scure/bip39");
|
|
23
|
+
const english_1 = require("@scure/bip39/wordlists/english");
|
|
24
|
+
const QRCode = require("qrcode");
|
|
25
|
+
const constants_1 = require("../../constants");
|
|
26
|
+
// Handle both ESM default export and CommonJS module.exports patterns
|
|
27
|
+
const secrets = secretsModule
|
|
28
|
+
.default ?? secretsModule;
|
|
29
|
+
/**
|
|
30
|
+
* Number of bits encoded per BIP39 wordlist word (2048 words = 2^11).
|
|
31
|
+
*/
|
|
32
|
+
const BITS_PER_WORD = 11;
|
|
33
|
+
/**
|
|
34
|
+
* Minimum threshold for Shamir's Secret Sharing.
|
|
35
|
+
* A threshold of 1 is meaningless — every share IS the secret.
|
|
36
|
+
*/
|
|
37
|
+
const MIN_THRESHOLD = 2;
|
|
38
|
+
/**
|
|
39
|
+
* Expected byte length of 256-bit BIP39 entropy (24-word mnemonic).
|
|
40
|
+
*/
|
|
41
|
+
const EXPECTED_ENTROPY_BYTES = 32;
|
|
42
|
+
// ─── Hex ↔ Word-list encoding ───────────────────────────────────────────────
|
|
43
|
+
//
|
|
44
|
+
// Shamir share strings are arbitrary-length hex and cannot be fed to
|
|
45
|
+
// `entropyToMnemonic` (which requires 16/20/24/28/32-byte entropy).
|
|
46
|
+
// We encode them as words by chunking the hex into 11-bit groups and
|
|
47
|
+
// mapping each group to a BIP39 wordlist entry. The encoding is
|
|
48
|
+
// fully reversible.
|
|
49
|
+
/**
|
|
50
|
+
* Encode an arbitrary hex string as a sequence of BIP39 wordlist words.
|
|
51
|
+
*
|
|
52
|
+
* The hex is converted to a binary string, left-padded to a multiple of
|
|
53
|
+
* {@link BITS_PER_WORD} bits, then split into 11-bit chunks. Each chunk
|
|
54
|
+
* indexes into the BIP39 English wordlist.
|
|
55
|
+
*
|
|
56
|
+
* @param hex - Hex string to encode (no `0x` prefix)
|
|
57
|
+
* @returns Array of BIP39 words representing the hex value
|
|
58
|
+
*/
|
|
59
|
+
function hexToWords(hex) {
|
|
60
|
+
// Convert hex → binary string
|
|
61
|
+
let binary = '';
|
|
62
|
+
for (const ch of hex) {
|
|
63
|
+
binary += parseInt(ch, 16).toString(2).padStart(4, '0');
|
|
64
|
+
}
|
|
65
|
+
// Pad to a multiple of BITS_PER_WORD
|
|
66
|
+
const remainder = binary.length % BITS_PER_WORD;
|
|
67
|
+
if (remainder !== 0) {
|
|
68
|
+
binary = '0'.repeat(BITS_PER_WORD - remainder) + binary;
|
|
69
|
+
}
|
|
70
|
+
const words = [];
|
|
71
|
+
for (let i = 0; i < binary.length; i += BITS_PER_WORD) {
|
|
72
|
+
const chunk = binary.slice(i, i + BITS_PER_WORD);
|
|
73
|
+
const index = parseInt(chunk, 2);
|
|
74
|
+
words.push(english_1.wordlist[index]);
|
|
75
|
+
}
|
|
76
|
+
return words;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Decode a sequence of BIP39 wordlist words back to a hex string.
|
|
80
|
+
*
|
|
81
|
+
* Each word is looked up in the BIP39 English wordlist to recover its
|
|
82
|
+
* 11-bit index. The concatenated binary is then converted back to hex.
|
|
83
|
+
*
|
|
84
|
+
* @param words - Array of BIP39 words previously produced by {@link hexToWords}
|
|
85
|
+
* @returns The original hex string
|
|
86
|
+
* @throws {Error} If any word is not in the BIP39 English wordlist
|
|
87
|
+
*/
|
|
88
|
+
function wordsToHex(words) {
|
|
89
|
+
let binary = '';
|
|
90
|
+
for (const word of words) {
|
|
91
|
+
const index = english_1.wordlist.indexOf(word);
|
|
92
|
+
if (index === -1) {
|
|
93
|
+
throw new Error(`Word "${word}" is not in the BIP39 English wordlist`);
|
|
94
|
+
}
|
|
95
|
+
binary += index.toString(2).padStart(BITS_PER_WORD, '0');
|
|
96
|
+
}
|
|
97
|
+
// Convert binary → hex, stripping leading zeros that were padding
|
|
98
|
+
// We need groups of 4 bits for hex conversion
|
|
99
|
+
const remainder = binary.length % 4;
|
|
100
|
+
if (remainder !== 0) {
|
|
101
|
+
binary = '0'.repeat(4 - remainder) + binary;
|
|
102
|
+
}
|
|
103
|
+
let hex = '';
|
|
104
|
+
for (let i = 0; i < binary.length; i += 4) {
|
|
105
|
+
hex += parseInt(binary.slice(i, i + 4), 2).toString(16);
|
|
106
|
+
}
|
|
107
|
+
// Strip leading zeros but preserve at least one character
|
|
108
|
+
hex = hex.replace(/^0+/, '') || '0';
|
|
109
|
+
return hex;
|
|
110
|
+
}
|
|
111
|
+
// ─── Secrets library initialisation ─────────────────────────────────────────
|
|
112
|
+
/**
|
|
113
|
+
* Initialise (or re-initialise) the `@digitaldefiance/secrets` library
|
|
114
|
+
* with the correct Galois Field bit-width for the requested number of
|
|
115
|
+
* shares.
|
|
116
|
+
*
|
|
117
|
+
* The bit-width determines the maximum share count: `2^bits − 1`.
|
|
118
|
+
* We clamp to the range [3, 20] as required by the library.
|
|
119
|
+
*
|
|
120
|
+
* @param maxShares - Maximum number of shares that will be generated
|
|
121
|
+
*/
|
|
122
|
+
function initSecrets(maxShares) {
|
|
123
|
+
const bits = Math.max(3, Math.ceil(Math.log2(maxShares + 1)));
|
|
124
|
+
if (bits < 3 || bits > 20) {
|
|
125
|
+
throw new Error(`Cannot initialise secrets library: computed ${bits} bits for ${maxShares} shares (valid range: 3–20)`);
|
|
126
|
+
}
|
|
127
|
+
let csprngType = 'nodeCryptoRandomBytes';
|
|
128
|
+
try {
|
|
129
|
+
const config = secrets.getConfig();
|
|
130
|
+
if (config?.typeCSPRNG) {
|
|
131
|
+
csprngType = config.typeCSPRNG;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
// Library not yet initialised — use default
|
|
136
|
+
}
|
|
137
|
+
secrets.init(bits, csprngType);
|
|
138
|
+
}
|
|
139
|
+
// ─── Validation helpers ─────────────────────────────────────────────────────
|
|
140
|
+
/**
|
|
141
|
+
* Validate split parameters against system constraints.
|
|
142
|
+
*
|
|
143
|
+
* @throws {Error} If any parameter is out of range
|
|
144
|
+
*/
|
|
145
|
+
function validateSplitParams(paperKey, shares, threshold) {
|
|
146
|
+
if (!(0, bip39_1.validateMnemonic)(paperKey, english_1.wordlist)) {
|
|
147
|
+
throw new Error('Invalid paper key: not a valid BIP39 mnemonic');
|
|
148
|
+
}
|
|
149
|
+
const words = paperKey.trim().split(/\s+/);
|
|
150
|
+
if (words.length !== 24) {
|
|
151
|
+
throw new Error(`Invalid paper key: expected 24 words, got ${words.length}`);
|
|
152
|
+
}
|
|
153
|
+
if (!Number.isInteger(shares) || shares < constants_1.SEALING.MIN_SHARES) {
|
|
154
|
+
throw new Error(`Number of shares must be an integer ≥ ${constants_1.SEALING.MIN_SHARES}, got ${shares}`);
|
|
155
|
+
}
|
|
156
|
+
if (shares > constants_1.SEALING.MAX_SHARES) {
|
|
157
|
+
throw new Error(`Number of shares must be ≤ ${constants_1.SEALING.MAX_SHARES}, got ${shares}`);
|
|
158
|
+
}
|
|
159
|
+
if (!Number.isInteger(threshold) || threshold < MIN_THRESHOLD) {
|
|
160
|
+
throw new Error(`Threshold must be an integer ≥ ${MIN_THRESHOLD}, got ${threshold}`);
|
|
161
|
+
}
|
|
162
|
+
if (threshold > shares) {
|
|
163
|
+
throw new Error(`Threshold (${threshold}) cannot exceed number of shares (${shares})`);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
// ─── Service ────────────────────────────────────────────────────────────────
|
|
167
|
+
/**
|
|
168
|
+
* Service for splitting and reconstructing BIP39 paper keys using
|
|
169
|
+
* Shamir's Secret Sharing.
|
|
170
|
+
*
|
|
171
|
+
* All methods are static — the service is stateless and safe to call
|
|
172
|
+
* from any context (browser or Node.js).
|
|
173
|
+
*
|
|
174
|
+
* @example
|
|
175
|
+
* ```typescript
|
|
176
|
+
* // Split a 24-word paper key into 5 shares, requiring 3 to reconstruct
|
|
177
|
+
* const shares = SplitPaperKeyService.split(paperKey, 5, 3);
|
|
178
|
+
*
|
|
179
|
+
* // Reconstruct from any 3 shares
|
|
180
|
+
* const recovered = SplitPaperKeyService.reconstruct(shares, 5);
|
|
181
|
+
*
|
|
182
|
+
* // Generate a printable template for share #1
|
|
183
|
+
* const template = await SplitPaperKeyService.generateShareTemplate(
|
|
184
|
+
* shares[0], 1, 5, 3,
|
|
185
|
+
* );
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
188
|
+
class SplitPaperKeyService {
|
|
189
|
+
/**
|
|
190
|
+
* Split a 24-word BIP39 paper key into N Shamir shares.
|
|
191
|
+
*
|
|
192
|
+
* The paper key mnemonic is converted to its 32-byte entropy, then
|
|
193
|
+
* the entropy hex is split using Shamir's Secret Sharing. Each
|
|
194
|
+
* resulting share hex is encoded as human-readable words using the
|
|
195
|
+
* BIP39 wordlist (11 bits per word).
|
|
196
|
+
*
|
|
197
|
+
* **Validates: Requirements 2.1, 2.2, 2.3**
|
|
198
|
+
*
|
|
199
|
+
* @param paperKey - A valid 24-word BIP39 mnemonic
|
|
200
|
+
* @param shares - Total number of shares to generate (2–1,048,575)
|
|
201
|
+
* @param threshold - Minimum shares needed to reconstruct (2–shares)
|
|
202
|
+
* @returns Array of word-encoded share strings (space-separated words)
|
|
203
|
+
* @throws {Error} If the paper key is invalid or parameters are out of range
|
|
204
|
+
*/
|
|
205
|
+
static split(paperKey, shares, threshold) {
|
|
206
|
+
validateSplitParams(paperKey, shares, threshold);
|
|
207
|
+
// Requirement 2.2: Convert BIP39 mnemonic → raw entropy bytes
|
|
208
|
+
const entropyBytes = (0, bip39_1.mnemonicToEntropy)(paperKey, english_1.wordlist);
|
|
209
|
+
if (entropyBytes.length !== EXPECTED_ENTROPY_BYTES) {
|
|
210
|
+
throw new Error(`Unexpected entropy length: expected ${EXPECTED_ENTROPY_BYTES} bytes, got ${entropyBytes.length}`);
|
|
211
|
+
}
|
|
212
|
+
// Convert entropy to hex for the secrets library
|
|
213
|
+
const entropyHex = Buffer.from(entropyBytes).toString('hex');
|
|
214
|
+
// Initialise secrets library for the requested share count
|
|
215
|
+
initSecrets(shares);
|
|
216
|
+
// Requirement 2.1: Split using Shamir's Secret Sharing
|
|
217
|
+
// padLength=0 preserves the exact hex length (no extra zero-padding)
|
|
218
|
+
const shamirShares = secrets.share(entropyHex, shares, threshold, 0);
|
|
219
|
+
// Requirement 2.3: Convert each share to human-readable words
|
|
220
|
+
return shamirShares.map((shareHex) => {
|
|
221
|
+
const words = hexToWords(shareHex);
|
|
222
|
+
return words.join(' ');
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Reconstruct a paper key from T or more Shamir shares.
|
|
227
|
+
*
|
|
228
|
+
* The word-encoded shares are decoded back to hex, combined using
|
|
229
|
+
* Shamir's Secret Sharing, and the resulting entropy is converted
|
|
230
|
+
* back to a 24-word BIP39 mnemonic.
|
|
231
|
+
*
|
|
232
|
+
* **Validates: Requirement 2.4**
|
|
233
|
+
*
|
|
234
|
+
* @param shares - Array of word-encoded share strings (at least threshold count)
|
|
235
|
+
* @param totalShares - The total number of shares originally created
|
|
236
|
+
* (needed to re-initialise the secrets library with
|
|
237
|
+
* the correct Galois Field bit-width)
|
|
238
|
+
* @returns The original 24-word BIP39 paper key
|
|
239
|
+
* @throws {Error} If shares are invalid or reconstruction fails
|
|
240
|
+
*/
|
|
241
|
+
static reconstruct(shares, totalShares) {
|
|
242
|
+
if (!Array.isArray(shares) || shares.length < MIN_THRESHOLD) {
|
|
243
|
+
throw new Error(`At least ${MIN_THRESHOLD} shares are required for reconstruction`);
|
|
244
|
+
}
|
|
245
|
+
if (!Number.isInteger(totalShares) ||
|
|
246
|
+
totalShares < constants_1.SEALING.MIN_SHARES ||
|
|
247
|
+
totalShares > constants_1.SEALING.MAX_SHARES) {
|
|
248
|
+
throw new Error(`totalShares must be an integer between ${constants_1.SEALING.MIN_SHARES} and ${constants_1.SEALING.MAX_SHARES}`);
|
|
249
|
+
}
|
|
250
|
+
// Decode word-encoded shares back to hex
|
|
251
|
+
const hexShares = shares.map((shareWords) => {
|
|
252
|
+
const words = shareWords.trim().split(/\s+/);
|
|
253
|
+
return wordsToHex(words);
|
|
254
|
+
});
|
|
255
|
+
// Re-initialise secrets library with the same bit-width used during split
|
|
256
|
+
initSecrets(totalShares);
|
|
257
|
+
// Combine shares to recover the original entropy hex
|
|
258
|
+
const recoveredHex = secrets.combine(hexShares);
|
|
259
|
+
// Convert hex → bytes → BIP39 mnemonic
|
|
260
|
+
const entropyBytes = new Uint8Array(Buffer.from(recoveredHex, 'hex'));
|
|
261
|
+
// The recovered entropy should be exactly 32 bytes for a 24-word mnemonic
|
|
262
|
+
if (entropyBytes.length !== EXPECTED_ENTROPY_BYTES) {
|
|
263
|
+
throw new Error(`Reconstruction produced ${entropyBytes.length} bytes of entropy; expected ${EXPECTED_ENTROPY_BYTES}. ` +
|
|
264
|
+
'Ensure the correct number of valid shares and totalShares were provided.');
|
|
265
|
+
}
|
|
266
|
+
const mnemonic = (0, bip39_1.entropyToMnemonic)(entropyBytes, english_1.wordlist);
|
|
267
|
+
// Sanity check: the result must be a valid BIP39 mnemonic
|
|
268
|
+
if (!(0, bip39_1.validateMnemonic)(mnemonic, english_1.wordlist)) {
|
|
269
|
+
throw new Error('Reconstructed mnemonic failed BIP39 validation. ' +
|
|
270
|
+
'The shares may be corrupted or from different split operations.');
|
|
271
|
+
}
|
|
272
|
+
return mnemonic;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Generate a printable template for a single share.
|
|
276
|
+
*
|
|
277
|
+
* Produces an {@link ISplitPaperKeyShare} containing the share words,
|
|
278
|
+
* a QR code data URL for mobile scanning, and human-readable
|
|
279
|
+
* instructions with share number, total count, and threshold.
|
|
280
|
+
*
|
|
281
|
+
* **Validates: Requirement 2.7**
|
|
282
|
+
*
|
|
283
|
+
* @param share - Space-separated word-encoded share string
|
|
284
|
+
* @param shareNumber - 1-based index of this share
|
|
285
|
+
* @param totalShares - Total number of shares created
|
|
286
|
+
* @param threshold - Minimum shares needed to reconstruct
|
|
287
|
+
* @returns A promise resolving to the complete {@link ISplitPaperKeyShare}
|
|
288
|
+
*/
|
|
289
|
+
static async generateShareTemplate(share, shareNumber, totalShares, threshold) {
|
|
290
|
+
const words = share.trim().split(/\s+/);
|
|
291
|
+
const qrCode = await QRCode.toDataURL(share);
|
|
292
|
+
return {
|
|
293
|
+
shareNumber,
|
|
294
|
+
totalShares,
|
|
295
|
+
threshold,
|
|
296
|
+
words,
|
|
297
|
+
qrCode,
|
|
298
|
+
createdAt: new Date(),
|
|
299
|
+
instructions: `This is share ${shareNumber} of ${totalShares}. ` +
|
|
300
|
+
`You need ${threshold} shares to recover your account.`,
|
|
301
|
+
};
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
exports.SplitPaperKeyService = SplitPaperKeyService;
|
|
305
|
+
//# sourceMappingURL=splitPaperKeyService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitPaperKeyService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/identity/splitPaperKeyService.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,5 +13,9 @@ export * from './serviceLocator';
|
|
|
13
13
|
export * from './symmetric.service';
|
|
14
14
|
export * from './tuple.service';
|
|
15
15
|
export * from './tupleStorageService';
|
|
16
|
+
export * from './vcblService';
|
|
16
17
|
export * from './xor';
|
|
18
|
+
export * from './brightpass';
|
|
19
|
+
export * from './communication';
|
|
20
|
+
export * from './identity';
|
|
17
21
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AAGtB,cAAc,cAAc,CAAC;AAG7B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,YAAY,CAAC"}
|
|
@@ -16,5 +16,12 @@ tslib_1.__exportStar(require("./serviceLocator"), exports);
|
|
|
16
16
|
tslib_1.__exportStar(require("./symmetric.service"), exports);
|
|
17
17
|
tslib_1.__exportStar(require("./tuple.service"), exports);
|
|
18
18
|
tslib_1.__exportStar(require("./tupleStorageService"), exports);
|
|
19
|
+
tslib_1.__exportStar(require("./vcblService"), exports);
|
|
19
20
|
tslib_1.__exportStar(require("./xor"), exports);
|
|
21
|
+
// BrightPass services (password management)
|
|
22
|
+
tslib_1.__exportStar(require("./brightpass"), exports);
|
|
23
|
+
// Communication services (direct messaging, groups, channels)
|
|
24
|
+
tslib_1.__exportStar(require("./communication"), exports);
|
|
25
|
+
// Identity services (paper keys, identity proofs, directory)
|
|
26
|
+
tslib_1.__exportStar(require("./identity"), exports);
|
|
20
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,yDAA+B;AAC/B,uDAA6B;AAC7B,6DAAmC;AACnC,wDAA8B;AAC9B,mDAAyB;AACzB,wDAA8B;AAC9B,sDAA4B;AAC5B,0DAAgC;AAChC,4DAAkC;AAClC,6DAAmC;AACnC,2DAAiC;AACjC,8DAAoC;AACpC,0DAAgC;AAChC,gEAAsC;AACtC,gDAAsB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/index.ts"],"names":[],"mappings":";;;AAAA,kEAAwC;AACxC,yDAA+B;AAC/B,uDAA6B;AAC7B,6DAAmC;AACnC,wDAA8B;AAC9B,mDAAyB;AACzB,wDAA8B;AAC9B,sDAA4B;AAC5B,0DAAgC;AAChC,4DAAkC;AAClC,6DAAmC;AACnC,2DAAiC;AACjC,8DAAoC;AACpC,0DAAgC;AAChC,gEAAsC;AACtC,wDAA8B;AAC9B,gDAAsB;AAEtB,4CAA4C;AAC5C,uDAA6B;AAE7B,8DAA8D;AAC9D,0DAAgC;AAEhC,6DAA6D;AAC7D,qDAA2B"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DeliveryTimeoutService = void 0;
|
|
4
4
|
const enumerations_1 = require("../../enumerations");
|
|
5
|
-
const
|
|
5
|
+
const deliveryStatus_1 = require("../../enumerations/messaging/deliveryStatus");
|
|
6
6
|
const i18n_1 = require("../../i18n");
|
|
7
7
|
/**
|
|
8
8
|
* Service for handling message delivery timeouts
|
|
@@ -93,7 +93,7 @@ class DeliveryTimeoutService {
|
|
|
93
93
|
*/
|
|
94
94
|
async handleTimeout(messageId, recipientId) {
|
|
95
95
|
try {
|
|
96
|
-
await this.metadataStore.updateDeliveryStatus(messageId, recipientId,
|
|
96
|
+
await this.metadataStore.updateDeliveryStatus(messageId, recipientId, deliveryStatus_1.DeliveryStatus.Failed);
|
|
97
97
|
this.clearDeliveryAttempt(messageId, recipientId);
|
|
98
98
|
if (this.failureCallback) {
|
|
99
99
|
this.failureCallback(messageId, recipientId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliveryTimeoutService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/deliveryTimeoutService.ts"],"names":[],"mappings":";;;AAAA,qDAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"deliveryTimeoutService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/deliveryTimeoutService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Email Encryption Service
|
|
3
|
+
*
|
|
4
|
+
* Provides encryption, decryption, signing, and signature verification
|
|
5
|
+
* for email messages in the BrightChain messaging system.
|
|
6
|
+
*
|
|
7
|
+
* Supports:
|
|
8
|
+
* - ECIES (per-recipient public key encryption via BlockECIES)
|
|
9
|
+
* - Symmetric encryption (AES-256-GCM with a shared key)
|
|
10
|
+
* - S/MIME-style digital signatures (sign with sender's private key, verify with public key)
|
|
11
|
+
*
|
|
12
|
+
* @see Requirements 16.1, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8
|
|
13
|
+
*/
|
|
14
|
+
import { MessageEncryptionScheme } from '../../enumerations/messaging/messageEncryptionScheme';
|
|
15
|
+
/**
|
|
16
|
+
* Encryption metadata stored alongside an encrypted email.
|
|
17
|
+
*
|
|
18
|
+
* @see Requirement 16.7 - Store encryption metadata in Email_Metadata
|
|
19
|
+
*/
|
|
20
|
+
export interface IEmailEncryptionMetadata {
|
|
21
|
+
/** The encryption scheme used */
|
|
22
|
+
scheme: MessageEncryptionScheme;
|
|
23
|
+
/**
|
|
24
|
+
* Per-recipient encrypted symmetric key (base64-encoded).
|
|
25
|
+
* Only present when scheme is RECIPIENT_KEYS.
|
|
26
|
+
* Maps recipient address to their ECIES-encrypted copy of the symmetric key.
|
|
27
|
+
*/
|
|
28
|
+
encryptedKeys?: Map<string, Uint8Array>;
|
|
29
|
+
/** Initialization vector used for symmetric encryption (base64) */
|
|
30
|
+
iv?: Uint8Array;
|
|
31
|
+
/** Authentication tag from AES-GCM (base64) */
|
|
32
|
+
authTag?: Uint8Array;
|
|
33
|
+
/** Whether the email is signed */
|
|
34
|
+
isSigned: boolean;
|
|
35
|
+
/** Digital signature bytes (if signed) */
|
|
36
|
+
signature?: Uint8Array;
|
|
37
|
+
/** Public key of the signer (for verification) */
|
|
38
|
+
signerPublicKey?: Uint8Array;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Result of encrypting email content for a single recipient.
|
|
42
|
+
*/
|
|
43
|
+
export interface IEncryptedEmailContent {
|
|
44
|
+
/** The encrypted content bytes */
|
|
45
|
+
encryptedContent: Uint8Array;
|
|
46
|
+
/** Encryption metadata for this recipient */
|
|
47
|
+
encryptionMetadata: IEmailEncryptionMetadata;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Result of encrypting email content for multiple recipients.
|
|
51
|
+
*/
|
|
52
|
+
export interface IPerRecipientEncryptionResult {
|
|
53
|
+
/**
|
|
54
|
+
* The encrypted content (encrypted once with a symmetric key).
|
|
55
|
+
* All recipients share the same ciphertext; each gets the symmetric key
|
|
56
|
+
* encrypted with their own public key.
|
|
57
|
+
*/
|
|
58
|
+
encryptedContent: Uint8Array;
|
|
59
|
+
/** Encryption metadata including per-recipient encrypted keys */
|
|
60
|
+
encryptionMetadata: IEmailEncryptionMetadata;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Result of signing email content.
|
|
64
|
+
*/
|
|
65
|
+
export interface ISignatureResult {
|
|
66
|
+
/** The digital signature bytes */
|
|
67
|
+
signature: Uint8Array;
|
|
68
|
+
/** The public key of the signer */
|
|
69
|
+
signerPublicKey: Uint8Array;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Service for encrypting and decrypting email content.
|
|
73
|
+
*
|
|
74
|
+
* Encryption flow (ECIES / RECIPIENT_KEYS):
|
|
75
|
+
* 1. Generate a random AES-256-GCM symmetric key
|
|
76
|
+
* 2. Encrypt the email content with the symmetric key
|
|
77
|
+
* 3. Encrypt the symmetric key with each recipient's ECIES public key
|
|
78
|
+
* 4. Store the encrypted content + per-recipient encrypted keys
|
|
79
|
+
*
|
|
80
|
+
* Encryption flow (SYMMETRIC / SHARED_KEY):
|
|
81
|
+
* 1. Use the provided shared symmetric key directly
|
|
82
|
+
* 2. Encrypt the email content with AES-256-GCM
|
|
83
|
+
*
|
|
84
|
+
* @see Requirements 16.1, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8
|
|
85
|
+
*/
|
|
86
|
+
export declare class EmailEncryptionService {
|
|
87
|
+
/**
|
|
88
|
+
* Encrypts email content using ECIES for a single recipient.
|
|
89
|
+
*
|
|
90
|
+
* Generates a random AES-256-GCM key, encrypts the content, then
|
|
91
|
+
* encrypts the symmetric key with the recipient's ECIES public key.
|
|
92
|
+
*
|
|
93
|
+
* @param content - Plaintext email content
|
|
94
|
+
* @param recipientPublicKey - Recipient's ECIES public key
|
|
95
|
+
* @returns Encrypted content and encryption metadata
|
|
96
|
+
* @throws {EmailError} If encryption fails
|
|
97
|
+
*
|
|
98
|
+
* @see Requirement 16.1 - End-to-end encryption using ECIES
|
|
99
|
+
* @see Requirement 16.3 - Encrypt content blocks using recipient's public key
|
|
100
|
+
*/
|
|
101
|
+
encryptContent(content: Uint8Array, recipientPublicKey: Uint8Array): Promise<IEncryptedEmailContent>;
|
|
102
|
+
/**
|
|
103
|
+
* Encrypts email content using a shared symmetric key (AES-256-GCM).
|
|
104
|
+
*
|
|
105
|
+
* @param content - Plaintext email content
|
|
106
|
+
* @param sharedKey - 32-byte shared symmetric key
|
|
107
|
+
* @returns Encrypted content and encryption metadata
|
|
108
|
+
* @throws {EmailError} If encryption fails
|
|
109
|
+
*
|
|
110
|
+
* @see Requirement 16.1 - Support SYMMETRIC encryption scheme
|
|
111
|
+
*/
|
|
112
|
+
encryptContentSymmetric(content: Uint8Array, sharedKey: Uint8Array): IEncryptedEmailContent;
|
|
113
|
+
/**
|
|
114
|
+
* Decrypts email content encrypted with ECIES (RECIPIENT_KEYS scheme).
|
|
115
|
+
*
|
|
116
|
+
* 1. Decrypts the per-recipient symmetric key using the recipient's private key
|
|
117
|
+
* 2. Decrypts the content using the recovered symmetric key
|
|
118
|
+
*
|
|
119
|
+
* @param encryptedContent - The encrypted email content
|
|
120
|
+
* @param metadata - Encryption metadata containing the encrypted key, IV, and auth tag
|
|
121
|
+
* @param recipientAddress - The recipient's address (key in encryptedKeys map)
|
|
122
|
+
* @param recipientPrivateKey - The recipient's ECIES private key
|
|
123
|
+
* @returns Decrypted plaintext content
|
|
124
|
+
* @throws {EmailError} If decryption fails
|
|
125
|
+
*/
|
|
126
|
+
decryptContent(encryptedContent: Uint8Array, metadata: IEmailEncryptionMetadata, recipientAddress: string, recipientPrivateKey: Uint8Array): Promise<Uint8Array>;
|
|
127
|
+
/**
|
|
128
|
+
* Decrypts email content encrypted with a shared symmetric key.
|
|
129
|
+
*
|
|
130
|
+
* @param encryptedContent - The encrypted email content
|
|
131
|
+
* @param metadata - Encryption metadata containing IV and auth tag
|
|
132
|
+
* @param sharedKey - The 32-byte shared symmetric key
|
|
133
|
+
* @returns Decrypted plaintext content
|
|
134
|
+
* @throws {EmailError} If decryption fails
|
|
135
|
+
*/
|
|
136
|
+
decryptContentSymmetric(encryptedContent: Uint8Array, metadata: IEmailEncryptionMetadata, sharedKey: Uint8Array): Uint8Array;
|
|
137
|
+
/**
|
|
138
|
+
* Encrypts email content for multiple recipients.
|
|
139
|
+
*
|
|
140
|
+
* Generates a single symmetric key, encrypts the content once,
|
|
141
|
+
* then encrypts the symmetric key separately for each recipient
|
|
142
|
+
* using their ECIES public key.
|
|
143
|
+
*
|
|
144
|
+
* @param content - Plaintext email content
|
|
145
|
+
* @param recipientPublicKeys - Map of recipient address to their ECIES public key
|
|
146
|
+
* @returns Encrypted content and per-recipient encryption metadata
|
|
147
|
+
* @throws {EmailError} If encryption fails for any recipient
|
|
148
|
+
*
|
|
149
|
+
* @see Requirement 16.4 - Create separate encrypted copies for each recipient
|
|
150
|
+
* @see Requirement 16.7 - Store encryption metadata in Email_Metadata
|
|
151
|
+
*/
|
|
152
|
+
encryptForRecipients(content: Uint8Array, recipientPublicKeys: Map<string, Uint8Array>): Promise<IPerRecipientEncryptionResult>;
|
|
153
|
+
/**
|
|
154
|
+
* Signs email content with the sender's private key.
|
|
155
|
+
*
|
|
156
|
+
* Creates a SHA-256 hash of the content and encrypts it with the
|
|
157
|
+
* sender's private key using ECIES to produce a digital signature.
|
|
158
|
+
* The signature can be verified by anyone with the sender's public key.
|
|
159
|
+
*
|
|
160
|
+
* @param content - The email content to sign
|
|
161
|
+
* @param senderPrivateKey - The sender's ECIES private key
|
|
162
|
+
* @param senderPublicKey - The sender's ECIES public key (stored with signature)
|
|
163
|
+
* @returns The signature and signer's public key
|
|
164
|
+
* @throws {EmailError} If signing fails
|
|
165
|
+
*
|
|
166
|
+
* @see Requirement 16.5 - S/MIME signatures for sender authentication
|
|
167
|
+
*/
|
|
168
|
+
signContent(content: Uint8Array, senderPrivateKey: Uint8Array, senderPublicKey: Uint8Array): ISignatureResult;
|
|
169
|
+
/**
|
|
170
|
+
* Verifies a digital signature on email content.
|
|
171
|
+
*
|
|
172
|
+
* Recomputes the signature using the provided private key and compares
|
|
173
|
+
* it to the stored signature. In a production S/MIME implementation,
|
|
174
|
+
* this would use ECDSA verification with only the public key.
|
|
175
|
+
*
|
|
176
|
+
* @param content - The email content that was signed
|
|
177
|
+
* @param signature - The signature to verify
|
|
178
|
+
* @param signerPrivateKey - The signer's private key (needed for HMAC verification)
|
|
179
|
+
* @returns true if the signature is valid
|
|
180
|
+
*
|
|
181
|
+
* @see Requirement 16.8 - Verify sender's signature on decryption
|
|
182
|
+
*/
|
|
183
|
+
verifySignature(content: Uint8Array, signature: Uint8Array, signerPrivateKey: Uint8Array): boolean;
|
|
184
|
+
/**
|
|
185
|
+
* Encrypts and signs email content for multiple recipients.
|
|
186
|
+
*
|
|
187
|
+
* Combines per-recipient encryption with digital signing:
|
|
188
|
+
* 1. Signs the plaintext content with the sender's private key
|
|
189
|
+
* 2. Encrypts the content for all recipients
|
|
190
|
+
* 3. Returns encrypted content with signature metadata
|
|
191
|
+
*
|
|
192
|
+
* @param content - Plaintext email content
|
|
193
|
+
* @param recipientPublicKeys - Map of recipient address to ECIES public key
|
|
194
|
+
* @param senderPrivateKey - Sender's private key for signing
|
|
195
|
+
* @param senderPublicKey - Sender's public key (stored with signature)
|
|
196
|
+
* @returns Encrypted content with signature metadata
|
|
197
|
+
*
|
|
198
|
+
* @see Requirements 16.4, 16.5
|
|
199
|
+
*/
|
|
200
|
+
encryptAndSign(content: Uint8Array, recipientPublicKeys: Map<string, Uint8Array>, senderPrivateKey: Uint8Array, senderPublicKey: Uint8Array): Promise<IPerRecipientEncryptionResult>;
|
|
201
|
+
/**
|
|
202
|
+
* Decrypts email content and verifies the sender's signature.
|
|
203
|
+
*
|
|
204
|
+
* @param encryptedContent - The encrypted email content
|
|
205
|
+
* @param metadata - Encryption metadata with signature info
|
|
206
|
+
* @param recipientAddress - The recipient's address
|
|
207
|
+
* @param recipientPrivateKey - The recipient's private key for decryption
|
|
208
|
+
* @param signerPrivateKey - The signer's private key for HMAC verification
|
|
209
|
+
* @returns Decrypted content
|
|
210
|
+
* @throws {EmailError} If decryption or signature verification fails
|
|
211
|
+
*
|
|
212
|
+
* @see Requirement 16.8 - Verify sender's signature on decryption
|
|
213
|
+
*/
|
|
214
|
+
decryptAndVerify(encryptedContent: Uint8Array, metadata: IEmailEncryptionMetadata, recipientAddress: string, recipientPrivateKey: Uint8Array, signerPrivateKey: Uint8Array): Promise<Uint8Array>;
|
|
215
|
+
/**
|
|
216
|
+
* Encrypts email content using S/MIME-style encryption.
|
|
217
|
+
*
|
|
218
|
+
* S/MIME encryption combines signing and per-recipient encryption:
|
|
219
|
+
* 1. Signs the content with the sender's private key
|
|
220
|
+
* 2. Encrypts the signed content for each recipient using ECIES
|
|
221
|
+
*
|
|
222
|
+
* This is equivalent to `encryptAndSign` but explicitly sets the
|
|
223
|
+
* scheme to S_MIME for metadata tracking.
|
|
224
|
+
*
|
|
225
|
+
* @param content - Plaintext email content
|
|
226
|
+
* @param recipientPublicKeys - Map of recipient address to ECIES public key
|
|
227
|
+
* @param senderPrivateKey - Sender's private key for signing
|
|
228
|
+
* @param senderPublicKey - Sender's public key (stored with signature)
|
|
229
|
+
* @returns Encrypted content with S/MIME metadata
|
|
230
|
+
*
|
|
231
|
+
* @see Requirement 16.6 - S/MIME encryption as alternative method
|
|
232
|
+
*/
|
|
233
|
+
encryptSmime(content: Uint8Array, recipientPublicKeys: Map<string, Uint8Array>, senderPrivateKey: Uint8Array, senderPublicKey: Uint8Array): Promise<IPerRecipientEncryptionResult>;
|
|
234
|
+
/**
|
|
235
|
+
* Decrypts S/MIME encrypted email content and verifies the signature.
|
|
236
|
+
*
|
|
237
|
+
* @param encryptedContent - The encrypted email content
|
|
238
|
+
* @param metadata - Encryption metadata with S/MIME info
|
|
239
|
+
* @param recipientAddress - The recipient's address
|
|
240
|
+
* @param recipientPrivateKey - The recipient's private key for decryption
|
|
241
|
+
* @param signerPrivateKey - The signer's private key for HMAC verification
|
|
242
|
+
* @returns Decrypted content
|
|
243
|
+
* @throws {EmailError} If decryption or signature verification fails
|
|
244
|
+
*
|
|
245
|
+
* @see Requirement 16.6 - S/MIME encryption
|
|
246
|
+
* @see Requirement 16.8 - Verify sender's signature on decryption
|
|
247
|
+
*/
|
|
248
|
+
decryptSmime(encryptedContent: Uint8Array, metadata: IEmailEncryptionMetadata, recipientAddress: string, recipientPrivateKey: Uint8Array, signerPrivateKey: Uint8Array): Promise<Uint8Array>;
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=emailEncryptionService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emailEncryptionService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/emailEncryptionService.ts"],"names":[],"mappings":"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"}
|