* remove insecure rng providers and remove the openssl provider. We now rely exclusively on random_bytes(), as there are no reasons not to. Fix #121 * remove the isSecure property of the test rng class * remove pointless test rng class we were testing a test class, which didn't make a lot of sense. * Revert "remove pointless test rng class" This reverts commitf6da6bee6d. * Reapply "remove pointless test rng class" This reverts commit06220d4a54. * assing rng provider to class attribute this also aligns with other providers * remove polyfill for hash_equals
PHP library for Two Factor Authentication
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.
Warning:
By default, this package uses the lib/Providers/QRServerProvider.php as QR code generator. This provider is not suggested for applications where absolute security is needed, because it uses an external service for the QR code generation.
You can make use of the included Endroid or Bacon providers which generate locally.
Requirements
- Requires PHP version >=8.1
- cURL when using the provided
QRServerProvider(default),ImageChartsQRCodeProviderorQRicketProviderbut you can also provide your own QR-code provider.
Optionally, you may need:
- sockets if you are using
NTPTimeProvider - endroid/qr-code if using
EndroidQrCodeProviderorEndroidQrCodeWithLogoProvider. - bacon/bacon-qr-code if using
BaconQrCodeProvider.
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)
