@simplewebauthn/server 5.3.0 → 5.4.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 (112) hide show
  1. package/dist/authentication/generateAuthenticationOptions.d.ts +1 -1
  2. package/dist/authentication/generateAuthenticationOptions.js +4 -3
  3. package/dist/authentication/generateAuthenticationOptions.js.map +1 -1
  4. package/dist/authentication/verifyAuthenticationResponse.d.ts +5 -1
  5. package/dist/authentication/verifyAuthenticationResponse.js +19 -17
  6. package/dist/authentication/verifyAuthenticationResponse.js.map +1 -1
  7. package/dist/helpers/convertAAGUIDToString.d.ts +1 -1
  8. package/dist/helpers/convertAAGUIDToString.js +2 -1
  9. package/dist/helpers/convertAAGUIDToString.js.map +1 -1
  10. package/dist/helpers/convertCOSEtoPKCS.d.ts +1 -1
  11. package/dist/helpers/convertCOSEtoPKCS.js +2 -2
  12. package/dist/helpers/convertCOSEtoPKCS.js.map +1 -1
  13. package/dist/helpers/convertCertBufferToPEM.d.ts +1 -1
  14. package/dist/helpers/convertCertBufferToPEM.js +2 -1
  15. package/dist/helpers/convertCertBufferToPEM.js.map +1 -1
  16. package/dist/helpers/convertPublicKeyToPEM.d.ts +1 -1
  17. package/dist/helpers/convertPublicKeyToPEM.js +2 -1
  18. package/dist/helpers/convertPublicKeyToPEM.js.map +1 -1
  19. package/dist/helpers/decodeAttestationObject.d.ts +1 -1
  20. package/dist/helpers/decodeAttestationObject.js +2 -1
  21. package/dist/helpers/decodeAttestationObject.js.map +1 -1
  22. package/dist/helpers/decodeAuthenticatorExtensions.d.ts +20 -0
  23. package/dist/helpers/decodeAuthenticatorExtensions.js +25 -0
  24. package/dist/helpers/decodeAuthenticatorExtensions.js.map +1 -0
  25. package/dist/helpers/decodeClientDataJSON.d.ts +1 -1
  26. package/dist/helpers/decodeClientDataJSON.js +2 -1
  27. package/dist/helpers/decodeClientDataJSON.js.map +1 -1
  28. package/dist/helpers/decodeCredentialPublicKey.d.ts +1 -1
  29. package/dist/helpers/decodeCredentialPublicKey.js +2 -1
  30. package/dist/helpers/decodeCredentialPublicKey.js.map +1 -1
  31. package/dist/helpers/generateChallenge.d.ts +1 -1
  32. package/dist/helpers/generateChallenge.js +2 -1
  33. package/dist/helpers/generateChallenge.js.map +1 -1
  34. package/dist/helpers/getCertificateInfo.d.ts +1 -1
  35. package/dist/helpers/getCertificateInfo.js +2 -1
  36. package/dist/helpers/getCertificateInfo.js.map +1 -1
  37. package/dist/helpers/index.d.ts +15 -15
  38. package/dist/helpers/index.js +30 -33
  39. package/dist/helpers/index.js.map +1 -1
  40. package/dist/helpers/isBase64URLString.d.ts +1 -1
  41. package/dist/helpers/isBase64URLString.js +2 -1
  42. package/dist/helpers/isBase64URLString.js.map +1 -1
  43. package/dist/helpers/isCertRevoked.d.ts +1 -1
  44. package/dist/helpers/isCertRevoked.js +4 -3
  45. package/dist/helpers/isCertRevoked.js.map +1 -1
  46. package/dist/helpers/parseAuthenticatorData.d.ts +3 -1
  47. package/dist/helpers/parseAuthenticatorData.js +12 -7
  48. package/dist/helpers/parseAuthenticatorData.js.map +1 -1
  49. package/dist/helpers/parseBackupFlags.js.map +1 -1
  50. package/dist/helpers/toHash.d.ts +1 -1
  51. package/dist/helpers/toHash.js +2 -1
  52. package/dist/helpers/toHash.js.map +1 -1
  53. package/dist/helpers/validateCertificatePath.d.ts +1 -1
  54. package/dist/helpers/validateCertificatePath.js +4 -6
  55. package/dist/helpers/validateCertificatePath.js.map +1 -1
  56. package/dist/helpers/verifySignature.d.ts +1 -1
  57. package/dist/helpers/verifySignature.js +2 -1
  58. package/dist/helpers/verifySignature.js.map +1 -1
  59. package/dist/index.d.ts +6 -6
  60. package/dist/index.js +12 -15
  61. package/dist/index.js.map +1 -1
  62. package/dist/metadata/parseJWT.d.ts +1 -1
  63. package/dist/metadata/parseJWT.js +2 -1
  64. package/dist/metadata/parseJWT.js.map +1 -1
  65. package/dist/metadata/verifyAttestationWithMetadata.d.ts +1 -1
  66. package/dist/metadata/verifyAttestationWithMetadata.js +9 -11
  67. package/dist/metadata/verifyAttestationWithMetadata.js.map +1 -1
  68. package/dist/registration/generateRegistrationOptions.d.ts +1 -1
  69. package/dist/registration/generateRegistrationOptions.js +4 -4
  70. package/dist/registration/generateRegistrationOptions.js.map +1 -1
  71. package/dist/registration/verifications/tpm/parseCertInfo.d.ts +1 -1
  72. package/dist/registration/verifications/tpm/parseCertInfo.js +2 -1
  73. package/dist/registration/verifications/tpm/parseCertInfo.js.map +1 -1
  74. package/dist/registration/verifications/tpm/parsePubArea.d.ts +1 -1
  75. package/dist/registration/verifications/tpm/parsePubArea.js +2 -1
  76. package/dist/registration/verifications/tpm/parsePubArea.js.map +1 -1
  77. package/dist/registration/verifications/tpm/verifyAttestationTPM.d.ts +2 -0
  78. package/dist/registration/verifications/tpm/{verifyTPM.js → verifyAttestationTPM.js} +25 -27
  79. package/dist/registration/verifications/tpm/verifyAttestationTPM.js.map +1 -0
  80. package/dist/registration/verifications/{verifyAndroidKey.d.ts → verifyAttestationAndroidKey.d.ts} +1 -1
  81. package/dist/registration/verifications/{verifyAndroidKey.js → verifyAttestationAndroidKey.js} +15 -40
  82. package/dist/registration/verifications/verifyAttestationAndroidKey.js.map +1 -0
  83. package/dist/registration/verifications/{verifyAndroidSafetyNet.d.ts → verifyAttestationAndroidSafetyNet.d.ts} +1 -1
  84. package/dist/registration/verifications/{verifyAndroidSafetyNet.js → verifyAttestationAndroidSafetyNet.js} +17 -16
  85. package/dist/registration/verifications/verifyAttestationAndroidSafetyNet.js.map +1 -0
  86. package/dist/registration/verifications/verifyAttestationApple.d.ts +2 -0
  87. package/dist/registration/verifications/{verifyApple.js → verifyAttestationApple.js} +11 -13
  88. package/dist/registration/verifications/verifyAttestationApple.js.map +1 -0
  89. package/dist/registration/verifications/{verifyFIDOU2F.d.ts → verifyAttestationFIDOU2F.d.ts} +1 -1
  90. package/dist/registration/verifications/{verifyFIDOU2F.js → verifyAttestationFIDOU2F.js} +11 -13
  91. package/dist/registration/verifications/verifyAttestationFIDOU2F.js.map +1 -0
  92. package/dist/registration/verifications/{verifyPacked.d.ts → verifyAttestationPacked.d.ts} +1 -1
  93. package/dist/registration/verifications/{verifyPacked.js → verifyAttestationPacked.js} +22 -44
  94. package/dist/registration/verifications/verifyAttestationPacked.js.map +1 -0
  95. package/dist/registration/verifyRegistrationResponse.d.ts +6 -2
  96. package/dist/registration/verifyRegistrationResponse.js +32 -30
  97. package/dist/registration/verifyRegistrationResponse.js.map +1 -1
  98. package/dist/services/metadataService.d.ts +2 -2
  99. package/dist/services/metadataService.js +13 -14
  100. package/dist/services/metadataService.js.map +1 -1
  101. package/dist/services/settingsService.d.ts +3 -3
  102. package/dist/services/settingsService.js +9 -12
  103. package/dist/services/settingsService.js.map +1 -1
  104. package/package.json +3 -3
  105. package/dist/registration/verifications/tpm/verifyTPM.d.ts +0 -2
  106. package/dist/registration/verifications/tpm/verifyTPM.js.map +0 -1
  107. package/dist/registration/verifications/verifyAndroidKey.js.map +0 -1
  108. package/dist/registration/verifications/verifyAndroidSafetyNet.js.map +0 -1
  109. package/dist/registration/verifications/verifyApple.d.ts +0 -2
  110. package/dist/registration/verifications/verifyApple.js.map +0 -1
  111. package/dist/registration/verifications/verifyFIDOU2F.js.map +0 -1
  112. package/dist/registration/verifications/verifyPacked.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import type { AttestationFormatVerifierOpts } from '../verifyRegistrationResponse';
2
- export default function verifyApple(options: AttestationFormatVerifierOpts): Promise<boolean>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"verifyApple.js","sourceRoot":"","sources":["../../../src/registration/verifications/verifyApple.ts"],"names":[],"mappings":";;;;;AAAA,uDAAkD;AAClD,mDAAkD;AAIlD,oGAA4E;AAC5E,kGAA0E;AAC1E,kEAA0C;AAC1C,wFAAgE;AAEjD,KAAK,UAAU,WAAW,CACvC,OAAsC;IAEtC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAC7F,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAExB,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;KACzF;IAED;;OAEG;IACH,IAAI;QACF,MAAM,IAAA,iCAAuB,EAAC,GAAG,CAAC,GAAG,CAAC,gCAAsB,CAAC,EAAE,gBAAgB,CAAC,CAAC;KAClF;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,GAAG,GAAY,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;KAC5C;IAED;;OAEG;IACH,MAAM,cAAc,GAAG,uBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,uBAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC,cAAc,CAAC;IAE3E,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;KACxD;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,wBAAwB,CAAC,CAAC;IAErF,IAAI,CAAC,YAAY,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;KAChF;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAA,gBAAM,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC5C;;;;;;OAMG;IACH,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAErE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;KAClE;IAED;;OAEG;IACH,MAAM,cAAc,GAAG,IAAA,2BAAiB,EAAC,mBAAmB,CAAC,CAAC;IAC9D,MAAM,wBAAwB,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAEpF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE;QACpD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;KACrF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AA9DD,8BA8DC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"verifyFIDOU2F.js","sourceRoot":"","sources":["../../../src/registration/verifications/verifyFIDOU2F.ts"],"names":[],"mappings":";;;;;AAEA,wFAAgE;AAChE,kGAA0E;AAC1E,oGAA4E;AAC5E,oFAA4D;AAE5D;;GAEG;AACY,KAAK,UAAU,wBAAwB,CACpD,OAAsC;IAEtC,MAAM,EACJ,OAAO,EACP,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,MAAM,GAAG,EAAE,EACX,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,IAAA,2BAAiB,EAAC,mBAAmB,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;QAClC,YAAY;QACZ,QAAQ;QACR,cAAc;QACd,YAAY;QACZ,SAAS;KACV,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAE7B,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;KAC3F;IAED,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;KACzF;IAED,gEAAgE;IAChE,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,0BAA0B,CAAC,CAAC;KACnE;IAED,IAAI;QACF,0FAA0F;QAC1F,MAAM,IAAA,iCAAuB,EAAC,GAAG,CAAC,GAAG,CAAC,gCAAsB,CAAC,EAAE,gBAAgB,CAAC,CAAC;KAClF;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,GAAG,GAAY,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;KAC9C;IAED,MAAM,WAAW,GAAG,IAAA,gCAAsB,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnD,OAAO,IAAA,yBAAe,EAAC,GAAG,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;AAC1D,CAAC;AAnDD,2CAmDC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"verifyPacked.js","sourceRoot":"","sources":["../../../src/registration/verifications/verifyPacked.ts"],"names":[],"mappings":"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"}