PHP code example of yaman-shahbander-dev / totp-generator
1. Go to this page and download the library: Download yaman-shahbander-dev/totp-generator library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
yaman-shahbander-dev / totp-generator example snippets
'default_period' => 30, // Time step in seconds
'default_digits' => 6, // Number of digits in OTP
'verification_window' => 1, // Number of periods to check before/after
use TotpGenerator\Facades\Totp;
// Generate a random secret (store this securely)
$secret = Str::random(16);
$base32Secret = Totp::encodeBase32($secret);
// Generate current TOTP
$code = Totp::generate($base32Secret);
// Verify a code
$isValid = Totp::verify($userCode, $base32Secret);
// With custom window
$isValid = Totp::verify($userCode, $base32Secret, 2);
use TotpGenerator\Contracts\TotpGeneratorContract;
class AuthController {
public function __construct(
protected TotpGeneratorContract $totp
) {}
public function verifyCode(Request $request)
{
$isValid = $this->totp->verify(
$request->code,
$user->totp_secret
);
}
}