From 0acd33abe3539fb51960331bf9b7fc43d64f227b Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 29 Mar 2021 19:22:03 +0300 Subject: OTP: generate longer secrets, also make them easier to read/copy --- classes/pref/prefs.php | 10 +++++++--- classes/userhelper.php | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'classes') diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php index 512e31453..1eaa99345 100644 --- a/classes/pref/prefs.php +++ b/classes/pref/prefs.php @@ -469,8 +469,8 @@ class Pref_Prefs extends Handler_Protected {
- - + + format_otp_secret($otp_secret) ?>
@@ -496,7 +496,7 @@ class Pref_Prefs extends Handler_Protected {
- +
@@ -1518,4 +1518,8 @@ class Pref_Prefs extends Handler_Protected { } return ""; } + + private function format_otp_secret($secret) { + return implode(" ", str_split($secret, 4)); + } } diff --git a/classes/userhelper.php b/classes/userhelper.php index ce26e6c71..0bf67243e 100644 --- a/classes/userhelper.php +++ b/classes/userhelper.php @@ -299,7 +299,7 @@ class UserHelper { if ($user->otp_enabled) { $user->otp_secret = $salt_based_secret; } else { - $user->otp_secret = bin2hex(get_random_bytes(6)); + $user->otp_secret = bin2hex(get_random_bytes(10)); } $user->save(); -- cgit v1.2.3-54-g00ecf