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,136 @@
1
+ 'use strict';
2
+
3
+ var keysCore = require('./keys/keys-core.js');
4
+ require('./keys/keys-logger.js');
5
+ require('./keys/keys-types.js');
6
+ require('./keys/keys-utils.js');
7
+ require('crypto');
8
+ require('./keys/algorithms/mods/PBKDF2Algo.js');
9
+
10
+ /**
11
+ * Legacy Keys implementation for key derivation and management.
12
+ * This class provides a backward-compatible interface for key derivation while leveraging
13
+ * the modern, optimized key derivation infrastructure. It serves as a facade to the {@link OptimizedKeys} class,
14
+ * simplifying interaction with cryptographic key operations and providing environment insights.
15
+ *
16
+ * @remarks
17
+ * - This class ensures compatibility with legacy systems while delegating core functionality to {@link OptimizedKeys}.
18
+ * - All methods are static, allowing direct usage without instantiation.
19
+ * - Designed to be thread-safe and efficient by reusing a singleton instance of {@link OptimizedKeys}.
20
+ *
21
+ * @public
22
+ */
23
+ /**
24
+ * ### Cryptographic Key Management
25
+ *
26
+ * Advanced key generation, derivation, and management utilities for
27
+ * symmetric and asymmetric cryptographic operations.
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * import { Keys } from "xypriss-security";
32
+ *
33
+ * // Generate encryption key
34
+ * const encryptionKey = Keys.generateEncryptionKey(256);
35
+ *
36
+ * // Derive key from password
37
+ * const derivedKey = await Keys.deriveKey("password", "salt");
38
+ * ```
39
+ */
40
+ class Keys {
41
+ /**
42
+ * Derives a cryptographic key from the provided input using specified options.
43
+ * This method delegates to the optimized key derivation system, ensuring high performance
44
+ * and adherence to cryptographic best practices.
45
+ *
46
+ * @param input - The input data for key derivation, either a password (string) or raw bytes (Uint8Array).
47
+ * @param options - Optional configuration for key derivation, including algorithm, iterations, and other parameters.
48
+ * If omitted, default values are applied based on the underlying {@link OptimizedKeys} implementation.
49
+ * @returns A hexadecimal string representing the derived cryptographic key.
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * const key = Keys.deriveKey('myPassword', { algorithm: 'PBKDF2', iterations: 100000 });
54
+ * console.log(key); // Outputs: "a1b2c3d4e5f6..."
55
+ * ```
56
+ *
57
+ * @remarks
58
+ * - Throws an invalid input error if the input format is invalid or unsupported.
59
+ * - The output length depends on the algorithm and options specified.
60
+ * - For security, ensure the input is securely handled to prevent leakage.
61
+ *
62
+ * @public
63
+ */
64
+ static deriveKey(input, options = {}) {
65
+ return keysCore.OptimizedKeys.getInstance().deriveKey(input, options);
66
+ }
67
+ /**
68
+ * Retrieves performance metrics for key derivation operations.
69
+ * Offers detailed insights into the efficiency and resource usage of the underlying
70
+ * optimized key derivation system.
71
+ *
72
+ * @returns An object containing performance metrics, such as derivation time (ms) and memory usage (MB).
73
+ *
74
+ * @example
75
+ * ```typescript
76
+ * const metrics = Keys.getMetrics();
77
+ * console.log(metrics); // Outputs: { derivationTimeMs: 10, memoryUsedMb: 2.5, operationsCount: 100, ... }
78
+ * ```
79
+ *
80
+ * @remarks
81
+ * - Metrics are aggregated from the {@link OptimizedKeys} instance and may include vendor-specific data.
82
+ * - Useful for debugging and optimizing key derivation processes in performance-critical applications.
83
+ *
84
+ * @public
85
+ */
86
+ static getMetrics() {
87
+ return keysCore.OptimizedKeys.getInstance().getMetrics();
88
+ }
89
+ /**
90
+ * Retrieves information about the current runtime environment.
91
+ * Includes details about such the as platform, supported cryptographic algorithms,
92
+ * and other environment-specific data relevant to key derivation.
93
+ *
94
+ * @returns An object containing environment-specific information, such as platform type and cryptographic capabilities.
95
+ *
96
+ * @example
97
+ * ```typescript
98
+ * const envInfo = Keys.getEnvironmentInfo();
99
+ * console.log('envInfo); // Outputs: ' { platform: 'Node.js', cryptoSupport: ['PBKDF2', 'Argon2'], version: '18.x', ... }
100
+ * ```
101
+ *
102
+ * @remarks
103
+ * - The exact structure of the returned object may vary depending on the runtime environment.
104
+ * - Useful for feature detection and compatibility checks in cross-platform applications.
105
+ *
106
+ * @public
107
+ */
108
+ static getEnvironmentInfo() {
109
+ return keysCore.OptimizedKeys.getInstance().getEnvironmentInfo();
110
+ }
111
+ /**
112
+ * Recommends an optimal key derivation algorithm based on the current runtime environment.
113
+ * Evaluates the environment to suggest a secure algorithm and performant algorithm, prioritizing security.
114
+ * security.
115
+ *
116
+ * @returns A string indicating the recommended key derivation algorithm (e.g., 'PBKDF2', 'Argon2').
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * const algorithm = Keys.getRecommendedAlgorithm();
121
+ * console.log(algorithm); // Outputs: 'Argon2'
122
+ * ```
123
+ *
124
+ * @remarks
125
+ * - The recommendation is based on factors like CPU architecture, memory availability, and cryptographic library support.
126
+ * - The recommended algorithm may differ across environments (e.g., browser vs. server).
127
+ *
128
+ * @public
129
+ */
130
+ static getRecommendedAlgorithm() {
131
+ return keysCore.OptimizedKeys.getInstance().getRecommendedAlgorithm();
132
+ }
133
+ }
134
+
135
+ exports.Keys = Keys;
136
+ //# sourceMappingURL=keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.js","sources":["../../../../../../mods/security/src/core/keys.ts"],"sourcesContent":[null],"names":["OptimizedKeys"],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;AAYG;AAKH;;;;;;;;;;;;;;;;AAgBG;MACU,IAAI,CAAA;AACb;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACI,IAAA,OAAO,SAAS,CACnB,KAA0B,EAC1B,UAAgC,EAAE,EAAA;QAElC,OAAOA,sBAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KAChE;AAED;;;;;;;;;;;;;;;;;;AAkBG;AACI,IAAA,OAAO,UAAU,GAAA;AACpB,QAAA,OAAOA,sBAAa,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;KACnD;AAED;;;;;;;;;;;;;;;;;;AAkBG;AACI,IAAA,OAAO,kBAAkB,GAAA;AAC5B,QAAA,OAAOA,sBAAa,CAAC,WAAW,EAAE,CAAC,kBAAkB,EAAE,CAAC;KAC3D;AAED;;;;;;;;;;;;;;;;;;AAkBG;AACI,IAAA,OAAO,uBAAuB,GAAA;AACjC,QAAA,OAAOA,sBAAa,CAAC,WAAW,EAAE,CAAC,uBAAuB,EAAE,CAAC;KAChE;AACJ;;;;"}
@@ -0,0 +1,122 @@
1
+ 'use strict';
2
+
3
+ var passwordCore = require('./password-core.js');
4
+ require('../random/random-types.js');
5
+ require('../random/random-sources.js');
6
+ require('crypto');
7
+ require('nehonix-uri-processor');
8
+ require('../../utils/memory/index.js');
9
+ require('../../types.js');
10
+ var passwordTypes = require('./password-types.js');
11
+ require('../hash/hash-core.js');
12
+ require('../hash/hash-types.js');
13
+ require('../hash/hash-security.js');
14
+ require('../hash/hash-advanced.js');
15
+ require('../../algorithms/hash-algorithms.js');
16
+ require('argon2');
17
+ require('child_process');
18
+ require('../../types/secure-memory.js');
19
+ require('https');
20
+ require('../../components/runtime-verification.js');
21
+ require('../../components/tamper-evident-logging.js');
22
+
23
+ /* ---------------------------------------------------------------------------------------------
24
+ * Copyright (c) NEHONIX INC. All rights reserved.
25
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
26
+ * -------------------------------------------------------------------------------------------
27
+ */
28
+ /**
29
+ * XyPrissSecurity Password Management Module => FPMM
30
+ *
31
+ * Modular, military-grade password management system
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * import { PasswordManager } from "xypriss-security/core/password";
36
+ *
37
+ * // Create password manager instance
38
+ * const pm = PasswordManager.getInstance();
39
+ *
40
+ * // Hash a password
41
+ * const hash = await pm.hash("mySecurePassword123!");
42
+ *
43
+ * // Verify a password
44
+ * const result = await pm.verify("mySecurePassword123!", hash);
45
+ * console.log(result.isValid); // true
46
+ *
47
+ * // Generate secure password
48
+ * const generated = pm.generatePassword({ length: 16, minStrengthScore: 90 });
49
+ * console.log(generated.password);
50
+ *
51
+ * // Migrate from bcrypt
52
+ * const migration = await pm.migrate("password", bcryptHash);
53
+ * if (migration.migrated) {
54
+ * console.log("Successfully migrated to XyPrissSecurity!");
55
+ * }
56
+ * ```
57
+ */
58
+ passwordCore.PasswordManager.getInstance();
59
+ /**
60
+ * Get default password policy
61
+ */
62
+ function getDefaultPasswordPolicy() {
63
+ return {
64
+ minLength: 8,
65
+ maxLength: 128,
66
+ requireUppercase: true,
67
+ requireLowercase: true,
68
+ requireNumbers: true,
69
+ requireSymbols: true,
70
+ minStrengthScore: 70,
71
+ forbiddenPatterns: [
72
+ /^[0-9]+$/, // All numbers
73
+ /^[a-zA-Z]+$/, // All letters
74
+ /^(.)\1{2,}$/, // Repeated characters
75
+ /^(qwerty|asdfgh|zxcvbn)/i, // Keyboard patterns
76
+ /^(password|admin|user)/i, // Common words
77
+ ],
78
+ forbiddenWords: [
79
+ "password",
80
+ "admin",
81
+ "user",
82
+ "login",
83
+ "welcome",
84
+ "123456",
85
+ "qwerty",
86
+ "abc123",
87
+ "password123",
88
+ ],
89
+ };
90
+ }
91
+ /**
92
+ * Get recommended security configuration
93
+ */
94
+ function getRecommendedConfig() {
95
+ return {
96
+ defaultAlgorithm: "argon2id",
97
+ defaultSecurityLevel: "high",
98
+ timingSafeVerification: true,
99
+ secureMemoryWipe: true,
100
+ enableMigration: true,
101
+ policy: getDefaultPasswordPolicy(),
102
+ };
103
+ }
104
+ // ===== DEFAULT INSTANCE =====
105
+ /**
106
+ * Default password manager instance
107
+ * Ready to use out of the box
108
+ */
109
+ passwordCore.PasswordManager.getInstance(getRecommendedConfig());
110
+
111
+ exports.PasswordManager = passwordCore.PasswordManager;
112
+ Object.defineProperty(exports, 'PasswordAlgorithm', {
113
+ enumerable: true,
114
+ get: function () { return passwordTypes.PasswordAlgorithm; }
115
+ });
116
+ Object.defineProperty(exports, 'PasswordSecurityLevel', {
117
+ enumerable: true,
118
+ get: function () { return passwordTypes.PasswordSecurityLevel; }
119
+ });
120
+ exports.getDefaultPasswordPolicy = getDefaultPasswordPolicy;
121
+ exports.getRecommendedConfig = getRecommendedConfig;
122
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../mods/security/src/core/password/index.ts"],"sourcesContent":[null],"names":["PasswordManager"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAIG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BG;AAgBeA,4BAAe,CAAC,WAAW,GAAG;AAyFhD;;AAEG;SACa,wBAAwB,GAAA;IACpC,OAAO;AACH,QAAA,SAAS,EAAE,CAAC;AACZ,QAAA,SAAS,EAAE,GAAG;AACd,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,cAAc,EAAE,IAAI;AACpB,QAAA,cAAc,EAAE,IAAI;AACpB,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,iBAAiB,EAAE;AACf,YAAA,UAAU;AACV,YAAA,aAAa;AACb,YAAA,aAAa;AACb,YAAA,0BAA0B;AAC1B,YAAA,yBAAyB;AAC5B,SAAA;AACD,QAAA,cAAc,EAAE;YACZ,UAAU;YACV,OAAO;YACP,MAAM;YACN,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,aAAa;AAChB,SAAA;KACJ,CAAC;AACN,CAAC;AAED;;AAEG;SACa,oBAAoB,GAAA;IAChC,OAAO;AACH,QAAA,gBAAgB,EAAE,UAAiB;AACnC,QAAA,oBAAoB,EAAE,MAAa;AACnC,QAAA,sBAAsB,EAAE,IAAI;AAC5B,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,eAAe,EAAE,IAAI;QACrB,MAAM,EAAE,wBAAwB,EAAE;KACrC,CAAC;AACN,CAAC;AA8HD;AAEA;;;AAGG;AACmCA,4BAAe,CAAC,WAAW,CAC7D,oBAAoB,EAAE;;;;;;;;;;;;;;"}
@@ -0,0 +1,397 @@
1
+ 'use strict';
2
+
3
+ var hashCore = require('../hash/hash-core.js');
4
+ var hashTypes = require('../hash/hash-types.js');
5
+ require('crypto');
6
+ require('../hash/hash-security.js');
7
+ require('../hash/hash-advanced.js');
8
+ require('../../algorithms/hash-algorithms.js');
9
+ var randomCore = require('../random/random-core.js');
10
+ require('../random/random-types.js');
11
+ require('../random/random-sources.js');
12
+ require('nehonix-uri-processor');
13
+ require('../../utils/memory/index.js');
14
+ var types = require('../../types.js');
15
+ var sideChannel = require('../../components/side-channel.js');
16
+ require('argon2');
17
+ require('child_process');
18
+ require('../../types/secure-memory.js');
19
+ require('https');
20
+ require('../../components/runtime-verification.js');
21
+ require('../../components/tamper-evident-logging.js');
22
+ var passwordTypes = require('./password-types.js');
23
+
24
+ /**
25
+ * 🔐 Password Algorithms Module
26
+ *
27
+ * Implements various password hashing algorithms with security optimizations
28
+ */
29
+ /**
30
+ * Password hashing algorithms implementation
31
+ */
32
+ class PasswordAlgorithms {
33
+ constructor(config) {
34
+ this.config = config;
35
+ }
36
+ /**
37
+ * Update configuration
38
+ */
39
+ updateConfig(config) {
40
+ this.config = config;
41
+ }
42
+ /**
43
+ * Hash password using specified algorithm
44
+ */
45
+ async hash(password, salt, options) {
46
+ switch (options.algorithm) {
47
+ case passwordTypes.PasswordAlgorithm.ARGON2ID:
48
+ return this.hashWithArgon2(password, salt, options, "id");
49
+ case passwordTypes.PasswordAlgorithm.ARGON2I:
50
+ return this.hashWithArgon2(password, salt, options, "i");
51
+ case passwordTypes.PasswordAlgorithm.ARGON2D:
52
+ return this.hashWithArgon2(password, salt, options, "d");
53
+ case passwordTypes.PasswordAlgorithm.SCRYPT:
54
+ return this.hashWithScrypt(password, salt, options);
55
+ case passwordTypes.PasswordAlgorithm.PBKDF2_SHA512:
56
+ return this.hashWithPBKDF2(password, salt, options);
57
+ case passwordTypes.PasswordAlgorithm.BCRYPT_PLUS:
58
+ return this.hashWithBcryptPlus(password, salt, options);
59
+ case passwordTypes.PasswordAlgorithm.MILITARY:
60
+ return this.hashWithMilitary(password, salt, options);
61
+ default:
62
+ throw new Error(`Unsupported algorithm: ${options.algorithm}`);
63
+ }
64
+ }
65
+ /**
66
+ * Verify password using specified algorithm
67
+ */
68
+ async verify(password, hash, salt, metadata) {
69
+ const options = {
70
+ algorithm: metadata.algorithm,
71
+ securityLevel: metadata.securityLevel,
72
+ iterations: metadata.iterations,
73
+ memorySize: metadata.memorySize,
74
+ parallelism: metadata.parallelism,
75
+ saltLength: metadata.saltLength,
76
+ };
77
+ const computedHash = await this.hash(password, salt, options);
78
+ // Use constant-time comparison to prevent timing attacks
79
+ return sideChannel.constantTimeEqual(hash, computedHash);
80
+ }
81
+ /**
82
+ * Hash with Argon2 (recommended)
83
+ */
84
+ async hashWithArgon2(password, salt, options, variant) {
85
+ // Try to use native Argon2 implementation
86
+ try {
87
+ const argon2 = await import('argon2').catch(() => null);
88
+ if (argon2) {
89
+ const argon2Options = {
90
+ type: variant === "i"
91
+ ? argon2.argon2i
92
+ : variant === "d"
93
+ ? argon2.argon2d
94
+ : argon2.argon2id,
95
+ memoryCost: options.memorySize || 65536,
96
+ timeCost: Math.floor((options.iterations || 100000) / 1000),
97
+ parallelism: options.parallelism || 4,
98
+ salt: Buffer.from(salt),
99
+ hashLength: 32,
100
+ };
101
+ const fullHash = await argon2.hash(password, argon2Options);
102
+ // Extract just the hash part from the full Argon2 format
103
+ return this.extractHashValue(fullHash);
104
+ }
105
+ }
106
+ catch (error) {
107
+ // Fall back to custom implementation
108
+ }
109
+ // Fallback: Use PBKDF2 with enhanced security
110
+ return this.hashWithEnhancedPBKDF2(password, salt, options, `argon2${variant}-fallback`);
111
+ }
112
+ /**
113
+ * Hash with scrypt
114
+ */
115
+ async hashWithScrypt(password, salt, options) {
116
+ try {
117
+ // Use Node.js built-in crypto.scrypt
118
+ const crypto = await import('crypto');
119
+ const scryptOptions = {
120
+ N: Math.pow(2, 14), // CPU/memory cost (16384 - more reasonable)
121
+ r: 8, // Block size
122
+ p: options.parallelism || 1,
123
+ };
124
+ // Use promisified scrypt
125
+ const result = await new Promise((resolve, reject) => {
126
+ crypto.scrypt(password, Buffer.from(salt), 32, scryptOptions, (err, derivedKey) => {
127
+ if (err)
128
+ reject(err);
129
+ else
130
+ resolve(derivedKey);
131
+ });
132
+ });
133
+ return result.toString("hex");
134
+ }
135
+ catch (error) {
136
+ // Fall back to enhanced PBKDF2
137
+ }
138
+ return this.hashWithEnhancedPBKDF2(password, salt, options, "scrypt-fallback");
139
+ }
140
+ /**
141
+ * Hash with PBKDF2-SHA512
142
+ */
143
+ async hashWithPBKDF2(password, salt, options) {
144
+ const iterations = options.iterations || 100000;
145
+ // Use XyPrissSecurity Hash module for PBKDF2
146
+ const hash = hashCore.Hash.createSecureHash(password, salt, {
147
+ algorithm: types.HashAlgorithm.PBKDF2,
148
+ iterations,
149
+ outputFormat: "hex",
150
+ strength: hashTypes.HashStrength.MILITARY,
151
+ memoryHard: false, // Explicitly disable memory-hard hashing
152
+ quantumResistant: false, // Explicitly disable quantum-resistant hashing
153
+ timingSafe: false, // Explicitly disable timing-safe hashing
154
+ });
155
+ // Extract just the hash part using our helper method
156
+ return this.extractHashValue(hash);
157
+ }
158
+ /**
159
+ * Enhanced PBKDF2 with multiple rounds and algorithms
160
+ */
161
+ async hashWithEnhancedPBKDF2(password, salt, options, prefix = "enhanced") {
162
+ const iterations = options.iterations || 100000;
163
+ // First round: PBKDF2-SHA512
164
+ let round1 = hashCore.Hash.createSecureHash(password, salt, {
165
+ algorithm: types.HashAlgorithm.PBKDF2,
166
+ iterations: Math.floor(iterations / 3),
167
+ outputFormat: "hex",
168
+ memoryHard: false,
169
+ quantumResistant: false,
170
+ timingSafe: false,
171
+ });
172
+ // Extract just the hash using our helper method
173
+ round1 = this.extractHashValue(round1);
174
+ // Second round: SHA3-512
175
+ let round2 = hashCore.Hash.createSecureHash(round1, salt, {
176
+ algorithm: types.HashAlgorithm.SHA3_512,
177
+ iterations: Math.floor(iterations / 3),
178
+ outputFormat: "hex",
179
+ memoryHard: false,
180
+ quantumResistant: false,
181
+ timingSafe: false,
182
+ });
183
+ // Extract just the hash using our helper method
184
+ round2 = this.extractHashValue(round2);
185
+ // Third round: BLAKE3
186
+ let finalHash = hashCore.Hash.createSecureHash(round2, salt, {
187
+ algorithm: types.HashAlgorithm.BLAKE3,
188
+ iterations: Math.floor(iterations / 3),
189
+ outputFormat: "hex",
190
+ memoryHard: false,
191
+ quantumResistant: false,
192
+ timingSafe: false,
193
+ });
194
+ // Extract just the hash using our helper method
195
+ finalHash = this.extractHashValue(finalHash);
196
+ return `${prefix}:${finalHash}`;
197
+ }
198
+ /**
199
+ * Enhanced bcrypt with additional security layers
200
+ */
201
+ async hashWithBcryptPlus(password, salt, options) {
202
+ try {
203
+ const bcrypt = await import('bcrypt').catch(() => null);
204
+ if (bcrypt) {
205
+ // First layer: Standard bcrypt
206
+ const rounds = Math.min(15, Math.max(10, Math.floor((options.iterations || 100000) / 10000)));
207
+ const bcryptHash = await bcrypt.hash(password, rounds);
208
+ // Second layer: PBKDF2 on bcrypt result
209
+ let enhancedHash = hashCore.Hash.createSecureHash(bcryptHash, salt, {
210
+ algorithm: types.HashAlgorithm.PBKDF2,
211
+ iterations: 50000,
212
+ outputFormat: "hex",
213
+ memoryHard: false,
214
+ quantumResistant: false,
215
+ timingSafe: false,
216
+ });
217
+ // Extract just the hash using our helper method
218
+ enhancedHash = this.extractHashValue(enhancedHash);
219
+ return `bcrypt-plus:${enhancedHash}`;
220
+ }
221
+ }
222
+ catch (error) {
223
+ // Fall back to enhanced PBKDF2
224
+ }
225
+ return this.hashWithEnhancedPBKDF2(password, salt, options, "bcrypt-plus-fallback");
226
+ }
227
+ /**
228
+ * Military-grade multi-layer hashing
229
+ */
230
+ async hashWithMilitary(password, salt, options) {
231
+ const iterations = options.iterations || 200000;
232
+ // Layer 1: Key stretching with PBKDF2-SHA512
233
+ let layer1 = hashCore.Hash.createSecureHash(password, salt, {
234
+ algorithm: types.HashAlgorithm.PBKDF2,
235
+ iterations: Math.floor(iterations / 4),
236
+ outputFormat: "hex",
237
+ memoryHard: false,
238
+ quantumResistant: false,
239
+ timingSafe: false,
240
+ });
241
+ // Extract just the hash using our helper method
242
+ layer1 = this.extractHashValue(layer1);
243
+ // Layer 2: Memory-hard function simulation
244
+ let layer2 = layer1;
245
+ for (let i = 0; i < 1000; i++) {
246
+ const tempSalt = randomCore.SecureRandom.generateSalt(32);
247
+ let tempHash = hashCore.Hash.createSecureHash(layer2, tempSalt, {
248
+ algorithm: types.HashAlgorithm.SHA3_512,
249
+ outputFormat: "hex",
250
+ memoryHard: false,
251
+ quantumResistant: false,
252
+ timingSafe: false,
253
+ });
254
+ // Extract just the hash using our helper method
255
+ layer2 = this.extractHashValue(tempHash);
256
+ }
257
+ // Layer 3: BLAKE3 with high iterations
258
+ let layer3 = hashCore.Hash.createSecureHash(layer2, salt, {
259
+ algorithm: types.HashAlgorithm.BLAKE3,
260
+ iterations: Math.floor(iterations / 4),
261
+ outputFormat: "hex",
262
+ memoryHard: false,
263
+ quantumResistant: false,
264
+ timingSafe: false,
265
+ });
266
+ // Extract just the hash using our helper method
267
+ layer3 = this.extractHashValue(layer3);
268
+ // Layer 4: Final hardening with SHA3-512
269
+ let finalHash = hashCore.Hash.createSecureHash(layer3, salt, {
270
+ algorithm: types.HashAlgorithm.SHA3_512,
271
+ iterations: Math.floor(iterations / 4),
272
+ outputFormat: "hex",
273
+ strength: hashTypes.HashStrength.MILITARY,
274
+ memoryHard: false,
275
+ quantumResistant: false,
276
+ timingSafe: false,
277
+ });
278
+ // Extract just the hash using our helper method
279
+ finalHash = this.extractHashValue(finalHash);
280
+ return `military:${finalHash}`;
281
+ }
282
+ // ===== PRIVATE HELPER METHODS =====
283
+ /**
284
+ * Extract just the hash value from complex hash formats
285
+ */
286
+ extractHashValue(hashResult) {
287
+ // Handle Argon2 format: $argon2id$v=19$m=65536,t=3,p=4$salt$hash
288
+ if (hashResult.startsWith("$argon2")) {
289
+ const parts = hashResult.split("$");
290
+ if (parts.length >= 6) {
291
+ return parts[5]; // The actual hash is the last part
292
+ }
293
+ }
294
+ // Handle PBKDF2 format: $pbkdf2$rounds$salt$hash
295
+ if (hashResult.startsWith("$pbkdf2")) {
296
+ const parts = hashResult.split("$");
297
+ if (parts.length >= 5) {
298
+ return parts[4]; // The actual hash
299
+ }
300
+ }
301
+ // Handle bcrypt format: $2b$rounds$salthash (extract hash part)
302
+ if (hashResult.startsWith("$2")) {
303
+ const parts = hashResult.split("$");
304
+ if (parts.length >= 4) {
305
+ const saltAndHash = parts[3];
306
+ if (saltAndHash.length > 22) {
307
+ return saltAndHash.substring(22); // bcrypt hash after 22-char salt
308
+ }
309
+ }
310
+ }
311
+ // Handle scrypt format: $scrypt$N$r$p$salt$hash
312
+ if (hashResult.startsWith("$scrypt")) {
313
+ const parts = hashResult.split("$");
314
+ if (parts.length >= 7) {
315
+ return parts[6]; // The actual hash
316
+ }
317
+ }
318
+ // Handle any other $ delimited format - take the last part
319
+ if (hashResult.includes("$")) {
320
+ const parts = hashResult.split("$");
321
+ return parts[parts.length - 1];
322
+ }
323
+ // If no special format, return as-is
324
+ return hashResult;
325
+ }
326
+ /**
327
+ * Get algorithm-specific default options
328
+ */
329
+ getAlgorithmDefaults(algorithm) {
330
+ switch (algorithm) {
331
+ case passwordTypes.PasswordAlgorithm.ARGON2ID:
332
+ case passwordTypes.PasswordAlgorithm.ARGON2I:
333
+ case passwordTypes.PasswordAlgorithm.ARGON2D:
334
+ return {
335
+ iterations: 3,
336
+ memorySize: 65536, // 64MB
337
+ parallelism: 4,
338
+ saltLength: 32,
339
+ };
340
+ case passwordTypes.PasswordAlgorithm.SCRYPT:
341
+ return {
342
+ iterations: 32768, // N parameter
343
+ memorySize: 8, // r parameter
344
+ parallelism: 1, // p parameter
345
+ saltLength: 32,
346
+ };
347
+ case passwordTypes.PasswordAlgorithm.PBKDF2_SHA512:
348
+ return {
349
+ iterations: 100000,
350
+ saltLength: 32,
351
+ };
352
+ case passwordTypes.PasswordAlgorithm.BCRYPT_PLUS:
353
+ return {
354
+ iterations: 120000, // Equivalent to bcrypt rounds + PBKDF2
355
+ saltLength: 32,
356
+ };
357
+ case passwordTypes.PasswordAlgorithm.MILITARY:
358
+ return {
359
+ iterations: 200000,
360
+ memorySize: 131072, // 128MB equivalent
361
+ parallelism: 8,
362
+ saltLength: 64,
363
+ };
364
+ default:
365
+ return {
366
+ iterations: 100000,
367
+ saltLength: 32,
368
+ };
369
+ }
370
+ }
371
+ /**
372
+ * Estimate hashing time for algorithm
373
+ */
374
+ estimateHashingTime(algorithm, options) {
375
+ // Rough estimates in milliseconds
376
+ switch (algorithm) {
377
+ case passwordTypes.PasswordAlgorithm.ARGON2ID:
378
+ case passwordTypes.PasswordAlgorithm.ARGON2I:
379
+ case passwordTypes.PasswordAlgorithm.ARGON2D:
380
+ return ((options.memorySize || 65536) / 1000 +
381
+ (options.iterations || 3) * 100);
382
+ case passwordTypes.PasswordAlgorithm.SCRYPT:
383
+ return (options.iterations || 32768) / 100;
384
+ case passwordTypes.PasswordAlgorithm.PBKDF2_SHA512:
385
+ return (options.iterations || 100000) / 1000;
386
+ case passwordTypes.PasswordAlgorithm.BCRYPT_PLUS:
387
+ return (options.iterations || 120000) / 500;
388
+ case passwordTypes.PasswordAlgorithm.MILITARY:
389
+ return (options.iterations || 200000) / 200;
390
+ default:
391
+ return 100; // Default estimate
392
+ }
393
+ }
394
+ }
395
+
396
+ exports.PasswordAlgorithms = PasswordAlgorithms;
397
+ //# sourceMappingURL=password-algorithms.js.map