A lightweight Node.js module for generating Steam-style 5-digit alphanumeric TOTP authentication and confirmation codes.
Steam TOTP is a Node.js module that generates Steam-specific two-factor authentication (2FA) codes and confirmation keys. It enables developers to integrate Steam's TOTP-based security into their applications, facilitating automated login and trade confirmation processes for Steam accounts.
Node.js developers building applications that automate interactions with Steam accounts, such as bots for trading, account management tools, or services requiring automated login with Steam Guard.
Developers choose this module because it provides a reliable, minimal API that exactly mirrors Steam's official TOTP behavior, handles time synchronization with Steam servers automatically, and supports flexible input formats for secrets.
Lightweight module to generate Steam-style TOTP auth codes.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements Steam's exact TOTP algorithm for 5-character alphanumeric codes, ensuring reliable authentication and trade confirmation compatibility as per the README's focus on mirroring official behavior.
Includes getTimeOffset to query Steam servers and adjust for clock discrepancies, preventing code invalidity due to time drift, which is critical for seamless automation.
Accepts secrets as Buffers, hex strings, or base64 strings, simplifying integration with various storage methods and reducing preprocessing overhead.
Generates confirmation keys for trade actions and standardizes device IDs with optional salting, essential for automated workflows like trade confirmations and account management.
Requires Node.js v6.0.0 or later, as stated in the README, which may force upgrades for legacy projects and limits compatibility with older environments.
Exclusively designed for Steam's TOTP, lacking support for other services, which reduces utility in applications needing multi-platform authentication.
Developers must securely handle shared_secret and identity_secret, adding complexity to application security and risking exposure if not properly managed.