]> BookStack Code Mirror - bookstack/blob - app/Auth/Access/Mfa/BackupCodeService.php
Added backup code setup flow
[bookstack] / app / Auth / Access / Mfa / BackupCodeService.php
1 <?php
2
3 namespace BookStack\Auth\Access\Mfa;
4
5 use Illuminate\Support\Str;
6
7 class BackupCodeService
8 {
9     /**
10      * Generate a new set of 16 backup codes.
11      */
12     public function generateNewSet(): array
13     {
14         $codes = [];
15         for ($i = 0; $i < 16; $i++) {
16             $code = Str::random(5) . '-' . Str::random(5);
17             $codes[] = strtolower($code);
18         }
19         return $codes;
20     }
21 }