UserSessionVerifiers class

Session verifiers sent from user to server during authentication.

This data structure contains the information needed for the server to verify the user's identity and session key. It is generated after the user processes the server's challenge.

Usage:

  1. User creates this via User.getUserSessionVerifiers after processing challenge.
  2. User sends all three fields to server (e.g., via JSON serialization).
  3. Server uses these values to verify the user's identity and session key.
  4. If verification succeeds, server responds with a server session key verifier.

Security:

  • The session key verifier (M1) proves the user knows the password without revealing it.
  • The ephemeral public key (A) is safe to transmit over untrusted networks.
  • Use erase to securely zero out the data when no longer needed.

Constructors

UserSessionVerifiers({required String userId, required Uint8List ephemeralUserPublicKey, required Uint8List sessionKeyVerifier})

Properties

ephemeralUserPublicKey Uint8List
User's ephemeral public key (A) generated for this authentication session.
final
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sessionKeyVerifier Uint8List
User's session key verifier (M1).
final
userId String
User identifier (username, email, or unique ID).
getter/setter pair

Methods

erase() → void
Securely overwrites all sensitive data with zeros.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() Map<String, dynamic>
Converts this object to a JSON-serializable map.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

fromJson(Map<String, dynamic> json) UserSessionVerifiers
Creates a UserSessionVerifiers from a JSON map.