Table of Contents

Struct TwoFactorSetupDto

Namespace
FishMMO.Auth.Core
Assembly
FishMMO-AuthShared.dll

DTO for two-factor setup data sent after account creation. Mirrors TwoFactorSetupBroadcast.

public struct TwoFactorSetupDto
Inherited Members

Fields

OtpauthUri

Encrypted otpauth:// URI for authenticator app setup (AES-GCM, server->client).

public byte[] OtpauthUri

Field Value

byte[]

RecoveryCodes

Encrypted newline-delimited plaintext recovery codes (AES-GCM, server->client).

public byte[] RecoveryCodes

Field Value

byte[]

Seq

Explicit message sequence number (server->client). The server calls NextSendSequence() twice sequentially: first for OtpauthUri (seq1), then for RecoveryCodes (seq2). Seq is set to seq2. The client also calls receiveNonceCtx.NextNonce() twice sequentially and does NOT read this Seq field for nonce derivation — it always uses the next two sequential receive nonces regardless of Seq. Both sides are consistent only because no other server→client messages are sent between the two encryptions in the registration flow.

public uint Seq

Field Value

uint