Download the PHP package mrpunyapal/php-2fa without Composer

On this page you can find all versions of the php package mrpunyapal/php-2fa. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package php-2fa

PHP 2FA

Latest Version on Packagist Tests Total Downloads PHP Version Compatibility

Framework-agnostic Two-Factor Authentication (TOTP) actions for PHP. Works with any authenticator app (Google Authenticator, Authy, etc.). Optional first-party Laravel support included.

Inspired by Laravel Fortify and built on top of pragmarx/google2fa.

Features

Requirements

Installation

Laravel

The service provider is auto-discovered. Publish the config:

Quick Start (Vanilla PHP)

1. Implement TwoFactorUser on your user entity

See docs/examples/php/setup-two-factor.php for a full PDO-backed implementation.

2. Use TwoFactorManager

Using Individual Actions

If you prefer dependency injection or want granular control:

Laravel Usage

Add the trait to your User model

Add the required columns

Inject actions or manager

Batch saves with withoutSaving()

By default, each setter on the HasTwoFactorAuthentication trait persists immediately. To batch multiple field changes into a single DB write:

Examples

Full working examples are available in the docs/examples/ directory.

Laravel Examples

File Description
TwoFactorController.php Controller with enable, confirm, verify, disable, and regenerate actions
EnsureTwoFactorVerified.php Middleware that requires 2FA verification before accessing protected routes
routes.php Route definitions with proper middleware stacking
two-factor-verify.blade.php Blade view for OTP / recovery code input
migration.php Migration to add 2FA columns to users table

PHP Examples

File Description
setup-two-factor.php Full setup flow with PDO-backed TwoFactorUser implementation
login-with-two-factor.php Session-based login flow with 2FA challenge
manage-recovery-codes.php Regenerate, display, and verify recovery codes
qr-code-display.php Render QR codes using Google Charts, chillerlan/php-qrcode, or endroid/qr-code
custom-encryptor.php Custom Encryptor implementation using Sodium (libsodium)

Configuration

Custom Encryptor

Implement the Encryptor contract to use your own encryption strategy:

Then pass it to the actions or bind it in Laravel's container. See docs/examples/php/custom-encryptor.php for a complete Sodium-based implementation.

API Reference

Actions

Action Purpose
EnableTwoFactorAuthentication Generates secret + recovery codes, stores encrypted on user
DisableTwoFactorAuthentication Clears all 2FA fields on user
ConfirmTwoFactorAuthentication Verifies OTP code and sets confirmed timestamp
VerifyTwoFactorCode Verifies OTP or recovery code, replaces used recovery codes
GenerateRecoveryCodes Generates new set of recovery codes

Exceptions

Exception When
InvalidOtpException OTP code verification fails during confirmation
TwoFactorNotEnabledException Action requires 2FA to be enabled but it isn't
EncryptionException Encryption or decryption operation fails

Testing

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of php-2fa with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
pragmarx/google2fa Version ^9.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package mrpunyapal/php-2fa contains the following files

Loading the files please wait ...