#!/usr/bin/php <?php /* * Usage: generate.php [key] * * If no key is provided as an arg, the script will ask for it. * */ include __DIR__.'/vendor/autoload.php'; use lfkeitel\phptotp\Totp; use lfkeitel\phptotp\Base32; $key = ''; if ($argc == 2) { $key = $argv[1]; } else { echo "Enter secret key: "; $key = trim(fgets(STDIN)); if ($key == '') { echo "No key provided\n"; exit(1); } } $key = Base32::decode($key); echo "Token: " . (new Totp())->GenerateToken($key) . "\n";