@lindorm/aegis 0.4.3 → 0.5.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 (481) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/__tests__/jwt-interop.test.ts +13 -10
  3. package/dist/classes/Aegis.d.ts +13 -20
  4. package/dist/classes/Aegis.d.ts.map +1 -1
  5. package/dist/classes/Aegis.js +34 -120
  6. package/dist/classes/Aegis.js.map +1 -1
  7. package/dist/classes/JweKit.d.ts +1 -0
  8. package/dist/classes/JweKit.d.ts.map +1 -1
  9. package/dist/classes/JweKit.js +66 -18
  10. package/dist/classes/JweKit.js.map +1 -1
  11. package/dist/classes/JwsKit.d.ts +1 -0
  12. package/dist/classes/JwsKit.d.ts.map +1 -1
  13. package/dist/classes/JwsKit.js +60 -18
  14. package/dist/classes/JwsKit.js.map +1 -1
  15. package/dist/classes/JwtKit.d.ts +2 -0
  16. package/dist/classes/JwtKit.d.ts.map +1 -1
  17. package/dist/classes/JwtKit.js +101 -22
  18. package/dist/classes/JwtKit.js.map +1 -1
  19. package/dist/classes/index.d.ts +0 -3
  20. package/dist/classes/index.d.ts.map +1 -1
  21. package/dist/classes/index.js +0 -3
  22. package/dist/classes/index.js.map +1 -1
  23. package/dist/constants/token-type.d.ts +6 -0
  24. package/dist/constants/token-type.d.ts.map +1 -0
  25. package/dist/constants/token-type.js +20 -0
  26. package/dist/constants/token-type.js.map +1 -0
  27. package/dist/errors/index.d.ts +0 -3
  28. package/dist/errors/index.d.ts.map +1 -1
  29. package/dist/errors/index.js +0 -3
  30. package/dist/errors/index.js.map +1 -1
  31. package/dist/guards/index.d.ts +3 -0
  32. package/dist/guards/index.d.ts.map +1 -0
  33. package/dist/{utils/private/cose → guards}/index.js +2 -2
  34. package/dist/guards/index.js.map +1 -0
  35. package/dist/guards/is-parsed-jws.d.ts +3 -0
  36. package/dist/guards/is-parsed-jws.d.ts.map +1 -0
  37. package/dist/guards/is-parsed-jws.js +6 -0
  38. package/dist/guards/is-parsed-jws.js.map +1 -0
  39. package/dist/guards/is-parsed-jwt.d.ts +3 -0
  40. package/dist/guards/is-parsed-jwt.d.ts.map +1 -0
  41. package/dist/guards/is-parsed-jwt.js +6 -0
  42. package/dist/guards/is-parsed-jwt.js.map +1 -0
  43. package/dist/index.d.ts +2 -0
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +1 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/interfaces/Aegis.d.ts +8 -22
  48. package/dist/interfaces/Aegis.d.ts.map +1 -1
  49. package/dist/interfaces/index.d.ts +0 -3
  50. package/dist/interfaces/index.d.ts.map +1 -1
  51. package/dist/interfaces/index.js +0 -3
  52. package/dist/interfaces/index.js.map +1 -1
  53. package/dist/internal/constants/aegis-profile-keys.d.ts +2 -0
  54. package/dist/internal/constants/aegis-profile-keys.d.ts.map +1 -0
  55. package/dist/internal/constants/aegis-profile-keys.js +37 -0
  56. package/dist/internal/constants/aegis-profile-keys.js.map +1 -0
  57. package/dist/internal/constants/format.d.ts.map +1 -0
  58. package/dist/internal/constants/format.js.map +1 -0
  59. package/dist/{constants/private → internal/constants}/header.d.ts +1 -1
  60. package/dist/internal/constants/header.d.ts.map +1 -0
  61. package/dist/{constants/private → internal/constants}/header.js +0 -4
  62. package/dist/internal/constants/header.js.map +1 -0
  63. package/dist/internal/utils/compute-jwk-thumbprint.d.ts +4 -0
  64. package/dist/internal/utils/compute-jwk-thumbprint.d.ts.map +1 -0
  65. package/dist/internal/utils/compute-jwk-thumbprint.js +25 -0
  66. package/dist/internal/utils/compute-jwk-thumbprint.js.map +1 -0
  67. package/dist/internal/utils/compute-typ-header.d.ts +7 -0
  68. package/dist/internal/utils/compute-typ-header.d.ts.map +1 -0
  69. package/dist/internal/utils/compute-typ-header.js +68 -0
  70. package/dist/internal/utils/compute-typ-header.js.map +1 -0
  71. package/dist/internal/utils/create-hash.d.ts.map +1 -0
  72. package/dist/{utils/private → internal/utils}/create-hash.js +2 -2
  73. package/dist/internal/utils/create-hash.js.map +1 -0
  74. package/dist/internal/utils/extract-aegis-profile.d.ts +7 -0
  75. package/dist/internal/utils/extract-aegis-profile.d.ts.map +1 -0
  76. package/dist/internal/utils/extract-aegis-profile.js +34 -0
  77. package/dist/internal/utils/extract-aegis-profile.js.map +1 -0
  78. package/dist/internal/utils/extract-claims.d.ts +15 -0
  79. package/dist/internal/utils/extract-claims.d.ts.map +1 -0
  80. package/dist/internal/utils/extract-claims.js +201 -0
  81. package/dist/internal/utils/extract-claims.js.map +1 -0
  82. package/dist/internal/utils/extract-token-delegation.d.ts +6 -0
  83. package/dist/internal/utils/extract-token-delegation.d.ts.map +1 -0
  84. package/dist/internal/utils/extract-token-delegation.js +28 -0
  85. package/dist/internal/utils/extract-token-delegation.js.map +1 -0
  86. package/dist/internal/utils/generate-token-id.d.ts +2 -0
  87. package/dist/internal/utils/generate-token-id.d.ts.map +1 -0
  88. package/dist/internal/utils/generate-token-id.js +9 -0
  89. package/dist/internal/utils/generate-token-id.js.map +1 -0
  90. package/dist/internal/utils/jose-header.d.ts +4 -0
  91. package/dist/internal/utils/jose-header.d.ts.map +1 -0
  92. package/dist/{utils/private → internal/utils}/jose-header.js +12 -11
  93. package/dist/internal/utils/jose-header.js.map +1 -0
  94. package/dist/internal/utils/jose-signature.d.ts.map +1 -0
  95. package/dist/{utils/private → internal/utils}/jose-signature.js +3 -3
  96. package/dist/internal/utils/jose-signature.js.map +1 -0
  97. package/dist/internal/utils/jwt-payload.d.ts.map +1 -0
  98. package/dist/{utils/private → internal/utils}/jwt-payload.js +51 -44
  99. package/dist/internal/utils/jwt-payload.js.map +1 -0
  100. package/dist/internal/utils/jwt-validate.d.ts.map +1 -0
  101. package/dist/internal/utils/jwt-validate.js.map +1 -0
  102. package/dist/internal/utils/jwt-verify.d.ts.map +1 -0
  103. package/dist/{utils/private → internal/utils}/jwt-verify.js +30 -6
  104. package/dist/internal/utils/jwt-verify.js.map +1 -0
  105. package/dist/internal/utils/parse-introspection.d.ts +7 -0
  106. package/dist/internal/utils/parse-introspection.d.ts.map +1 -0
  107. package/dist/internal/utils/parse-introspection.js +28 -0
  108. package/dist/internal/utils/parse-introspection.js.map +1 -0
  109. package/dist/internal/utils/parse-userinfo.d.ts +5 -0
  110. package/dist/internal/utils/parse-userinfo.d.ts.map +1 -0
  111. package/dist/internal/utils/parse-userinfo.js +26 -0
  112. package/dist/internal/utils/parse-userinfo.js.map +1 -0
  113. package/dist/internal/utils/resolve-cert-binding.d.ts +4 -0
  114. package/dist/internal/utils/resolve-cert-binding.d.ts.map +1 -0
  115. package/dist/internal/utils/resolve-cert-binding.js +30 -0
  116. package/dist/internal/utils/resolve-cert-binding.js.map +1 -0
  117. package/dist/internal/utils/token-header.d.ts +4 -0
  118. package/dist/internal/utils/token-header.d.ts.map +1 -0
  119. package/dist/{utils/private → internal/utils}/token-header.js +5 -16
  120. package/dist/internal/utils/token-header.js.map +1 -0
  121. package/dist/internal/utils/validate-actor.d.ts +3 -0
  122. package/dist/internal/utils/validate-actor.d.ts.map +1 -0
  123. package/dist/internal/utils/validate-actor.js +27 -0
  124. package/dist/internal/utils/validate-actor.js.map +1 -0
  125. package/dist/internal/utils/validate-crit.d.ts +4 -0
  126. package/dist/internal/utils/validate-crit.d.ts.map +1 -0
  127. package/dist/internal/utils/validate-crit.js +55 -0
  128. package/dist/internal/utils/validate-crit.js.map +1 -0
  129. package/dist/internal/utils/validate.d.ts.map +1 -0
  130. package/dist/internal/utils/validate.js.map +1 -0
  131. package/dist/internal/utils/verify-cert-binding.d.ts +14 -0
  132. package/dist/internal/utils/verify-cert-binding.d.ts.map +1 -0
  133. package/dist/internal/utils/verify-cert-binding.js +25 -0
  134. package/dist/internal/utils/verify-cert-binding.js.map +1 -0
  135. package/dist/internal/utils/verify-dpop-proof.d.ts +10 -0
  136. package/dist/internal/utils/verify-dpop-proof.d.ts.map +1 -0
  137. package/dist/internal/utils/verify-dpop-proof.js +76 -0
  138. package/dist/internal/utils/verify-dpop-proof.js.map +1 -0
  139. package/dist/mocks/create-mock-aegis.d.ts +2 -1
  140. package/dist/mocks/create-mock-aegis.d.ts.map +1 -1
  141. package/dist/mocks/create-mock-aegis.js +49 -75
  142. package/dist/mocks/create-mock-aegis.js.map +1 -1
  143. package/dist/mocks/index.d.ts +1 -1
  144. package/dist/mocks/index.d.ts.map +1 -1
  145. package/dist/mocks/index.js +3 -15
  146. package/dist/mocks/index.js.map +1 -1
  147. package/dist/types/aegis.d.ts +3 -0
  148. package/dist/types/aegis.d.ts.map +1 -1
  149. package/dist/types/claims/act-claim.d.ts +8 -0
  150. package/dist/types/claims/act-claim.d.ts.map +1 -0
  151. package/dist/{interfaces/CwsKit.js → types/claims/act-claim.js} +1 -1
  152. package/dist/types/claims/act-claim.js.map +1 -0
  153. package/dist/types/claims/aegis-introspection.d.ts +16 -0
  154. package/dist/types/claims/aegis-introspection.d.ts.map +1 -0
  155. package/dist/types/claims/aegis-introspection.js +3 -0
  156. package/dist/types/claims/aegis-introspection.js.map +1 -0
  157. package/dist/types/claims/aegis-profile.d.ts +44 -0
  158. package/dist/types/claims/aegis-profile.d.ts.map +1 -0
  159. package/dist/types/claims/aegis-profile.js +3 -0
  160. package/dist/types/claims/aegis-profile.js.map +1 -0
  161. package/dist/types/claims/aegis-userinfo.d.ts +5 -0
  162. package/dist/types/claims/aegis-userinfo.d.ts.map +1 -0
  163. package/dist/types/claims/aegis-userinfo.js +3 -0
  164. package/dist/types/claims/aegis-userinfo.js.map +1 -0
  165. package/dist/types/claims/confirmation-claim.d.ts +9 -0
  166. package/dist/types/claims/confirmation-claim.d.ts.map +1 -0
  167. package/dist/types/claims/confirmation-claim.js +3 -0
  168. package/dist/types/claims/confirmation-claim.js.map +1 -0
  169. package/dist/types/claims/delegation-claims.d.ts +6 -0
  170. package/dist/types/claims/delegation-claims.d.ts.map +1 -0
  171. package/dist/types/claims/delegation-claims.js +3 -0
  172. package/dist/types/claims/delegation-claims.js.map +1 -0
  173. package/dist/types/claims/index.d.ts +13 -0
  174. package/dist/types/claims/index.d.ts.map +1 -0
  175. package/dist/types/{cws → claims}/index.js +12 -4
  176. package/dist/types/claims/index.js.map +1 -0
  177. package/dist/types/claims/jwt/act-claim-wire.d.ts +8 -0
  178. package/dist/types/claims/jwt/act-claim-wire.d.ts.map +1 -0
  179. package/dist/types/claims/jwt/act-claim-wire.js +3 -0
  180. package/dist/types/claims/jwt/act-claim-wire.js.map +1 -0
  181. package/dist/types/claims/jwt/confirmation-claim-wire.d.ts +9 -0
  182. package/dist/types/claims/jwt/confirmation-claim-wire.d.ts.map +1 -0
  183. package/dist/types/claims/jwt/confirmation-claim-wire.js +3 -0
  184. package/dist/types/claims/jwt/confirmation-claim-wire.js.map +1 -0
  185. package/dist/types/claims/jwt/delegation-claims-wire.d.ts +6 -0
  186. package/dist/types/claims/jwt/delegation-claims-wire.d.ts.map +1 -0
  187. package/dist/types/claims/jwt/delegation-claims-wire.js +3 -0
  188. package/dist/types/claims/jwt/delegation-claims-wire.js.map +1 -0
  189. package/dist/types/claims/jwt/index.d.ts +10 -0
  190. package/dist/types/claims/jwt/index.d.ts.map +1 -0
  191. package/dist/types/{cwe → claims/jwt}/index.js +9 -4
  192. package/dist/types/claims/jwt/index.js.map +1 -0
  193. package/dist/types/claims/jwt/jwt-claims.d.ts +8 -0
  194. package/dist/types/claims/jwt/jwt-claims.d.ts.map +1 -0
  195. package/dist/types/claims/jwt/jwt-claims.js.map +1 -0
  196. package/dist/types/claims/jwt/lindorm-claims-wire.d.ts +16 -0
  197. package/dist/types/claims/jwt/lindorm-claims-wire.d.ts.map +1 -0
  198. package/dist/types/claims/jwt/lindorm-claims-wire.js +3 -0
  199. package/dist/types/claims/jwt/lindorm-claims-wire.js.map +1 -0
  200. package/dist/types/claims/jwt/oauth-claims-wire.d.ts +6 -0
  201. package/dist/types/claims/jwt/oauth-claims-wire.d.ts.map +1 -0
  202. package/dist/types/claims/jwt/oauth-claims-wire.js +3 -0
  203. package/dist/types/claims/jwt/oauth-claims-wire.js.map +1 -0
  204. package/dist/types/claims/jwt/oidc-claims-wire.d.ts +11 -0
  205. package/dist/types/claims/jwt/oidc-claims-wire.d.ts.map +1 -0
  206. package/dist/types/claims/jwt/oidc-claims-wire.js +3 -0
  207. package/dist/types/claims/jwt/oidc-claims-wire.js.map +1 -0
  208. package/dist/types/claims/jwt/pop-claims-wire.d.ts +5 -0
  209. package/dist/types/claims/jwt/pop-claims-wire.d.ts.map +1 -0
  210. package/dist/types/claims/jwt/pop-claims-wire.js +3 -0
  211. package/dist/types/claims/jwt/pop-claims-wire.js.map +1 -0
  212. package/dist/types/claims/jwt/std-claims-wire.d.ts +10 -0
  213. package/dist/types/claims/jwt/std-claims-wire.d.ts.map +1 -0
  214. package/dist/types/claims/jwt/std-claims-wire.js +3 -0
  215. package/dist/types/claims/jwt/std-claims-wire.js.map +1 -0
  216. package/dist/types/claims/lindorm-claims.d.ts +18 -0
  217. package/dist/types/claims/lindorm-claims.d.ts.map +1 -0
  218. package/dist/types/claims/lindorm-claims.js +3 -0
  219. package/dist/types/claims/lindorm-claims.js.map +1 -0
  220. package/dist/types/claims/oauth-claims.d.ts +6 -0
  221. package/dist/types/claims/oauth-claims.d.ts.map +1 -0
  222. package/dist/types/claims/oauth-claims.js +3 -0
  223. package/dist/types/claims/oauth-claims.js.map +1 -0
  224. package/dist/types/claims/oidc-claims.d.ts +11 -0
  225. package/dist/types/claims/oidc-claims.d.ts.map +1 -0
  226. package/dist/types/{cose-target.js → claims/oidc-claims.js} +1 -1
  227. package/dist/types/claims/oidc-claims.js.map +1 -0
  228. package/dist/types/claims/pop-claims.d.ts +5 -0
  229. package/dist/types/claims/pop-claims.d.ts.map +1 -0
  230. package/dist/types/{cwe/cwe-decode.js → claims/pop-claims.js} +1 -1
  231. package/dist/types/claims/pop-claims.js.map +1 -0
  232. package/dist/types/claims/std-claims.d.ts +10 -0
  233. package/dist/types/claims/std-claims.d.ts.map +1 -0
  234. package/dist/{interfaces/CwtKit.js → types/claims/std-claims.js} +1 -1
  235. package/dist/types/claims/std-claims.js.map +1 -0
  236. package/dist/types/header.d.ts +15 -8
  237. package/dist/types/header.d.ts.map +1 -1
  238. package/dist/types/index.d.ts +2 -4
  239. package/dist/types/index.d.ts.map +1 -1
  240. package/dist/types/index.js +2 -4
  241. package/dist/types/index.js.map +1 -1
  242. package/dist/types/jwe/jwe-decrypt.d.ts +2 -4
  243. package/dist/types/jwe/jwe-decrypt.d.ts.map +1 -1
  244. package/dist/types/jwe/jwe-encrypt.d.ts +4 -1
  245. package/dist/types/jwe/jwe-encrypt.d.ts.map +1 -1
  246. package/dist/types/jwe/jwe-kit.d.ts +2 -7
  247. package/dist/types/jwe/jwe-kit.d.ts.map +1 -1
  248. package/dist/types/jws/jws-kit.d.ts +2 -6
  249. package/dist/types/jws/jws-kit.d.ts.map +1 -1
  250. package/dist/types/jws/jws-parse.d.ts +2 -5
  251. package/dist/types/jws/jws-parse.d.ts.map +1 -1
  252. package/dist/types/jws/jws-sign.d.ts +5 -2
  253. package/dist/types/jws/jws-sign.d.ts.map +1 -1
  254. package/dist/types/jwt/index.d.ts +3 -1
  255. package/dist/types/jwt/index.d.ts.map +1 -1
  256. package/dist/types/jwt/index.js +3 -1
  257. package/dist/types/jwt/index.js.map +1 -1
  258. package/dist/types/jwt/jwt-claim-matchers.d.ts +28 -0
  259. package/dist/types/jwt/jwt-claim-matchers.d.ts.map +1 -0
  260. package/dist/types/jwt/jwt-claim-matchers.js +3 -0
  261. package/dist/types/jwt/jwt-claim-matchers.js.map +1 -0
  262. package/dist/types/jwt/jwt-decode.d.ts +1 -1
  263. package/dist/types/jwt/jwt-decode.d.ts.map +1 -1
  264. package/dist/types/jwt/jwt-delegation.d.ts +7 -0
  265. package/dist/types/jwt/jwt-delegation.d.ts.map +1 -0
  266. package/dist/types/jwt/jwt-delegation.js +3 -0
  267. package/dist/types/jwt/jwt-delegation.js.map +1 -0
  268. package/dist/types/jwt/jwt-dpop.d.ts +10 -0
  269. package/dist/types/jwt/jwt-dpop.d.ts.map +1 -0
  270. package/dist/types/{cwe/cwe-kit.js → jwt/jwt-dpop.js} +1 -1
  271. package/dist/types/jwt/jwt-dpop.js.map +1 -0
  272. package/dist/types/jwt/jwt-kit.d.ts +3 -5
  273. package/dist/types/jwt/jwt-kit.d.ts.map +1 -1
  274. package/dist/types/jwt/jwt-parse.d.ts +11 -27
  275. package/dist/types/jwt/jwt-parse.d.ts.map +1 -1
  276. package/dist/types/jwt/jwt-sign.d.ts +6 -23
  277. package/dist/types/jwt/jwt-sign.d.ts.map +1 -1
  278. package/dist/types/jwt/jwt-validate.d.ts +2 -23
  279. package/dist/types/jwt/jwt-validate.d.ts.map +1 -1
  280. package/dist/types/jwt/jwt-verify.d.ts +13 -25
  281. package/dist/types/jwt/jwt-verify.d.ts.map +1 -1
  282. package/dist/types/kit.d.ts +12 -0
  283. package/dist/types/kit.d.ts.map +1 -0
  284. package/dist/{interfaces/CweKit.js → types/kit.js} +1 -1
  285. package/dist/types/kit.js.map +1 -0
  286. package/dist/types/level-of-assurance.d.ts +1 -1
  287. package/dist/types/level-of-assurance.d.ts.map +1 -1
  288. package/package.json +39 -18
  289. package/tsconfig.interop.json +5 -1
  290. package/__tests__/cose-interop.test.ts +0 -1127
  291. package/dist/classes/CweKit.d.ts +0 -14
  292. package/dist/classes/CweKit.d.ts.map +0 -1
  293. package/dist/classes/CweKit.js +0 -149
  294. package/dist/classes/CweKit.js.map +0 -1
  295. package/dist/classes/CwsKit.d.ts +0 -13
  296. package/dist/classes/CwsKit.d.ts.map +0 -1
  297. package/dist/classes/CwsKit.js +0 -136
  298. package/dist/classes/CwsKit.js.map +0 -1
  299. package/dist/classes/CwtKit.d.ts +0 -17
  300. package/dist/classes/CwtKit.d.ts.map +0 -1
  301. package/dist/classes/CwtKit.js +0 -158
  302. package/dist/classes/CwtKit.js.map +0 -1
  303. package/dist/constants/private/cose.d.ts +0 -19
  304. package/dist/constants/private/cose.d.ts.map +0 -1
  305. package/dist/constants/private/cose.js +0 -116
  306. package/dist/constants/private/cose.js.map +0 -1
  307. package/dist/constants/private/format.d.ts.map +0 -1
  308. package/dist/constants/private/format.js.map +0 -1
  309. package/dist/constants/private/header.d.ts.map +0 -1
  310. package/dist/constants/private/header.js.map +0 -1
  311. package/dist/constants/private/index.d.ts +0 -4
  312. package/dist/constants/private/index.d.ts.map +0 -1
  313. package/dist/constants/private/index.js +0 -20
  314. package/dist/constants/private/index.js.map +0 -1
  315. package/dist/errors/CoseEncryptError.d.ts +0 -4
  316. package/dist/errors/CoseEncryptError.d.ts.map +0 -1
  317. package/dist/errors/CoseEncryptError.js +0 -8
  318. package/dist/errors/CoseEncryptError.js.map +0 -1
  319. package/dist/errors/CoseSignError.d.ts +0 -4
  320. package/dist/errors/CoseSignError.d.ts.map +0 -1
  321. package/dist/errors/CoseSignError.js +0 -8
  322. package/dist/errors/CoseSignError.js.map +0 -1
  323. package/dist/errors/CwtError.d.ts +0 -4
  324. package/dist/errors/CwtError.d.ts.map +0 -1
  325. package/dist/errors/CwtError.js +0 -8
  326. package/dist/errors/CwtError.js.map +0 -1
  327. package/dist/interfaces/CweKit.d.ts +0 -6
  328. package/dist/interfaces/CweKit.d.ts.map +0 -1
  329. package/dist/interfaces/CweKit.js.map +0 -1
  330. package/dist/interfaces/CwsKit.d.ts +0 -6
  331. package/dist/interfaces/CwsKit.d.ts.map +0 -1
  332. package/dist/interfaces/CwsKit.js.map +0 -1
  333. package/dist/interfaces/CwtKit.d.ts +0 -7
  334. package/dist/interfaces/CwtKit.d.ts.map +0 -1
  335. package/dist/interfaces/CwtKit.js.map +0 -1
  336. package/dist/types/cose-target.d.ts +0 -2
  337. package/dist/types/cose-target.d.ts.map +0 -1
  338. package/dist/types/cose-target.js.map +0 -1
  339. package/dist/types/cwe/cwe-decode.d.ts +0 -18
  340. package/dist/types/cwe/cwe-decode.d.ts.map +0 -1
  341. package/dist/types/cwe/cwe-decode.js.map +0 -1
  342. package/dist/types/cwe/cwe-decrypt.d.ts +0 -15
  343. package/dist/types/cwe/cwe-decrypt.d.ts.map +0 -1
  344. package/dist/types/cwe/cwe-decrypt.js +0 -3
  345. package/dist/types/cwe/cwe-decrypt.js.map +0 -1
  346. package/dist/types/cwe/cwe-encrypt.d.ts +0 -12
  347. package/dist/types/cwe/cwe-encrypt.d.ts.map +0 -1
  348. package/dist/types/cwe/cwe-encrypt.js +0 -3
  349. package/dist/types/cwe/cwe-encrypt.js.map +0 -1
  350. package/dist/types/cwe/cwe-kit.d.ts +0 -9
  351. package/dist/types/cwe/cwe-kit.d.ts.map +0 -1
  352. package/dist/types/cwe/cwe-kit.js.map +0 -1
  353. package/dist/types/cwe/index.d.ts +0 -5
  354. package/dist/types/cwe/index.d.ts.map +0 -1
  355. package/dist/types/cwe/index.js.map +0 -1
  356. package/dist/types/cws/cws-decode.d.ts +0 -9
  357. package/dist/types/cws/cws-decode.d.ts.map +0 -1
  358. package/dist/types/cws/cws-decode.js +0 -3
  359. package/dist/types/cws/cws-decode.js.map +0 -1
  360. package/dist/types/cws/cws-kit.d.ts +0 -8
  361. package/dist/types/cws/cws-kit.d.ts.map +0 -1
  362. package/dist/types/cws/cws-kit.js +0 -3
  363. package/dist/types/cws/cws-kit.js.map +0 -1
  364. package/dist/types/cws/cws-parse.d.ts +0 -14
  365. package/dist/types/cws/cws-parse.d.ts.map +0 -1
  366. package/dist/types/cws/cws-parse.js +0 -3
  367. package/dist/types/cws/cws-parse.js.map +0 -1
  368. package/dist/types/cws/cws-sign.d.ts +0 -14
  369. package/dist/types/cws/cws-sign.d.ts.map +0 -1
  370. package/dist/types/cws/cws-sign.js +0 -3
  371. package/dist/types/cws/cws-sign.js.map +0 -1
  372. package/dist/types/cws/index.d.ts +0 -5
  373. package/dist/types/cws/index.d.ts.map +0 -1
  374. package/dist/types/cws/index.js.map +0 -1
  375. package/dist/types/cwt/cwt-claims.d.ts +0 -3
  376. package/dist/types/cwt/cwt-claims.d.ts.map +0 -1
  377. package/dist/types/cwt/cwt-claims.js +0 -3
  378. package/dist/types/cwt/cwt-claims.js.map +0 -1
  379. package/dist/types/cwt/cwt-decode.d.ts +0 -10
  380. package/dist/types/cwt/cwt-decode.d.ts.map +0 -1
  381. package/dist/types/cwt/cwt-decode.js +0 -3
  382. package/dist/types/cwt/cwt-decode.js.map +0 -1
  383. package/dist/types/cwt/cwt-kit.d.ts +0 -3
  384. package/dist/types/cwt/cwt-kit.d.ts.map +0 -1
  385. package/dist/types/cwt/cwt-kit.js +0 -3
  386. package/dist/types/cwt/cwt-kit.js.map +0 -1
  387. package/dist/types/cwt/cwt-parse.d.ts +0 -15
  388. package/dist/types/cwt/cwt-parse.d.ts.map +0 -1
  389. package/dist/types/cwt/cwt-parse.js +0 -3
  390. package/dist/types/cwt/cwt-parse.js.map +0 -1
  391. package/dist/types/cwt/cwt-sign.d.ts +0 -17
  392. package/dist/types/cwt/cwt-sign.d.ts.map +0 -1
  393. package/dist/types/cwt/cwt-sign.js +0 -3
  394. package/dist/types/cwt/cwt-sign.js.map +0 -1
  395. package/dist/types/cwt/cwt-validate.d.ts +0 -3
  396. package/dist/types/cwt/cwt-validate.d.ts.map +0 -1
  397. package/dist/types/cwt/cwt-validate.js +0 -3
  398. package/dist/types/cwt/cwt-validate.js.map +0 -1
  399. package/dist/types/cwt/cwt-verify.d.ts +0 -3
  400. package/dist/types/cwt/cwt-verify.d.ts.map +0 -1
  401. package/dist/types/cwt/cwt-verify.js +0 -3
  402. package/dist/types/cwt/cwt-verify.js.map +0 -1
  403. package/dist/types/cwt/index.d.ts +0 -8
  404. package/dist/types/cwt/index.d.ts.map +0 -1
  405. package/dist/types/cwt/index.js +0 -24
  406. package/dist/types/cwt/index.js.map +0 -1
  407. package/dist/types/jwt/jwt-claims.d.ts +0 -38
  408. package/dist/types/jwt/jwt-claims.d.ts.map +0 -1
  409. package/dist/types/jwt/jwt-claims.js.map +0 -1
  410. package/dist/utils/private/auth-tag-length.d.ts +0 -3
  411. package/dist/utils/private/auth-tag-length.d.ts.map +0 -1
  412. package/dist/utils/private/auth-tag-length.js +0 -21
  413. package/dist/utils/private/auth-tag-length.js.map +0 -1
  414. package/dist/utils/private/cose/bstr.d.ts +0 -4
  415. package/dist/utils/private/cose/bstr.d.ts.map +0 -1
  416. package/dist/utils/private/cose/bstr.js +0 -18
  417. package/dist/utils/private/cose/bstr.js.map +0 -1
  418. package/dist/utils/private/cose/claims.d.ts +0 -5
  419. package/dist/utils/private/cose/claims.d.ts.map +0 -1
  420. package/dist/utils/private/cose/claims.js +0 -57
  421. package/dist/utils/private/cose/claims.js.map +0 -1
  422. package/dist/utils/private/cose/crit.d.ts +0 -3
  423. package/dist/utils/private/cose/crit.d.ts.map +0 -1
  424. package/dist/utils/private/cose/crit.js +0 -43
  425. package/dist/utils/private/cose/crit.js.map +0 -1
  426. package/dist/utils/private/cose/find.d.ts +0 -5
  427. package/dist/utils/private/cose/find.d.ts.map +0 -1
  428. package/dist/utils/private/cose/find.js +0 -37
  429. package/dist/utils/private/cose/find.js.map +0 -1
  430. package/dist/utils/private/cose/header.d.ts +0 -5
  431. package/dist/utils/private/cose/header.d.ts.map +0 -1
  432. package/dist/utils/private/cose/header.js +0 -81
  433. package/dist/utils/private/cose/header.js.map +0 -1
  434. package/dist/utils/private/cose/index.d.ts +0 -3
  435. package/dist/utils/private/cose/index.d.ts.map +0 -1
  436. package/dist/utils/private/cose/index.js.map +0 -1
  437. package/dist/utils/private/cose/key.d.ts +0 -4
  438. package/dist/utils/private/cose/key.d.ts.map +0 -1
  439. package/dist/utils/private/cose/key.js +0 -86
  440. package/dist/utils/private/cose/key.js.map +0 -1
  441. package/dist/utils/private/cose-sign-token.d.ts +0 -9
  442. package/dist/utils/private/cose-sign-token.d.ts.map +0 -1
  443. package/dist/utils/private/cose-sign-token.js +0 -12
  444. package/dist/utils/private/cose-sign-token.js.map +0 -1
  445. package/dist/utils/private/cose-signature.d.ts +0 -16
  446. package/dist/utils/private/cose-signature.d.ts.map +0 -1
  447. package/dist/utils/private/cose-signature.js +0 -17
  448. package/dist/utils/private/cose-signature.js.map +0 -1
  449. package/dist/utils/private/create-hash.d.ts.map +0 -1
  450. package/dist/utils/private/create-hash.js.map +0 -1
  451. package/dist/utils/private/index.d.ts +0 -13
  452. package/dist/utils/private/index.d.ts.map +0 -1
  453. package/dist/utils/private/index.js +0 -29
  454. package/dist/utils/private/index.js.map +0 -1
  455. package/dist/utils/private/jose-header.d.ts +0 -4
  456. package/dist/utils/private/jose-header.d.ts.map +0 -1
  457. package/dist/utils/private/jose-header.js.map +0 -1
  458. package/dist/utils/private/jose-signature.d.ts.map +0 -1
  459. package/dist/utils/private/jose-signature.js.map +0 -1
  460. package/dist/utils/private/jwt-payload.d.ts.map +0 -1
  461. package/dist/utils/private/jwt-payload.js.map +0 -1
  462. package/dist/utils/private/jwt-validate.d.ts.map +0 -1
  463. package/dist/utils/private/jwt-validate.js.map +0 -1
  464. package/dist/utils/private/jwt-verify.d.ts.map +0 -1
  465. package/dist/utils/private/jwt-verify.js.map +0 -1
  466. package/dist/utils/private/token-header.d.ts +0 -4
  467. package/dist/utils/private/token-header.d.ts.map +0 -1
  468. package/dist/utils/private/token-header.js.map +0 -1
  469. package/dist/utils/private/validate.d.ts.map +0 -1
  470. package/dist/utils/private/validate.js.map +0 -1
  471. /package/dist/{constants/private → internal/constants}/format.d.ts +0 -0
  472. /package/dist/{constants/private → internal/constants}/format.js +0 -0
  473. /package/dist/{utils/private → internal/utils}/create-hash.d.ts +0 -0
  474. /package/dist/{utils/private → internal/utils}/jose-signature.d.ts +0 -0
  475. /package/dist/{utils/private → internal/utils}/jwt-payload.d.ts +0 -0
  476. /package/dist/{utils/private → internal/utils}/jwt-validate.d.ts +0 -0
  477. /package/dist/{utils/private → internal/utils}/jwt-validate.js +0 -0
  478. /package/dist/{utils/private → internal/utils}/jwt-verify.d.ts +0 -0
  479. /package/dist/{utils/private → internal/utils}/validate.d.ts +0 -0
  480. /package/dist/{utils/private → internal/utils}/validate.js +0 -0
  481. /package/dist/types/{jwt → claims/jwt}/jwt-claims.js +0 -0
@@ -1,14 +0,0 @@
1
- import { ICweKit } from "../interfaces";
2
- import { CweContent, CweEncryptOptions, CweKitOptions, DecodedCwe, DecryptedCwe, EncryptedCwe } from "../types";
3
- export declare class CweKit implements ICweKit {
4
- private readonly encryption;
5
- private readonly logger;
6
- private readonly kryptos;
7
- constructor(options: CweKitOptions);
8
- encrypt(data: CweContent, options?: CweEncryptOptions): EncryptedCwe;
9
- decrypt<T extends CweContent = string>(token: CweContent): DecryptedCwe<T>;
10
- static isCwe(token: Buffer | string): boolean;
11
- static decode(token: CweContent): DecodedCwe;
12
- private contentType;
13
- }
14
- //# sourceMappingURL=CweKit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CweKit.d.ts","sourceRoot":"","sources":["../../src/classes/CweKit.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,YAAY,EAEZ,YAAY,EAEb,MAAM,UAAU,CAAC;AASlB,qBAAa,MAAO,YAAW,OAAO;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;gBAEhB,OAAO,EAAE,aAAa;IAMlC,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,YAAY;IA6DxE,OAAO,CAAC,CAAC,SAAS,UAAU,GAAG,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC;WAgFnE,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;WAStC,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAoCnD,OAAO,CAAC,WAAW;CAMpB"}
@@ -1,149 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CweKit = void 0;
4
- const aes_1 = require("@lindorm/aes");
5
- const is_1 = require("@lindorm/is");
6
- const cbor_1 = require("cbor");
7
- const crypto_1 = require("crypto");
8
- const errors_1 = require("../errors");
9
- const private_1 = require("../utils/private");
10
- class CweKit {
11
- encryption;
12
- logger;
13
- kryptos;
14
- constructor(options) {
15
- this.logger = options.logger.child(["CoseEncryptKit"]);
16
- this.kryptos = options.kryptos;
17
- this.encryption = options.encryption ?? options.kryptos.encryption ?? "A256GCM";
18
- }
19
- encrypt(data, options = {}) {
20
- const kit = new aes_1.AesKit({ encryption: this.encryption, kryptos: this.kryptos });
21
- this.logger.debug("Encrypting token", { options });
22
- const objectId = options.objectId ?? (0, crypto_1.randomBytes)(20).toString("base64url");
23
- const target = options.target ?? "internal";
24
- const prepared = kit.prepareEncryption();
25
- const protectedHeader = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
26
- algorithm: this.encryption,
27
- contentType: this.contentType(data),
28
- headerType: "application/cose; cose-type=cose-encrypt",
29
- }), target);
30
- const protectedCbor = (0, cbor_1.encode)(protectedHeader);
31
- const aad = protectedCbor;
32
- const { authTag, content, initialisationVector } = prepared.encrypt(data, { aad });
33
- const unprotectedHeader = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
34
- ...(options.header ?? {}),
35
- initialisationVector,
36
- objectId,
37
- }), target);
38
- const ciphertext = Buffer.concat([content, authTag]);
39
- const recipientHeader = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
40
- algorithm: this.kryptos.algorithm,
41
- keyId: this.kryptos.id,
42
- publicEncryptionJwk: prepared.headerParams.publicEncryptionJwk,
43
- }), target);
44
- const recipientPublicKey = prepared.publicEncryptionKey ?? null;
45
- const recipients = [[(0, cbor_1.encode)(new Map()), recipientHeader, recipientPublicKey]];
46
- const buffer = (0, cbor_1.encode)([protectedCbor, unprotectedHeader, ciphertext, recipients]);
47
- const token = buffer.toString("base64url");
48
- this.logger.debug("Token encrypted", { token });
49
- return { buffer, token };
50
- }
51
- decrypt(token) {
52
- const kit = new aes_1.AesKit({ encryption: this.encryption, kryptos: this.kryptos });
53
- this.logger.debug("Decrypting token", { token });
54
- const decoded = CweKit.decode(token);
55
- if (this.encryption !== decoded.protected.alg) {
56
- throw new errors_1.CoseEncryptError("Invalid content encryption", {
57
- debug: {
58
- expect: this.encryption,
59
- actual: decoded.protected.alg,
60
- },
61
- });
62
- }
63
- if (this.kryptos.algorithm !== decoded.recipient.unprotected.alg) {
64
- throw new errors_1.CoseEncryptError("Invalid key management algorithm", {
65
- debug: {
66
- expect: this.kryptos.algorithm,
67
- actual: decoded.recipient.unprotected.alg,
68
- },
69
- });
70
- }
71
- const initialisationVector = decoded.unprotected.iv;
72
- const publicEncryptionJwk = decoded.recipient.unprotected.epk;
73
- const publicEncryptionKey = decoded.recipient.publicEncryptionKey;
74
- if (!initialisationVector) {
75
- throw new errors_1.CoseEncryptError("Missing iv");
76
- }
77
- const header = (0, private_1.parseTokenHeader)({
78
- ...decoded.protected,
79
- epk: decoded.recipient.unprotected.epk,
80
- kid: decoded.recipient.unprotected.kid,
81
- oid: decoded.unprotected.oid,
82
- });
83
- if (header.critical?.length) {
84
- for (const param of header.critical) {
85
- throw new errors_1.CoseEncryptError(`Unsupported critical header parameter: ${param}`);
86
- }
87
- }
88
- const aad = decoded.protectedCbor;
89
- const payload = kit.decrypt({
90
- authTag: decoded.authTag,
91
- content: decoded.content,
92
- contentType: decoded.protected.cty ?? "text/plain",
93
- encryption: decoded.protected.alg,
94
- initialisationVector,
95
- publicEncryptionJwk,
96
- publicEncryptionKey,
97
- }, { aad });
98
- this.logger.debug("Token decrypted");
99
- return {
100
- decoded,
101
- header,
102
- payload,
103
- token: (0, is_1.isString)(token) ? token : token.toString("base64url"),
104
- };
105
- }
106
- static isCwe(token) {
107
- try {
108
- const decode = CweKit.decode(token);
109
- return decode.protected.typ === "application/cose; cose-type=cose-encrypt";
110
- }
111
- catch {
112
- return false;
113
- }
114
- }
115
- static decode(token) {
116
- const [protectedCbor, unprotectedCose, ciphertext, recipients] = (0, cbor_1.decode)((0, is_1.isBuffer)(token) ? token : Buffer.from(token, "base64url"));
117
- const protectedDict = (0, private_1.decodeCoseHeader)((0, cbor_1.decode)(protectedCbor));
118
- const unprotectedDict = (0, private_1.decodeCoseHeader)(unprotectedCose);
119
- const [recipient] = recipients;
120
- const [_, recipientHeader, publicEncryptionKey] = recipient;
121
- const recipientDict = (0, private_1.decodeCoseHeader)(recipientHeader);
122
- const length = (0, private_1.authTagLength)(protectedDict.alg);
123
- const authTag = ciphertext.slice(-length);
124
- const content = ciphertext.slice(0, -length);
125
- return {
126
- protected: protectedDict,
127
- protectedCbor: Buffer.isBuffer(protectedCbor)
128
- ? protectedCbor
129
- : Buffer.from(protectedCbor),
130
- unprotected: unprotectedDict,
131
- recipient: {
132
- unprotected: recipientDict,
133
- initialisationVector: recipientDict.iv,
134
- publicEncryptionKey,
135
- },
136
- initialisationVector: unprotectedDict.iv,
137
- content,
138
- authTag,
139
- };
140
- }
141
- contentType(input) {
142
- if ((0, is_1.isBuffer)(input)) {
143
- return "application/octet-stream";
144
- }
145
- return "text/plain";
146
- }
147
- }
148
- exports.CweKit = CweKit;
149
- //# sourceMappingURL=CweKit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CweKit.js","sourceRoot":"","sources":["../../src/classes/CweKit.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import { ICwsKit } from "../interfaces";
2
- import { CwsContent, CwsKitOptions, DecodedCws, ParsedCws, SignCwsOptions, SignedCws } from "../types";
3
- export declare class CwsKit implements ICwsKit {
4
- private readonly logger;
5
- private readonly kryptos;
6
- constructor(options: CwsKitOptions);
7
- sign(data: CwsContent, options?: SignCwsOptions): SignedCws;
8
- verify<T extends CwsContent>(token: CwsContent): ParsedCws<T>;
9
- static isCws(token: Buffer | string): boolean;
10
- static decode<T extends CwsContent>(token: CwsContent): DecodedCws<T>;
11
- static parse<T extends CwsContent>(token: CwsContent): ParsedCws<T>;
12
- }
13
- //# sourceMappingURL=CwsKit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CwsKit.d.ts","sourceRoot":"","sources":["../../src/classes/CwsKit.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,UAAU,EACV,aAAa,EACb,UAAU,EACV,SAAS,EAET,cAAc,EACd,SAAS,EACV,MAAM,UAAU,CAAC;AAWlB,qBAAa,MAAO,YAAW,OAAO;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;gBAEhB,OAAO,EAAE,aAAa;IAKlC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,cAAmB,GAAG,SAAS;IAoD/D,MAAM,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC;WAmEtD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;WAStC,MAAM,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC;WAsB9D,KAAK,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC;CAU3E"}
@@ -1,136 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CwsKit = void 0;
4
- const is_1 = require("@lindorm/is");
5
- const cbor_1 = require("cbor");
6
- const crypto_1 = require("crypto");
7
- const errors_1 = require("../errors");
8
- const private_1 = require("../utils/private");
9
- class CwsKit {
10
- logger;
11
- kryptos;
12
- constructor(options) {
13
- this.logger = options.logger.child(["CoseSignKit"]);
14
- this.kryptos = options.kryptos;
15
- }
16
- sign(data, options = {}) {
17
- const objectId = options.objectId ?? (0, crypto_1.randomBytes)(20).toString("base64url");
18
- this.logger.debug("Signing token", { options });
19
- const target = options.target ?? "internal";
20
- const protectedHeader = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
21
- algorithm: this.kryptos.algorithm,
22
- contentType: options.contentType
23
- ? options.contentType
24
- : (0, is_1.isString)(data)
25
- ? "text/plain; charset=utf-8"
26
- : "application/octet-stream",
27
- headerType: "application/cose; cose-type=cose-sign",
28
- }), target);
29
- const protectedCbor = (0, cbor_1.encode)(protectedHeader);
30
- const unprotectedHeader = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
31
- ...(options.header ?? {}),
32
- keyId: this.kryptos.id,
33
- objectId,
34
- }), target);
35
- const payloadBuffer = (0, is_1.isBuffer)(data) ? data : Buffer.from(data, "utf-8");
36
- const payloadCbor = (0, cbor_1.encode)(payloadBuffer);
37
- const signature = (0, private_1.createCoseSignature)({
38
- kryptos: this.kryptos,
39
- payload: payloadCbor,
40
- protectedHeader: protectedCbor,
41
- });
42
- const buffer = (0, private_1.createCoseSignToken)({
43
- payload: payloadCbor,
44
- protectedHeader: protectedCbor,
45
- unprotectedHeader,
46
- signature,
47
- });
48
- const token = buffer.toString("base64url");
49
- this.logger.debug("Token signed", { token });
50
- return { buffer, objectId, token };
51
- }
52
- verify(token) {
53
- this.logger.debug("Verifying token", { token });
54
- const [protectedCbor, unprotectedCose, payloadCbor, signature] = (0, cbor_1.decode)((0, is_1.isBuffer)(token) ? token : Buffer.from(token, "base64url"));
55
- const protectedDict = (0, private_1.decodeCoseHeader)((0, cbor_1.decode)(protectedCbor));
56
- if (this.kryptos.algorithm !== protectedDict.alg) {
57
- throw new errors_1.CoseSignError("Invalid token", {
58
- data: { algorithm: protectedDict.alg },
59
- debug: { expected: this.kryptos.algorithm },
60
- });
61
- }
62
- const verified = (0, private_1.verifyCoseSignature)({
63
- kryptos: this.kryptos,
64
- payload: payloadCbor,
65
- protectedHeader: protectedCbor,
66
- signature,
67
- });
68
- if (!verified) {
69
- throw new errors_1.CoseSignError("Invalid token", {
70
- data: { verified, token },
71
- });
72
- }
73
- const unprotectedDict = (0, private_1.decodeCoseHeader)(unprotectedCose);
74
- const payloadBuffer = (0, cbor_1.decode)(payloadCbor);
75
- const decoded = {
76
- protected: protectedDict,
77
- unprotected: unprotectedDict,
78
- payload: payloadBuffer,
79
- signature: signature,
80
- };
81
- const header = (0, private_1.parseTokenHeader)({
82
- ...protectedDict,
83
- ...unprotectedDict,
84
- });
85
- if (header.critical?.length) {
86
- for (const param of header.critical) {
87
- throw new errors_1.CoseSignError(`Unsupported critical header parameter: ${param}`);
88
- }
89
- }
90
- const payload = header.contentType === "text/plain; charset=utf-8"
91
- ? payloadBuffer.toString("utf-8")
92
- : payloadBuffer;
93
- this.logger.debug("Token verified");
94
- return {
95
- decoded,
96
- header,
97
- payload,
98
- token: (0, is_1.isBuffer)(token) ? token.toString("base64url") : token,
99
- };
100
- }
101
- static isCws(token) {
102
- try {
103
- const decode = CwsKit.decode(token);
104
- return decode.protected.typ === "application/cose; cose-type=cose-sign";
105
- }
106
- catch {
107
- return false;
108
- }
109
- }
110
- static decode(token) {
111
- const [protectedCbor, unprotectedHeader, payloadCbor, signature] = (0, cbor_1.decode)((0, is_1.isBuffer)(token) ? token : Buffer.from(token, "base64url"));
112
- const protectedDict = (0, private_1.decodeCoseHeader)((0, cbor_1.decode)(protectedCbor));
113
- const unprotectedDict = (0, private_1.decodeCoseHeader)(unprotectedHeader);
114
- const payloadBuffer = (0, cbor_1.decode)(payloadCbor);
115
- const payload = protectedDict.cty === "text/plain; charset=utf-8"
116
- ? payloadBuffer.toString("utf-8")
117
- : payloadBuffer;
118
- return {
119
- protected: protectedDict,
120
- unprotected: unprotectedDict,
121
- payload,
122
- signature: signature.toString("base64url"),
123
- };
124
- }
125
- static parse(token) {
126
- const decoded = CwsKit.decode(token);
127
- return {
128
- decoded,
129
- header: (0, private_1.parseTokenHeader)({ ...decoded.protected, ...decoded.unprotected }),
130
- payload: decoded.payload,
131
- token: (0, is_1.isBuffer)(token) ? token.toString("base64url") : token,
132
- };
133
- }
134
- }
135
- exports.CwsKit = CwsKit;
136
- //# sourceMappingURL=CwsKit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CwsKit.js","sourceRoot":"","sources":["../../src/classes/CwsKit.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import { Dict } from "@lindorm/types";
2
- import { ICwtKit } from "../interfaces";
3
- import { CwtKitOptions, DecodedCwt, ParsedCwt, ParsedCwtPayload, SignCwtContent, SignCwtOptions, SignedCwt, ValidateCwtOptions, VerifyCwtOptions } from "../types";
4
- export declare class CwtKit implements ICwtKit {
5
- private readonly clockTolerance;
6
- private readonly issuer;
7
- private readonly logger;
8
- private readonly kryptos;
9
- constructor(options: CwtKitOptions);
10
- sign<C extends Dict = Dict>(content: SignCwtContent<C>, options?: SignCwtOptions): SignedCwt;
11
- verify<C extends Dict = Dict>(token: Buffer | string, verify?: VerifyCwtOptions): ParsedCwt<C>;
12
- static isCwt(token: Buffer | string): boolean;
13
- static decode<C extends Dict = Dict>(token: Buffer | string): DecodedCwt<C>;
14
- static parse<C extends Dict = Dict>(token: Buffer | string): ParsedCwt<C>;
15
- static validate<C extends Dict = Dict>(payload: ParsedCwtPayload<C>, options: ValidateCwtOptions): void;
16
- }
17
- //# sourceMappingURL=CwtKit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CwtKit.d.ts","sourceRoot":"","sources":["../../src/classes/CwtKit.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAItC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,aAAa,EACb,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAkBlB,qBAAa,MAAO,YAAW,OAAO;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;gBAEhB,OAAO,EAAE,aAAa;IAQlC,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EAC/B,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAC1B,OAAO,GAAE,cAAmB,GAC3B,SAAS;IAmEL,MAAM,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EACjC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,MAAM,GAAE,gBAAqB,GAC5B,SAAS,CAAC,CAAC,CAAC;WA4ED,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;WAStC,MAAM,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;WAepE,KAAK,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;WAWlE,QAAQ,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EAC1C,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC5B,OAAO,EAAE,kBAAkB,GAC1B,IAAI;CAKR"}
@@ -1,158 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CwtKit = void 0;
4
- const date_1 = require("@lindorm/date");
5
- const is_1 = require("@lindorm/is");
6
- const cbor_1 = require("cbor");
7
- const crypto_1 = require("crypto");
8
- const errors_1 = require("../errors");
9
- const private_1 = require("../utils/private");
10
- class CwtKit {
11
- clockTolerance;
12
- issuer;
13
- logger;
14
- kryptos;
15
- constructor(options) {
16
- this.logger = options.logger.child(["CwtKit"]);
17
- this.kryptos = options.kryptos;
18
- this.issuer = options.issuer ?? null;
19
- this.clockTolerance = options.clockTolerance ?? 0;
20
- }
21
- sign(content, options = {}) {
22
- this.logger.debug("Signing token", { content, options });
23
- if (!this.issuer) {
24
- throw new errors_1.CwtError("Issuer is required to sign CWT");
25
- }
26
- const objectId = options.objectId ?? content.subject ?? (0, crypto_1.randomBytes)(20).toString("base64url");
27
- const target = options.target ?? "internal";
28
- const protectedDict = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
29
- algorithm: this.kryptos.algorithm,
30
- contentType: "application/json",
31
- headerType: "application/cwt",
32
- }), target);
33
- const protectedCbor = (0, cbor_1.encode)(protectedDict);
34
- const unprotectedDict = (0, private_1.mapCoseHeader)((0, private_1.mapTokenHeader)({
35
- ...(options.header ?? {}),
36
- keyId: this.kryptos.id,
37
- objectId,
38
- }), target);
39
- const claims = (0, private_1.mapJwtContentToClaims)({ algorithm: this.kryptos.algorithm, issuer: this.issuer }, content, { tokenId: (0, crypto_1.randomBytes)(20).toString("base64url"), ...options });
40
- const payloadDict = (0, private_1.mapCoseClaims)({ ...claims, ...(content.claims ?? {}) }, target);
41
- const payloadCbor = (0, cbor_1.encode)(payloadDict);
42
- const signature = (0, private_1.createCoseSignature)({
43
- kryptos: this.kryptos,
44
- payload: payloadCbor,
45
- protectedHeader: protectedCbor,
46
- });
47
- const buffer = (0, private_1.createCoseSignToken)({
48
- payload: payloadCbor,
49
- protectedHeader: protectedCbor,
50
- unprotectedHeader: unprotectedDict,
51
- signature,
52
- });
53
- const token = buffer.toString("base64url");
54
- const { expiresAt, expiresIn, expiresOn } = (0, date_1.expires)(content.expires);
55
- this.logger.debug("Token signed", { token });
56
- return {
57
- buffer,
58
- expiresAt,
59
- expiresIn,
60
- expiresOn,
61
- objectId,
62
- token,
63
- tokenId: claims.jti,
64
- };
65
- }
66
- verify(token, verify = {}) {
67
- this.logger.debug("Verifying token", { token, verify });
68
- const [protectedCbor, unprotectedCose, payloadCbor, signature] = (0, cbor_1.decode)((0, is_1.isBuffer)(token) ? token : Buffer.from(token, "base64url"));
69
- const protectedDict = (0, private_1.decodeCoseHeader)((0, cbor_1.decode)(protectedCbor));
70
- const unprotectedDict = (0, private_1.decodeCoseHeader)(unprotectedCose);
71
- const payloadDict = (0, private_1.decodeCoseClaims)((0, cbor_1.decode)(payloadCbor));
72
- if (this.kryptos.algorithm !== protectedDict.alg) {
73
- throw new errors_1.CwtError("Invalid token", {
74
- data: { algorithm: protectedDict.alg },
75
- debug: { expected: this.kryptos.algorithm },
76
- });
77
- }
78
- const verified = (0, private_1.verifyCoseSignature)({
79
- kryptos: this.kryptos,
80
- payload: payloadCbor,
81
- protectedHeader: protectedCbor,
82
- signature,
83
- });
84
- if (!verified) {
85
- throw new errors_1.CwtError("Invalid token", {
86
- data: { verified, token },
87
- });
88
- }
89
- const predicate = (0, private_1.createJwtVerify)(this.kryptos.algorithm, verify, this.clockTolerance);
90
- const withDates = {
91
- ...payloadDict,
92
- exp: payloadDict.exp ? new Date(payloadDict.exp * 1000) : undefined,
93
- iat: payloadDict.iat ? new Date(payloadDict.iat * 1000) : undefined,
94
- nbf: payloadDict.nbf ? new Date(payloadDict.nbf * 1000) : undefined,
95
- auth_time: payloadDict.auth_time
96
- ? new Date(payloadDict.auth_time * 1000)
97
- : undefined,
98
- };
99
- try {
100
- (0, private_1.validate)(withDates, predicate);
101
- }
102
- catch (err) {
103
- throw new errors_1.CwtError("Invalid token", { data: err.data });
104
- }
105
- const decoded = {
106
- protected: protectedDict,
107
- unprotected: unprotectedDict,
108
- payload: payloadDict,
109
- signature: signature,
110
- };
111
- const payload = (0, private_1.parseTokenPayload)(payloadDict);
112
- this.logger.debug("Token verified");
113
- return {
114
- decoded,
115
- header: (0, private_1.parseTokenHeader)({
116
- ...protectedDict,
117
- ...unprotectedDict,
118
- }),
119
- payload,
120
- token: (0, is_1.isBuffer)(token) ? token.toString("base64url") : token,
121
- };
122
- }
123
- static isCwt(token) {
124
- try {
125
- const decode = CwtKit.decode(token);
126
- return decode.protected.typ === "application/cwt";
127
- }
128
- catch {
129
- return false;
130
- }
131
- }
132
- static decode(token) {
133
- const [protectedCbor, unprotectedHeader, payloadCbor, signature] = (0, cbor_1.decode)((0, is_1.isBuffer)(token) ? token : Buffer.from(token, "base64url"));
134
- const protectedCose = (0, cbor_1.decode)(protectedCbor);
135
- const payloadCose = (0, cbor_1.decode)(payloadCbor);
136
- return {
137
- protected: (0, private_1.decodeCoseHeader)(protectedCose),
138
- unprotected: (0, private_1.decodeCoseHeader)(unprotectedHeader),
139
- payload: (0, private_1.decodeCoseClaims)(payloadCose),
140
- signature: signature.toString("base64url"),
141
- };
142
- }
143
- static parse(token) {
144
- const decoded = CwtKit.decode(token);
145
- return {
146
- decoded,
147
- header: (0, private_1.parseTokenHeader)({ ...decoded.protected, ...decoded.unprotected }),
148
- payload: (0, private_1.parseTokenPayload)(decoded.payload),
149
- token: (0, is_1.isBuffer)(token) ? token.toString("base64url") : token,
150
- };
151
- }
152
- static validate(payload, options) {
153
- const operators = (0, private_1.createJwtValidate)(options);
154
- (0, private_1.validate)(payload, operators);
155
- }
156
- }
157
- exports.CwtKit = CwtKit;
158
- //# sourceMappingURL=CwtKit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CwtKit.js","sourceRoot":"","sources":["../../src/classes/CwtKit.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { KryptosAlgorithm, KryptosEncryption } from "@lindorm/kryptos";
2
- export type CoseItem<K = string> = {
3
- key: K;
4
- label: number;
5
- array?: boolean;
6
- bstr?: boolean;
7
- json?: boolean;
8
- };
9
- export declare const COSE_ALGORITHM: Array<CoseItem<KryptosAlgorithm | KryptosEncryption>>;
10
- export declare const COSE_CLAIMS: Array<CoseItem>;
11
- export declare const COSE_HEADER: Array<CoseItem>;
12
- export declare const COSE_KEY: Array<CoseItem>;
13
- export declare const COSE_KEY_EC: Array<CoseItem>;
14
- export declare const COSE_KEY_OKP: Array<CoseItem>;
15
- export declare const COSE_KEY_RSA: Array<CoseItem>;
16
- export declare const COSE_KEY_OCT: Array<CoseItem>;
17
- export declare const COSE_KEY_CURVE: Array<CoseItem>;
18
- export declare const COSE_KEY_TYPE: Array<CoseItem>;
19
- //# sourceMappingURL=cose.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cose.d.ts","sourceRoot":"","sources":["../../../src/constants/private/cose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,IAAI;IACjC,GAAG,EAAE,CAAC,CAAC;IACP,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAaF,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,gBAAgB,GAAG,iBAAiB,CAAC,CA8BvE,CAAC;AAEX,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,QAAQ,CAyB9B,CAAC;AAEX,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,QAAQ,CAmB9B,CAAC;AAEX,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAO3B,CAAC;AAEX,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,QAAQ,CAK9B,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,QAAQ,CAI/B,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,QAAQ,CAS/B,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAsC,CAAC;AAEhF,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,QAAQ,CAQjC,CAAC;AAEX,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,QAAQ,CAKhC,CAAC"}