@simplewebauthn/server 11.0.0 → 13.0.0-alpha1

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 (372) hide show
  1. package/README.md +11 -12
  2. package/esm/authentication/generateAuthenticationOptions.d.ts +14 -13
  3. package/esm/authentication/generateAuthenticationOptions.d.ts.map +1 -0
  4. package/esm/authentication/verifyAuthenticationResponse.d.ts +19 -15
  5. package/esm/authentication/verifyAuthenticationResponse.d.ts.map +1 -0
  6. package/esm/helpers/convertAAGUIDToString.d.ts +1 -0
  7. package/esm/helpers/convertAAGUIDToString.d.ts.map +1 -0
  8. package/esm/helpers/convertAAGUIDToString.js +4 -4
  9. package/esm/helpers/convertCOSEtoPKCS.d.ts +1 -0
  10. package/esm/helpers/convertCOSEtoPKCS.d.ts.map +1 -0
  11. package/esm/helpers/convertCertBufferToPEM.d.ts +2 -1
  12. package/esm/helpers/convertCertBufferToPEM.d.ts.map +1 -0
  13. package/esm/helpers/convertPEMToBytes.d.ts +1 -0
  14. package/esm/helpers/convertPEMToBytes.d.ts.map +1 -0
  15. package/esm/helpers/convertX509PublicKeyToCOSE.d.ts +1 -0
  16. package/esm/helpers/convertX509PublicKeyToCOSE.d.ts.map +1 -0
  17. package/esm/helpers/convertX509PublicKeyToCOSE.js +4 -1
  18. package/esm/helpers/cose.d.ts +23 -0
  19. package/esm/helpers/cose.d.ts.map +1 -0
  20. package/esm/helpers/cose.js +20 -0
  21. package/esm/helpers/decodeAttestationObject.d.ts +5 -0
  22. package/esm/helpers/decodeAttestationObject.d.ts.map +1 -0
  23. package/esm/helpers/decodeAttestationObject.js +4 -1
  24. package/esm/helpers/decodeAuthenticatorExtensions.d.ts +1 -0
  25. package/esm/helpers/decodeAuthenticatorExtensions.d.ts.map +1 -0
  26. package/esm/helpers/decodeClientDataJSON.d.ts +6 -1
  27. package/esm/helpers/decodeClientDataJSON.d.ts.map +1 -0
  28. package/esm/helpers/decodeClientDataJSON.js +4 -1
  29. package/esm/helpers/decodeCredentialPublicKey.d.ts +5 -0
  30. package/esm/helpers/decodeCredentialPublicKey.d.ts.map +1 -0
  31. package/esm/helpers/decodeCredentialPublicKey.js +4 -1
  32. package/esm/helpers/fetch.d.ts +5 -0
  33. package/esm/helpers/fetch.d.ts.map +1 -0
  34. package/esm/helpers/fetch.js +5 -2
  35. package/esm/helpers/generateChallenge.d.ts +5 -0
  36. package/esm/helpers/generateChallenge.d.ts.map +1 -0
  37. package/esm/helpers/generateChallenge.js +4 -1
  38. package/esm/helpers/generateUserID.d.ts +5 -0
  39. package/esm/helpers/generateUserID.d.ts.map +1 -0
  40. package/esm/helpers/generateUserID.js +4 -1
  41. package/esm/helpers/getCertificateInfo.d.ts +2 -1
  42. package/esm/helpers/getCertificateInfo.d.ts.map +1 -0
  43. package/esm/helpers/getCertificateInfo.js +2 -1
  44. package/esm/helpers/index.d.ts +17 -23
  45. package/esm/helpers/index.d.ts.map +1 -0
  46. package/esm/helpers/index.js +16 -17
  47. package/esm/helpers/isCertRevoked.d.ts +2 -1
  48. package/esm/helpers/isCertRevoked.d.ts.map +1 -0
  49. package/esm/helpers/isCertRevoked.js +2 -1
  50. package/esm/helpers/iso/index.d.ts +1 -0
  51. package/esm/helpers/iso/index.d.ts.map +1 -0
  52. package/esm/helpers/iso/isoBase64URL.d.ts +2 -1
  53. package/esm/helpers/iso/isoBase64URL.d.ts.map +1 -0
  54. package/esm/helpers/iso/isoBase64URL.js +5 -1
  55. package/esm/helpers/iso/isoCBOR.d.ts +6 -1
  56. package/esm/helpers/iso/isoCBOR.d.ts.map +1 -0
  57. package/esm/helpers/iso/isoCBOR.js +5 -1
  58. package/esm/helpers/iso/isoCrypto/digest.d.ts +1 -0
  59. package/esm/helpers/iso/isoCrypto/digest.d.ts.map +1 -0
  60. package/esm/helpers/iso/isoCrypto/getRandomValues.d.ts +1 -0
  61. package/esm/helpers/iso/isoCrypto/getRandomValues.d.ts.map +1 -0
  62. package/esm/helpers/iso/isoCrypto/getWebCrypto.d.ts +2 -1
  63. package/esm/helpers/iso/isoCrypto/getWebCrypto.d.ts.map +1 -0
  64. package/esm/helpers/iso/isoCrypto/importKey.d.ts +1 -0
  65. package/esm/helpers/iso/isoCrypto/importKey.d.ts.map +1 -0
  66. package/esm/helpers/iso/isoCrypto/index.d.ts +5 -0
  67. package/esm/helpers/iso/isoCrypto/index.d.ts.map +1 -0
  68. package/esm/helpers/iso/isoCrypto/index.js +4 -0
  69. package/esm/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoAlg.d.ts +1 -0
  70. package/esm/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoAlg.d.ts.map +1 -0
  71. package/esm/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoKeyAlgName.d.ts +1 -0
  72. package/esm/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoKeyAlgName.d.ts.map +1 -0
  73. package/esm/helpers/iso/isoCrypto/structs.d.ts +1 -0
  74. package/esm/helpers/iso/isoCrypto/structs.d.ts.map +1 -0
  75. package/esm/helpers/iso/isoCrypto/unwrapEC2Signature.d.ts +1 -0
  76. package/esm/helpers/iso/isoCrypto/unwrapEC2Signature.d.ts.map +1 -0
  77. package/esm/helpers/iso/isoCrypto/unwrapEC2Signature.js +2 -1
  78. package/esm/helpers/iso/isoCrypto/verify.d.ts +1 -0
  79. package/esm/helpers/iso/isoCrypto/verify.d.ts.map +1 -0
  80. package/esm/helpers/iso/isoCrypto/verifyEC2.d.ts +1 -0
  81. package/esm/helpers/iso/isoCrypto/verifyEC2.d.ts.map +1 -0
  82. package/esm/helpers/iso/isoCrypto/verifyOKP.d.ts +1 -0
  83. package/esm/helpers/iso/isoCrypto/verifyOKP.d.ts.map +1 -0
  84. package/esm/helpers/iso/isoCrypto/verifyRSA.d.ts +1 -0
  85. package/esm/helpers/iso/isoCrypto/verifyRSA.d.ts.map +1 -0
  86. package/esm/helpers/iso/isoUint8Array.d.ts +5 -0
  87. package/esm/helpers/iso/isoUint8Array.d.ts.map +1 -0
  88. package/esm/helpers/iso/isoUint8Array.js +4 -0
  89. package/esm/helpers/logging.d.ts +1 -0
  90. package/esm/helpers/logging.d.ts.map +1 -0
  91. package/esm/helpers/logging.js +0 -1
  92. package/esm/helpers/mapX509SignatureAlgToCOSEAlg.d.ts +1 -0
  93. package/esm/helpers/mapX509SignatureAlgToCOSEAlg.d.ts.map +1 -0
  94. package/esm/helpers/matchExpectedRPID.d.ts +1 -0
  95. package/esm/helpers/matchExpectedRPID.d.ts.map +1 -0
  96. package/esm/helpers/parseAuthenticatorData.d.ts +5 -0
  97. package/esm/helpers/parseAuthenticatorData.d.ts.map +1 -0
  98. package/esm/helpers/parseAuthenticatorData.js +10 -7
  99. package/esm/helpers/parseBackupFlags.d.ts +2 -1
  100. package/esm/helpers/parseBackupFlags.d.ts.map +1 -0
  101. package/esm/helpers/toHash.d.ts +1 -0
  102. package/esm/helpers/toHash.d.ts.map +1 -0
  103. package/esm/helpers/validateCertificatePath.d.ts +4 -3
  104. package/esm/helpers/validateCertificatePath.d.ts.map +1 -0
  105. package/esm/helpers/validateCertificatePath.js +82 -59
  106. package/esm/helpers/validateExtFIDOGenCEAAGUID.d.ts +2 -1
  107. package/esm/helpers/validateExtFIDOGenCEAAGUID.d.ts.map +1 -0
  108. package/esm/helpers/validateExtFIDOGenCEAAGUID.js +1 -1
  109. package/esm/helpers/verifySignature.d.ts +5 -0
  110. package/esm/helpers/verifySignature.d.ts.map +1 -0
  111. package/esm/helpers/verifySignature.js +4 -1
  112. package/esm/index.d.ts +9 -17
  113. package/esm/index.d.ts.map +1 -0
  114. package/esm/index.js +8 -11
  115. package/esm/metadata/mdsTypes.d.ts +6 -1
  116. package/esm/metadata/mdsTypes.d.ts.map +1 -0
  117. package/esm/metadata/parseJWT.d.ts +1 -0
  118. package/esm/metadata/parseJWT.d.ts.map +1 -0
  119. package/esm/metadata/verifyAttestationWithMetadata.d.ts +3 -2
  120. package/esm/metadata/verifyAttestationWithMetadata.d.ts.map +1 -0
  121. package/esm/metadata/verifyAttestationWithMetadata.js +1 -1
  122. package/esm/metadata/verifyJWT.d.ts +1 -0
  123. package/esm/metadata/verifyJWT.d.ts.map +1 -0
  124. package/esm/registration/generateRegistrationOptions.d.ts +22 -19
  125. package/esm/registration/generateRegistrationOptions.d.ts.map +1 -0
  126. package/esm/registration/generateRegistrationOptions.js +22 -1
  127. package/esm/registration/verifications/tpm/constants.d.ts +1 -0
  128. package/esm/registration/verifications/tpm/constants.d.ts.map +1 -0
  129. package/esm/registration/verifications/tpm/constants.js +4 -4
  130. package/esm/registration/verifications/tpm/parseCertInfo.d.ts +1 -0
  131. package/esm/registration/verifications/tpm/parseCertInfo.d.ts.map +1 -0
  132. package/esm/registration/verifications/tpm/parsePubArea.d.ts +1 -0
  133. package/esm/registration/verifications/tpm/parsePubArea.d.ts.map +1 -0
  134. package/esm/registration/verifications/tpm/verifyAttestationTPM.d.ts +1 -0
  135. package/esm/registration/verifications/tpm/verifyAttestationTPM.d.ts.map +1 -0
  136. package/esm/registration/verifications/tpm/verifyAttestationTPM.js +2 -1
  137. package/esm/registration/verifications/verifyAttestationAndroidKey.d.ts +1 -0
  138. package/esm/registration/verifications/verifyAttestationAndroidKey.d.ts.map +1 -0
  139. package/esm/registration/verifications/verifyAttestationAndroidKey.js +3 -1
  140. package/esm/registration/verifications/verifyAttestationAndroidSafetyNet.d.ts +1 -0
  141. package/esm/registration/verifications/verifyAttestationAndroidSafetyNet.d.ts.map +1 -0
  142. package/esm/registration/verifications/verifyAttestationApple.d.ts +1 -0
  143. package/esm/registration/verifications/verifyAttestationApple.d.ts.map +1 -0
  144. package/esm/registration/verifications/verifyAttestationApple.js +2 -1
  145. package/esm/registration/verifications/verifyAttestationFIDOU2F.d.ts +1 -0
  146. package/esm/registration/verifications/verifyAttestationFIDOU2F.d.ts.map +1 -0
  147. package/esm/registration/verifications/verifyAttestationPacked.d.ts +1 -0
  148. package/esm/registration/verifications/verifyAttestationPacked.d.ts.map +1 -0
  149. package/esm/registration/verifyRegistrationResponse.d.ts +18 -14
  150. package/esm/registration/verifyRegistrationResponse.d.ts.map +1 -0
  151. package/esm/services/defaultRootCerts/android-key.d.ts +1 -0
  152. package/esm/services/defaultRootCerts/android-key.d.ts.map +1 -0
  153. package/esm/services/defaultRootCerts/android-safetynet.d.ts +1 -0
  154. package/esm/services/defaultRootCerts/android-safetynet.d.ts.map +1 -0
  155. package/esm/services/defaultRootCerts/apple.d.ts +1 -0
  156. package/esm/services/defaultRootCerts/apple.d.ts.map +1 -0
  157. package/esm/services/defaultRootCerts/mds.d.ts +1 -0
  158. package/esm/services/defaultRootCerts/mds.d.ts.map +1 -0
  159. package/esm/services/metadataService.d.ts +30 -11
  160. package/esm/services/metadataService.d.ts.map +1 -0
  161. package/esm/services/metadataService.js +8 -22
  162. package/esm/services/settingsService.d.ts +18 -5
  163. package/esm/services/settingsService.d.ts.map +1 -0
  164. package/esm/services/settingsService.js +14 -10
  165. package/esm/types/dom.d.ts +329 -0
  166. package/esm/types/dom.d.ts.map +1 -0
  167. package/esm/types/dom.js +1 -0
  168. package/esm/types/index.d.ts +205 -0
  169. package/esm/types/index.d.ts.map +1 -0
  170. package/esm/types/index.js +1 -0
  171. package/package.json +27 -32
  172. package/script/authentication/generateAuthenticationOptions.d.ts +14 -13
  173. package/script/authentication/generateAuthenticationOptions.d.ts.map +1 -0
  174. package/script/authentication/generateAuthenticationOptions.js +1 -2
  175. package/script/authentication/verifyAuthenticationResponse.d.ts +19 -15
  176. package/script/authentication/verifyAuthenticationResponse.d.ts.map +1 -0
  177. package/script/authentication/verifyAuthenticationResponse.js +1 -2
  178. package/script/helpers/convertAAGUIDToString.d.ts +1 -0
  179. package/script/helpers/convertAAGUIDToString.d.ts.map +1 -0
  180. package/script/helpers/convertAAGUIDToString.js +5 -6
  181. package/script/helpers/convertCOSEtoPKCS.d.ts +1 -0
  182. package/script/helpers/convertCOSEtoPKCS.d.ts.map +1 -0
  183. package/script/helpers/convertCOSEtoPKCS.js +1 -2
  184. package/script/helpers/convertCertBufferToPEM.d.ts +2 -1
  185. package/script/helpers/convertCertBufferToPEM.d.ts.map +1 -0
  186. package/script/helpers/convertCertBufferToPEM.js +1 -2
  187. package/script/helpers/convertPEMToBytes.d.ts +1 -0
  188. package/script/helpers/convertPEMToBytes.d.ts.map +1 -0
  189. package/script/helpers/convertPEMToBytes.js +1 -2
  190. package/script/helpers/convertX509PublicKeyToCOSE.d.ts +1 -0
  191. package/script/helpers/convertX509PublicKeyToCOSE.d.ts.map +1 -0
  192. package/script/helpers/convertX509PublicKeyToCOSE.js +11 -9
  193. package/script/helpers/cose.d.ts +23 -0
  194. package/script/helpers/cose.d.ts.map +1 -0
  195. package/script/helpers/cose.js +31 -11
  196. package/script/helpers/decodeAttestationObject.d.ts +5 -0
  197. package/script/helpers/decodeAttestationObject.d.ts.map +1 -0
  198. package/script/helpers/decodeAttestationObject.js +6 -3
  199. package/script/helpers/decodeAuthenticatorExtensions.d.ts +1 -0
  200. package/script/helpers/decodeAuthenticatorExtensions.d.ts.map +1 -0
  201. package/script/helpers/decodeAuthenticatorExtensions.js +1 -2
  202. package/script/helpers/decodeClientDataJSON.d.ts +6 -1
  203. package/script/helpers/decodeClientDataJSON.d.ts.map +1 -0
  204. package/script/helpers/decodeClientDataJSON.js +6 -3
  205. package/script/helpers/decodeCredentialPublicKey.d.ts +5 -0
  206. package/script/helpers/decodeCredentialPublicKey.d.ts.map +1 -0
  207. package/script/helpers/decodeCredentialPublicKey.js +6 -3
  208. package/script/helpers/fetch.d.ts +5 -0
  209. package/script/helpers/fetch.d.ts.map +1 -0
  210. package/script/helpers/fetch.js +8 -5
  211. package/script/helpers/generateChallenge.d.ts +5 -0
  212. package/script/helpers/generateChallenge.d.ts.map +1 -0
  213. package/script/helpers/generateChallenge.js +6 -3
  214. package/script/helpers/generateUserID.d.ts +5 -0
  215. package/script/helpers/generateUserID.d.ts.map +1 -0
  216. package/script/helpers/generateUserID.js +6 -3
  217. package/script/helpers/getCertificateInfo.d.ts +2 -1
  218. package/script/helpers/getCertificateInfo.d.ts.map +1 -0
  219. package/script/helpers/getCertificateInfo.js +6 -6
  220. package/script/helpers/index.d.ts +17 -23
  221. package/script/helpers/index.d.ts.map +1 -0
  222. package/script/helpers/index.js +20 -36
  223. package/script/helpers/isCertRevoked.d.ts +2 -1
  224. package/script/helpers/isCertRevoked.d.ts.map +1 -0
  225. package/script/helpers/isCertRevoked.js +10 -10
  226. package/script/helpers/iso/index.d.ts +1 -0
  227. package/script/helpers/iso/index.d.ts.map +1 -0
  228. package/script/helpers/iso/isoBase64URL.d.ts +2 -1
  229. package/script/helpers/iso/isoBase64URL.d.ts.map +1 -0
  230. package/script/helpers/iso/isoBase64URL.js +24 -18
  231. package/script/helpers/iso/isoCBOR.d.ts +6 -1
  232. package/script/helpers/iso/isoCBOR.d.ts.map +1 -0
  233. package/script/helpers/iso/isoCBOR.js +32 -6
  234. package/script/helpers/iso/isoCrypto/digest.d.ts +1 -0
  235. package/script/helpers/iso/isoCrypto/digest.d.ts.map +1 -0
  236. package/script/helpers/iso/isoCrypto/digest.js +1 -2
  237. package/script/helpers/iso/isoCrypto/getRandomValues.d.ts +1 -0
  238. package/script/helpers/iso/isoCrypto/getRandomValues.d.ts.map +1 -0
  239. package/script/helpers/iso/isoCrypto/getRandomValues.js +1 -2
  240. package/script/helpers/iso/isoCrypto/getWebCrypto.d.ts +2 -1
  241. package/script/helpers/iso/isoCrypto/getWebCrypto.d.ts.map +1 -0
  242. package/script/helpers/iso/isoCrypto/getWebCrypto.js +2 -2
  243. package/script/helpers/iso/isoCrypto/importKey.d.ts +1 -0
  244. package/script/helpers/iso/isoCrypto/importKey.d.ts.map +1 -0
  245. package/script/helpers/iso/isoCrypto/importKey.js +1 -2
  246. package/script/helpers/iso/isoCrypto/index.d.ts +5 -0
  247. package/script/helpers/iso/isoCrypto/index.d.ts.map +1 -0
  248. package/script/helpers/iso/isoCrypto/index.js +4 -0
  249. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoAlg.d.ts +1 -0
  250. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoAlg.d.ts.map +1 -0
  251. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoAlg.js +1 -2
  252. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoKeyAlgName.d.ts +1 -0
  253. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoKeyAlgName.d.ts.map +1 -0
  254. package/script/helpers/iso/isoCrypto/mapCoseAlgToWebCryptoKeyAlgName.js +1 -2
  255. package/script/helpers/iso/isoCrypto/structs.d.ts +1 -0
  256. package/script/helpers/iso/isoCrypto/structs.d.ts.map +1 -0
  257. package/script/helpers/iso/isoCrypto/unwrapEC2Signature.d.ts +1 -0
  258. package/script/helpers/iso/isoCrypto/unwrapEC2Signature.d.ts.map +1 -0
  259. package/script/helpers/iso/isoCrypto/unwrapEC2Signature.js +4 -4
  260. package/script/helpers/iso/isoCrypto/verify.d.ts +1 -0
  261. package/script/helpers/iso/isoCrypto/verify.d.ts.map +1 -0
  262. package/script/helpers/iso/isoCrypto/verify.js +1 -2
  263. package/script/helpers/iso/isoCrypto/verifyEC2.d.ts +1 -0
  264. package/script/helpers/iso/isoCrypto/verifyEC2.d.ts.map +1 -0
  265. package/script/helpers/iso/isoCrypto/verifyEC2.js +1 -2
  266. package/script/helpers/iso/isoCrypto/verifyOKP.d.ts +1 -0
  267. package/script/helpers/iso/isoCrypto/verifyOKP.d.ts.map +1 -0
  268. package/script/helpers/iso/isoCrypto/verifyOKP.js +1 -2
  269. package/script/helpers/iso/isoCrypto/verifyRSA.d.ts +1 -0
  270. package/script/helpers/iso/isoCrypto/verifyRSA.d.ts.map +1 -0
  271. package/script/helpers/iso/isoCrypto/verifyRSA.js +1 -2
  272. package/script/helpers/iso/isoUint8Array.d.ts +5 -0
  273. package/script/helpers/iso/isoUint8Array.d.ts.map +1 -0
  274. package/script/helpers/iso/isoUint8Array.js +12 -9
  275. package/script/helpers/logging.d.ts +1 -0
  276. package/script/helpers/logging.d.ts.map +1 -0
  277. package/script/helpers/logging.js +2 -4
  278. package/script/helpers/mapX509SignatureAlgToCOSEAlg.d.ts +1 -0
  279. package/script/helpers/mapX509SignatureAlgToCOSEAlg.d.ts.map +1 -0
  280. package/script/helpers/mapX509SignatureAlgToCOSEAlg.js +1 -2
  281. package/script/helpers/matchExpectedRPID.d.ts +1 -0
  282. package/script/helpers/matchExpectedRPID.d.ts.map +1 -0
  283. package/script/helpers/matchExpectedRPID.js +1 -2
  284. package/script/helpers/parseAuthenticatorData.d.ts +5 -0
  285. package/script/helpers/parseAuthenticatorData.d.ts.map +1 -0
  286. package/script/helpers/parseAuthenticatorData.js +12 -9
  287. package/script/helpers/parseBackupFlags.d.ts +2 -1
  288. package/script/helpers/parseBackupFlags.d.ts.map +1 -0
  289. package/script/helpers/parseBackupFlags.js +2 -2
  290. package/script/helpers/toHash.d.ts +1 -0
  291. package/script/helpers/toHash.d.ts.map +1 -0
  292. package/script/helpers/toHash.js +1 -2
  293. package/script/helpers/validateCertificatePath.d.ts +4 -3
  294. package/script/helpers/validateCertificatePath.d.ts.map +1 -0
  295. package/script/helpers/validateCertificatePath.js +83 -61
  296. package/script/helpers/validateExtFIDOGenCEAAGUID.d.ts +2 -1
  297. package/script/helpers/validateExtFIDOGenCEAAGUID.d.ts.map +1 -0
  298. package/script/helpers/validateExtFIDOGenCEAAGUID.js +3 -4
  299. package/script/helpers/verifySignature.d.ts +5 -0
  300. package/script/helpers/verifySignature.d.ts.map +1 -0
  301. package/script/helpers/verifySignature.js +6 -3
  302. package/script/index.d.ts +9 -17
  303. package/script/index.d.ts.map +1 -0
  304. package/script/index.js +22 -17
  305. package/script/metadata/mdsTypes.d.ts +6 -1
  306. package/script/metadata/mdsTypes.d.ts.map +1 -0
  307. package/script/metadata/parseJWT.d.ts +1 -0
  308. package/script/metadata/parseJWT.d.ts.map +1 -0
  309. package/script/metadata/parseJWT.js +1 -2
  310. package/script/metadata/verifyAttestationWithMetadata.d.ts +3 -2
  311. package/script/metadata/verifyAttestationWithMetadata.d.ts.map +1 -0
  312. package/script/metadata/verifyAttestationWithMetadata.js +2 -2
  313. package/script/metadata/verifyJWT.d.ts +1 -0
  314. package/script/metadata/verifyJWT.d.ts.map +1 -0
  315. package/script/metadata/verifyJWT.js +1 -2
  316. package/script/registration/generateRegistrationOptions.d.ts +22 -19
  317. package/script/registration/generateRegistrationOptions.d.ts.map +1 -0
  318. package/script/registration/generateRegistrationOptions.js +24 -3
  319. package/script/registration/verifications/tpm/constants.d.ts +1 -0
  320. package/script/registration/verifications/tpm/constants.d.ts.map +1 -0
  321. package/script/registration/verifications/tpm/constants.js +4 -4
  322. package/script/registration/verifications/tpm/parseCertInfo.d.ts +1 -0
  323. package/script/registration/verifications/tpm/parseCertInfo.d.ts.map +1 -0
  324. package/script/registration/verifications/tpm/parseCertInfo.js +1 -2
  325. package/script/registration/verifications/tpm/parsePubArea.d.ts +1 -0
  326. package/script/registration/verifications/tpm/parsePubArea.d.ts.map +1 -0
  327. package/script/registration/verifications/tpm/parsePubArea.js +1 -2
  328. package/script/registration/verifications/tpm/verifyAttestationTPM.d.ts +1 -0
  329. package/script/registration/verifications/tpm/verifyAttestationTPM.d.ts.map +1 -0
  330. package/script/registration/verifications/tpm/verifyAttestationTPM.js +8 -8
  331. package/script/registration/verifications/verifyAttestationAndroidKey.d.ts +1 -0
  332. package/script/registration/verifications/verifyAttestationAndroidKey.d.ts.map +1 -0
  333. package/script/registration/verifications/verifyAttestationAndroidKey.js +7 -6
  334. package/script/registration/verifications/verifyAttestationAndroidSafetyNet.d.ts +1 -0
  335. package/script/registration/verifications/verifyAttestationAndroidSafetyNet.d.ts.map +1 -0
  336. package/script/registration/verifications/verifyAttestationAndroidSafetyNet.js +1 -2
  337. package/script/registration/verifications/verifyAttestationApple.d.ts +1 -0
  338. package/script/registration/verifications/verifyAttestationApple.d.ts.map +1 -0
  339. package/script/registration/verifications/verifyAttestationApple.js +4 -4
  340. package/script/registration/verifications/verifyAttestationFIDOU2F.d.ts +1 -0
  341. package/script/registration/verifications/verifyAttestationFIDOU2F.d.ts.map +1 -0
  342. package/script/registration/verifications/verifyAttestationFIDOU2F.js +1 -2
  343. package/script/registration/verifications/verifyAttestationPacked.d.ts +1 -0
  344. package/script/registration/verifications/verifyAttestationPacked.d.ts.map +1 -0
  345. package/script/registration/verifications/verifyAttestationPacked.js +1 -2
  346. package/script/registration/verifyRegistrationResponse.d.ts +18 -14
  347. package/script/registration/verifyRegistrationResponse.d.ts.map +1 -0
  348. package/script/registration/verifyRegistrationResponse.js +1 -2
  349. package/script/services/defaultRootCerts/android-key.d.ts +1 -0
  350. package/script/services/defaultRootCerts/android-key.d.ts.map +1 -0
  351. package/script/services/defaultRootCerts/android-safetynet.d.ts +1 -0
  352. package/script/services/defaultRootCerts/android-safetynet.d.ts.map +1 -0
  353. package/script/services/defaultRootCerts/apple.d.ts +1 -0
  354. package/script/services/defaultRootCerts/apple.d.ts.map +1 -0
  355. package/script/services/defaultRootCerts/mds.d.ts +1 -0
  356. package/script/services/defaultRootCerts/mds.d.ts.map +1 -0
  357. package/script/services/metadataService.d.ts +30 -11
  358. package/script/services/metadataService.d.ts.map +1 -0
  359. package/script/services/metadataService.js +8 -22
  360. package/script/services/settingsService.d.ts +18 -5
  361. package/script/services/settingsService.d.ts.map +1 -0
  362. package/script/services/settingsService.js +14 -10
  363. package/script/types/dom.d.ts +329 -0
  364. package/script/types/dom.d.ts.map +1 -0
  365. package/script/types/dom.js +2 -0
  366. package/script/types/index.d.ts +205 -0
  367. package/script/types/index.d.ts.map +1 -0
  368. package/script/types/index.js +2 -0
  369. package/esm/deps.d.ts +0 -9
  370. package/esm/deps.js +0 -12
  371. package/script/deps.d.ts +0 -9
  372. package/script/deps.js +0 -70
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/types/dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,205 @@
1
+ /**
2
+ * DO NOT MODIFY THESE FILES!
3
+ *
4
+ * These files were copied from the **types** package. To update this file, make changes to those
5
+ * files instead and then run the following command from the monorepo root folder:
6
+ *
7
+ * deno task codegen:types
8
+ */
9
+ import type { AttestationConveyancePreference, AuthenticationExtensionsClientInputs, AuthenticationExtensionsClientOutputs, AuthenticatorAssertionResponse, AuthenticatorAttachment, AuthenticatorAttestationResponse, AuthenticatorSelectionCriteria, COSEAlgorithmIdentifier, PublicKeyCredential, PublicKeyCredentialCreationOptions, PublicKeyCredentialDescriptor, PublicKeyCredentialParameters, PublicKeyCredentialRequestOptions, PublicKeyCredentialRpEntity, PublicKeyCredentialType, UserVerificationRequirement } from './dom.js';
10
+ export type { AttestationConveyancePreference, AuthenticationExtensionsClientInputs, AuthenticationExtensionsClientOutputs, AuthenticatorAssertionResponse, AuthenticatorAttachment, AuthenticatorAttestationResponse, AuthenticatorSelectionCriteria, AuthenticatorTransport, COSEAlgorithmIdentifier, Crypto, PublicKeyCredential, PublicKeyCredentialCreationOptions, PublicKeyCredentialDescriptor, PublicKeyCredentialParameters, PublicKeyCredentialRequestOptions, PublicKeyCredentialRpEntity, PublicKeyCredentialType, PublicKeyCredentialUserEntity, UserVerificationRequirement, } from './dom.js';
11
+ /**
12
+ * A variant of PublicKeyCredentialCreationOptions suitable for JSON transmission to the browser to
13
+ * (eventually) get passed into navigator.credentials.create(...) in the browser.
14
+ *
15
+ * This should eventually get replaced with official TypeScript DOM types when WebAuthn L3 types
16
+ * eventually make it into the language:
17
+ *
18
+ * https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptionsjson
19
+ */
20
+ export interface PublicKeyCredentialCreationOptionsJSON {
21
+ rp: PublicKeyCredentialRpEntity;
22
+ user: PublicKeyCredentialUserEntityJSON;
23
+ challenge: Base64URLString;
24
+ pubKeyCredParams: PublicKeyCredentialParameters[];
25
+ timeout?: number;
26
+ excludeCredentials?: PublicKeyCredentialDescriptorJSON[];
27
+ authenticatorSelection?: AuthenticatorSelectionCriteria;
28
+ hints?: PublicKeyCredentialHint[];
29
+ attestation?: AttestationConveyancePreference;
30
+ attestationFormats?: AttestationFormat[];
31
+ extensions?: AuthenticationExtensionsClientInputs;
32
+ }
33
+ /**
34
+ * A variant of PublicKeyCredentialRequestOptions suitable for JSON transmission to the browser to
35
+ * (eventually) get passed into navigator.credentials.get(...) in the browser.
36
+ */
37
+ export interface PublicKeyCredentialRequestOptionsJSON {
38
+ challenge: Base64URLString;
39
+ timeout?: number;
40
+ rpId?: string;
41
+ allowCredentials?: PublicKeyCredentialDescriptorJSON[];
42
+ userVerification?: UserVerificationRequirement;
43
+ hints?: PublicKeyCredentialHint[];
44
+ extensions?: AuthenticationExtensionsClientInputs;
45
+ }
46
+ /**
47
+ * https://w3c.github.io/webauthn/#dictdef-publickeycredentialdescriptorjson
48
+ */
49
+ export interface PublicKeyCredentialDescriptorJSON {
50
+ id: Base64URLString;
51
+ type: PublicKeyCredentialType;
52
+ transports?: AuthenticatorTransportFuture[];
53
+ }
54
+ /**
55
+ * https://w3c.github.io/webauthn/#dictdef-publickeycredentialuserentityjson
56
+ */
57
+ export interface PublicKeyCredentialUserEntityJSON {
58
+ id: string;
59
+ name: string;
60
+ displayName: string;
61
+ }
62
+ /**
63
+ * The value returned from navigator.credentials.create()
64
+ */
65
+ export interface RegistrationCredential extends PublicKeyCredentialFuture {
66
+ response: AuthenticatorAttestationResponseFuture;
67
+ }
68
+ /**
69
+ * A slightly-modified RegistrationCredential to simplify working with ArrayBuffers that
70
+ * are Base64URL-encoded in the browser so that they can be sent as JSON to the server.
71
+ *
72
+ * https://w3c.github.io/webauthn/#dictdef-registrationresponsejson
73
+ */
74
+ export interface RegistrationResponseJSON {
75
+ id: Base64URLString;
76
+ rawId: Base64URLString;
77
+ response: AuthenticatorAttestationResponseJSON;
78
+ authenticatorAttachment?: AuthenticatorAttachment;
79
+ clientExtensionResults: AuthenticationExtensionsClientOutputs;
80
+ type: PublicKeyCredentialType;
81
+ }
82
+ /**
83
+ * The value returned from navigator.credentials.get()
84
+ */
85
+ export interface AuthenticationCredential extends PublicKeyCredentialFuture {
86
+ response: AuthenticatorAssertionResponse;
87
+ }
88
+ /**
89
+ * A slightly-modified AuthenticationCredential to simplify working with ArrayBuffers that
90
+ * are Base64URL-encoded in the browser so that they can be sent as JSON to the server.
91
+ *
92
+ * https://w3c.github.io/webauthn/#dictdef-authenticationresponsejson
93
+ */
94
+ export interface AuthenticationResponseJSON {
95
+ id: Base64URLString;
96
+ rawId: Base64URLString;
97
+ response: AuthenticatorAssertionResponseJSON;
98
+ authenticatorAttachment?: AuthenticatorAttachment;
99
+ clientExtensionResults: AuthenticationExtensionsClientOutputs;
100
+ type: PublicKeyCredentialType;
101
+ }
102
+ /**
103
+ * A slightly-modified AuthenticatorAttestationResponse to simplify working with ArrayBuffers that
104
+ * are Base64URL-encoded in the browser so that they can be sent as JSON to the server.
105
+ *
106
+ * https://w3c.github.io/webauthn/#dictdef-authenticatorattestationresponsejson
107
+ */
108
+ export interface AuthenticatorAttestationResponseJSON {
109
+ clientDataJSON: Base64URLString;
110
+ attestationObject: Base64URLString;
111
+ authenticatorData?: Base64URLString;
112
+ transports?: AuthenticatorTransportFuture[];
113
+ publicKeyAlgorithm?: COSEAlgorithmIdentifier;
114
+ publicKey?: Base64URLString;
115
+ }
116
+ /**
117
+ * A slightly-modified AuthenticatorAssertionResponse to simplify working with ArrayBuffers that
118
+ * are Base64URL-encoded in the browser so that they can be sent as JSON to the server.
119
+ *
120
+ * https://w3c.github.io/webauthn/#dictdef-authenticatorassertionresponsejson
121
+ */
122
+ export interface AuthenticatorAssertionResponseJSON {
123
+ clientDataJSON: Base64URLString;
124
+ authenticatorData: Base64URLString;
125
+ signature: Base64URLString;
126
+ userHandle?: Base64URLString;
127
+ }
128
+ /**
129
+ * Public key credential information needed to verify authentication responses
130
+ */
131
+ export type WebAuthnCredential = {
132
+ id: Base64URLString;
133
+ publicKey: Uint8Array;
134
+ counter: number;
135
+ transports?: AuthenticatorTransportFuture[];
136
+ };
137
+ /**
138
+ * An attempt to communicate that this isn't just any string, but a Base64URL-encoded string
139
+ */
140
+ export type Base64URLString = string;
141
+ /**
142
+ * AuthenticatorAttestationResponse in TypeScript's DOM lib is outdated (up through v3.9.7).
143
+ * Maintain an augmented version here so we can implement additional properties as the WebAuthn
144
+ * spec evolves.
145
+ *
146
+ * See https://www.w3.org/TR/webauthn-2/#iface-authenticatorattestationresponse
147
+ *
148
+ * Properties marked optional are not supported in all browsers.
149
+ */
150
+ export interface AuthenticatorAttestationResponseFuture extends AuthenticatorAttestationResponse {
151
+ getTransports(): AuthenticatorTransportFuture[];
152
+ }
153
+ /**
154
+ * A super class of TypeScript's `AuthenticatorTransport` that includes support for the latest
155
+ * transports. Should eventually be replaced by TypeScript's when TypeScript gets updated to
156
+ * know about it (sometime after 4.6.3)
157
+ */
158
+ export type AuthenticatorTransportFuture = 'ble' | 'cable' | 'hybrid' | 'internal' | 'nfc' | 'smart-card' | 'usb';
159
+ /**
160
+ * A super class of TypeScript's `PublicKeyCredentialDescriptor` that knows about the latest
161
+ * transports. Should eventually be replaced by TypeScript's when TypeScript gets updated to
162
+ * know about it (sometime after 4.6.3)
163
+ */
164
+ export interface PublicKeyCredentialDescriptorFuture extends Omit<PublicKeyCredentialDescriptor, 'transports'> {
165
+ transports?: AuthenticatorTransportFuture[];
166
+ }
167
+ /** */
168
+ export type PublicKeyCredentialJSON = RegistrationResponseJSON | AuthenticationResponseJSON;
169
+ /**
170
+ * A super class of TypeScript's `PublicKeyCredential` that knows about upcoming WebAuthn features
171
+ */
172
+ export interface PublicKeyCredentialFuture extends PublicKeyCredential {
173
+ type: PublicKeyCredentialType;
174
+ isConditionalMediationAvailable?(): Promise<boolean>;
175
+ parseCreationOptionsFromJSON?(options: PublicKeyCredentialCreationOptionsJSON): PublicKeyCredentialCreationOptions;
176
+ parseRequestOptionsFromJSON?(options: PublicKeyCredentialRequestOptionsJSON): PublicKeyCredentialRequestOptions;
177
+ toJSON?(): PublicKeyCredentialJSON;
178
+ }
179
+ /**
180
+ * The two types of credentials as defined by bit 3 ("Backup Eligibility") in authenticator data:
181
+ * - `"singleDevice"` credentials will never be backed up
182
+ * - `"multiDevice"` credentials can be backed up
183
+ */
184
+ export type CredentialDeviceType = 'singleDevice' | 'multiDevice';
185
+ /**
186
+ * Categories of authenticators that Relying Parties can pass along to browsers during
187
+ * registration. Browsers that understand these values can optimize their modal experience to
188
+ * start the user off in a particular registration flow:
189
+ *
190
+ * - `hybrid`: A platform authenticator on a mobile device
191
+ * - `security-key`: A portable FIDO2 authenticator capable of being used on multiple devices via a USB or NFC connection
192
+ * - `client-device`: The device that WebAuthn is being called on. Typically synonymous with platform authenticators
193
+ *
194
+ * See https://w3c.github.io/webauthn/#enumdef-publickeycredentialhint
195
+ *
196
+ * These values are less strict than `authenticatorAttachment`
197
+ */
198
+ export type PublicKeyCredentialHint = 'hybrid' | 'security-key' | 'client-device';
199
+ /**
200
+ * Values for an attestation object's `fmt`
201
+ *
202
+ * See https://www.iana.org/assignments/webauthn/webauthn.xhtml#webauthn-attestation-statement-format-ids
203
+ */
204
+ export type AttestationFormat = 'fido-u2f' | 'packed' | 'android-safetynet' | 'android-key' | 'tpm' | 'apple' | 'none';
205
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,33 +1,43 @@
1
1
  {
2
- "module": "./esm/index.js",
3
- "main": "./script/index.js",
4
2
  "name": "@simplewebauthn/server",
5
- "version": "11.0.0",
3
+ "version": "13.0.0-alpha1",
6
4
  "description": "SimpleWebAuthn for Servers",
7
- "license": "MIT",
5
+ "keywords": [
6
+ "typescript",
7
+ "webauthn",
8
+ "passkeys",
9
+ "fido",
10
+ "node"
11
+ ],
8
12
  "author": "Matthew Miller <matthew@millerti.me>",
13
+ "homepage": "https://github.com/MasterKale/SimpleWebAuthn/tree/master/packages/server#readme",
9
14
  "repository": {
10
15
  "type": "git",
11
16
  "url": "git+https://github.com/MasterKale/SimpleWebAuthn.git",
12
17
  "directory": "packages/server"
13
18
  },
14
- "homepage": "https://github.com/MasterKale/SimpleWebAuthn/tree/master/packages/server#readme",
19
+ "license": "MIT",
20
+ "bugs": {
21
+ "url": "https://github.com/MasterKale/SimpleWebAuthn/issues"
22
+ },
23
+ "main": "./script/index.js",
24
+ "module": "./esm/index.js",
25
+ "exports": {
26
+ ".": {
27
+ "import": "./esm/index.js",
28
+ "require": "./script/index.js"
29
+ },
30
+ "./helpers": {
31
+ "import": "./esm/helpers/index.js",
32
+ "require": "./script/helpers/index.js"
33
+ }
34
+ },
15
35
  "publishConfig": {
16
36
  "access": "public"
17
37
  },
18
38
  "engines": {
19
39
  "node": ">=20.0.0"
20
40
  },
21
- "bugs": {
22
- "url": "https://github.com/MasterKale/SimpleWebAuthn/issues"
23
- },
24
- "keywords": [
25
- "typescript",
26
- "webauthn",
27
- "passkeys",
28
- "fido",
29
- "node"
30
- ],
31
41
  "typesVersions": {
32
42
  "*": {
33
43
  ".": [
@@ -38,16 +48,6 @@
38
48
  ]
39
49
  }
40
50
  },
41
- "exports": {
42
- ".": {
43
- "import": "./esm/index.js",
44
- "require": "./script/index.js"
45
- },
46
- "./helpers": {
47
- "import": "./esm/helpers/index.js",
48
- "require": "./script/helpers/index.js"
49
- }
50
- },
51
51
  "dependencies": {
52
52
  "@hexagon/base64": "^1.1.27",
53
53
  "@levischuck/tiny-cbor": "^0.2.2",
@@ -56,15 +56,10 @@
56
56
  "@peculiar/asn1-rsa": "^2.3.8",
57
57
  "@peculiar/asn1-schema": "^2.3.8",
58
58
  "@peculiar/asn1-x509": "^2.3.8",
59
- "@simplewebauthn/types": "^11.0.0",
60
59
  "cross-fetch": "^4.0.0"
61
60
  },
62
61
  "devDependencies": {
63
- "@types/node": "^18.11.9",
64
- "picocolors": "^1.0.0",
65
- "@deno/shim-deno-test": "~0.4.0"
62
+ "@types/node": "^20.9.0"
66
63
  },
67
- "scripts": {
68
- "test": "node test_runner.js"
69
- }
64
+ "_generatedBy": "dnt@dev"
70
65
  }
@@ -1,15 +1,5 @@
1
- import type { AuthenticationExtensionsClientInputs, AuthenticatorTransportFuture, Base64URLString, PublicKeyCredentialRequestOptionsJSON, UserVerificationRequirement } from '../deps.js';
2
- export type GenerateAuthenticationOptionsOpts = {
3
- rpID: string;
4
- allowCredentials?: {
5
- id: Base64URLString;
6
- transports?: AuthenticatorTransportFuture[];
7
- }[];
8
- challenge?: string | Uint8Array;
9
- timeout?: number;
10
- userVerification?: UserVerificationRequirement;
11
- extensions?: AuthenticationExtensionsClientInputs;
12
- };
1
+ import type { AuthenticationExtensionsClientInputs, AuthenticatorTransportFuture, Base64URLString, PublicKeyCredentialRequestOptionsJSON } from '../types/index.js';
2
+ export type GenerateAuthenticationOptionsOpts = Parameters<typeof generateAuthenticationOptions>[0];
13
3
  /**
14
4
  * Prepare a value to pass into navigator.credentials.get(...) for authenticator authentication
15
5
  *
@@ -22,4 +12,15 @@ export type GenerateAuthenticationOptionsOpts = {
22
12
  * @param userVerification **(Optional)** - Set to `'discouraged'` when asserting as part of a 2FA flow, otherwise set to `'preferred'` or `'required'` as desired. Defaults to `"preferred"`
23
13
  * @param extensions **(Optional)** - Additional plugins the authenticator or browser should use during authentication
24
14
  */
25
- export declare function generateAuthenticationOptions(options: GenerateAuthenticationOptionsOpts): Promise<PublicKeyCredentialRequestOptionsJSON>;
15
+ export declare function generateAuthenticationOptions(options: {
16
+ rpID: string;
17
+ allowCredentials?: {
18
+ id: Base64URLString;
19
+ transports?: AuthenticatorTransportFuture[];
20
+ }[];
21
+ challenge?: string | Uint8Array;
22
+ timeout?: number;
23
+ userVerification?: 'required' | 'preferred' | 'discouraged';
24
+ extensions?: AuthenticationExtensionsClientInputs;
25
+ }): Promise<PublicKeyCredentialRequestOptionsJSON>;
26
+ //# sourceMappingURL=generateAuthenticationOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateAuthenticationOptions.d.ts","sourceRoot":"","sources":["../../src/authentication/generateAuthenticationOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oCAAoC,EACpC,4BAA4B,EAC5B,eAAe,EACf,qCAAqC,EACtC,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,iCAAiC,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpG;;;;;;;;;;;GAWG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE;IACP,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE;QACjB,EAAE,EAAE,eAAe,CAAC;QACpB,UAAU,CAAC,EAAE,4BAA4B,EAAE,CAAC;KAC7C,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,CAAC;IAC5D,UAAU,CAAC,EAAE,oCAAoC,CAAC;CACnD,GACA,OAAO,CAAC,qCAAqC,CAAC,CAoChD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateAuthenticationOptions = void 0;
3
+ exports.generateAuthenticationOptions = generateAuthenticationOptions;
4
4
  const index_js_1 = require("../helpers/iso/index.js");
5
5
  const generateChallenge_js_1 = require("../helpers/generateChallenge.js");
6
6
  /**
@@ -42,4 +42,3 @@ async function generateAuthenticationOptions(options) {
42
42
  extensions,
43
43
  };
44
44
  }
45
- exports.generateAuthenticationOptions = generateAuthenticationOptions;
@@ -1,17 +1,9 @@
1
- import type { AuthenticationResponseJSON, Base64URLString, CredentialDeviceType, UserVerificationRequirement, WebAuthnCredential } from '../deps.js';
2
- import { AuthenticationExtensionsAuthenticatorOutputs } from '../helpers/decodeAuthenticatorExtensions.js';
3
- export type VerifyAuthenticationResponseOpts = {
4
- response: AuthenticationResponseJSON;
5
- expectedChallenge: string | ((challenge: string) => boolean | Promise<boolean>);
6
- expectedOrigin: string | string[];
7
- expectedRPID: string | string[];
8
- credential: WebAuthnCredential;
9
- expectedType?: string | string[];
10
- requireUserVerification?: boolean;
11
- advancedFIDOConfig?: {
12
- userVerification?: UserVerificationRequirement;
13
- };
14
- };
1
+ import type { AuthenticationResponseJSON, Base64URLString, CredentialDeviceType, UserVerificationRequirement, WebAuthnCredential } from '../types/index.js';
2
+ import type { AuthenticationExtensionsAuthenticatorOutputs } from '../helpers/decodeAuthenticatorExtensions.js';
3
+ /**
4
+ * Configurable options when calling `verifyAuthenticationResponse()`
5
+ */
6
+ export type VerifyAuthenticationResponseOpts = Parameters<typeof verifyAuthenticationResponse>[0];
15
7
  /**
16
8
  * Verify that the user has legitimately completed the authentication process
17
9
  *
@@ -27,7 +19,18 @@ export type VerifyAuthenticationResponseOpts = {
27
19
  * @param advancedFIDOConfig **(Optional)** - Options for satisfying more stringent FIDO RP feature requirements
28
20
  * @param advancedFIDOConfig.userVerification **(Optional)** - Enable alternative rules for evaluating the User Presence and User Verified flags in authenticator data: UV (and UP) flags are optional unless this value is `"required"`
29
21
  */
30
- export declare function verifyAuthenticationResponse(options: VerifyAuthenticationResponseOpts): Promise<VerifiedAuthenticationResponse>;
22
+ export declare function verifyAuthenticationResponse(options: {
23
+ response: AuthenticationResponseJSON;
24
+ expectedChallenge: string | ((challenge: string) => boolean | Promise<boolean>);
25
+ expectedOrigin: string | string[];
26
+ expectedRPID: string | string[];
27
+ credential: WebAuthnCredential;
28
+ expectedType?: string | string[];
29
+ requireUserVerification?: boolean;
30
+ advancedFIDOConfig?: {
31
+ userVerification?: UserVerificationRequirement;
32
+ };
33
+ }): Promise<VerifiedAuthenticationResponse>;
31
34
  /**
32
35
  * Result of authentication verification
33
36
  *
@@ -61,3 +64,4 @@ export type VerifiedAuthenticationResponse = {
61
64
  authenticatorExtensionResults?: AuthenticationExtensionsAuthenticatorOutputs;
62
65
  };
63
66
  };
67
+ //# sourceMappingURL=verifyAuthenticationResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyAuthenticationResponse.d.ts","sourceRoot":"","sources":["../../src/authentication/verifyAuthenticationResponse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,eAAe,EACf,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,KAAK,EAAE,4CAA4C,EAAE,MAAM,6CAA6C,CAAC;AAIhH;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC;AAElG;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE;IACP,QAAQ,EAAE,0BAA0B,CAAC;IACrC,iBAAiB,EAAE,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAChF,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACjC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,kBAAkB,CAAC,EAAE;QACnB,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;KAChD,CAAC;CACH,GACA,OAAO,CAAC,8BAA8B,CAAC,CAmNzC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE;QAClB,YAAY,EAAE,eAAe,CAAC;QAC9B,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;QACtB,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,kBAAkB,EAAE,OAAO,CAAC;QAC5B,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,6BAA6B,CAAC,EAAE,4CAA4C,CAAC;KAC9E,CAAC;CACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.verifyAuthenticationResponse = void 0;
3
+ exports.verifyAuthenticationResponse = verifyAuthenticationResponse;
4
4
  const decodeClientDataJSON_js_1 = require("../helpers/decodeClientDataJSON.js");
5
5
  const toHash_js_1 = require("../helpers/toHash.js");
6
6
  const verifySignature_js_1 = require("../helpers/verifySignature.js");
@@ -172,4 +172,3 @@ async function verifyAuthenticationResponse(options) {
172
172
  };
173
173
  return toReturn;
174
174
  }
175
- exports.verifyAuthenticationResponse = verifyAuthenticationResponse;
@@ -2,3 +2,4 @@
2
2
  * Convert the aaguid buffer in authData into a UUID string
3
3
  */
4
4
  export declare function convertAAGUIDToString(aaguid: Uint8Array): string;
5
+ //# sourceMappingURL=convertAAGUIDToString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertAAGUIDToString.d.ts","sourceRoot":"","sources":["../../src/helpers/convertAAGUIDToString.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAchE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertAAGUIDToString = void 0;
3
+ exports.convertAAGUIDToString = convertAAGUIDToString;
4
4
  const index_js_1 = require("./iso/index.js");
5
5
  /**
6
6
  * Convert the aaguid buffer in authData into a UUID string
@@ -9,13 +9,12 @@ function convertAAGUIDToString(aaguid) {
9
9
  // Raw Hex: adce000235bcc60a648b0b25f1f05503
10
10
  const hex = index_js_1.isoUint8Array.toHex(aaguid);
11
11
  const segments = [
12
- hex.slice(0, 8),
13
- hex.slice(8, 12),
14
- hex.slice(12, 16),
15
- hex.slice(16, 20),
12
+ hex.slice(0, 8), // 8
13
+ hex.slice(8, 12), // 4
14
+ hex.slice(12, 16), // 4
15
+ hex.slice(16, 20), // 4
16
16
  hex.slice(20, 32), // 8
17
17
  ];
18
18
  // Formatted: adce0002-35bc-c60a-648b-0b25f1f05503
19
19
  return segments.join('-');
20
20
  }
21
- exports.convertAAGUIDToString = convertAAGUIDToString;
@@ -2,3 +2,4 @@
2
2
  * Takes COSE-encoded public key and converts it to PKCS key
3
3
  */
4
4
  export declare function convertCOSEtoPKCS(cosePublicKey: Uint8Array): Uint8Array;
5
+ //# sourceMappingURL=convertCOSEtoPKCS.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertCOSEtoPKCS.d.ts","sourceRoot":"","sources":["../../src/helpers/convertCOSEtoPKCS.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,UAAU,GAAG,UAAU,CAmBvE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertCOSEtoPKCS = void 0;
3
+ exports.convertCOSEtoPKCS = convertCOSEtoPKCS;
4
4
  const index_js_1 = require("./iso/index.js");
5
5
  const cose_js_1 = require("./cose.js");
6
6
  /**
@@ -22,4 +22,3 @@ function convertCOSEtoPKCS(cosePublicKey) {
22
22
  }
23
23
  return index_js_1.isoUint8Array.concat([tag, x]);
24
24
  }
25
- exports.convertCOSEtoPKCS = convertCOSEtoPKCS;
@@ -1,5 +1,6 @@
1
- import type { Base64URLString } from '../deps.js';
1
+ import type { Base64URLString } from '../types/index.js';
2
2
  /**
3
3
  * Convert buffer to an OpenSSL-compatible PEM text format.
4
4
  */
5
5
  export declare function convertCertBufferToPEM(certBuffer: Uint8Array | Base64URLString): string;
6
+ //# sourceMappingURL=convertCertBufferToPEM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertCertBufferToPEM.d.ts","sourceRoot":"","sources":["../../src/helpers/convertCertBufferToPEM.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGzD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,GAAG,eAAe,GACvC,MAAM,CA4BR"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertCertBufferToPEM = void 0;
3
+ exports.convertCertBufferToPEM = convertCertBufferToPEM;
4
4
  const index_js_1 = require("./iso/index.js");
5
5
  /**
6
6
  * Convert buffer to an OpenSSL-compatible PEM text format.
@@ -32,4 +32,3 @@ function convertCertBufferToPEM(certBuffer) {
32
32
  PEMKey = `-----BEGIN CERTIFICATE-----\n${PEMKey}-----END CERTIFICATE-----\n`;
33
33
  return PEMKey;
34
34
  }
35
- exports.convertCertBufferToPEM = convertCertBufferToPEM;
@@ -2,3 +2,4 @@
2
2
  * Take a certificate in PEM format and convert it to bytes
3
3
  */
4
4
  export declare function convertPEMToBytes(pem: string): Uint8Array;
5
+ //# sourceMappingURL=convertPEMToBytes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertPEMToBytes.d.ts","sourceRoot":"","sources":["../../src/helpers/convertPEMToBytes.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAOzD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertPEMToBytes = void 0;
3
+ exports.convertPEMToBytes = convertPEMToBytes;
4
4
  const index_js_1 = require("./iso/index.js");
5
5
  /**
6
6
  * Take a certificate in PEM format and convert it to bytes
@@ -12,4 +12,3 @@ function convertPEMToBytes(pem) {
12
12
  .replace(/[\n ]/g, '');
13
13
  return index_js_1.isoBase64URL.toBuffer(certBase64, 'base64');
14
14
  }
15
- exports.convertPEMToBytes = convertPEMToBytes;
@@ -1,2 +1,3 @@
1
1
  import { COSEPublicKey } from './cose.js';
2
2
  export declare function convertX509PublicKeyToCOSE(x509Certificate: Uint8Array): COSEPublicKey;
3
+ //# sourceMappingURL=convertX509PublicKeyToCOSE.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertX509PublicKeyToCOSE.d.ts","sourceRoot":"","sources":["../../src/helpers/convertX509PublicKeyToCOSE.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,aAAa,EAGd,MAAM,WAAW,CAAC;AAKnB,wBAAgB,0BAA0B,CACxC,eAAe,EAAE,UAAU,GAC1B,aAAa,CA+Ff"}
@@ -1,33 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertX509PublicKeyToCOSE = void 0;
4
- const deps_js_1 = require("../deps.js");
3
+ exports.convertX509PublicKeyToCOSE = convertX509PublicKeyToCOSE;
4
+ const asn1_schema_1 = require("@peculiar/asn1-schema");
5
+ const asn1_x509_1 = require("@peculiar/asn1-x509");
6
+ const asn1_ecc_1 = require("@peculiar/asn1-ecc");
5
7
  const cose_js_1 = require("./cose.js");
8
+ const asn1_rsa_1 = require("@peculiar/asn1-rsa");
6
9
  const mapX509SignatureAlgToCOSEAlg_js_1 = require("./mapX509SignatureAlgToCOSEAlg.js");
7
10
  function convertX509PublicKeyToCOSE(x509Certificate) {
8
11
  let cosePublicKey = new Map();
9
12
  /**
10
13
  * Time to extract the public key from an X.509 certificate
11
14
  */
12
- const x509 = deps_js_1.AsnParser.parse(x509Certificate, deps_js_1.Certificate);
15
+ const x509 = asn1_schema_1.AsnParser.parse(x509Certificate, asn1_x509_1.Certificate);
13
16
  const { tbsCertificate } = x509;
14
17
  const { subjectPublicKeyInfo, signature: _tbsSignature } = tbsCertificate;
15
18
  const signatureAlgorithm = _tbsSignature.algorithm;
16
19
  const publicKeyAlgorithmID = subjectPublicKeyInfo.algorithm.algorithm;
17
- if (publicKeyAlgorithmID === deps_js_1.id_ecPublicKey) {
20
+ if (publicKeyAlgorithmID === asn1_ecc_1.id_ecPublicKey) {
18
21
  /**
19
22
  * EC2 Public Key
20
23
  */
21
24
  if (!subjectPublicKeyInfo.algorithm.parameters) {
22
25
  throw new Error('Certificate public key was missing parameters (EC2)');
23
26
  }
24
- const ecParameters = deps_js_1.AsnParser.parse(new Uint8Array(subjectPublicKeyInfo.algorithm.parameters), deps_js_1.ECParameters);
27
+ const ecParameters = asn1_schema_1.AsnParser.parse(new Uint8Array(subjectPublicKeyInfo.algorithm.parameters), asn1_ecc_1.ECParameters);
25
28
  let crv = -999;
26
29
  const { namedCurve } = ecParameters;
27
- if (namedCurve === deps_js_1.id_secp256r1) {
30
+ if (namedCurve === asn1_ecc_1.id_secp256r1) {
28
31
  crv = cose_js_1.COSECRV.P256;
29
32
  }
30
- else if (namedCurve === deps_js_1.id_secp384r1) {
33
+ else if (namedCurve === asn1_ecc_1.id_secp384r1) {
31
34
  crv = cose_js_1.COSECRV.P384;
32
35
  }
33
36
  else {
@@ -58,7 +61,7 @@ function convertX509PublicKeyToCOSE(x509Certificate) {
58
61
  /**
59
62
  * RSA public key
60
63
  */
61
- const rsaPublicKey = deps_js_1.AsnParser.parse(subjectPublicKeyInfo.subjectPublicKey, deps_js_1.RSAPublicKey);
64
+ const rsaPublicKey = asn1_schema_1.AsnParser.parse(subjectPublicKeyInfo.subjectPublicKey, asn1_rsa_1.RSAPublicKey);
62
65
  const coseRSAPubKey = new Map();
63
66
  coseRSAPubKey.set(cose_js_1.COSEKEYS.kty, cose_js_1.COSEKTY.RSA);
64
67
  coseRSAPubKey.set(cose_js_1.COSEKEYS.alg, (0, mapX509SignatureAlgToCOSEAlg_js_1.mapX509SignatureAlgToCOSEAlg)(signatureAlgorithm));
@@ -71,4 +74,3 @@ function convertX509PublicKeyToCOSE(x509Certificate) {
71
74
  }
72
75
  return cosePublicKey;
73
76
  }
74
- exports.convertX509PublicKeyToCOSE = convertX509PublicKeyToCOSE;