One Logo Pool Ball
AuthenticationServices · IOS API REFERENCE

ASAuthorizationPublicKeyCredentialPRFAssertionInput

struct · iOS 18.0+ · SDK 27.1

struct ASAuthorizationPublicKeyCredentialPRFAssertionInput

This type represents the inputs for the WebAuthentication PRF extension, when used during assertion requests. The PRF extension lets you create general purpose SymmetricKeys from passkeys, which could useful for tasks such as encryption of user data. The same input values used with the same passkey will always produce the same SymmetricKey.

Members (4)

get · iOS 18.0+

perCredentialInputValues

TypeScript
get perCredentialInputValues(): (NativeMap<ArrayBuffer, ASAuthorizationPublicKeyCredentialPRFAssertionInput_InputValues>) | null
Swift declaration
let perCredentialInputValues: [Data : ASAuthorizationPublicKeyCredentialPRFAssertionInput.InputValues]?

A map of `credentialID`s to input values for the PRF extension. If the user selects a passkey which matches a `credentialID` in this dictionary, the corresponding input values will be used. If the selected passkey does not match and `inputValues` is non-nil, that will be used instead. Otherwise, no PRF output will be returned. When this value is non-empty, the request must specify `allowedCredentials`.

static · iOS 18.0+

perCredentialInputValues

TypeScript
static perCredentialInputValues9744(perCredentialInputValues: NativeMap<ArrayBuffer, ASAuthorizationPublicKeyCredentialPRFAssertionInput_InputValues>): ASAuthorizationPublicKeyCredentialPRFAssertionInput
Swift declaration
static func perCredentialInputValues(_ perCredentialInputValues: [Data : ASAuthorizationPublicKeyCredentialPRFAssertionInput.InputValues]) -> ASAuthorizationPublicKeyCredentialPRFAssertionInput

The inputs for the PRF extension, when not specifying general input values. - Parameter perCredentialInputValues: This dictionary maps `credentialID`s to input values. If the user selects a passkey with a `credentialID` that matches one of these keys, the corresponding input values will be used. If the selected passkey does not match, no PRF result will be returned. When using this option, the dictionary must be non-empty and the request must use `allowedCredentials`. - Returns: A configured instance of `ASAuthorizationPublicKeyCredentialPRFAssertionInput`.

get · iOS 18.0+

inputValues

TypeScript
get inputValues(): (ASAuthorizationPublicKeyCredentialPRFAssertionInput_InputValues) | null
Swift declaration
let inputValues: ASAuthorizationPublicKeyCredentialPRFAssertionInput.InputValues?

If specified, the input values to use when generating the PRF extension output. When also using `perCredentialInputValues`, the corresponding value from that dictionary may be used instead.

static · iOS 18.0+

inputValues

TypeScript
static inputValuesPerCredentialInputValues(inputValues: ASAuthorizationPublicKeyCredentialPRFAssertionInput_InputValues, perCredentialInputValues?: (NativeMap<ArrayBuffer, ASAuthorizationPublicKeyCredentialPRFAssertionInput_InputValues>) | null): ASAuthorizationPublicKeyCredentialPRFAssertionInput
Swift declaration
static func inputValues(_ inputValues: ASAuthorizationPublicKeyCredentialPRFAssertionInput.InputValues, perCredentialInputValues: [Data : ASAuthorizationPublicKeyCredentialPRFAssertionInput.InputValues]? = nil) -> ASAuthorizationPublicKeyCredentialPRFAssertionInput

The inputs for the PRF extension. - Parameters: - inputValues: These are the default inputs that will be used for generating the PRF. - perCredentialInputValues: This optional dictionary maps `credentialID`s to alternate input values. If the user selects a passkey with a `credentialID` that matches one of these keys, the corresponding input values will be used instead of those from the first argument. When specifying a non-empty value here, the request must use `allowedCredentials`. - Returns: A configured instance of `ASAuthorizationPublicKeyCredentialPRFAssertionInput`.

Skipped declarations

No declarations were skipped in this snapshot.

All AuthenticationServices types →