diff options
Diffstat (limited to 'packages/server/src/helpers/decodeAttestationObject.ts')
-rw-r--r-- | packages/server/src/helpers/decodeAttestationObject.ts | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/packages/server/src/helpers/decodeAttestationObject.ts b/packages/server/src/helpers/decodeAttestationObject.ts new file mode 100644 index 0000000..224734e --- /dev/null +++ b/packages/server/src/helpers/decodeAttestationObject.ts @@ -0,0 +1,17 @@ +import base64url from 'base64url'; +import cbor from 'cbor'; + +import { AttestationObject } from '@libTypes'; + +/** + * Convert an AttestationObject from base64 string to a proper object + * + * @param base64AttestationObject Base64-encoded Attestation Object + */ +export default function decodeAttestationObject( + base64AttestationObject: string, +): AttestationObject { + const toBuffer = base64url.toBuffer(base64AttestationObject); + const toCBOR: AttestationObject = cbor.decodeAllSync(toBuffer)[0]; + return toCBOR; +} |