定制 sebastiandevs/simplethenticator 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

sebastiandevs/simplethenticator

最新稳定版本:1.1.1

Composer 安装命令:

composer require sebastiandevs/simplethenticator

包简介

TOTP based on https://github.com/PHPGangsta/GoogleAuthenticator updated and reworked to php8.2 because of inactivity of the original creator.

README 文档

README

Software License Total Downloads Latest Stable Version Latest Stable Version

This class can generate secrets, generate codes, validate codes and present a QR-Code for scanning the secret. It implements TOTP according to RFC6238

Other hash functions other than SHA1 only work for Google-Authenticator at the moment!

Example:

Look at the function TestGenerator() in tests

Or use this sample script:

require_once('../src/SimpleAuthenticator.php');

use SebastianDevs\SimpleAuthenticator;

$auth = new SimpleAuthenticator(6, 'SHA1');
try
{
    $secret = $auth->createSecret();
}
catch (Exception $e)
{
    echo $e->getMessage();
    exit();
}
echo 'Secret is: ' . $secret . '\n';

$qrCodeUrl = $auth->getQRCodeGoogleUrl($secret, 'Testo@test.test', 'Business');
echo 'QR-Code: ' . $qrCodeUrl . '\n';

$oneCode = $auth->getCode($secret);
echo 'Checking Code ' . $oneCode . ' and Secret ' . $secret . ':\n';

echo $auth->verifyCode($secret, $oneCode, 2)? 'OK': 'NOT OK';

output:

Secret is: S4VWK6CWPA3PMU2HZM2YEDZGSF2DQL3V

Google Charts URL for the QR-Code: https://api.qrserver.com/v1/create-qr-code/?data=otpauth%3A%2F%2Ftotp%2FVintage+Story%3ATesto%40test.test%3Fsecret%3DS4VWK6CWPA3PMU2HZM2YEDZGSF2DQL3V%26algorithm%3DSHA256%26issuer%3DVintage+Story&size=200x200&ecc=M

Checking Code '439195' and Secret 'S4VWK6CWPA3PMU2HZM2YEDZGSF2DQL3V':
OK

Installation:

Composer

  • To use this package perform the following command:

composer require sebastiandevs/simplethenticator

Simple usage

Run Tests:

  • All tests are inside the tests folder.
  • Execute composer run-script build-dev to install all dependencies
  • Execute composer run-script test to run all tests in the test folder

Better library:

统计信息

  • 总下载量: 13.28k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 14
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 13
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: BSD-2-Clause
  • 更新时间: 2023-12-09