INNER CODE UNIT · JavaScript

register

mylofi/webauthn-local-client · src/walc.js:140

async function register(regOptions = regDefaults()) {
	try {
		if (supportsWebAuthn) {
			// ensure credential IDs are binary (not base64 string)
			regOptions[regOptions[credentialTypeKey]].excludeCredentials = (
				normalizeCredentialsList(
					regOptions[regOptions[credentialTypeKey]].excludeCredentials
				)
			);

			let regResult = await navigator.credentials.create(regOptions);

			let regClientDataRaw = new Uint8Array(regResult.response.clientDataJSON);
			let regClientData = JSON.parse(toUTF8String(regClientDataRaw));
			if (regClientData.type != "webauthn.create") {
				throw new Error("Invalid registration response");
			}
			let expectedChallenge = sodium.to_base64(

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…