PasskeyAuthenticator
PasskeyAuthenticator
class PasskeyAuthenticator
A passkey authenticator.
BCS
The BCS serialized form for this type is defined by the following ABNF:
passkey-bcs = bytes ; where the contents of the bytes are
; defined by <passkey>
passkey = passkey-flag
bytes ; passkey authenticator data
client-data-json ; valid json
simple-signature ; required to be a secp256r1 signature
client-data-json = string ; valid json
See https://www.w3.org/TR/webauthn-2/#dictdef-collectedclientdata for
the required json-schema for the client-data-json rule. In addition, IOTA
currently requires that the CollectedClientData.type field is required to
be webauthn.get.
Note: Due to historical reasons, signatures are serialized slightly
different from the majority of the types in IOTA. In particular if a
signature is ever embedded in another structure it generally is serialized
as bytes meaning it has a length prefix that defines the length of
the completely serialized signature.
debugDescription
var debugDescription: String { get }
A textual representation of this instance, suitable for debugging.
Calling this property directly is discouraged. Instead, convert an
instance of any type to a string by using the String(reflecting:)
initializer. This initializer works with any type, and uses the custom
debugDescription property for types that conform to
CustomDebugStringConvertible:
struct Point: CustomDebugStringConvertible {
let x: Int, y: Int
var debugDescription: String {
return "(\(x), \(y))"
}
}
let p = Point(x: 21, y: 30)
let s = String(reflecting: p)
print(s)
// Prints "(21, 30)"
The conversion of p to a string in the assignment to s uses the
Point type's debugDescription property.
authenticatorData()
func authenticatorData() -> Data
Opaque authenticator data for this passkey signature.
See https://www.w3.org/TR/webauthn-2/#sctn-authenticator-data for more information on this field.
challenge()
func challenge() -> Data
The parsed challenge message for this passkey signature.
This is parsed by decoding the base64url data from the
client_data_json.challenge field.
clientDataJson()
func clientDataJson() -> String
Structured, unparsed, JSON for this passkey signature.
See https://www.w3.org/TR/webauthn-2/#dictdef-collectedclientdata for more information on this field.
publicKey()
func publicKey() -> PasskeyPublicKey
The passkey public key.
signature()
func signature() -> SimpleSignature
The passkey signature.
!=(_:_:)
static func != (lhs: Self, rhs: Self) -> Bool
Returns a Boolean value indicating whether two values are not equal.
Inequality is the inverse of equality. For any values a and b, a != b
implies that a == b is false.
This is the default implementation of the not-equal-to operator (!=)
for any type that conforms to Equatable.
- Parameters:
- lhs: A value to compare.
- rhs: Another value to compare.
==(_:_:)
static func == (self: PasskeyAuthenticator, other: PasskeyAuthenticator) -> Bool
Returns a Boolean value indicating whether two values are equal.
Equality is the inverse of inequality. For any values a and b,
a == b implies that a != b is false.
- Parameters:
- lhs: A value to compare.
- rhs: Another value to compare.