Contracts#

ReplayStoreInterface#

Use this to persist replay state for TOTP, HOTP, or OCRA verification flows.

RecoveryCodeStoreInterface#

Use this to persist hashed recovery codes and their metadata.

SecretStoreInterface#

Use this when building your own secret storage abstraction around the package.

Included in-memory stores#

  • Infocyph\OTP\Stores\InMemoryReplayStore

  • Infocyph\OTP\Stores\InMemoryRecoveryCodeStore