@brightchain/brightchain-lib 0.8.0 → 0.9.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.
Files changed (345) hide show
  1. package/brightchain-lib/BLOCK_COVERAGE_AUDIT.md +169 -0
  2. package/package.json +2 -2
  3. package/src/browser.d.ts +1 -4
  4. package/src/browser.d.ts.map +1 -1
  5. package/src/browser.js +6 -9
  6. package/src/browser.js.map +1 -1
  7. package/src/lib/blockMetadata.d.ts +10 -9
  8. package/src/lib/blockMetadata.d.ts.map +1 -1
  9. package/src/lib/blockMetadata.js +20 -36
  10. package/src/lib/blockMetadata.js.map +1 -1
  11. package/src/lib/blocks/base.d.ts +23 -0
  12. package/src/lib/blocks/base.d.ts.map +1 -1
  13. package/src/lib/blocks/base.js +33 -15
  14. package/src/lib/blocks/base.js.map +1 -1
  15. package/src/lib/blocks/cbl.d.ts +34 -1
  16. package/src/lib/blocks/cbl.d.ts.map +1 -1
  17. package/src/lib/blocks/cbl.js +33 -0
  18. package/src/lib/blocks/cbl.js.map +1 -1
  19. package/src/lib/blocks/cblBase.d.ts +45 -1
  20. package/src/lib/blocks/cblBase.d.ts.map +1 -1
  21. package/src/lib/blocks/cblBase.js +89 -44
  22. package/src/lib/blocks/cblBase.js.map +1 -1
  23. package/src/lib/blocks/encrypted.d.ts.map +1 -1
  24. package/src/lib/blocks/encrypted.js +68 -21
  25. package/src/lib/blocks/encrypted.js.map +1 -1
  26. package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
  27. package/src/lib/blocks/encryptedBlockFactory.js +29 -16
  28. package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
  29. package/src/lib/blocks/ephemeral.d.ts.map +1 -1
  30. package/src/lib/blocks/ephemeral.js +17 -10
  31. package/src/lib/blocks/ephemeral.js.map +1 -1
  32. package/src/lib/blocks/rawData.d.ts.map +1 -1
  33. package/src/lib/blocks/rawData.js +5 -1
  34. package/src/lib/blocks/rawData.js.map +1 -1
  35. package/src/lib/constants.d.ts +37 -0
  36. package/src/lib/constants.d.ts.map +1 -1
  37. package/src/lib/constants.js +40 -1
  38. package/src/lib/constants.js.map +1 -1
  39. package/src/lib/documents/member/memberDocument.d.ts +4 -3
  40. package/src/lib/documents/member/memberDocument.d.ts.map +1 -1
  41. package/src/lib/documents/member/memberDocument.js +9 -8
  42. package/src/lib/documents/member/memberDocument.js.map +1 -1
  43. package/src/lib/documents/member/memberHydration.d.ts.map +1 -1
  44. package/src/lib/documents/member/memberHydration.js +11 -13
  45. package/src/lib/documents/member/memberHydration.js.map +1 -1
  46. package/src/lib/documents/member/memberOperational.d.ts.map +1 -1
  47. package/src/lib/documents/member/memberOperational.js +2 -2
  48. package/src/lib/documents/member/memberOperational.js.map +1 -1
  49. package/src/lib/documents/network/networkDocument.d.ts.map +1 -1
  50. package/src/lib/documents/network/networkDocument.js +4 -3
  51. package/src/lib/documents/network/networkDocument.js.map +1 -1
  52. package/src/lib/encryptedBlockMetadata.d.ts +11 -4
  53. package/src/lib/encryptedBlockMetadata.d.ts.map +1 -1
  54. package/src/lib/encryptedBlockMetadata.js +29 -22
  55. package/src/lib/encryptedBlockMetadata.js.map +1 -1
  56. package/src/lib/enumerations/blockSize.d.ts +2 -2
  57. package/src/lib/enumerations/blockSize.d.ts.map +1 -1
  58. package/src/lib/enumerations/blockSize.js +15 -15
  59. package/src/lib/enumerations/blockSize.js.map +1 -1
  60. package/src/lib/enumerations/{stringNames.d.ts → brightChainStrings.d.ts} +4 -3
  61. package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -0
  62. package/src/lib/enumerations/brightChainStrings.js +437 -0
  63. package/src/lib/enumerations/brightChainStrings.js.map +1 -0
  64. package/src/lib/enumerations/cblErrorType.d.ts +1 -0
  65. package/src/lib/enumerations/cblErrorType.d.ts.map +1 -1
  66. package/src/lib/enumerations/cblErrorType.js +1 -0
  67. package/src/lib/enumerations/cblErrorType.js.map +1 -1
  68. package/src/lib/enumerations/index.d.ts +1 -1
  69. package/src/lib/enumerations/index.d.ts.map +1 -1
  70. package/src/lib/enumerations/index.js +1 -1
  71. package/src/lib/enumerations/index.js.map +1 -1
  72. package/src/lib/enumerations/votingDerivationErrorType.d.ts +2 -2
  73. package/src/lib/enumerations/votingDerivationErrorType.d.ts.map +1 -1
  74. package/src/lib/enumerations/votingDerivationErrorType.js +11 -11
  75. package/src/lib/enumerations/votingDerivationErrorType.js.map +1 -1
  76. package/src/lib/ephemeralBlockMetadata.d.ts +10 -7
  77. package/src/lib/ephemeralBlockMetadata.d.ts.map +1 -1
  78. package/src/lib/ephemeralBlockMetadata.js +24 -17
  79. package/src/lib/ephemeralBlockMetadata.js.map +1 -1
  80. package/src/lib/errors/block/blockAccess.d.ts +2 -2
  81. package/src/lib/errors/block/blockAccess.d.ts.map +1 -1
  82. package/src/lib/errors/block/blockAccess.js +8 -8
  83. package/src/lib/errors/block/blockAccess.js.map +1 -1
  84. package/src/lib/errors/block/blockCapacity.d.ts +2 -2
  85. package/src/lib/errors/block/blockCapacity.d.ts.map +1 -1
  86. package/src/lib/errors/block/blockCapacity.js +8 -8
  87. package/src/lib/errors/block/blockCapacity.js.map +1 -1
  88. package/src/lib/errors/block/blockError.d.ts +2 -2
  89. package/src/lib/errors/block/blockError.d.ts.map +1 -1
  90. package/src/lib/errors/block/blockError.js +16 -16
  91. package/src/lib/errors/block/blockError.js.map +1 -1
  92. package/src/lib/errors/block/blockMetadata.d.ts +2 -2
  93. package/src/lib/errors/block/blockMetadata.d.ts.map +1 -1
  94. package/src/lib/errors/block/blockMetadata.js +8 -8
  95. package/src/lib/errors/block/blockMetadata.js.map +1 -1
  96. package/src/lib/errors/block/blockValidation.d.ts +2 -2
  97. package/src/lib/errors/block/blockValidation.d.ts.map +1 -1
  98. package/src/lib/errors/block/blockValidation.js +36 -36
  99. package/src/lib/errors/block/blockValidation.js.map +1 -1
  100. package/src/lib/errors/block/cannotDecrypt.js +2 -2
  101. package/src/lib/errors/block/cannotDecrypt.js.map +1 -1
  102. package/src/lib/errors/block/cannotEncrypt.js +2 -2
  103. package/src/lib/errors/block/cannotEncrypt.js.map +1 -1
  104. package/src/lib/errors/blockServiceError.d.ts +2 -2
  105. package/src/lib/errors/blockServiceError.d.ts.map +1 -1
  106. package/src/lib/errors/blockServiceError.js +15 -15
  107. package/src/lib/errors/blockServiceError.js.map +1 -1
  108. package/src/lib/errors/bufferError.js +2 -2
  109. package/src/lib/errors/bufferError.js.map +1 -1
  110. package/src/lib/errors/cblError.d.ts +2 -2
  111. package/src/lib/errors/cblError.d.ts.map +1 -1
  112. package/src/lib/errors/cblError.js +37 -36
  113. package/src/lib/errors/cblError.js.map +1 -1
  114. package/src/lib/errors/checksumMismatch.js +2 -2
  115. package/src/lib/errors/checksumMismatch.js.map +1 -1
  116. package/src/lib/errors/disposed.js +2 -2
  117. package/src/lib/errors/disposed.js.map +1 -1
  118. package/src/lib/errors/document.d.ts +2 -2
  119. package/src/lib/errors/document.d.ts.map +1 -1
  120. package/src/lib/errors/document.js +5 -5
  121. package/src/lib/errors/document.js.map +1 -1
  122. package/src/lib/errors/eciesError.d.ts +2 -2
  123. package/src/lib/errors/eciesError.d.ts.map +1 -1
  124. package/src/lib/errors/eciesError.js +20 -20
  125. package/src/lib/errors/eciesError.js.map +1 -1
  126. package/src/lib/errors/extendedCblError.d.ts +2 -2
  127. package/src/lib/errors/extendedCblError.d.ts.map +1 -1
  128. package/src/lib/errors/extendedCblError.js +25 -25
  129. package/src/lib/errors/extendedCblError.js.map +1 -1
  130. package/src/lib/errors/failedToHydrate.js +2 -2
  131. package/src/lib/errors/failedToHydrate.js.map +1 -1
  132. package/src/lib/errors/failedToSerialize.js +2 -2
  133. package/src/lib/errors/failedToSerialize.js.map +1 -1
  134. package/src/lib/errors/fecError.d.ts +2 -2
  135. package/src/lib/errors/fecError.d.ts.map +1 -1
  136. package/src/lib/errors/fecError.js +19 -19
  137. package/src/lib/errors/fecError.js.map +1 -1
  138. package/src/lib/errors/handleTupleError.d.ts +2 -2
  139. package/src/lib/errors/handleTupleError.d.ts.map +1 -1
  140. package/src/lib/errors/handleTupleError.js +5 -5
  141. package/src/lib/errors/handleTupleError.js.map +1 -1
  142. package/src/lib/errors/index.d.ts +0 -6
  143. package/src/lib/errors/index.d.ts.map +1 -1
  144. package/src/lib/errors/index.js +0 -9
  145. package/src/lib/errors/index.js.map +1 -1
  146. package/src/lib/errors/invalidBlockSize.js +2 -2
  147. package/src/lib/errors/invalidBlockSize.js.map +1 -1
  148. package/src/lib/errors/invalidBlockSizeLength.js +2 -2
  149. package/src/lib/errors/invalidBlockSizeLength.js.map +1 -1
  150. package/src/lib/errors/invalidCredentials.js +2 -2
  151. package/src/lib/errors/invalidCredentials.js.map +1 -1
  152. package/src/lib/errors/invalidIDFormat.js +2 -2
  153. package/src/lib/errors/invalidIDFormat.js.map +1 -1
  154. package/src/lib/errors/invalidSessionID.js +2 -2
  155. package/src/lib/errors/invalidSessionID.js.map +1 -1
  156. package/src/lib/errors/invalidTupleCount.js +2 -2
  157. package/src/lib/errors/invalidTupleCount.js.map +1 -1
  158. package/src/lib/errors/isolatedKeyError.d.ts +2 -2
  159. package/src/lib/errors/isolatedKeyError.d.ts.map +1 -1
  160. package/src/lib/errors/isolatedKeyError.js +7 -7
  161. package/src/lib/errors/isolatedKeyError.js.map +1 -1
  162. package/src/lib/errors/memberError.d.ts +2 -2
  163. package/src/lib/errors/memberError.d.ts.map +1 -1
  164. package/src/lib/errors/memberError.js +27 -27
  165. package/src/lib/errors/memberError.js.map +1 -1
  166. package/src/lib/errors/memoryTupleError.d.ts +2 -2
  167. package/src/lib/errors/memoryTupleError.d.ts.map +1 -1
  168. package/src/lib/errors/memoryTupleError.js +7 -7
  169. package/src/lib/errors/memoryTupleError.js.map +1 -1
  170. package/src/lib/errors/metadataMismatch.js +2 -2
  171. package/src/lib/errors/metadataMismatch.js.map +1 -1
  172. package/src/lib/errors/multiEncryptedError.d.ts +2 -2
  173. package/src/lib/errors/multiEncryptedError.d.ts.map +1 -1
  174. package/src/lib/errors/multiEncryptedError.js +11 -11
  175. package/src/lib/errors/multiEncryptedError.js.map +1 -1
  176. package/src/lib/errors/notImplemented.js +2 -2
  177. package/src/lib/errors/notImplemented.js.map +1 -1
  178. package/src/lib/errors/quorumError.d.ts +2 -2
  179. package/src/lib/errors/quorumError.d.ts.map +1 -1
  180. package/src/lib/errors/quorumError.js +8 -8
  181. package/src/lib/errors/quorumError.js.map +1 -1
  182. package/src/lib/errors/sealingError.d.ts +2 -2
  183. package/src/lib/errors/sealingError.d.ts.map +1 -1
  184. package/src/lib/errors/sealingError.js +9 -9
  185. package/src/lib/errors/sealingError.js.map +1 -1
  186. package/src/lib/errors/secureStorage.d.ts +2 -2
  187. package/src/lib/errors/secureStorage.d.ts.map +1 -1
  188. package/src/lib/errors/secureStorage.js +4 -4
  189. package/src/lib/errors/secureStorage.js.map +1 -1
  190. package/src/lib/errors/storeError.d.ts +2 -2
  191. package/src/lib/errors/storeError.d.ts.map +1 -1
  192. package/src/lib/errors/storeError.js +20 -20
  193. package/src/lib/errors/storeError.js.map +1 -1
  194. package/src/lib/errors/streamError.d.ts +2 -2
  195. package/src/lib/errors/streamError.d.ts.map +1 -1
  196. package/src/lib/errors/streamError.js +8 -8
  197. package/src/lib/errors/streamError.js.map +1 -1
  198. package/src/lib/errors/symmetricError.d.ts +2 -2
  199. package/src/lib/errors/symmetricError.d.ts.map +1 -1
  200. package/src/lib/errors/symmetricError.js +3 -3
  201. package/src/lib/errors/symmetricError.js.map +1 -1
  202. package/src/lib/errors/systemKeyringError.d.ts +2 -2
  203. package/src/lib/errors/systemKeyringError.d.ts.map +1 -1
  204. package/src/lib/errors/systemKeyringError.js +4 -4
  205. package/src/lib/errors/systemKeyringError.js.map +1 -1
  206. package/src/lib/errors/tupleError.d.ts +2 -2
  207. package/src/lib/errors/tupleError.d.ts.map +1 -1
  208. package/src/lib/errors/tupleError.js +13 -13
  209. package/src/lib/errors/tupleError.js.map +1 -1
  210. package/src/lib/errors/typedError.d.ts +2 -2
  211. package/src/lib/errors/typedError.d.ts.map +1 -1
  212. package/src/lib/errors/typedWithReasonError.d.ts +3 -3
  213. package/src/lib/errors/typedWithReasonError.d.ts.map +1 -1
  214. package/src/lib/errors/typedWithReasonError.js.map +1 -1
  215. package/src/lib/errors/userNotFound.js +2 -2
  216. package/src/lib/errors/userNotFound.js.map +1 -1
  217. package/src/lib/errors/whitenedError.d.ts +2 -2
  218. package/src/lib/errors/whitenedError.d.ts.map +1 -1
  219. package/src/lib/errors/whitenedError.js +5 -5
  220. package/src/lib/errors/whitenedError.js.map +1 -1
  221. package/src/lib/i18n/index.d.ts +2 -2
  222. package/src/lib/i18n/index.d.ts.map +1 -1
  223. package/src/lib/i18n/index.js +2 -2
  224. package/src/lib/i18n/index.js.map +1 -1
  225. package/src/lib/index.d.ts +4 -0
  226. package/src/lib/index.d.ts.map +1 -1
  227. package/src/lib/index.js +4 -0
  228. package/src/lib/index.js.map +1 -1
  229. package/src/lib/init.d.ts +10 -0
  230. package/src/lib/init.d.ts.map +1 -1
  231. package/src/lib/init.js +20 -0
  232. package/src/lib/init.js.map +1 -1
  233. package/src/lib/interfaces/blocks/headers/index.d.ts +1 -0
  234. package/src/lib/interfaces/blocks/headers/index.d.ts.map +1 -1
  235. package/src/lib/interfaces/blocks/headers/superCblHeader.d.ts +63 -0
  236. package/src/lib/interfaces/blocks/headers/superCblHeader.d.ts.map +1 -0
  237. package/src/lib/interfaces/{storage/superCbl.js → blocks/headers/superCblHeader.js} +1 -1
  238. package/src/lib/interfaces/blocks/headers/superCblHeader.js.map +1 -0
  239. package/src/lib/interfaces/constants.d.ts +29 -0
  240. package/src/lib/interfaces/constants.d.ts.map +1 -1
  241. package/src/lib/interfaces/serviceProvider.interface.d.ts +2 -1
  242. package/src/lib/interfaces/serviceProvider.interface.d.ts.map +1 -1
  243. package/src/lib/interfaces/services/cblServices.d.ts +148 -0
  244. package/src/lib/interfaces/services/cblServices.d.ts.map +1 -0
  245. package/src/lib/interfaces/services/cblServices.js +11 -0
  246. package/src/lib/interfaces/services/cblServices.js.map +1 -0
  247. package/src/lib/interfaces/services/index.d.ts +1 -0
  248. package/src/lib/interfaces/services/index.d.ts.map +1 -1
  249. package/src/lib/interfaces/storage/index.d.ts +0 -1
  250. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  251. package/src/lib/logging/blockLogger.d.ts +212 -0
  252. package/src/lib/logging/blockLogger.d.ts.map +1 -0
  253. package/src/lib/logging/blockLogger.js +327 -0
  254. package/src/lib/logging/blockLogger.js.map +1 -0
  255. package/src/lib/logging/index.d.ts +24 -0
  256. package/src/lib/logging/index.d.ts.map +1 -0
  257. package/src/lib/logging/index.js +27 -0
  258. package/src/lib/logging/index.js.map +1 -0
  259. package/src/lib/quorum.d.ts.map +1 -1
  260. package/src/lib/quorum.js +5 -4
  261. package/src/lib/quorum.js.map +1 -1
  262. package/src/lib/quorumDataRecord.d.ts.map +1 -1
  263. package/src/lib/quorumDataRecord.js +3 -2
  264. package/src/lib/quorumDataRecord.js.map +1 -1
  265. package/src/lib/schemas/network/networkDocumentSchema.d.ts.map +1 -1
  266. package/src/lib/schemas/network/networkDocumentSchema.js +9 -8
  267. package/src/lib/schemas/network/networkDocumentSchema.js.map +1 -1
  268. package/src/lib/schemas/quorumDocument.d.ts.map +1 -1
  269. package/src/lib/schemas/quorumDocument.js +6 -4
  270. package/src/lib/schemas/quorumDocument.js.map +1 -1
  271. package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
  272. package/src/lib/services/blockCapacity.service.js +14 -5
  273. package/src/lib/services/blockCapacity.service.js.map +1 -1
  274. package/src/lib/services/blockFormatService.d.ts +56 -0
  275. package/src/lib/services/blockFormatService.d.ts.map +1 -0
  276. package/src/lib/services/blockFormatService.js +282 -0
  277. package/src/lib/services/blockFormatService.js.map +1 -0
  278. package/src/lib/services/blockService.d.ts +6 -0
  279. package/src/lib/services/blockService.d.ts.map +1 -1
  280. package/src/lib/services/blockService.js +120 -18
  281. package/src/lib/services/blockService.js.map +1 -1
  282. package/src/lib/services/cblService.d.ts +159 -1
  283. package/src/lib/services/cblService.d.ts.map +1 -1
  284. package/src/lib/services/cblService.js +498 -17
  285. package/src/lib/services/cblService.js.map +1 -1
  286. package/src/lib/services/index.d.ts +0 -2
  287. package/src/lib/services/index.d.ts.map +1 -1
  288. package/src/lib/services/index.js +0 -2
  289. package/src/lib/services/index.js.map +1 -1
  290. package/src/lib/services/member/memberCblService.d.ts.map +1 -1
  291. package/src/lib/services/member/memberCblService.js +11 -8
  292. package/src/lib/services/member/memberCblService.js.map +1 -1
  293. package/src/lib/services/memberStore.d.ts.map +1 -1
  294. package/src/lib/services/memberStore.js +20 -28
  295. package/src/lib/services/memberStore.js.map +1 -1
  296. package/src/lib/services/sealing.service.d.ts.map +1 -1
  297. package/src/lib/services/sealing.service.js +2 -1
  298. package/src/lib/services/sealing.service.js.map +1 -1
  299. package/src/lib/services/service.provider.d.ts.map +1 -1
  300. package/src/lib/services/service.provider.js +3 -11
  301. package/src/lib/services/service.provider.js.map +1 -1
  302. package/src/lib/strings/englishUs.js +392 -392
  303. package/src/lib/strings/englishUs.js.map +1 -1
  304. package/src/lib/test/service.initializer.helper.d.ts +2 -1
  305. package/src/lib/test/service.initializer.helper.d.ts.map +1 -1
  306. package/src/lib/test/service.initializer.helper.js +11 -15
  307. package/src/lib/test/service.initializer.helper.js.map +1 -1
  308. package/src/lib/utils/constantTime.d.ts +112 -0
  309. package/src/lib/utils/constantTime.d.ts.map +1 -0
  310. package/src/lib/utils/constantTime.js +180 -0
  311. package/src/lib/utils/constantTime.js.map +1 -0
  312. package/src/lib/utils/constantTimeXor.d.ts +76 -0
  313. package/src/lib/utils/constantTimeXor.d.ts.map +1 -0
  314. package/src/lib/utils/constantTimeXor.js +122 -0
  315. package/src/lib/utils/constantTimeXor.js.map +1 -0
  316. package/src/lib/utils/dateUtils.d.ts +67 -0
  317. package/src/lib/utils/dateUtils.d.ts.map +1 -0
  318. package/src/lib/utils/dateUtils.js +136 -0
  319. package/src/lib/utils/dateUtils.js.map +1 -0
  320. package/src/lib/utils/index.d.ts +57 -0
  321. package/src/lib/utils/index.d.ts.map +1 -1
  322. package/src/lib/utils/index.js +69 -0
  323. package/src/lib/utils/index.js.map +1 -1
  324. package/src/lib/utils/typeGuards.d.ts +102 -0
  325. package/src/lib/utils/typeGuards.d.ts.map +1 -0
  326. package/src/lib/utils/typeGuards.js +244 -0
  327. package/src/lib/utils/typeGuards.js.map +1 -0
  328. package/src/lib/enumerations/stringNames.d.ts.map +0 -1
  329. package/src/lib/enumerations/stringNames.js +0 -436
  330. package/src/lib/enumerations/stringNames.js.map +0 -1
  331. package/src/lib/errors/superCbl.d.ts +0 -24
  332. package/src/lib/errors/superCbl.d.ts.map +0 -1
  333. package/src/lib/errors/superCbl.js +0 -43
  334. package/src/lib/errors/superCbl.js.map +0 -1
  335. package/src/lib/interfaces/storage/superCbl.d.ts +0 -102
  336. package/src/lib/interfaces/storage/superCbl.d.ts.map +0 -1
  337. package/src/lib/interfaces/storage/superCbl.js.map +0 -1
  338. package/src/lib/services/jsonCblCapacity.service.d.ts +0 -80
  339. package/src/lib/services/jsonCblCapacity.service.d.ts.map +0 -1
  340. package/src/lib/services/jsonCblCapacity.service.js +0 -147
  341. package/src/lib/services/jsonCblCapacity.service.js.map +0 -1
  342. package/src/lib/services/superCbl.service.d.ts +0 -68
  343. package/src/lib/services/superCbl.service.d.ts.map +0 -1
  344. package/src/lib/services/superCbl.service.js +0 -213
  345. package/src/lib/services/superCbl.service.js.map +0 -1
@@ -10,12 +10,18 @@ import { BlockSize } from '../enumerations/blockSize';
10
10
  import { BlockType } from '../enumerations/blockType';
11
11
  import { IEncryptedBlock } from '../interfaces/blocks/encrypted';
12
12
  import { IEphemeralBlock } from '../interfaces/blocks/ephemeral';
13
+ import { LogLevel } from '../logging/blockLogger';
13
14
  import { IUniversalBlockStore } from '../interfaces/storage/universalBlockStore';
14
15
  /**
15
16
  * Browser-compatible BlockService with core functionality
16
17
  */
17
18
  export declare class BlockService<TID extends PlatformID = Uint8Array> {
18
19
  private static blockStore;
20
+ /**
21
+ * Configure the block logger level.
22
+ * @param level - The minimum log level to emit
23
+ */
24
+ static setLogLevel(level: LogLevel): void;
19
25
  static initialize(blockStore: IUniversalBlockStore): void;
20
26
  /**
21
27
  * Determine the block type from the first byte of the block data
@@ -1 +1 @@
1
- {"version":3,"file":"blockService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/blockService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/blockService.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,6 @@ exports.BlockService = void 0;
5
5
  const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
6
6
  const cbl_1 = require("../blocks/cbl");
7
7
  const encrypted_1 = require("../blocks/encrypted");
8
- const encryptedBlockCreator_1 = require("../blocks/encryptedBlockCreator");
9
8
  const ephemeral_1 = require("../blocks/ephemeral");
10
9
  const extendedCbl_1 = require("../blocks/extendedCbl");
11
10
  const random_1 = require("../blocks/random");
@@ -21,6 +20,7 @@ const eciesErrorType_1 = require("../enumerations/eciesErrorType");
21
20
  const block_1 = require("../errors/block");
22
21
  const blockServiceError_1 = require("../errors/blockServiceError");
23
22
  const eciesError_1 = require("../errors/eciesError");
23
+ const blockLogger_1 = require("../logging/blockLogger");
24
24
  const serviceLocator_1 = require("../services/serviceLocator");
25
25
  const validator_1 = require("../utils/validator");
26
26
  const xor_1 = require("./xor");
@@ -28,6 +28,13 @@ const xor_1 = require("./xor");
28
28
  * Browser-compatible BlockService with core functionality
29
29
  */
30
30
  class BlockService {
31
+ /**
32
+ * Configure the block logger level.
33
+ * @param level - The minimum log level to emit
34
+ */
35
+ static setLogLevel(level) {
36
+ blockLogger_1.blockLogger.setLevel(level);
37
+ }
31
38
  static initialize(blockStore) {
32
39
  BlockService.blockStore = blockStore;
33
40
  }
@@ -128,19 +135,52 @@ class BlockService {
128
135
  else if (!block.creator) {
129
136
  throw new block_1.BlockError(blockErrorType_1.BlockErrorType.CreatorRequired);
130
137
  }
138
+ // Log encryption start (never log sensitive data like keys or plaintext)
139
+ blockLogger_1.blockLogger.debug('encrypt', {
140
+ blockType: blockType_1.BlockType[newBlockType],
141
+ blockSize: block.blockSize,
142
+ recipientCount: 1,
143
+ });
131
144
  try {
132
- const encryptedArray = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.encrypt(ecies_lib_1.EciesEncryptionTypeEnum.WithLength, (recipient ?? block.creator), block.data);
145
+ const recipientMember = recipient ?? block.creator;
146
+ const recipientPublicKey = recipientMember?.publicKey;
147
+ if (!recipientPublicKey || !recipientMember) {
148
+ throw new block_1.BlockError(blockErrorType_1.BlockErrorType.RecipientKeyRequired);
149
+ }
150
+ // Only encrypt the actual data, not the padding
151
+ // This aligns with canEncrypt() which checks lengthBeforeEncryption + overhead <= capacity
152
+ const dataToEncrypt = block.data.subarray(0, block.lengthBeforeEncryption);
153
+ const encryptedArray = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.encrypt(ecies_lib_1.EciesEncryptionTypeEnum.WithLength, recipientPublicKey, dataToEncrypt);
154
+ // Get the recipient ID bytes for the header
155
+ const idProvider = serviceLocator_1.ServiceLocator.getServiceProvider().idProvider;
156
+ const recipientIdBytes = recipientMember.idBytes;
133
157
  // Create padded buffer filled with random data
134
158
  const finalBuffer = this.generateRandomData(block.blockSize);
135
159
  // Write the block type to the first byte
136
160
  finalBuffer[0] = blockEncryptionType_1.BlockEncryptionType.SingleRecipient;
137
- // Copy ECIES data after the block type byte
138
- finalBuffer.set(encryptedArray, ecies_lib_1.ECIES.ENCRYPTION_TYPE_SIZE);
161
+ // Write the recipient ID after the encryption type byte
162
+ finalBuffer.set(recipientIdBytes, ecies_lib_1.ECIES.ENCRYPTION_TYPE_SIZE);
163
+ // Copy ECIES data after the recipient ID
164
+ const eciesDataOffset = ecies_lib_1.ECIES.ENCRYPTION_TYPE_SIZE + idProvider.byteLength;
165
+ finalBuffer.set(encryptedArray, eciesDataOffset);
139
166
  const checksum = serviceLocator_1.ServiceLocator.getServiceProvider().checksumService.calculateChecksum(finalBuffer);
140
- const result = await encryptedBlockCreator_1.EncryptedBlockCreator.create(newBlockType, blockDataType_1.BlockDataType.EncryptedData, block.blockSize, finalBuffer, checksum, recipient ?? block.creator, block.dateCreated, block.data.length);
167
+ const result = await encrypted_1.EncryptedBlock.from(newBlockType, blockDataType_1.BlockDataType.EncryptedData, block.blockSize, finalBuffer, checksum, recipientMember, block.dateCreated, block.lengthBeforeEncryption);
168
+ // Log encryption success
169
+ blockLogger_1.blockLogger.info('encrypt', {
170
+ blockId: checksum.toHex(),
171
+ blockType: blockType_1.BlockType[newBlockType],
172
+ recipientCount: 1,
173
+ success: true,
174
+ });
141
175
  return result;
142
176
  }
143
177
  catch (error) {
178
+ // Log encryption failure (never log sensitive data)
179
+ blockLogger_1.blockLogger.error('encrypt', error instanceof Error ? error : new Error(String(error)), {
180
+ blockType: blockType_1.BlockType[newBlockType],
181
+ recipientCount: 1,
182
+ success: false,
183
+ });
144
184
  // Wrap ECIES errors with context
145
185
  if (error instanceof eciesError_1.EciesError) {
146
186
  throw error;
@@ -173,13 +213,31 @@ class BlockService {
173
213
  if (!creator.privateKey) {
174
214
  throw new block_1.BlockError(blockErrorType_1.BlockErrorType.CreatorPrivateKeyRequired);
175
215
  }
216
+ // Log decryption start (never log sensitive data like keys or plaintext)
217
+ blockLogger_1.blockLogger.debug('decrypt', {
218
+ blockId: block.idChecksum.toHex(),
219
+ blockType: blockType_1.BlockType[block.blockType],
220
+ blockSize: block.blockSize,
221
+ });
176
222
  try {
177
223
  const decryptedArray = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.decryptWithLengthAndHeader(creator.privateKey.idUint8Array, block.layerPayload);
178
224
  const checksum = serviceLocator_1.ServiceLocator.getServiceProvider().checksumService.calculateChecksum(decryptedArray);
179
- const result = await encryptedBlockCreator_1.EncryptedBlockCreator.create(newBlockType, blockDataType_1.BlockDataType.EphemeralStructuredData, block.blockSize, decryptedArray, checksum, creator, block.dateCreated, block.layerPayloadSize);
225
+ const result = await ephemeral_1.EphemeralBlock.from(newBlockType, blockDataType_1.BlockDataType.EphemeralStructuredData, block.blockSize, decryptedArray, checksum, creator, block.dateCreated, block.layerPayloadSize);
226
+ // Log decryption success
227
+ blockLogger_1.blockLogger.info('decrypt', {
228
+ blockId: block.idChecksum.toHex(),
229
+ blockType: blockType_1.BlockType[block.blockType],
230
+ success: true,
231
+ });
180
232
  return result;
181
233
  }
182
234
  catch (error) {
235
+ // Log decryption failure (never log sensitive data)
236
+ blockLogger_1.blockLogger.error('decrypt', error instanceof Error ? error : new Error(String(error)), {
237
+ blockId: block.idChecksum.toHex(),
238
+ blockType: blockType_1.BlockType[block.blockType],
239
+ success: false,
240
+ });
183
241
  // Wrap ECIES errors with context
184
242
  if (error instanceof eciesError_1.EciesError) {
185
243
  throw error;
@@ -200,17 +258,41 @@ class BlockService {
200
258
  if (!recipient.privateKey) {
201
259
  throw new eciesError_1.EciesError(eciesErrorType_1.EciesErrorType.PrivateKeyNotLoaded);
202
260
  }
203
- const multiEncryptionHeader = serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.parseMultiEncryptedHeader(block.data);
204
- // Encrypted message overhead is IV + AuthTag
205
- const encryptedMessageOverhead = ecies_lib_1.ECIES.IV_SIZE + ecies_lib_1.ECIES.AUTH_TAG_SIZE;
206
- const decryptedData = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.decryptMultipleECIEForRecipient({
207
- ...multiEncryptionHeader,
208
- encryptedMessage: block.data.subarray(multiEncryptionHeader.headerSize, multiEncryptionHeader.headerSize +
209
- multiEncryptionHeader.dataLength +
210
- encryptedMessageOverhead),
211
- }, recipient);
212
- const checksum = serviceLocator_1.ServiceLocator.getServiceProvider().checksumService.calculateChecksum(decryptedData);
213
- return ephemeral_1.EphemeralBlock.from(blockType_1.BlockType.EphemeralOwnedDataBlock, blockDataType_1.BlockDataType.EphemeralStructuredData, block.blockSize, decryptedData, checksum, recipient, block.dateCreated, multiEncryptionHeader.dataLength);
261
+ // Log multi-decryption start (never log sensitive data like keys or plaintext)
262
+ blockLogger_1.blockLogger.debug('decryptMultiple', {
263
+ blockId: block.idChecksum.toHex(),
264
+ blockType: blockType_1.BlockType[block.blockType],
265
+ blockSize: block.blockSize,
266
+ });
267
+ try {
268
+ const multiEncryptionHeader = serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.parseMultiEncryptedHeader(block.data);
269
+ // Encrypted message overhead is IV + AuthTag
270
+ const encryptedMessageOverhead = ecies_lib_1.ECIES.IV_SIZE + ecies_lib_1.ECIES.AUTH_TAG_SIZE;
271
+ const decryptedData = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.decryptMultipleECIEForRecipient({
272
+ ...multiEncryptionHeader,
273
+ encryptedMessage: block.data.subarray(multiEncryptionHeader.headerSize, multiEncryptionHeader.headerSize +
274
+ multiEncryptionHeader.dataLength +
275
+ encryptedMessageOverhead),
276
+ }, recipient);
277
+ const checksum = serviceLocator_1.ServiceLocator.getServiceProvider().checksumService.calculateChecksum(decryptedData);
278
+ const result = await ephemeral_1.EphemeralBlock.from(blockType_1.BlockType.EphemeralOwnedDataBlock, blockDataType_1.BlockDataType.EphemeralStructuredData, block.blockSize, decryptedData, checksum, recipient, block.dateCreated, multiEncryptionHeader.dataLength);
279
+ // Log multi-decryption success
280
+ blockLogger_1.blockLogger.info('decryptMultiple', {
281
+ blockId: block.idChecksum.toHex(),
282
+ blockType: blockType_1.BlockType[block.blockType],
283
+ success: true,
284
+ });
285
+ return result;
286
+ }
287
+ catch (error) {
288
+ // Log multi-decryption failure (never log sensitive data)
289
+ blockLogger_1.blockLogger.error('decryptMultiple', error instanceof Error ? error : new Error(String(error)), {
290
+ blockId: block.idChecksum.toHex(),
291
+ blockType: blockType_1.BlockType[block.blockType],
292
+ success: false,
293
+ });
294
+ throw error;
295
+ }
214
296
  }
215
297
  /**
216
298
  * Encrypt a block for multiple recipients using ECIES
@@ -239,6 +321,12 @@ class BlockService {
239
321
  else if (!block.creator) {
240
322
  throw new block_1.BlockError(blockErrorType_1.BlockErrorType.CreatorRequired);
241
323
  }
324
+ // Log multi-encryption start (never log sensitive data like keys or plaintext)
325
+ blockLogger_1.blockLogger.debug('encryptMultiple', {
326
+ blockType: blockType_1.BlockType[newBlockType],
327
+ blockSize: block.blockSize,
328
+ recipientCount: recipients.length,
329
+ });
242
330
  try {
243
331
  const encryptedMessageDetails = await serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.encryptMultiple(recipients, block.data);
244
332
  const header = serviceLocator_1.ServiceLocator.getServiceProvider().eciesService.buildECIESMultipleRecipientHeader(encryptedMessageDetails);
@@ -252,9 +340,23 @@ class BlockService {
252
340
  ...padding,
253
341
  ]);
254
342
  const checksum = serviceLocator_1.ServiceLocator.getServiceProvider().checksumService.calculateChecksum(data);
255
- return Promise.resolve(await encrypted_1.EncryptedBlock.from(newBlockType, blockDataType_1.BlockDataType.EncryptedData, block.blockSize, data, checksum, block.creator, block.dateCreated, block.lengthBeforeEncryption, true, false));
343
+ const result = await encrypted_1.EncryptedBlock.from(newBlockType, blockDataType_1.BlockDataType.EncryptedData, block.blockSize, data, checksum, block.creator, block.dateCreated, block.lengthBeforeEncryption, true, false);
344
+ // Log multi-encryption success
345
+ blockLogger_1.blockLogger.info('encryptMultiple', {
346
+ blockId: checksum.toHex(),
347
+ blockType: blockType_1.BlockType[newBlockType],
348
+ recipientCount: recipients.length,
349
+ success: true,
350
+ });
351
+ return Promise.resolve(result);
256
352
  }
257
353
  catch (error) {
354
+ // Log multi-encryption failure (never log sensitive data)
355
+ blockLogger_1.blockLogger.error('encryptMultiple', error instanceof Error ? error : new Error(String(error)), {
356
+ blockType: blockType_1.BlockType[newBlockType],
357
+ recipientCount: recipients.length,
358
+ success: false,
359
+ });
258
360
  // Wrap ECIES errors with context
259
361
  if (error instanceof eciesError_1.EciesError) {
260
362
  throw error;
@@ -1 +1 @@
1
- {"version":3,"file":"blockService.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/blockService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockService.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/blockService.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { MessagePriority } from '../enumerations/messaging/messagePriority';
6
6
  import { IConstituentBlockListBlockHeader } from '../interfaces/blocks/headers/cblHeader';
7
7
  import { IExtendedConstituentBlockListBlockHeader } from '../interfaces/blocks/headers/ecblHeader';
8
8
  import { IMessageConstituentBlockListBlockHeader } from '../interfaces/blocks/headers/messageCblHeader';
9
+ import { ISuperConstituentBlockListBlockHeader } from '../interfaces/blocks/headers/superCblHeader';
9
10
  import { Checksum } from '../types/checksum';
10
11
  import { ChecksumService } from './checksum.service';
11
12
  /**
@@ -35,6 +36,10 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
35
36
  constructor(checksumService: ChecksumService, eciesService: ECIESService<TID>, enhancedProvider?: TypedIdProviderWrapper<TID>);
36
37
  /** Create safe buffers for common operations */
37
38
  private createArrays;
39
+ /**
40
+ * Length of the structured block header prefix (magic, type, version, CRC8)
41
+ */
42
+ static readonly StructuredPrefixSize: number;
38
43
  /**
39
44
  * Length of the creator field in the header (dynamic based on provider)
40
45
  */
@@ -73,6 +78,10 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
73
78
  * @deprecated Use instance method creatorLength instead for dynamic provider support
74
79
  */
75
80
  static readonly CreatorIdLength: number;
81
+ /**
82
+ * Offset of the creator ID field in the header (after structured prefix)
83
+ */
84
+ get creatorIdOffset(): number;
76
85
  /**
77
86
  * Offset of the date field in the header (instance method for dynamic provider support)
78
87
  */
@@ -162,10 +171,65 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
162
171
  * Length of the mime type length field in the header
163
172
  */
164
173
  static readonly MimeTypeLengthSize: number;
174
+ /**
175
+ * Length of the sub-CBL count field in SuperCBL header
176
+ */
177
+ static readonly SuperCblSubCblCountSize: number;
178
+ /**
179
+ * Length of the total block count field in SuperCBL header
180
+ */
181
+ static readonly SuperCblTotalBlockCountSize: number;
182
+ /**
183
+ * Length of the depth field in SuperCBL header
184
+ */
185
+ static readonly SuperCblDepthSize: number;
186
+ /**
187
+ * Offset of the sub-CBL count field in SuperCBL header (after date)
188
+ */
189
+ get superCblSubCblCountOffset(): number;
190
+ /**
191
+ * Offset of the total block count field in SuperCBL header
192
+ */
193
+ get superCblTotalBlockCountOffset(): number;
194
+ /**
195
+ * Offset of the depth field in SuperCBL header
196
+ */
197
+ get superCblDepthOffset(): number;
198
+ /**
199
+ * Offset of the original data length field in SuperCBL header
200
+ */
201
+ get superCblOriginalDataLengthOffset(): number;
202
+ /**
203
+ * Offset of the original checksum field in SuperCBL header
204
+ */
205
+ get superCblOriginalChecksumOffset(): number;
206
+ /**
207
+ * Offset of the creator signature field in SuperCBL header
208
+ */
209
+ get superCblCreatorSignatureOffset(): number;
210
+ /**
211
+ * Length of the SuperCBL header (without address data)
212
+ */
213
+ get superCblHeaderSize(): number;
214
+ /**
215
+ * Get SuperCBL header offsets
216
+ */
217
+ get superCblHeaderOffsets(): {
218
+ StructuredPrefix: number;
219
+ CreatorId: number;
220
+ DateCreated: number;
221
+ SubCblCount: number;
222
+ TotalBlockCount: number;
223
+ Depth: number;
224
+ OriginalDataLength: number;
225
+ OriginalDataChecksum: number;
226
+ CreatorSignature: number;
227
+ };
165
228
  /**
166
229
  * Instance offsets for dynamic provider support
167
230
  */
168
231
  get headerOffsets(): {
232
+ StructuredPrefix: number;
169
233
  CreatorId: number;
170
234
  DateCreated: number;
171
235
  CblAddressCount: number;
@@ -181,6 +245,7 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
181
245
  * @deprecated Use instance method headerOffsets instead
182
246
  */
183
247
  static get HeaderOffsets(): {
248
+ StructuredPrefix: number;
184
249
  CreatorId: number;
185
250
  DateCreated: number;
186
251
  CblAddressCount: number;
@@ -334,7 +399,7 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
334
399
  * @throws {EnhancedValidationError} If block size or encryption type is invalid
335
400
  * @throws {CblError} If CBL-specific validation fails
336
401
  *
337
- * @see Requirements 5.1, 5.2, 5.3, 12.1, 12.2, 12.7
402
+ * @see Requirements 5.1, 5.2, 5.3, 12.1, 12.2, 12.7, 9.1, 9.2, 9.4, 9.5, 10.1, 10.2, 12.4
338
403
  */
339
404
  makeCblHeader(creator: Member<TID>, dateCreated: Date, cblAddressCount: number, fileDataLength: number, addressList: Uint8Array, blockSize: BlockSize, encryptionType: BlockEncryptionType, extendedCBL?: {
340
405
  fileName: string;
@@ -376,5 +441,98 @@ export declare class CBLService<TID extends PlatformID = Uint8Array> {
376
441
  fileName: string;
377
442
  mimeType: string;
378
443
  }): number;
444
+ /**
445
+ * Check if the data is a SuperCBL
446
+ * @param data The data to check
447
+ * @returns True if the data is a SuperCBL, false otherwise
448
+ */
449
+ isSuperCbl(data: Uint8Array): boolean;
450
+ /**
451
+ * Get the sub-CBL count from a SuperCBL header
452
+ * @param header The SuperCBL header data
453
+ * @returns The number of sub-CBL references
454
+ */
455
+ getSuperCblSubCblCount(header: Uint8Array): number;
456
+ /**
457
+ * Get the total block count from a SuperCBL header
458
+ * @param header The SuperCBL header data
459
+ * @returns The total number of blocks across all sub-CBLs
460
+ */
461
+ getSuperCblTotalBlockCount(header: Uint8Array): number;
462
+ /**
463
+ * Get the depth from a SuperCBL header
464
+ * @param header The SuperCBL header data
465
+ * @returns The hierarchy depth
466
+ */
467
+ getSuperCblDepth(header: Uint8Array): number;
468
+ /**
469
+ * Get the original data length from a SuperCBL header
470
+ * @param header The SuperCBL header data
471
+ * @returns The original file size
472
+ */
473
+ getSuperCblOriginalDataLength(header: Uint8Array): number;
474
+ /**
475
+ * Get the original data checksum from a SuperCBL header
476
+ * @param header The SuperCBL header data
477
+ * @returns The SHA3-512 checksum of the original data
478
+ */
479
+ getSuperCblOriginalDataChecksum(header: Uint8Array): Checksum;
480
+ /**
481
+ * Get the creator signature from a SuperCBL header
482
+ * @param header The SuperCBL header data
483
+ * @returns The ECDSA signature
484
+ */
485
+ getSuperCblSignature(header: Uint8Array): SignatureUint8Array;
486
+ /**
487
+ * Get the sub-CBL checksums from a SuperCBL
488
+ * @param data The SuperCBL data (header + address data)
489
+ * @returns Array of sub-CBL checksums
490
+ */
491
+ getSuperCblSubCblChecksums(data: Uint8Array): Checksum[];
492
+ /**
493
+ * Create a SuperCBL header.
494
+ *
495
+ * @param creator - The member creating the SuperCBL
496
+ * @param dateCreated - The creation date
497
+ * @param subCblCount - Number of sub-CBL references
498
+ * @param totalBlockCount - Total blocks across all sub-CBLs
499
+ * @param depth - Hierarchy depth
500
+ * @param originalDataLength - Original file size
501
+ * @param originalDataChecksum - SHA3-512 checksum of original data
502
+ * @param subCblChecksums - Array of sub-CBL checksums
503
+ * @param blockSize - The block size
504
+ * @returns Object containing headerData and signature
505
+ * @throws {CblError} If validation fails
506
+ *
507
+ * @see Requirements 11.1, 11.2, 11.3, 11.4, 11.5
508
+ */
509
+ makeSuperCblHeader(creator: Member<TID>, dateCreated: Date, subCblCount: number, totalBlockCount: number, depth: number, originalDataLength: number, originalDataChecksum: Checksum, subCblChecksums: Checksum[], blockSize: BlockSize): {
510
+ headerData: Uint8Array;
511
+ signature: SignatureUint8Array;
512
+ };
513
+ /**
514
+ * Validate the signature of a SuperCBL.
515
+ *
516
+ * @param data - The SuperCBL data (header + address data)
517
+ * @param creator - The creator of the SuperCBL
518
+ * @param blockSize - The block size (optional, defaults to calculated from data length)
519
+ * @returns True if the signature is valid, false otherwise
520
+ * @throws {CblError} If the data is encrypted or not a SuperCBL
521
+ *
522
+ * @see Requirements 11.4, 11.6
523
+ */
524
+ validateSuperCblSignature(data: Uint8Array, creator: Member<TID>, blockSize?: BlockSize): boolean;
525
+ /**
526
+ * Parse a SuperCBL header from data.
527
+ *
528
+ * @param data - The SuperCBL data (header + address data)
529
+ * @param creatorForValidation - Optional creator to validate signature against
530
+ * @param blockSize - Optional block size for signature validation (required if validating signature)
531
+ * @returns The parsed SuperCBL header
532
+ * @throws {CblError} If the data is encrypted, not a SuperCBL, or validation fails
533
+ *
534
+ * @see Requirements 11.1, 11.2
535
+ */
536
+ parseSuperCblHeader(data: Uint8Array, creatorForValidation?: Member<TID>, blockSize?: BlockSize): ISuperConstituentBlockListBlockHeader<TID>;
379
537
  }
380
538
  //# sourceMappingURL=cblService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cblService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/cblService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cblService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/cblService.ts"],"names":[],"mappings":"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"}