Gitpedia

TwoFactorAuth

PHP library for Two Factor Authentication (TFA / 2FA)

From RobThree·Updated May 26, 2026·View on GitHub·

PHP library for [two-factor (or multi-factor) authentication](http://en.wikipedia.org/wiki/Multi-factor_authentication) using [TOTP](http://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm) and [QR-codes](http://en.wikipedia.org/wiki/QR_code). Inspired by, based on but most importantly an *improvement* on '[PHPGangsta/GoogleAuthenticator](https://github.com/PHPGangsta/GoogleAuthenticator)'. There's a [.Net implementation](https://github.com/RobThree/TwoFactorAuth.Net) of this library... The project is written primarily in PHP, distributed under the MIT License license, first published in 2014. It has gained significant community traction with 1,177 stars and 142 forks on GitHub. Key topics include: multi-factor, php, qrcode, security, totp.

Latest release: v3.0.3
January 5, 2026View Changelog →

Logo PHP library for Two Factor Authentication

Build status Latest Stable Version License Downloads PayPal donate button

PHP library for two-factor (or multi-factor) authentication using TOTP and QR-codes. Inspired by, based on but most importantly an improvement on 'PHPGangsta/GoogleAuthenticator'. There's a .Net implementation of this library as well.

<p align="center"> <img src="https://raw.githubusercontent.com/RobThree/TwoFactorAuth/master/multifactorauthforeveryone.png"> </p>

Requirements

  • Requires PHP version >=8.2

Optionally, you may need:

  • sockets if you are using NTPTimeProvider
  • endroid/qr-code if using EndroidQrCodeProvider or EndroidQrCodeWithLogoProvider.
  • bacon/bacon-qr-code if using BaconQrCodeProvider.
  • php-curl library when using an external QR Code provider such as QRServerProvider, ImageChartsQRCodeProvider, QRicketProvider or any other custom provider connecting to an external service.

Installation

The best way of installing this library is with composer:

php composer.phar require robthree/twofactorauth

Usage

For a quick start, have a look at the getting started page or try out the demo.

If you need more in-depth information about the configuration available then you can read through the rest of documentation.

Integrations

License

Licensed under MIT license. See LICENSE for details.

Logo / icon under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication (Archived page)

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from RobThree/TwoFactorAuth via the GitHub API.Last fetched: 5/31/2026