Keyring 2FA
Online authenticator

Your 2FA code, live, without the app.

Paste the secret key a website gave you when you turned on two-factor login, or drop in a screenshot of its QR code. The current code appears instantly and refreshes every 30 seconds.

  • Computed in your browser. Your key is never uploaded.
  • No account, no sign-up, no limits.
  • Same codes as Google Authenticator, Authy and Microsoft Authenticator.

One key per line. A Base32 key, Label | KEY, or an otpauth:// link all work.

Tip: you can also paste or drag a QR screenshot onto the page.

How it works

Authenticator codes are math, not magic. The same three steps happen inside every authenticator app.

  1. Add your key

    Paste the Base32 secret key, or upload the QR code the service showed you when you set up two-factor login.

  2. The code is computed here

    Your browser combines the key with the current time using HMAC-SHA1, as defined in RFC 6238. Nothing is sent to a server.

  3. Copy and sign in

    Click the code to copy it and paste it into the login prompt. A ring shows how many seconds it has left.

Built for privacy

A 2FA key is as sensitive as a password. Keyring 2FA is designed so it never has to be trusted with yours.

No server involved

The site is static files. There is no backend, no database and no analytics that could receive a key.

Reads QR codes locally

QR screenshots are decoded on your device. The image is never uploaded.

Many keys at once

Paste a list and see every code side by side, each with its own countdown and next code.

Make a QR from a key

Turn a text key back into a QR code so you can add it to a phone authenticator app.

6 or 8 digits, any period

Supports SHA1, SHA256 and SHA512 and custom periods when an otpauth:// link asks for them.

Forget on close

Keys are gone when you close the tab, unless you choose to remember them on your own device.

Key formats

Put one key on each line. Spaces, dashes and lowercase letters are fine, so you can paste keys exactly as services show them.

Plain key
The Base32 text a site shows under "Can't scan the QR code?"
Label | key
Add a name before a bar so you can tell several codes apart.
otpauth:// link
The full link inside a setup QR code, including issuer, digits, period and algorithm.
JBSWY3DPEHPK3PXP
jbsw y3dp ehpk 3pxp
GitHub | JBSWY3DPEHPK3PXP
otpauth://totp/GitHub:you@mail.com?secret=JBSWY3DPEHPK3PXP&issuer=GitHub

Frequently asked questions

Is my secret key sent anywhere?

No. Codes are computed in your browser with its built-in Web Crypto API. The site has no server code, no database and no analytics that could receive your key. You can turn off your internet after the page loads and it keeps working.

What is a TOTP code?

TOTP (Time-based One-Time Password, RFC 6238) combines your secret key with the current time to make a short code that changes every 30 seconds. It is the standard behind most authenticator apps.

Does it work with Google Authenticator, Authy or Microsoft Authenticator?

Yes. Any standard TOTP key or setup QR code that works in those apps works here and produces the same codes.

Why does the site say my code is wrong?

TOTP depends on the time, so first check that your device clock is set automatically. Then check that you copied the whole key, and that the service uses time-based codes rather than counter-based (HOTP) ones.

Can I import a Google Authenticator export QR?

Not yet. The export QR bundles several accounts in a different format. Use each service's own setup QR or text key instead.

Can this replace my authenticator app?

It is good for quick access, testing and backups. For daily use, an authenticator app or hardware key on a device you control is still the safer choice.

Is it free?

Yes. There is no sign-up, no account and no limit on how many keys you use.