xypriss 1.0.1 → 1.1.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 (570) hide show
  1. package/README.md +187 -84
  2. package/dist/cjs/ServerFactory.js +1 -1
  3. package/dist/cjs/cache/SecureCacheAdapter.js +2 -2
  4. package/dist/cjs/cluster/cluster-manager.js +1 -1
  5. package/dist/cjs/cluster/index.js +30 -30
  6. package/dist/cjs/cluster/modules/AutoScaler.js +2 -2
  7. package/dist/cjs/cluster/modules/ClusterPersistenceManager.js +3 -3
  8. package/dist/cjs/cluster/modules/HealthMonitor.js +2 -2
  9. package/dist/cjs/cluster/modules/IPCManager.js +2 -2
  10. package/dist/cjs/cluster/modules/MetricsCollector.js +1 -1
  11. package/dist/cjs/cluster/modules/WorkerManager.js +2 -2
  12. package/dist/cjs/encryption/EncryptionService.js +12 -12
  13. package/dist/cjs/encryption/EncryptionService.js.map +1 -1
  14. package/dist/cjs/index.js +1 -1
  15. package/dist/cjs/middleware/safe-json-middleware.js +1 -1
  16. package/dist/cjs/mods/security/src/algorithms/hash-algorithms.js +727 -0
  17. package/dist/cjs/mods/security/src/algorithms/hash-algorithms.js.map +1 -0
  18. package/dist/cjs/mods/security/src/algorithms/registry.js +83 -0
  19. package/dist/cjs/mods/security/src/algorithms/registry.js.map +1 -0
  20. package/dist/cjs/mods/security/src/components/attestation.js +1065 -0
  21. package/dist/cjs/mods/security/src/components/attestation.js.map +1 -0
  22. package/dist/cjs/mods/security/src/components/cache/FastLRU.js +323 -0
  23. package/dist/cjs/mods/security/src/components/cache/FastLRU.js.map +1 -0
  24. package/dist/cjs/mods/security/src/components/cache/UFSIMC.js +1131 -0
  25. package/dist/cjs/mods/security/src/components/cache/UFSIMC.js.map +1 -0
  26. package/dist/cjs/mods/security/src/components/cache/cacheSys.js +624 -0
  27. package/dist/cjs/mods/security/src/components/cache/cacheSys.js.map +1 -0
  28. package/dist/cjs/mods/security/src/components/cache/cacheSys.utils.js +136 -0
  29. package/dist/cjs/mods/security/src/components/cache/cacheSys.utils.js.map +1 -0
  30. package/dist/cjs/mods/security/src/components/cache/config/cache.config.js +39 -0
  31. package/dist/cjs/mods/security/src/components/cache/config/cache.config.js.map +1 -0
  32. package/dist/cjs/mods/security/src/components/cache/index.js +459 -0
  33. package/dist/cjs/mods/security/src/components/cache/index.js.map +1 -0
  34. package/dist/cjs/mods/security/src/components/cache/useCache.js +243 -0
  35. package/dist/cjs/mods/security/src/components/cache/useCache.js.map +1 -0
  36. package/dist/cjs/mods/security/src/components/canary-tokens.js +351 -0
  37. package/dist/cjs/mods/security/src/components/canary-tokens.js.map +1 -0
  38. package/dist/cjs/mods/security/src/components/entropy-augmentation.js +478 -0
  39. package/dist/cjs/mods/security/src/components/entropy-augmentation.js.map +1 -0
  40. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-allocator.js +338 -0
  41. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
  42. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-cache.js +536 -0
  43. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
  44. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-engine.js +631 -0
  45. package/dist/cjs/mods/security/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
  46. package/dist/cjs/mods/security/src/components/fortified-function/const/exec.const.js +18 -0
  47. package/dist/cjs/mods/security/src/components/fortified-function/const/exec.const.js.map +1 -0
  48. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-config.js +356 -0
  49. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-config.js.map +1 -0
  50. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-function-core.js +520 -0
  51. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
  52. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-logger.js +246 -0
  53. package/dist/cjs/mods/security/src/components/fortified-function/core/fortified-logger.js.map +1 -0
  54. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/api-manager.js +189 -0
  55. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
  56. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/cache-manager.js +107 -0
  57. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
  58. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-context.js +105 -0
  59. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
  60. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-engine.js +127 -0
  61. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
  62. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-router.js +93 -0
  63. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
  64. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/memory-manager.js +147 -0
  65. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
  66. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/security-manager.js +102 -0
  67. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
  68. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/stats-manager.js +159 -0
  69. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
  70. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/timing-manager.js +125 -0
  71. package/dist/cjs/mods/security/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
  72. package/dist/cjs/mods/security/src/components/fortified-function/engines/analytics-engine.js +370 -0
  73. package/dist/cjs/mods/security/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
  74. package/dist/cjs/mods/security/src/components/fortified-function/engines/execution-engine.js +402 -0
  75. package/dist/cjs/mods/security/src/components/fortified-function/engines/execution-engine.js.map +1 -0
  76. package/dist/cjs/mods/security/src/components/fortified-function/index.js +172 -0
  77. package/dist/cjs/mods/security/src/components/fortified-function/index.js.map +1 -0
  78. package/dist/cjs/mods/security/src/components/fortified-function/performance/performance-monitor.js +240 -0
  79. package/dist/cjs/mods/security/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
  80. package/dist/cjs/mods/security/src/components/fortified-function/performance/performance-timer.js +188 -0
  81. package/dist/cjs/mods/security/src/components/fortified-function/performance/performance-timer.js.map +1 -0
  82. package/dist/cjs/mods/security/src/components/fortified-function/security/security-handler.js +253 -0
  83. package/dist/cjs/mods/security/src/components/fortified-function/security/security-handler.js.map +1 -0
  84. package/dist/cjs/mods/security/src/components/fortified-function/serializer/safe-serializer.js +350 -0
  85. package/dist/cjs/mods/security/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
  86. package/dist/cjs/mods/security/src/components/fortified-function/smart-cache.js +693 -0
  87. package/dist/cjs/mods/security/src/components/fortified-function/smart-cache.js.map +1 -0
  88. package/dist/cjs/mods/security/src/components/fortified-function/types/types.js +16 -0
  89. package/dist/cjs/mods/security/src/components/fortified-function/types/types.js.map +1 -0
  90. package/dist/cjs/mods/security/src/components/fortified-function/utils/utils.js +68 -0
  91. package/dist/cjs/mods/security/src/components/fortified-function/utils/utils.js.map +1 -0
  92. package/dist/cjs/mods/security/src/components/memory-hard.js +922 -0
  93. package/dist/cjs/mods/security/src/components/memory-hard.js.map +1 -0
  94. package/dist/cjs/mods/security/src/components/post-quantum.js +323 -0
  95. package/dist/cjs/mods/security/src/components/post-quantum.js.map +1 -0
  96. package/dist/cjs/mods/security/src/components/runtime-verification.js +645 -0
  97. package/dist/cjs/mods/security/src/components/runtime-verification.js.map +1 -0
  98. package/dist/cjs/mods/security/src/components/secure-array/core/secure-array-core.js +1572 -0
  99. package/dist/cjs/mods/security/src/components/secure-array/core/secure-array-core.js.map +1 -0
  100. package/dist/cjs/mods/security/src/components/secure-array/crypto/ArrayCryptoHandler.js +330 -0
  101. package/dist/cjs/mods/security/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
  102. package/dist/cjs/mods/security/src/components/secure-array/events/event-manager.js +270 -0
  103. package/dist/cjs/mods/security/src/components/secure-array/events/event-manager.js.map +1 -0
  104. package/dist/cjs/mods/security/src/components/secure-array/index.js +66 -0
  105. package/dist/cjs/mods/security/src/components/secure-array/index.js.map +1 -0
  106. package/dist/cjs/mods/security/src/components/secure-array/metadata/metadata-manager.js +331 -0
  107. package/dist/cjs/mods/security/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
  108. package/dist/cjs/mods/security/src/components/secure-array/serialization/ArraySerializationHandler.js +390 -0
  109. package/dist/cjs/mods/security/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
  110. package/dist/cjs/mods/security/src/components/secure-array/types/index.js +87 -0
  111. package/dist/cjs/mods/security/src/components/secure-array/types/index.js.map +1 -0
  112. package/dist/cjs/mods/security/src/components/secure-array/utils/id-generator.js +80 -0
  113. package/dist/cjs/mods/security/src/components/secure-array/utils/id-generator.js.map +1 -0
  114. package/dist/cjs/mods/security/src/components/secure-array/utils/validation.js +275 -0
  115. package/dist/cjs/mods/security/src/components/secure-array/utils/validation.js.map +1 -0
  116. package/dist/cjs/mods/security/src/components/secure-memory.js +906 -0
  117. package/dist/cjs/mods/security/src/components/secure-memory.js.map +1 -0
  118. package/dist/cjs/mods/security/src/components/secure-object/core/secure-object-core.js +1605 -0
  119. package/dist/cjs/mods/security/src/components/secure-object/core/secure-object-core.js.map +1 -0
  120. package/dist/cjs/mods/security/src/components/secure-object/encryption/crypto-handler.js +362 -0
  121. package/dist/cjs/mods/security/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
  122. package/dist/cjs/mods/security/src/components/secure-object/encryption/sensitive-keys.js +206 -0
  123. package/dist/cjs/mods/security/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
  124. package/dist/cjs/mods/security/src/components/secure-object/events/event-manager.js +197 -0
  125. package/dist/cjs/mods/security/src/components/secure-object/events/event-manager.js.map +1 -0
  126. package/dist/cjs/mods/security/src/components/secure-object/index.js +67 -0
  127. package/dist/cjs/mods/security/src/components/secure-object/index.js.map +1 -0
  128. package/dist/cjs/mods/security/src/components/secure-object/metadata/metadata-manager.js +183 -0
  129. package/dist/cjs/mods/security/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
  130. package/dist/cjs/mods/security/src/components/secure-object/serialization/serialization-handler.js +197 -0
  131. package/dist/cjs/mods/security/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
  132. package/dist/cjs/mods/security/src/components/secure-object/utils/id-generator.js +64 -0
  133. package/dist/cjs/mods/security/src/components/secure-object/utils/id-generator.js.map +1 -0
  134. package/dist/cjs/mods/security/src/components/secure-object/utils/validation.js +239 -0
  135. package/dist/cjs/mods/security/src/components/secure-object/utils/validation.js.map +1 -0
  136. package/dist/cjs/mods/security/src/components/secure-serialization.js +772 -0
  137. package/dist/cjs/mods/security/src/components/secure-serialization.js.map +1 -0
  138. package/dist/cjs/mods/security/src/components/secure-string/advanced/entropy-analyzer.js +308 -0
  139. package/dist/cjs/mods/security/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
  140. package/dist/cjs/mods/security/src/components/secure-string/advanced/performance-monitor.js +335 -0
  141. package/dist/cjs/mods/security/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
  142. package/dist/cjs/mods/security/src/components/secure-string/advanced/quantum-safe.js +245 -0
  143. package/dist/cjs/mods/security/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
  144. package/dist/cjs/mods/security/src/components/secure-string/buffer/buffer-manager.js +205 -0
  145. package/dist/cjs/mods/security/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
  146. package/dist/cjs/mods/security/src/components/secure-string/core/secure-string-core.js +788 -0
  147. package/dist/cjs/mods/security/src/components/secure-string/core/secure-string-core.js.map +1 -0
  148. package/dist/cjs/mods/security/src/components/secure-string/crypto/crypto-operations.js +319 -0
  149. package/dist/cjs/mods/security/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
  150. package/dist/cjs/mods/security/src/components/secure-string/operations/comparison-operations.js +221 -0
  151. package/dist/cjs/mods/security/src/components/secure-string/operations/comparison-operations.js.map +1 -0
  152. package/dist/cjs/mods/security/src/components/secure-string/operations/string-operations.js +234 -0
  153. package/dist/cjs/mods/security/src/components/secure-string/operations/string-operations.js.map +1 -0
  154. package/dist/cjs/mods/security/src/components/secure-string/types/index.js +41 -0
  155. package/dist/cjs/mods/security/src/components/secure-string/types/index.js.map +1 -0
  156. package/dist/cjs/mods/security/src/components/secure-string/validation/string-validator.js +334 -0
  157. package/dist/cjs/mods/security/src/components/secure-string/validation/string-validator.js.map +1 -0
  158. package/dist/cjs/mods/security/src/components/side-channel.js +146 -0
  159. package/dist/cjs/mods/security/src/components/side-channel.js.map +1 -0
  160. package/dist/cjs/mods/security/src/components/tamper-evident-logging.js +391 -0
  161. package/dist/cjs/mods/security/src/components/tamper-evident-logging.js.map +1 -0
  162. package/dist/cjs/mods/security/src/const/buffer.const.js +15 -0
  163. package/dist/cjs/mods/security/src/const/buffer.const.js.map +1 -0
  164. package/dist/cjs/mods/security/src/core/crypto.js +722 -0
  165. package/dist/cjs/mods/security/src/core/crypto.js.map +1 -0
  166. package/dist/cjs/mods/security/src/core/hash/hash-advanced.js +388 -0
  167. package/dist/cjs/mods/security/src/core/hash/hash-advanced.js.map +1 -0
  168. package/dist/cjs/mods/security/src/core/hash/hash-core.js +376 -0
  169. package/dist/cjs/mods/security/src/core/hash/hash-core.js.map +1 -0
  170. package/dist/cjs/mods/security/src/core/hash/hash-entropy.js +307 -0
  171. package/dist/cjs/mods/security/src/core/hash/hash-entropy.js.map +1 -0
  172. package/dist/cjs/mods/security/src/core/hash/hash-security.js +372 -0
  173. package/dist/cjs/mods/security/src/core/hash/hash-security.js.map +1 -0
  174. package/dist/cjs/mods/security/src/core/hash/hash-types.js +16 -0
  175. package/dist/cjs/mods/security/src/core/hash/hash-types.js.map +1 -0
  176. package/dist/cjs/mods/security/src/core/hash/hash-utils.js +328 -0
  177. package/dist/cjs/mods/security/src/core/hash/hash-utils.js.map +1 -0
  178. package/dist/cjs/mods/security/src/core/hash/hash-validator.js +312 -0
  179. package/dist/cjs/mods/security/src/core/hash/hash-validator.js.map +1 -0
  180. package/dist/cjs/mods/security/src/core/hash.js +25 -0
  181. package/dist/cjs/mods/security/src/core/hash.js.map +1 -0
  182. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/Argon2Algo.js +135 -0
  183. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
  184. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/PBKDF2Algo.js +293 -0
  185. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
  186. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/ScryptAlgo.js +317 -0
  187. package/dist/cjs/mods/security/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
  188. package/dist/cjs/mods/security/src/core/keys/keys-core.js +201 -0
  189. package/dist/cjs/mods/security/src/core/keys/keys-core.js.map +1 -0
  190. package/dist/cjs/mods/security/src/core/keys/keys-logger.js +234 -0
  191. package/dist/cjs/mods/security/src/core/keys/keys-logger.js.map +1 -0
  192. package/dist/cjs/mods/security/src/core/keys/keys-types.js +65 -0
  193. package/dist/cjs/mods/security/src/core/keys/keys-types.js.map +1 -0
  194. package/dist/cjs/mods/security/src/core/keys/keys-utils.js +322 -0
  195. package/dist/cjs/mods/security/src/core/keys/keys-utils.js.map +1 -0
  196. package/dist/cjs/mods/security/src/core/keys.js +136 -0
  197. package/dist/cjs/mods/security/src/core/keys.js.map +1 -0
  198. package/dist/cjs/mods/security/src/core/password/index.js +122 -0
  199. package/dist/cjs/mods/security/src/core/password/index.js.map +1 -0
  200. package/dist/cjs/mods/security/src/core/password/password-algorithms.js +397 -0
  201. package/dist/cjs/mods/security/src/core/password/password-algorithms.js.map +1 -0
  202. package/dist/cjs/mods/security/src/core/password/password-core.js +294 -0
  203. package/dist/cjs/mods/security/src/core/password/password-core.js.map +1 -0
  204. package/dist/cjs/mods/security/src/core/password/password-generator.js +365 -0
  205. package/dist/cjs/mods/security/src/core/password/password-generator.js.map +1 -0
  206. package/dist/cjs/mods/security/src/core/password/password-migration.js +237 -0
  207. package/dist/cjs/mods/security/src/core/password/password-migration.js.map +1 -0
  208. package/dist/cjs/mods/security/src/core/password/password-security.js +534 -0
  209. package/dist/cjs/mods/security/src/core/password/password-security.js.map +1 -0
  210. package/dist/cjs/mods/security/src/core/password/password-types.js +39 -0
  211. package/dist/cjs/mods/security/src/core/password/password-types.js.map +1 -0
  212. package/dist/cjs/mods/security/src/core/password/password-utils.js +651 -0
  213. package/dist/cjs/mods/security/src/core/password/password-utils.js.map +1 -0
  214. package/dist/cjs/mods/security/src/core/password/swlist.js +1122 -0
  215. package/dist/cjs/mods/security/src/core/password/swlist.js.map +1 -0
  216. package/dist/cjs/mods/security/src/core/random/random-core.js +328 -0
  217. package/dist/cjs/mods/security/src/core/random/random-core.js.map +1 -0
  218. package/dist/cjs/mods/security/src/core/random/random-crypto.js +339 -0
  219. package/dist/cjs/mods/security/src/core/random/random-crypto.js.map +1 -0
  220. package/dist/cjs/mods/security/src/core/random/random-entropy.js +388 -0
  221. package/dist/cjs/mods/security/src/core/random/random-entropy.js.map +1 -0
  222. package/dist/cjs/mods/security/src/core/random/random-generators.js +344 -0
  223. package/dist/cjs/mods/security/src/core/random/random-generators.js.map +1 -0
  224. package/dist/cjs/mods/security/src/core/random/random-sources.js +426 -0
  225. package/dist/cjs/mods/security/src/core/random/random-sources.js.map +1 -0
  226. package/dist/cjs/mods/security/src/core/random/random-tokens.js +309 -0
  227. package/dist/cjs/mods/security/src/core/random/random-tokens.js.map +1 -0
  228. package/dist/cjs/mods/security/src/core/random/random-types.js +36 -0
  229. package/dist/cjs/mods/security/src/core/random/random-types.js.map +1 -0
  230. package/dist/cjs/mods/security/src/core/validators.js +200 -0
  231. package/dist/cjs/mods/security/src/core/validators.js.map +1 -0
  232. package/dist/cjs/mods/security/src/helpers/Uint8Array.js +335 -0
  233. package/dist/cjs/mods/security/src/helpers/Uint8Array.js.map +1 -0
  234. package/dist/cjs/mods/security/src/helpers/createEnu.js +27 -0
  235. package/dist/cjs/mods/security/src/helpers/createEnu.js.map +1 -0
  236. package/dist/cjs/mods/security/src/index.js +417 -0
  237. package/dist/cjs/mods/security/src/index.js.map +1 -0
  238. package/dist/cjs/mods/security/src/types/global.js +51 -0
  239. package/dist/cjs/mods/security/src/types/global.js.map +1 -0
  240. package/dist/cjs/mods/security/src/types/secure-mem.type.js +100 -0
  241. package/dist/cjs/mods/security/src/types/secure-mem.type.js.map +1 -0
  242. package/dist/cjs/mods/security/src/types/secure-memory.js +20 -0
  243. package/dist/cjs/mods/security/src/types/secure-memory.js.map +1 -0
  244. package/dist/cjs/mods/security/src/types.js +63 -0
  245. package/dist/cjs/mods/security/src/types.js.map +1 -0
  246. package/dist/cjs/mods/security/src/utils/CryptoAlgorithmUtils.js +71 -0
  247. package/dist/cjs/mods/security/src/utils/CryptoAlgorithmUtils.js.map +1 -0
  248. package/dist/cjs/mods/security/src/utils/constants.js +111 -0
  249. package/dist/cjs/mods/security/src/utils/constants.js.map +1 -0
  250. package/dist/cjs/mods/security/src/utils/dataConverter.js +74 -0
  251. package/dist/cjs/mods/security/src/utils/dataConverter.js.map +1 -0
  252. package/dist/cjs/mods/security/src/utils/encoding.js +290 -0
  253. package/dist/cjs/mods/security/src/utils/encoding.js.map +1 -0
  254. package/dist/cjs/mods/security/src/utils/errorHandler.js +140 -0
  255. package/dist/cjs/mods/security/src/utils/errorHandler.js.map +1 -0
  256. package/dist/cjs/mods/security/src/utils/memory/config-manager.js +282 -0
  257. package/dist/cjs/mods/security/src/utils/memory/config-manager.js.map +1 -0
  258. package/dist/cjs/mods/security/src/utils/memory/event-manager.js +277 -0
  259. package/dist/cjs/mods/security/src/utils/memory/event-manager.js.map +1 -0
  260. package/dist/cjs/mods/security/src/utils/memory/index.js +162 -0
  261. package/dist/cjs/mods/security/src/utils/memory/index.js.map +1 -0
  262. package/dist/cjs/mods/security/src/utils/memory/memory-manager.js +888 -0
  263. package/dist/cjs/mods/security/src/utils/memory/memory-manager.js.map +1 -0
  264. package/dist/cjs/mods/security/src/utils/memory/memory-pool.js +356 -0
  265. package/dist/cjs/mods/security/src/utils/memory/memory-pool.js.map +1 -0
  266. package/dist/cjs/mods/security/src/utils/memory/reference-tracker.js +376 -0
  267. package/dist/cjs/mods/security/src/utils/memory/reference-tracker.js.map +1 -0
  268. package/dist/cjs/mods/security/src/utils/memory/types.js +56 -0
  269. package/dist/cjs/mods/security/src/utils/memory/types.js.map +1 -0
  270. package/dist/cjs/mods/security/src/utils/patterns.js +127 -0
  271. package/dist/cjs/mods/security/src/utils/patterns.js.map +1 -0
  272. package/dist/cjs/mods/security/src/utils/performanceMonitor.js +249 -0
  273. package/dist/cjs/mods/security/src/utils/performanceMonitor.js.map +1 -0
  274. package/dist/cjs/mods/security/src/utils/stats.js +182 -0
  275. package/dist/cjs/mods/security/src/utils/stats.js.map +1 -0
  276. package/dist/cjs/security-middleware.js +15 -15
  277. package/dist/cjs/server/components/fastapi/UltraFastRequestProcessor.js +1 -1
  278. package/dist/cjs/server/components/fastapi/console/ConsoleInterceptor.js +23 -23
  279. package/dist/cjs/server/components/fastapi/middlewares/MiddlewareAPI.js +1 -1
  280. package/dist/cjs/server/optimization/RequestPreCompiler.js +1 -1
  281. package/dist/cjs/server/plugins/PluginRegistry.js +1 -1
  282. package/dist/cjs/server/plugins/core/CachePlugin.js +7 -7
  283. package/dist/cjs/server/plugins/core/PerformancePlugin.js +2 -2
  284. package/dist/cjs/server/plugins/core/SecurityPlugin.js +10 -10
  285. package/dist/cjs/smart-routes.js +1 -1
  286. package/dist/esm/ServerFactory.js +1 -1
  287. package/dist/esm/cache/SecureCacheAdapter.js +2 -2
  288. package/dist/esm/cluster/cluster-manager.js +1 -1
  289. package/dist/esm/cluster/index.js +30 -30
  290. package/dist/esm/cluster/modules/AutoScaler.js +2 -2
  291. package/dist/esm/cluster/modules/ClusterPersistenceManager.js +3 -3
  292. package/dist/esm/cluster/modules/HealthMonitor.js +2 -2
  293. package/dist/esm/cluster/modules/IPCManager.js +2 -2
  294. package/dist/esm/cluster/modules/MetricsCollector.js +1 -1
  295. package/dist/esm/cluster/modules/WorkerManager.js +2 -2
  296. package/dist/esm/encryption/EncryptionService.js +12 -12
  297. package/dist/esm/encryption/EncryptionService.js.map +1 -1
  298. package/dist/esm/index.js +1 -1
  299. package/dist/esm/middleware/safe-json-middleware.js +1 -1
  300. package/dist/esm/mods/security/src/algorithms/hash-algorithms.js +705 -0
  301. package/dist/esm/mods/security/src/algorithms/hash-algorithms.js.map +1 -0
  302. package/dist/esm/mods/security/src/algorithms/registry.js +81 -0
  303. package/dist/esm/mods/security/src/algorithms/registry.js.map +1 -0
  304. package/dist/esm/mods/security/src/components/attestation.js +1059 -0
  305. package/dist/esm/mods/security/src/components/attestation.js.map +1 -0
  306. package/dist/esm/mods/security/src/components/cache/FastLRU.js +320 -0
  307. package/dist/esm/mods/security/src/components/cache/FastLRU.js.map +1 -0
  308. package/dist/esm/mods/security/src/components/cache/UFSIMC.js +1109 -0
  309. package/dist/esm/mods/security/src/components/cache/UFSIMC.js.map +1 -0
  310. package/dist/esm/mods/security/src/components/cache/cacheSys.js +622 -0
  311. package/dist/esm/mods/security/src/components/cache/cacheSys.js.map +1 -0
  312. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js +111 -0
  313. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js.map +1 -0
  314. package/dist/esm/mods/security/src/components/cache/config/cache.config.js +36 -0
  315. package/dist/esm/mods/security/src/components/cache/config/cache.config.js.map +1 -0
  316. package/dist/esm/mods/security/src/components/cache/index.js +449 -0
  317. package/dist/esm/mods/security/src/components/cache/index.js.map +1 -0
  318. package/dist/esm/mods/security/src/components/cache/useCache.js +240 -0
  319. package/dist/esm/mods/security/src/components/cache/useCache.js.map +1 -0
  320. package/dist/esm/mods/security/src/components/canary-tokens.js +346 -0
  321. package/dist/esm/mods/security/src/components/canary-tokens.js.map +1 -0
  322. package/dist/esm/mods/security/src/components/entropy-augmentation.js +476 -0
  323. package/dist/esm/mods/security/src/components/entropy-augmentation.js.map +1 -0
  324. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-allocator.js +336 -0
  325. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
  326. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-cache.js +534 -0
  327. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
  328. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-engine.js +629 -0
  329. package/dist/esm/mods/security/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
  330. package/dist/esm/mods/security/src/components/fortified-function/const/exec.const.js +11 -0
  331. package/dist/esm/mods/security/src/components/fortified-function/const/exec.const.js.map +1 -0
  332. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-config.js +351 -0
  333. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-config.js.map +1 -0
  334. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-function-core.js +518 -0
  335. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
  336. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-logger.js +243 -0
  337. package/dist/esm/mods/security/src/components/fortified-function/core/fortified-logger.js.map +1 -0
  338. package/dist/esm/mods/security/src/components/fortified-function/core/mods/api-manager.js +187 -0
  339. package/dist/esm/mods/security/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
  340. package/dist/esm/mods/security/src/components/fortified-function/core/mods/cache-manager.js +105 -0
  341. package/dist/esm/mods/security/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
  342. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-context.js +103 -0
  343. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
  344. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-engine.js +125 -0
  345. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
  346. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-router.js +91 -0
  347. package/dist/esm/mods/security/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
  348. package/dist/esm/mods/security/src/components/fortified-function/core/mods/memory-manager.js +145 -0
  349. package/dist/esm/mods/security/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
  350. package/dist/esm/mods/security/src/components/fortified-function/core/mods/security-manager.js +100 -0
  351. package/dist/esm/mods/security/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
  352. package/dist/esm/mods/security/src/components/fortified-function/core/mods/stats-manager.js +157 -0
  353. package/dist/esm/mods/security/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
  354. package/dist/esm/mods/security/src/components/fortified-function/core/mods/timing-manager.js +123 -0
  355. package/dist/esm/mods/security/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
  356. package/dist/esm/mods/security/src/components/fortified-function/engines/analytics-engine.js +368 -0
  357. package/dist/esm/mods/security/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
  358. package/dist/esm/mods/security/src/components/fortified-function/engines/execution-engine.js +400 -0
  359. package/dist/esm/mods/security/src/components/fortified-function/engines/execution-engine.js.map +1 -0
  360. package/dist/esm/mods/security/src/components/fortified-function/index.js +165 -0
  361. package/dist/esm/mods/security/src/components/fortified-function/index.js.map +1 -0
  362. package/dist/esm/mods/security/src/components/fortified-function/performance/performance-monitor.js +238 -0
  363. package/dist/esm/mods/security/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
  364. package/dist/esm/mods/security/src/components/fortified-function/performance/performance-timer.js +186 -0
  365. package/dist/esm/mods/security/src/components/fortified-function/performance/performance-timer.js.map +1 -0
  366. package/dist/esm/mods/security/src/components/fortified-function/security/security-handler.js +251 -0
  367. package/dist/esm/mods/security/src/components/fortified-function/security/security-handler.js.map +1 -0
  368. package/dist/esm/mods/security/src/components/fortified-function/serializer/safe-serializer.js +344 -0
  369. package/dist/esm/mods/security/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
  370. package/dist/esm/mods/security/src/components/fortified-function/smart-cache.js +691 -0
  371. package/dist/esm/mods/security/src/components/fortified-function/smart-cache.js.map +1 -0
  372. package/dist/esm/mods/security/src/components/fortified-function/types/types.js +14 -0
  373. package/dist/esm/mods/security/src/components/fortified-function/types/types.js.map +1 -0
  374. package/dist/esm/mods/security/src/components/fortified-function/utils/utils.js +66 -0
  375. package/dist/esm/mods/security/src/components/fortified-function/utils/utils.js.map +1 -0
  376. package/dist/esm/mods/security/src/components/memory-hard.js +919 -0
  377. package/dist/esm/mods/security/src/components/memory-hard.js.map +1 -0
  378. package/dist/esm/mods/security/src/components/post-quantum.js +316 -0
  379. package/dist/esm/mods/security/src/components/post-quantum.js.map +1 -0
  380. package/dist/esm/mods/security/src/components/runtime-verification.js +643 -0
  381. package/dist/esm/mods/security/src/components/runtime-verification.js.map +1 -0
  382. package/dist/esm/mods/security/src/components/secure-array/core/secure-array-core.js +1570 -0
  383. package/dist/esm/mods/security/src/components/secure-array/core/secure-array-core.js.map +1 -0
  384. package/dist/esm/mods/security/src/components/secure-array/crypto/ArrayCryptoHandler.js +328 -0
  385. package/dist/esm/mods/security/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
  386. package/dist/esm/mods/security/src/components/secure-array/events/event-manager.js +268 -0
  387. package/dist/esm/mods/security/src/components/secure-array/events/event-manager.js.map +1 -0
  388. package/dist/esm/mods/security/src/components/secure-array/index.js +61 -0
  389. package/dist/esm/mods/security/src/components/secure-array/index.js.map +1 -0
  390. package/dist/esm/mods/security/src/components/secure-array/metadata/metadata-manager.js +329 -0
  391. package/dist/esm/mods/security/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
  392. package/dist/esm/mods/security/src/components/secure-array/serialization/ArraySerializationHandler.js +388 -0
  393. package/dist/esm/mods/security/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
  394. package/dist/esm/mods/security/src/components/secure-array/types/index.js +84 -0
  395. package/dist/esm/mods/security/src/components/secure-array/types/index.js.map +1 -0
  396. package/dist/esm/mods/security/src/components/secure-array/utils/id-generator.js +78 -0
  397. package/dist/esm/mods/security/src/components/secure-array/utils/id-generator.js.map +1 -0
  398. package/dist/esm/mods/security/src/components/secure-array/utils/validation.js +273 -0
  399. package/dist/esm/mods/security/src/components/secure-array/utils/validation.js.map +1 -0
  400. package/dist/esm/mods/security/src/components/secure-memory.js +884 -0
  401. package/dist/esm/mods/security/src/components/secure-memory.js.map +1 -0
  402. package/dist/esm/mods/security/src/components/secure-object/core/secure-object-core.js +1603 -0
  403. package/dist/esm/mods/security/src/components/secure-object/core/secure-object-core.js.map +1 -0
  404. package/dist/esm/mods/security/src/components/secure-object/encryption/crypto-handler.js +360 -0
  405. package/dist/esm/mods/security/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
  406. package/dist/esm/mods/security/src/components/secure-object/encryption/sensitive-keys.js +203 -0
  407. package/dist/esm/mods/security/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
  408. package/dist/esm/mods/security/src/components/secure-object/events/event-manager.js +195 -0
  409. package/dist/esm/mods/security/src/components/secure-object/events/event-manager.js.map +1 -0
  410. package/dist/esm/mods/security/src/components/secure-object/index.js +63 -0
  411. package/dist/esm/mods/security/src/components/secure-object/index.js.map +1 -0
  412. package/dist/esm/mods/security/src/components/secure-object/metadata/metadata-manager.js +181 -0
  413. package/dist/esm/mods/security/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
  414. package/dist/esm/mods/security/src/components/secure-object/serialization/serialization-handler.js +195 -0
  415. package/dist/esm/mods/security/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
  416. package/dist/esm/mods/security/src/components/secure-object/utils/id-generator.js +62 -0
  417. package/dist/esm/mods/security/src/components/secure-object/utils/id-generator.js.map +1 -0
  418. package/dist/esm/mods/security/src/components/secure-object/utils/validation.js +237 -0
  419. package/dist/esm/mods/security/src/components/secure-object/utils/validation.js.map +1 -0
  420. package/dist/esm/mods/security/src/components/secure-serialization.js +769 -0
  421. package/dist/esm/mods/security/src/components/secure-serialization.js.map +1 -0
  422. package/dist/esm/mods/security/src/components/secure-string/advanced/entropy-analyzer.js +306 -0
  423. package/dist/esm/mods/security/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
  424. package/dist/esm/mods/security/src/components/secure-string/advanced/performance-monitor.js +333 -0
  425. package/dist/esm/mods/security/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
  426. package/dist/esm/mods/security/src/components/secure-string/advanced/quantum-safe.js +243 -0
  427. package/dist/esm/mods/security/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
  428. package/dist/esm/mods/security/src/components/secure-string/buffer/buffer-manager.js +203 -0
  429. package/dist/esm/mods/security/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
  430. package/dist/esm/mods/security/src/components/secure-string/core/secure-string-core.js +786 -0
  431. package/dist/esm/mods/security/src/components/secure-string/core/secure-string-core.js.map +1 -0
  432. package/dist/esm/mods/security/src/components/secure-string/crypto/crypto-operations.js +298 -0
  433. package/dist/esm/mods/security/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
  434. package/dist/esm/mods/security/src/components/secure-string/operations/comparison-operations.js +219 -0
  435. package/dist/esm/mods/security/src/components/secure-string/operations/comparison-operations.js.map +1 -0
  436. package/dist/esm/mods/security/src/components/secure-string/operations/string-operations.js +232 -0
  437. package/dist/esm/mods/security/src/components/secure-string/operations/string-operations.js.map +1 -0
  438. package/dist/esm/mods/security/src/components/secure-string/types/index.js +37 -0
  439. package/dist/esm/mods/security/src/components/secure-string/types/index.js.map +1 -0
  440. package/dist/esm/mods/security/src/components/secure-string/validation/string-validator.js +332 -0
  441. package/dist/esm/mods/security/src/components/secure-string/validation/string-validator.js.map +1 -0
  442. package/dist/esm/mods/security/src/components/side-channel.js +142 -0
  443. package/dist/esm/mods/security/src/components/side-channel.js.map +1 -0
  444. package/dist/esm/mods/security/src/components/tamper-evident-logging.js +389 -0
  445. package/dist/esm/mods/security/src/components/tamper-evident-logging.js.map +1 -0
  446. package/dist/esm/mods/security/src/const/buffer.const.js +13 -0
  447. package/dist/esm/mods/security/src/const/buffer.const.js.map +1 -0
  448. package/dist/esm/mods/security/src/core/crypto.js +720 -0
  449. package/dist/esm/mods/security/src/core/crypto.js.map +1 -0
  450. package/dist/esm/mods/security/src/core/hash/hash-advanced.js +367 -0
  451. package/dist/esm/mods/security/src/core/hash/hash-advanced.js.map +1 -0
  452. package/dist/esm/mods/security/src/core/hash/hash-core.js +355 -0
  453. package/dist/esm/mods/security/src/core/hash/hash-core.js.map +1 -0
  454. package/dist/esm/mods/security/src/core/hash/hash-entropy.js +286 -0
  455. package/dist/esm/mods/security/src/core/hash/hash-entropy.js.map +1 -0
  456. package/dist/esm/mods/security/src/core/hash/hash-security.js +351 -0
  457. package/dist/esm/mods/security/src/core/hash/hash-security.js.map +1 -0
  458. package/dist/esm/mods/security/src/core/hash/hash-types.js +16 -0
  459. package/dist/esm/mods/security/src/core/hash/hash-types.js.map +1 -0
  460. package/dist/esm/mods/security/src/core/hash/hash-utils.js +307 -0
  461. package/dist/esm/mods/security/src/core/hash/hash-utils.js.map +1 -0
  462. package/dist/esm/mods/security/src/core/hash/hash-validator.js +310 -0
  463. package/dist/esm/mods/security/src/core/hash/hash-validator.js.map +1 -0
  464. package/dist/esm/mods/security/src/core/hash.js +9 -0
  465. package/dist/esm/mods/security/src/core/hash.js.map +1 -0
  466. package/dist/esm/mods/security/src/core/keys/algorithms/mods/Argon2Algo.js +133 -0
  467. package/dist/esm/mods/security/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
  468. package/dist/esm/mods/security/src/core/keys/algorithms/mods/PBKDF2Algo.js +272 -0
  469. package/dist/esm/mods/security/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
  470. package/dist/esm/mods/security/src/core/keys/algorithms/mods/ScryptAlgo.js +296 -0
  471. package/dist/esm/mods/security/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
  472. package/dist/esm/mods/security/src/core/keys/keys-core.js +199 -0
  473. package/dist/esm/mods/security/src/core/keys/keys-core.js.map +1 -0
  474. package/dist/esm/mods/security/src/core/keys/keys-logger.js +231 -0
  475. package/dist/esm/mods/security/src/core/keys/keys-logger.js.map +1 -0
  476. package/dist/esm/mods/security/src/core/keys/keys-types.js +63 -0
  477. package/dist/esm/mods/security/src/core/keys/keys-types.js.map +1 -0
  478. package/dist/esm/mods/security/src/core/keys/keys-utils.js +316 -0
  479. package/dist/esm/mods/security/src/core/keys/keys-utils.js.map +1 -0
  480. package/dist/esm/mods/security/src/core/keys.js +134 -0
  481. package/dist/esm/mods/security/src/core/keys.js.map +1 -0
  482. package/dist/esm/mods/security/src/core/password/index.js +110 -0
  483. package/dist/esm/mods/security/src/core/password/index.js.map +1 -0
  484. package/dist/esm/mods/security/src/core/password/password-algorithms.js +395 -0
  485. package/dist/esm/mods/security/src/core/password/password-algorithms.js.map +1 -0
  486. package/dist/esm/mods/security/src/core/password/password-core.js +292 -0
  487. package/dist/esm/mods/security/src/core/password/password-core.js.map +1 -0
  488. package/dist/esm/mods/security/src/core/password/password-generator.js +363 -0
  489. package/dist/esm/mods/security/src/core/password/password-generator.js.map +1 -0
  490. package/dist/esm/mods/security/src/core/password/password-migration.js +235 -0
  491. package/dist/esm/mods/security/src/core/password/password-migration.js.map +1 -0
  492. package/dist/esm/mods/security/src/core/password/password-security.js +532 -0
  493. package/dist/esm/mods/security/src/core/password/password-security.js.map +1 -0
  494. package/dist/esm/mods/security/src/core/password/password-types.js +34 -0
  495. package/dist/esm/mods/security/src/core/password/password-types.js.map +1 -0
  496. package/dist/esm/mods/security/src/core/password/password-utils.js +630 -0
  497. package/dist/esm/mods/security/src/core/password/password-utils.js.map +1 -0
  498. package/dist/esm/mods/security/src/core/password/swlist.js +1120 -0
  499. package/dist/esm/mods/security/src/core/password/swlist.js.map +1 -0
  500. package/dist/esm/mods/security/src/core/random/random-core.js +326 -0
  501. package/dist/esm/mods/security/src/core/random/random-core.js.map +1 -0
  502. package/dist/esm/mods/security/src/core/random/random-crypto.js +337 -0
  503. package/dist/esm/mods/security/src/core/random/random-crypto.js.map +1 -0
  504. package/dist/esm/mods/security/src/core/random/random-entropy.js +367 -0
  505. package/dist/esm/mods/security/src/core/random/random-entropy.js.map +1 -0
  506. package/dist/esm/mods/security/src/core/random/random-generators.js +323 -0
  507. package/dist/esm/mods/security/src/core/random/random-generators.js.map +1 -0
  508. package/dist/esm/mods/security/src/core/random/random-sources.js +405 -0
  509. package/dist/esm/mods/security/src/core/random/random-sources.js.map +1 -0
  510. package/dist/esm/mods/security/src/core/random/random-tokens.js +307 -0
  511. package/dist/esm/mods/security/src/core/random/random-tokens.js.map +1 -0
  512. package/dist/esm/mods/security/src/core/random/random-types.js +27 -0
  513. package/dist/esm/mods/security/src/core/random/random-types.js.map +1 -0
  514. package/dist/esm/mods/security/src/core/validators.js +198 -0
  515. package/dist/esm/mods/security/src/core/validators.js.map +1 -0
  516. package/dist/esm/mods/security/src/helpers/Uint8Array.js +333 -0
  517. package/dist/esm/mods/security/src/helpers/Uint8Array.js.map +1 -0
  518. package/dist/esm/mods/security/src/helpers/createEnu.js +25 -0
  519. package/dist/esm/mods/security/src/helpers/createEnu.js.map +1 -0
  520. package/dist/esm/mods/security/src/index.js +373 -0
  521. package/dist/esm/mods/security/src/index.js.map +1 -0
  522. package/dist/esm/mods/security/src/types/global.js +49 -0
  523. package/dist/esm/mods/security/src/types/global.js.map +1 -0
  524. package/dist/esm/mods/security/src/types/secure-mem.type.js +96 -0
  525. package/dist/esm/mods/security/src/types/secure-mem.type.js.map +1 -0
  526. package/dist/esm/mods/security/src/types/secure-memory.js +20 -0
  527. package/dist/esm/mods/security/src/types/secure-memory.js.map +1 -0
  528. package/dist/esm/mods/security/src/types.js +63 -0
  529. package/dist/esm/mods/security/src/types.js.map +1 -0
  530. package/dist/esm/mods/security/src/utils/CryptoAlgorithmUtils.js +69 -0
  531. package/dist/esm/mods/security/src/utils/CryptoAlgorithmUtils.js.map +1 -0
  532. package/dist/esm/mods/security/src/utils/constants.js +105 -0
  533. package/dist/esm/mods/security/src/utils/constants.js.map +1 -0
  534. package/dist/esm/mods/security/src/utils/dataConverter.js +72 -0
  535. package/dist/esm/mods/security/src/utils/dataConverter.js.map +1 -0
  536. package/dist/esm/mods/security/src/utils/encoding.js +279 -0
  537. package/dist/esm/mods/security/src/utils/encoding.js.map +1 -0
  538. package/dist/esm/mods/security/src/utils/errorHandler.js +137 -0
  539. package/dist/esm/mods/security/src/utils/errorHandler.js.map +1 -0
  540. package/dist/esm/mods/security/src/utils/memory/config-manager.js +280 -0
  541. package/dist/esm/mods/security/src/utils/memory/config-manager.js.map +1 -0
  542. package/dist/esm/mods/security/src/utils/memory/event-manager.js +275 -0
  543. package/dist/esm/mods/security/src/utils/memory/event-manager.js.map +1 -0
  544. package/dist/esm/mods/security/src/utils/memory/index.js +141 -0
  545. package/dist/esm/mods/security/src/utils/memory/index.js.map +1 -0
  546. package/dist/esm/mods/security/src/utils/memory/memory-manager.js +886 -0
  547. package/dist/esm/mods/security/src/utils/memory/memory-manager.js.map +1 -0
  548. package/dist/esm/mods/security/src/utils/memory/memory-pool.js +354 -0
  549. package/dist/esm/mods/security/src/utils/memory/memory-pool.js.map +1 -0
  550. package/dist/esm/mods/security/src/utils/memory/reference-tracker.js +374 -0
  551. package/dist/esm/mods/security/src/utils/memory/reference-tracker.js.map +1 -0
  552. package/dist/esm/mods/security/src/utils/memory/types.js +56 -0
  553. package/dist/esm/mods/security/src/utils/memory/types.js.map +1 -0
  554. package/dist/esm/mods/security/src/utils/patterns.js +124 -0
  555. package/dist/esm/mods/security/src/utils/patterns.js.map +1 -0
  556. package/dist/esm/mods/security/src/utils/performanceMonitor.js +246 -0
  557. package/dist/esm/mods/security/src/utils/performanceMonitor.js.map +1 -0
  558. package/dist/esm/mods/security/src/utils/stats.js +180 -0
  559. package/dist/esm/mods/security/src/utils/stats.js.map +1 -0
  560. package/dist/esm/security-middleware.js +15 -15
  561. package/dist/esm/server/components/fastapi/UltraFastRequestProcessor.js +1 -1
  562. package/dist/esm/server/components/fastapi/console/ConsoleInterceptor.js +23 -23
  563. package/dist/esm/server/components/fastapi/middlewares/MiddlewareAPI.js +1 -1
  564. package/dist/esm/server/optimization/RequestPreCompiler.js +1 -1
  565. package/dist/esm/server/plugins/PluginRegistry.js +1 -1
  566. package/dist/esm/server/plugins/core/CachePlugin.js +7 -7
  567. package/dist/esm/server/plugins/core/PerformancePlugin.js +2 -2
  568. package/dist/esm/server/plugins/core/SecurityPlugin.js +10 -10
  569. package/dist/esm/smart-routes.js +1 -1
  570. package/package.json +2 -2
@@ -0,0 +1,705 @@
1
+ import * as crypto from 'crypto';
2
+ import { HashUtils } from '../core/hash/hash-utils.js';
3
+ import '../types.js';
4
+ import '../core/hash/hash-core.js';
5
+ import '../core/hash/hash-types.js';
6
+ import '../core/hash/hash-security.js';
7
+ import '../core/hash/hash-advanced.js';
8
+ import '../core/keys/keys-types.js';
9
+ import '../core/keys/keys-logger.js';
10
+ import '../core/keys/keys-utils.js';
11
+ import '../core/keys/algorithms/mods/PBKDF2Algo.js';
12
+ import { SecureRandom } from '../core/random/random-core.js';
13
+ import '../core/random/random-types.js';
14
+ import '../core/random/random-sources.js';
15
+ import 'nehonix-uri-processor';
16
+ import '../utils/memory/index.js';
17
+ import 'argon2';
18
+ import 'child_process';
19
+ import '../types/secure-memory.js';
20
+ import 'https';
21
+ import '../components/runtime-verification.js';
22
+ import '../components/tamper-evident-logging.js';
23
+ import '../components/secure-string/advanced/entropy-analyzer.js';
24
+ import '../components/secure-string/advanced/quantum-safe.js';
25
+ import '../components/secure-string/advanced/performance-monitor.js';
26
+ import 'nehoid';
27
+ import '../core/password/index.js';
28
+
29
+ /**
30
+ * Hash Algorithms - Enterprise-grade cryptographic hashing
31
+ * Maintains backward compatibility while adding quantum-resistant features
32
+ */
33
+ // Enhanced security imports with proper error handling
34
+ let nobleSecp256k1 = null;
35
+ let blake3 = null;
36
+ let blake2b = null;
37
+ let blake2s = null;
38
+ let argon2 = null;
39
+ let bcrypt = null;
40
+ let scryptJs = null;
41
+ // Dynamically import cryptographic libraries
42
+ async function initCryptoLibs() {
43
+ try {
44
+ nobleSecp256k1 = await import('@noble/secp256k1');
45
+ console.log("✓ @noble/secp256k1 loaded");
46
+ }
47
+ catch (e) {
48
+ console.warn("@noble/secp256k1 not available");
49
+ }
50
+ try {
51
+ blake3 = await import('@noble/hashes/blake3');
52
+ console.log("✓ blake3 loaded");
53
+ }
54
+ catch (e) {
55
+ console.warn("blake3 not available");
56
+ }
57
+ try {
58
+ blake2b = await import('@noble/hashes/blake2b');
59
+ console.log("✓ blake2b loaded");
60
+ }
61
+ catch (e) {
62
+ console.warn("blake2b not available");
63
+ }
64
+ try {
65
+ blake2s = await import('@noble/hashes/blake2s');
66
+ console.log("✓ blake2s loaded");
67
+ }
68
+ catch (e) {
69
+ console.warn("blake2s not available");
70
+ }
71
+ try {
72
+ argon2 = await import('argon2');
73
+ console.log("✓ argon2 loaded");
74
+ }
75
+ catch (e) {
76
+ console.warn("argon2 not available, using PBKDF2 fallback");
77
+ }
78
+ try {
79
+ bcrypt = await import('bcrypt');
80
+ console.log("✓ bcrypt loaded");
81
+ }
82
+ catch (e) {
83
+ console.warn("bcrypt not available");
84
+ }
85
+ try {
86
+ scryptJs = await import('scrypt-js');
87
+ console.log("✓ scrypt-js loaded");
88
+ }
89
+ catch (e) {
90
+ console.warn("scrypt-js not available, using built-in scrypt");
91
+ }
92
+ }
93
+ // Initialize libraries on first use
94
+ let libsInitialized = false;
95
+ async function ensureLibsInitialized() {
96
+ if (!libsInitialized) {
97
+ await initCryptoLibs();
98
+ libsInitialized = true;
99
+ }
100
+ }
101
+ class HashAlgorithms {
102
+ /**
103
+ * Initialize crypto libraries asynchronously (NEW METHOD)
104
+ */
105
+ static async initialize() {
106
+ await ensureLibsInitialized();
107
+ }
108
+ /**
109
+ * Core secure hash function with multiple algorithm support
110
+ *
111
+ * BEHAVIOR: This method produces consistent hashes for the same input. Unlike Hash.createSecureHash(), this method
112
+ * does NOT auto-generate random salts, ensuring deterministic results.
113
+ *
114
+ * Use this method when you need:
115
+ * - Consistent hashes for data integrity verification
116
+ * - Content-based hashing (like file checksums)
117
+ * - Deterministic hash generation
118
+ *
119
+ * @param input - Input to hash
120
+ * @param options - Hash options (salt is optional and won't be auto-generated)
121
+ * @returns Hash result (consistent for same input/options)
122
+ */
123
+ static secureHash(input, options = {}) {
124
+ const { algorithm = "sha256", iterations = 1, salt, pepper, outputFormat = "hex", } = options;
125
+ // Convert input to buffer
126
+ let data = HashUtils.toBuffer(input);
127
+ // Add salt if provided (enhanced with better randomness if not provided)
128
+ if (salt) {
129
+ const saltBuffer = HashUtils.toBuffer(salt);
130
+ data = HashUtils.combineBuffers([saltBuffer, data]);
131
+ }
132
+ else if (algorithm !== "sha256") {
133
+ // Add automatic salt for non-basic algorithms
134
+ const autoSalt = crypto.randomBytes(16);
135
+ data = HashUtils.combineBuffers([autoSalt, data]);
136
+ }
137
+ // Add pepper if provided
138
+ if (pepper) {
139
+ const pepperBuffer = HashUtils.toBuffer(pepper);
140
+ data = HashUtils.combineBuffers([data, pepperBuffer]);
141
+ }
142
+ // Perform hashing with iterations (enhanced with better iteration handling)
143
+ let result = data;
144
+ for (let i = 0; i < Math.max(iterations, 1); i++) {
145
+ result = HashAlgorithms.hashWithAlgorithm(result, algorithm);
146
+ }
147
+ return HashUtils.formatOutput(result, outputFormat);
148
+ }
149
+ /**
150
+ * more algorithms and better implementations
151
+ * Hash data with specified algorithm
152
+ * @param data - Data to hash
153
+ * @param algorithm - Algorithm to use
154
+ * @returns Hash result
155
+ */
156
+ static hashWithAlgorithm(data, algorithm) {
157
+ const algo = algorithm.toLowerCase();
158
+ switch (algo) {
159
+ case "sha256":
160
+ return crypto.createHash("sha256").update(data).digest();
161
+ case "sha512":
162
+ return crypto.createHash("sha512").update(data).digest();
163
+ case "sha3-256":
164
+ return crypto.createHash("sha3-256").update(data).digest();
165
+ case "sha3-512":
166
+ return crypto.createHash("sha3-512").update(data).digest();
167
+ case "shake256":
168
+ return crypto
169
+ .createHash("shake256", { outputLength: 64 })
170
+ .update(data)
171
+ .digest();
172
+ case "blake3":
173
+ return HashAlgorithms.blake3Hash(data);
174
+ case "blake2b":
175
+ return HashAlgorithms.blake2bHash(data);
176
+ case "blake2s":
177
+ return HashAlgorithms.blake2sHash(data);
178
+ case "pbkdf2":
179
+ return HashAlgorithms.pbkdf2Hash(data);
180
+ default:
181
+ // Enhanced fallback to SHA3-256 instead of SHA-256
182
+ console.warn(`Unknown algorithm ${algorithm}, falling back to SHA3-256`);
183
+ return crypto.createHash("sha3-256").update(data).digest();
184
+ }
185
+ }
186
+ /**
187
+ * real BLAKE3 implementation
188
+ * BLAKE3 hash implementation
189
+ * @param data - Data to hash
190
+ * @returns BLAKE3 hash
191
+ */
192
+ static blake3Hash(data) {
193
+ if (blake3 && blake3.blake3) {
194
+ return Buffer.from(blake3.blake3(data, { dkLen: 64 }));
195
+ }
196
+ // Enhanced fallback implementation with better security
197
+ return HashAlgorithms.fallbackBlake3(data);
198
+ }
199
+ /**
200
+ * real BLAKE2b implementation
201
+ * BLAKE2b hash implementation
202
+ * @param data - Data to hash
203
+ * @returns BLAKE2b hash
204
+ */
205
+ static blake2bHash(data) {
206
+ if (blake2b && blake2b.blake2b) {
207
+ return Buffer.from(blake2b.blake2b(data, { dkLen: 64 }));
208
+ }
209
+ // Enhanced fallback with better security
210
+ const hash1 = crypto.createHash("sha3-512").update(data).digest();
211
+ const hash2 = crypto.createHash("sha512").update(hash1).digest();
212
+ return HashUtils.combineBuffers([hash1, hash2]).subarray(0, 64);
213
+ }
214
+ /**
215
+ * real BLAKE2s implementation
216
+ * BLAKE2s hash implementation
217
+ * @param data - Data to hash
218
+ * @returns BLAKE2s hash
219
+ */
220
+ static blake2sHash(data) {
221
+ if (blake2s && blake2s.blake2s) {
222
+ return Buffer.from(blake2s.blake2s(data, { dkLen: 32 }));
223
+ }
224
+ // Enhanced fallback to SHA3-256
225
+ return crypto.createHash("sha3-256").update(data).digest();
226
+ }
227
+ /**
228
+ * better security parameters
229
+ * PBKDF2 hash implementation
230
+ * @param data - Data to hash
231
+ * @returns PBKDF2 hash
232
+ */
233
+ static pbkdf2Hash(data) {
234
+ // Enhanced salt generation and parameters
235
+ const salt = data.length >= 16
236
+ ? data.subarray(0, 16)
237
+ : Buffer.concat([
238
+ data,
239
+ SecureRandom.getRandomBytes(16),
240
+ ]).subarray(0, 16);
241
+ // Enhanced parameters: more iterations and SHA3-512
242
+ return crypto.pbkdf2Sync(data, salt, 50000, 64, "sha512");
243
+ }
244
+ /**
245
+ * better constants and rounds
246
+ * Fallback BLAKE3 implementation (simplified)
247
+ * @param data - Data to hash
248
+ * @returns Simplified BLAKE3-like hash
249
+ */
250
+ static fallbackBlake3(data) {
251
+ // Enhanced implementation with more rounds and better constants
252
+ let result = data;
253
+ const constants = [
254
+ Buffer.from("BLAKE3_QR_CONST_1", "utf8"),
255
+ Buffer.from("BLAKE3_QR_CONST_2", "utf8"),
256
+ Buffer.from("BLAKE3_QR_CONST_3", "utf8"),
257
+ Buffer.from("BLAKE3_QR_CONST_4", "utf8"),
258
+ Buffer.from("BLAKE3_QR_CONST_5", "utf8"),
259
+ ];
260
+ for (const constant of constants) {
261
+ const combined = HashUtils.combineBuffers([constant, result]);
262
+ result = crypto.createHash("sha3-512").update(combined).digest();
263
+ // Add additional mixing
264
+ result = crypto.createHash("sha512").update(result).digest();
265
+ }
266
+ return result;
267
+ }
268
+ /**
269
+ * quantum resistance option
270
+ * Enhanced HMAC generation
271
+ * @param algorithm - Hash algorithm
272
+ * @param key - HMAC key
273
+ * @param data - Data to authenticate
274
+ * @param options - HMAC options
275
+ * @returns HMAC digest
276
+ */
277
+ static createSecureHMAC(algorithm, key, data, options = {}) {
278
+ const { encoding = "hex", keyDerivation = false, iterations = 10000, } = options;
279
+ // Convert inputs to buffers
280
+ let keyBuffer = HashUtils.toBuffer(key);
281
+ const dataBuffer = HashUtils.toBuffer(data);
282
+ // Enhanced key derivation with better parameters
283
+ if (keyDerivation) {
284
+ const salt = crypto.randomBytes(32); // Increased salt size
285
+ keyBuffer = crypto.pbkdf2Sync(keyBuffer, salt, Math.max(iterations, 50000), // Minimum 50k iterations
286
+ 64, // Increased key length
287
+ "sha512");
288
+ }
289
+ // Create HMAC with enhanced security
290
+ const hmac = crypto.createHmac(algorithm, keyBuffer);
291
+ hmac.update(dataBuffer);
292
+ const digest = hmac.digest();
293
+ // Return in requested encoding
294
+ switch (encoding) {
295
+ case "hex":
296
+ return digest.toString("hex");
297
+ case "base64":
298
+ return digest.toString("base64");
299
+ case "base64url":
300
+ return digest
301
+ .toString("base64")
302
+ .replace(/\+/g, "-")
303
+ .replace(/\//g, "_")
304
+ .replace(/=/g, "");
305
+ default:
306
+ return digest.toString("hex");
307
+ }
308
+ }
309
+ /**
310
+ * better algorithm selection and quantum resistance
311
+ * Multi-algorithm hash for quantum resistance
312
+ * @param input - Input to hash
313
+ * @param algorithms - Algorithms to use
314
+ * @param iterations - Iterations per algorithm
315
+ * @returns Combined hash result
316
+ */
317
+ static multiAlgorithmHash(input, algorithms = ["sha3-512", "blake3", "sha512"], iterations = 1000) {
318
+ let result = HashUtils.toBuffer(input);
319
+ // Enhanced with better algorithm selection and quantum resistance
320
+ const enhancedAlgorithms = algorithms.length > 0 ? algorithms : this.QUANTUM_ALGORITHMS;
321
+ const safeIterations = Math.max(iterations, 100); // Minimum iterations
322
+ for (const algorithm of enhancedAlgorithms) {
323
+ for (let i = 0; i < Math.floor(safeIterations / enhancedAlgorithms.length); i++) {
324
+ result = HashAlgorithms.hashWithAlgorithm(result, algorithm);
325
+ // Add entropy between iterations for better security
326
+ if (i % 10 === 0) {
327
+ const entropy = crypto.randomBytes(8);
328
+ result = HashUtils.combineBuffers([result, entropy]);
329
+ }
330
+ }
331
+ }
332
+ return result;
333
+ }
334
+ /**
335
+ * better chunk processing and algorithms
336
+ * Streamed hash for large data
337
+ * @param algorithm - Hash algorithm
338
+ * @param chunkSize - Chunk size for processing
339
+ * @returns Hash stream processor
340
+ */
341
+ static createStreamHash(algorithm = "sha256", chunkSize = 64 * 1024 // 64KB chunks
342
+ ) {
343
+ // Enhanced with better algorithm selection
344
+ const safeAlgorithm = [
345
+ "sha256",
346
+ "sha512",
347
+ "sha3-256",
348
+ "sha3-512",
349
+ ].includes(algorithm)
350
+ ? algorithm
351
+ : "sha3-256";
352
+ let hash = crypto.createHash(safeAlgorithm);
353
+ let totalProcessed = 0;
354
+ const safeChunkSize = Math.max(chunkSize, 1024); // Minimum 1KB chunks
355
+ return {
356
+ update: (chunk) => {
357
+ // Enhanced chunk processing with validation
358
+ if (!chunk || chunk.length === 0)
359
+ return;
360
+ let offset = 0;
361
+ while (offset < chunk.length) {
362
+ const end = Math.min(offset + safeChunkSize, chunk.length);
363
+ const subChunk = chunk.subarray(offset, end);
364
+ hash.update(subChunk);
365
+ offset = end;
366
+ totalProcessed += subChunk.length;
367
+ }
368
+ },
369
+ digest: () => {
370
+ const result = hash.digest();
371
+ // Reset for potential reuse
372
+ hash = crypto.createHash(safeAlgorithm);
373
+ totalProcessed = 0;
374
+ return result;
375
+ },
376
+ reset: () => {
377
+ hash = crypto.createHash(safeAlgorithm);
378
+ totalProcessed = 0;
379
+ },
380
+ };
381
+ }
382
+ /**
383
+ * better timing attack prevention
384
+ * Constant-time hash comparison
385
+ * @param hash1 - First hash
386
+ * @param hash2 - Second hash
387
+ * @returns True if hashes match
388
+ */
389
+ static constantTimeCompare(hash1, hash2) {
390
+ const buffer1 = Buffer.isBuffer(hash1)
391
+ ? hash1
392
+ : Buffer.from(hash1, "hex");
393
+ const buffer2 = Buffer.isBuffer(hash2)
394
+ ? hash2
395
+ : Buffer.from(hash2, "hex");
396
+ // Enhanced length check with timing normalization
397
+ if (buffer1.length !== buffer2.length) {
398
+ // Perform dummy comparison to prevent timing attacks
399
+ const maxLen = Math.max(buffer1.length, buffer2.length);
400
+ const dummy = crypto.randomBytes(maxLen);
401
+ try {
402
+ crypto.timingSafeEqual(buffer1.length >= maxLen
403
+ ? buffer1
404
+ : Buffer.concat([buffer1, dummy]).subarray(0, maxLen), buffer2.length >= maxLen
405
+ ? buffer2
406
+ : Buffer.concat([buffer2, dummy]).subarray(0, maxLen));
407
+ }
408
+ catch (e) {
409
+ // Ignore timing safe equal errors in dummy comparison
410
+ }
411
+ return false;
412
+ }
413
+ try {
414
+ return crypto.timingSafeEqual(buffer1, buffer2);
415
+ }
416
+ catch (error) {
417
+ // Enhanced manual constant-time comparison with better timing normalization
418
+ let result = 0;
419
+ for (let i = 0; i < buffer1.length; i++) {
420
+ result |= buffer1[i] ^ buffer2[i];
421
+ }
422
+ // Additional timing normalization
423
+ const dummy = crypto.randomBytes(32);
424
+ for (let i = 0; i < dummy.length; i++) {
425
+ result |= dummy[i] ^ dummy[i]; // Always 0, but prevents optimization
426
+ result |= dummy[i] & 0; // Additional timing noise
427
+ }
428
+ return result === 0;
429
+ }
430
+ }
431
+ // ==================== NEW ENHANCED METHODS ====================
432
+ /**
433
+ * NEW METHOD - Ultra-secure hash function with quantum resistance
434
+ */
435
+ static async quantumResistantHash(input, options = {}) {
436
+ await ensureLibsInitialized();
437
+ const { algorithm = "multi-quantum", iterations = this.SECURITY_CONSTANTS.DEFAULT_ITERATIONS, salt, pepper, outputFormat = "hex", keyDerivation = "argon2", parallelism = this.SECURITY_CONSTANTS.ARGON2_PARALLELISM, memorySize = this.SECURITY_CONSTANTS.ARGON2_MEMORY_COST, timeCost = this.SECURITY_CONSTANTS.ARGON2_TIME_COST, domainSeparation, } = options;
438
+ // Generate cryptographically secure salt if not provided
439
+ const finalSalt = salt || crypto.randomBytes(this.SECURITY_CONSTANTS.MIN_SALT_SIZE);
440
+ const finalPepper = pepper ||
441
+ crypto.randomBytes(this.SECURITY_CONSTANTS.MIN_PEPPER_SIZE);
442
+ // Convert input to buffer
443
+ let data = HashUtils.toBuffer(input);
444
+ // Domain separation for different use cases
445
+ if (domainSeparation) {
446
+ const domainBuffer = HashUtils.toBuffer(domainSeparation);
447
+ data = HashUtils.combineBuffers([domainBuffer, data]);
448
+ }
449
+ // Apply salt and pepper
450
+ const saltBuffer = HashUtils.toBuffer(finalSalt);
451
+ const pepperBuffer = HashUtils.toBuffer(finalPepper);
452
+ data = HashUtils.combineBuffers([saltBuffer, data, pepperBuffer]);
453
+ let result;
454
+ // Use appropriate key derivation function
455
+ switch (keyDerivation) {
456
+ case "argon2":
457
+ result = await this.argon2Derive(data, saltBuffer, {
458
+ timeCost,
459
+ memoryCost: memorySize,
460
+ parallelism,
461
+ iterations,
462
+ });
463
+ break;
464
+ case "scrypt":
465
+ result = await this.scryptDerive(data, saltBuffer);
466
+ break;
467
+ case "bcrypt":
468
+ result = await this.bcryptDerive(data, saltBuffer);
469
+ break;
470
+ default:
471
+ result = this.pbkdf2Derive(data, saltBuffer, iterations);
472
+ }
473
+ // Apply quantum-resistant multi-algorithm hashing
474
+ if (algorithm === "multi-quantum" || options.quantumResistant) {
475
+ result = this.multiQuantumHash(result);
476
+ }
477
+ else {
478
+ result = HashAlgorithms.hashWithAlgorithm(result, algorithm);
479
+ }
480
+ return HashUtils.formatOutput(result, outputFormat);
481
+ }
482
+ /**
483
+ * NEW METHOD - Argon2 key derivation
484
+ */
485
+ static async argon2Derive(data, salt, options) {
486
+ if (argon2) {
487
+ try {
488
+ const hash = await argon2.hash(data, {
489
+ type: argon2.argon2id,
490
+ timeCost: options.timeCost,
491
+ memoryCost: options.memoryCost,
492
+ parallelism: options.parallelism,
493
+ salt: salt,
494
+ hashLength: 64,
495
+ });
496
+ return Buffer.from(hash);
497
+ }
498
+ catch (error) {
499
+ console.warn("Argon2 failed, falling back to PBKDF2");
500
+ }
501
+ }
502
+ return this.pbkdf2Derive(data, salt, options.iterations * 10);
503
+ }
504
+ /**
505
+ * NEW METHOD - Scrypt key derivation
506
+ */
507
+ static async scryptDerive(data, salt) {
508
+ try {
509
+ return crypto.scryptSync(data, salt, 64, {
510
+ N: 32768,
511
+ r: 8,
512
+ p: 1,
513
+ });
514
+ }
515
+ catch (error) {
516
+ console.warn("Scrypt failed, falling back to PBKDF2");
517
+ return this.pbkdf2Derive(data, salt, 100000);
518
+ }
519
+ }
520
+ /**
521
+ * NEW METHOD - BCrypt key derivation
522
+ */
523
+ static async bcryptDerive(data, salt) {
524
+ if (bcrypt) {
525
+ try {
526
+ const hash = await bcrypt.hash(data.toString("hex"), 12);
527
+ return Buffer.from(hash);
528
+ }
529
+ catch (error) {
530
+ console.warn("BCrypt failed, falling back to PBKDF2");
531
+ }
532
+ }
533
+ return this.pbkdf2Derive(data, salt, 50000);
534
+ }
535
+ /**
536
+ * NEW METHOD - Enhanced PBKDF2 key derivation
537
+ */
538
+ static pbkdf2Derive(data, salt, iterations) {
539
+ return crypto.pbkdf2Sync(data, salt, Math.max(iterations, 50000), 64, "sha512");
540
+ }
541
+ /**
542
+ * NEW METHOD - Multi-algorithm quantum-resistant hashing
543
+ */
544
+ static multiQuantumHash(data) {
545
+ let result = data;
546
+ for (let round = 0; round < this.SECURITY_CONSTANTS.QUANTUM_ROUNDS; round++) {
547
+ for (const algorithm of this.QUANTUM_ALGORITHMS) {
548
+ result = HashAlgorithms.hashWithAlgorithm(result, algorithm);
549
+ // Add entropy between algorithms
550
+ const entropy = crypto.randomBytes(16);
551
+ result = HashUtils.combineBuffers([result, entropy]);
552
+ result = HashAlgorithms.hashWithAlgorithm(result, "sha3-512");
553
+ }
554
+ }
555
+ return result;
556
+ }
557
+ /**
558
+ * NEW METHOD - Ultra-secure HMAC with quantum resistance
559
+ */
560
+ static async createQuantumHMAC(algorithm, key, data, options = {}) {
561
+ await ensureLibsInitialized();
562
+ const { encoding = "hex", keyDerivation = true, iterations = 100000, quantumResistant = true, } = options;
563
+ let keyBuffer = HashUtils.toBuffer(key);
564
+ const dataBuffer = HashUtils.toBuffer(data);
565
+ if (keyDerivation) {
566
+ const salt = crypto.randomBytes(32);
567
+ keyBuffer = (await this.quantumResistantHash(keyBuffer, {
568
+ salt,
569
+ keyDerivation: "argon2",
570
+ iterations,
571
+ quantumResistant,
572
+ }));
573
+ }
574
+ let hmacResult;
575
+ if (quantumResistant) {
576
+ const hmacs = [
577
+ crypto
578
+ .createHmac("sha3-512", keyBuffer)
579
+ .update(dataBuffer)
580
+ .digest(),
581
+ crypto
582
+ .createHmac("sha512", keyBuffer)
583
+ .update(dataBuffer)
584
+ .digest(),
585
+ this.blake3HMAC(keyBuffer, dataBuffer),
586
+ ];
587
+ hmacResult = HashUtils.combineBuffers(hmacs);
588
+ hmacResult = crypto
589
+ .createHash("sha3-512")
590
+ .update(hmacResult)
591
+ .digest();
592
+ }
593
+ else {
594
+ hmacResult = crypto
595
+ .createHmac(algorithm, keyBuffer)
596
+ .update(dataBuffer)
597
+ .digest();
598
+ }
599
+ switch (encoding) {
600
+ case "hex":
601
+ return hmacResult.toString("hex");
602
+ case "base64":
603
+ return hmacResult.toString("base64");
604
+ case "base64url":
605
+ return hmacResult
606
+ .toString("base64")
607
+ .replace(/\+/g, "-")
608
+ .replace(/\//g, "_")
609
+ .replace(/=/g, "");
610
+ default:
611
+ return hmacResult.toString("hex");
612
+ }
613
+ }
614
+ /**
615
+ * NEW METHOD - BLAKE3-based HMAC
616
+ */
617
+ static blake3HMAC(key, data) {
618
+ const ipad = Buffer.alloc(64, 0x36);
619
+ const opad = Buffer.alloc(64, 0x5c);
620
+ let keyPad = key.length > 64 ? this.blake3Hash(key) : key;
621
+ if (keyPad.length < 64) {
622
+ const padding = Buffer.alloc(64 - keyPad.length, 0);
623
+ keyPad = Buffer.concat([keyPad, padding]);
624
+ }
625
+ for (let i = 0; i < 64; i++) {
626
+ ipad[i] ^= keyPad[i];
627
+ opad[i] ^= keyPad[i];
628
+ }
629
+ const innerData = Buffer.concat([ipad, data]);
630
+ const innerHash = this.blake3Hash(innerData);
631
+ const outerData = Buffer.concat([opad, innerHash]);
632
+ return this.blake3Hash(outerData);
633
+ }
634
+ /**
635
+ * NEW METHOD - Secure random salt generation
636
+ */
637
+ static generateSecureSalt(size = 32) {
638
+ return crypto.randomBytes(Math.max(size, 16));
639
+ }
640
+ /**
641
+ * NEW METHOD - Enhanced secure comparison with additional timing normalization
642
+ */
643
+ static secureCompare(hash1, hash2) {
644
+ return this.constantTimeCompare(hash1, hash2);
645
+ }
646
+ /**
647
+ * NEW METHOD - Secure hash verification
648
+ */
649
+ static async verifyHash(input, expectedHash, options = {}) {
650
+ try {
651
+ const computedHash = await this.quantumResistantHash(input, options);
652
+ return this.constantTimeCompare(computedHash, expectedHash);
653
+ }
654
+ catch (error) {
655
+ console.error("Hash verification failed:", error);
656
+ return false;
657
+ }
658
+ }
659
+ /**
660
+ * NEW METHOD - Memory-hard proof of work
661
+ */
662
+ static async proofOfWork(challenge, difficulty = 4) {
663
+ let nonce = 0;
664
+ let attempts = 0;
665
+ const target = "0".repeat(Math.max(difficulty, 1));
666
+ while (true) {
667
+ const input = `${challenge}:${nonce}`;
668
+ const hash = await this.quantumResistantHash(input, {
669
+ algorithm: "blake3",
670
+ quantumResistant: false,
671
+ });
672
+ attempts++;
673
+ const hashStr = hash.toString();
674
+ if (hashStr.startsWith(target)) {
675
+ return {
676
+ nonce: nonce.toString(),
677
+ hash: hashStr,
678
+ attempts,
679
+ };
680
+ }
681
+ nonce++;
682
+ if (attempts > 10000000) {
683
+ throw new Error("Proof of work difficulty too high");
684
+ }
685
+ }
686
+ }
687
+ }
688
+ HashAlgorithms.QUANTUM_ALGORITHMS = [
689
+ "sha3-512",
690
+ "blake3",
691
+ "blake2b",
692
+ "shake256",
693
+ ];
694
+ HashAlgorithms.SECURITY_CONSTANTS = {
695
+ MIN_SALT_SIZE: 32,
696
+ MIN_PEPPER_SIZE: 16,
697
+ DEFAULT_ITERATIONS: 100000,
698
+ ARGON2_TIME_COST: 3,
699
+ ARGON2_MEMORY_COST: 65536, // 64MB
700
+ ARGON2_PARALLELISM: 4,
701
+ QUANTUM_ROUNDS: 5,
702
+ };
703
+
704
+ export { HashAlgorithms, HashAlgorithms as default };
705
+ //# sourceMappingURL=hash-algorithms.js.map