PluginProbe ʕ •ᴥ•ʔ
Limit Login Attempts Security – Login Security, 2FA, Firewall, Brute Force Prevention / 3.2.4
Limit Login Attempts Security – Login Security, 2FA, Firewall, Brute Force Prevention v3.2.4
3.2.4 3.2.3 3.2.2 3.2.1 3.2.0 trunk 2.0.0 2.1.0 2.10.0 2.10.1 2.11.0 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.14.0 2.15.0 2.15.1 2.15.2 2.16.0 2.17.0 2.17.1 2.17.2 2.17.3 2.17.4 2.18.0 2.19.0 2.19.1 2.19.2 2.2.0 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.21.1 2.22.0 2.22.1 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.25.0 2.25.1 2.25.10 2.25.11 2.25.12 2.25.13 2.25.14 2.25.15 2.25.16 2.25.17 2.25.18 2.25.19 2.25.2 2.25.20 2.25.21 2.25.22 2.25.23 2.25.24 2.25.25 2.25.26 2.25.27 2.25.28 2.25.29 2.25.3 2.25.4 2.25.5 2.25.6 2.25.7 2.25.8 2.25.9 2.26.0 2.26.1 2.26.10 2.26.11 2.26.12 2.26.13 2.26.14 2.26.15 2.26.16 2.26.17 2.26.18 2.26.19 2.26.2 2.26.20 2.26.21 2.26.22 2.26.23 2.26.24 2.26.25 2.26.26 2.26.27 2.26.28 2.26.3 2.26.4 2.26.5 2.26.6 2.26.7 2.26.8 2.26.9 2.3.0 2.4.0 2.5.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.8.0 2.8.1 2.9.0 3.0.0 3.0.1 3.0.2 3.1.0
limit-login-attempts-reloaded / core / mfa / MfaBackupCodesInterface.php
limit-login-attempts-reloaded / core / mfa Last commit date
rescuepayloadstorage 2 weeks ago MfaBackupCodes.php 2 weeks ago MfaBackupCodesInterface.php 2 weeks ago MfaEndpoint.php 2 weeks ago MfaEndpointInterface.php 2 weeks ago MfaManager.php 2 weeks ago MfaSettings.php 2 weeks ago MfaSettingsInterface.php 2 weeks ago MfaValidator.php 2 weeks ago RescueCode.php 2 weeks ago
MfaBackupCodesInterface.php
61 lines
1 <?php
2
3 namespace LLAR\Core\Mfa;
4
5 if ( ! defined( 'ABSPATH' ) ) {
6 exit;
7 }
8
9 /**
10 * Interface for MFA backup/rescue codes service.
11 * Implementations: generation, encryption, rescue URLs, PDF HTML.
12 *
13 * Used for testability: MfaManager can depend on this interface.
14 */
15 interface MfaBackupCodesInterface {
16
17 /**
18 * Encrypt plain code for storage. OpenSSL only; returns false if unavailable.
19 *
20 * @param string $plain_code Plain rescue code.
21 * @param string $salt Salt (e.g. AUTH_SALT).
22 * @return string|false Base64-encoded ciphertext or false if OpenSSL unavailable/failure.
23 */
24 public function encrypt_code( $plain_code, $salt = '' );
25
26 /**
27 * Decrypt stored blob. OpenSSL only; returns false if unavailable or invalid.
28 *
29 * @param string $encrypted_data Base64-encoded (iv + ciphertext).
30 * @return string|false Plain code or false.
31 */
32 public function decrypt_code( $encrypted_data );
33
34 /**
35 * Generate rescue codes and return plain values.
36 * Persisting hashes is handled by MFA settings submit flow after confirmation.
37 *
38 * @return array Plain codes.
39 * @throws \Exception When hashing fails.
40 */
41 public function generate();
42
43 /**
44 * Build rescue URL for a plain code and store encrypted payload. OpenSSL required.
45 *
46 * @param string $plain_code Plain rescue code.
47 * @return string Rescue URL.
48 * @throws \Exception When OpenSSL unavailable or encryption fails.
49 */
50 public function get_rescue_url( $plain_code );
51
52 /**
53 * Generate HTML for rescue PDF. Caller must pass rescue_urls (from get_rescue_url for each code).
54 *
55 * @param array $rescue_urls List of rescue URLs.
56 * @return string HTML.
57 * @throws \Exception When template path invalid.
58 */
59 public function generate_pdf_html( $rescue_urls );
60 }
61