Passkey Models

AuthenticatorDevice

type AuthenticatorTransportFuture = 'ble' | 'cable' | 'hybrid' | 'internal' | 'nfc' | 'smart-card' | 'usb';
type AuthenticatorDevice = {
    credentialID: Base64URLString;
    credentialPublicKey: Uint8Array;
    counter: number;
    transports?: AuthenticatorTransportFuture[];
};

RegistrationResponseJSON

interface RegistrationResponseJSON {
    id: Base64URLString;
    rawId: Base64URLString;
    response: {
        clientDataJSON: Base64URLString;
        attestationObject: Base64URLString;
        authenticatorData?: Base64URLString;
        transports?: AuthenticatorTransportFuture[];
        publicKeyAlgorithm?: number;
        publicKey?: Base64URLString;
    }
    authenticatorAttachment?: "cross-platform" | "platform";
    clientExtensionResults: {
        appid?: boolean;
        credProps?: {
            rk?: boolean;
        }
        hmacCreateSecret?: boolean;
    }
    type: "public-key"
}

AuthenticationResponseJSON

interface AuthenticationResponseJSON {
    id: Base64URLString;
    rawId: Base64URLString;
    response: {
        clientDataJSON: Base64URLString;
        authenticatorData: Base64URLString;
        signature: Base64URLString;
        userHandle?: Base64URLString;
    }
    authenticatorAttachment?: "cross-platform" | "platform";
    clientExtensionResults: {
        appid?: boolean;
        credProps?: {
            rk?: boolean;
        }
        hmacCreateSecret?: boolean;
    }
    type: "public-key"
}

Last updated