2FA Converter

✅ 100% Client-Side & Offline, Fully operate inside your browser, Zero-Server dependency
2F

.2fas / .json file

G

Instant scan with Transfer Accounts

1
Export from 2FAS Authenticator:
  • Open 2FAS → Settings (gear icon) → "2FAS Backup".
  • Tap "Export to file".
  • Choose without password encryption and save the .2fas file.

Drop your 2FAS backup file here

Supports .2fas, .json, .csv, .1pux, .txt, or QR code screenshot image

The Complete Guide to Two-Factor Authentication Migration & Interoperability

Two-factor authentication (2FA) is the cornerstone of modern digital identity protection. However, transferring your two-factor tokens when changing smartphones or switching authenticator applications has historically been tedious and fraught with vendor lock-in. 2FA Converter solves this problem by providing a universal, open, and strictly client-side migration bridge for every major authenticator platform.

Zero-Knowledge Architecture

Every token, secret key, and QR code is parsed strictly in browser memory. No telemetry, no external API calls, and zero persistent server storage.

Universal Format Bridge

Seamlessly converts between Google Authenticator protobuf payloads, 2FAS backups, Aegis JSON vaults, Bitwarden JSON, 1Password 1PUX/CSV, and Ente Auth.

Multi-Modal Input & Export

Import via drag-and-drop file upload, screenshot image QR decode, camera scanning, or raw OTPAuth URI strings with instant live TOTP verification.

Understanding the OTPAuth and TOTP Standards

Under the hood, virtually all modern time-based authenticator apps implement RFC 6238 (TOTP) and RFC 4226 (HOTP). When you set up two-factor authentication on a service such as GitHub, Google, AWS, or Discord, the service generates a shared secret key encoded in Base32 format (such as JBSWY3DPEHPK3PXP). This secret is typically packaged into a standard URI schema:

otpauth://totp/GitHub:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=GitHub&algorithm=SHA1&digits=6&period=30

Both your phone and the remote server utilize this secret key combined with the current Unix epoch timestamp in 30-second intervals to calculate an identical 6-digit verification code using HMAC hashing.

Why Authenticator Portability Matters

Losing access to your 2FA authenticator app can lock you out of critical email, banking, and cloud infrastructure accounts. Relying on proprietary cloud sync features without an independent, unencrypted backup leaves you vulnerable to account lockouts, operating system platform transitions (e.g., migrating from Android to iOS or vice versa), and sudden service deprecations.

By converting your 2FA seeds into standardized formats like open-source 2FAS, Aegis JSON, or printable paper recovery sheets, you regain complete control over your authentication credentials without depending on proprietary mobile ecosystems.

How Google Authenticator Batch Migration Works

Google Authenticator does not save standard unencrypted JSON files to your device storage. Instead, when you use the in-app “Transfer accounts” function, Google serializes all selected 2FA accounts into a binary Protocol Buffer (Protobuf) payload. This binary stream is Base64 encoded and embedded inside a specialized migration URI:

otpauth-migration://offline?data=CjEKCkplbGx5ZmlzaBI...

2FA Converter includes a high-performance, purely client-side Protobuf parser and encoder. When you upload a Google Authenticator export QR code screenshot or scan it with your camera, 2FA Converter decodes each account seed, secret, and issuer, allowing you to export them to 2FAS, Aegis, Bitwarden, or 1Password instantly. Conversely, when converting from other apps to Google Authenticator, 2FA Converter repacks your tokens into standard 10-account Google batch QR codes for quick scanning.

Frequently Asked Questions