wp_salt()
wp_salt( string $scheme = ‘auth’ ) 返回要添加到哈希中的salt。 Retu…
wp_salt( string $scheme = ‘auth’ )
返回要添加到哈希中的salt。
Returns a salt to add to hashes.
目录锚点:#说明#参数#源码
说明(Description)
盐是使用密钥创建的。密钥位于两个位置:数据库和wp中-配置.php文件。数据库中的密钥是随机生成的,并将附加到wp中的密钥中-配置.php. wp中的密钥-配置.php应更新为强、随机密钥,以最大限度地提高安全性。下面是如何定义密钥常量的示例。不要将此示例直接粘贴到wp中-配置.php. 相反,为您创建一个密钥。define(’AUTH_KEY’,’XakmM%G4Yt>f`z]MON’);define(’SECURE_AUTH_KEY’,’LzJ}op]mr | 6+![P}Ak:uNdJCJZd>(Hx.-Mh#Tz)pCIU#uGEnfFz | f;;eU%/U^O~’);define(’LOGGED_IN_KEY’,’| i | Ux`9z7X>QYR0Z_XnZ@|’;define(’AUTH_SALT’,’eZyT)-Naw]F8CwA*VaW |)g@o公司}||wf~@C-YSt}(dh_6ebi#A,y | nU2{B#JBW’);define(’SECURE_AUTH_SALT’,’!=oLUTXh,QW=H`}`L|9/^4-3 STz},T(w}w*c(u`g~EJBf#8u#R{mUEZrozmm’);define(’NONCE_SALT’,’h`gxhd>SLWVfg1(1(n{;.V!教育部(SfbA U ksP@&`+Aychccav$+?@3q+rxV{%^VyKT’);对存储了常用字典字符串哈希值的工具,salt密码有助于防止这些工具。这些附加值使其更难破解。
参数(Parameters)
参数 | 类型 | 说明 |
---|---|---|
$scheme | (string) | 身份验证方案(身份验证、安全验证、已登录、当前) |
源码(Source)
/** * Get salt to add to hashes. * * Salts are created using secret keys. Secret keys are located in two places: * in the database and in the wp-config.php file. The secret key in the database * is randomly generated and will be appended to the secret keys in wp-config.php. * * The secret keys in wp-config.php should be updated to strong, random keys to maximize * security. Below is an example of how the secret key constants are defined. * Do not paste this example directly into wp-config.php. Instead, have a * {@link https://api.wordpress.org/secret-key/1.1/salt/ secret key created} just * for you. * * define('AUTH_KEY', ' Xakm<>M%G4Yt>f`z]MON'); * define('SECURE_AUTH_KEY', 'LzJ}op]mr|6+![P}Ak:uNdJCJZd>(Hx.-Mh#Tz)pCIU#uGEnfFz|f ;;eU%/U^O~'); * define('LOGGED_IN_KEY', '|i|Ux`9z7X>QYR0Z_XnZ@|'); * define('AUTH_SALT', 'eZyT)-Naw]F8CwA*VaW#q*|.)g@o}||wf~@C-YSt}(dh_r6EbI#A,y|nU2{B#JBW'); * define('SECURE_AUTH_SALT', '!=oLUTXh,QW=H `}`L|9/^4-3 STz},T(w}W<><+=ukr:>*c(u`g~EJBf#8u#R{mUEZrozmm'); * define('NONCE_SALT', 'h`GXHhD>SLWVfg1(1(N{;.V!MoE(SfbA_ksP@&`+AycHcAV$+?@3q+rxV{%^VyKT'); * * Salting passwords helps against tools which has stored hashed values of * common dictionary strings. The added values makes it harder to crack. * * @since 2.5.0 * * @link https://api.wordpress.org/secret-key/1.1/salt/ Create secrets for wp-config.php * * @staticvar array $cached_salts * @staticvar array $duplicated_keys * * @param string $scheme Authentication scheme (auth, secure_auth, logged_in, nonce) * @return string Salt value */ function wp_salt( $scheme = 'auth' ) { static $cached_salts = array(); if ( isset( $cached_salts[ $scheme ] ) ) { /** * Filter the WordPress salt. * * @since 2.5.0 * * @param string $cached_salt Cached salt for the given scheme. * @param string $scheme Authentication scheme. Values include 'auth', * 'secure_auth', 'logged_in', and 'nonce'. */ return apply_filters( 'salt', $cached_salts[ $scheme ], $scheme ); } static $duplicated_keys; if ( null === $duplicated_keys ) { $duplicated_keys = array( 'put your unique phrase here' => true ); foreach ( array( 'AUTH', 'SECURE_AUTH', 'LOGGED_IN', 'NONCE', 'SECRET' ) as $first ) { foreach ( array( 'KEY', 'SALT' ) as $second ) { if ( ! defined( "{$first}_{$second}" ) ) { continue; } $value = constant( "{$first}_{$second}" ); $duplicated_keys[ $value ] = isset( $duplicated_keys[ $value ] ); } } } $values = array( 'key' => '', 'salt' => '' ); if ( defined( 'SECRET_KEY' ) && SECRET_KEY && empty( $duplicated_keys[ SECRET_KEY ] ) ) { $values['key'] = SECRET_KEY; } if ( 'auth' == $scheme && defined( 'SECRET_SALT' ) && SECRET_SALT && empty( $duplicated_keys[ SECRET_SALT ] ) ) { $values['salt'] = SECRET_SALT; } if ( in_array( $scheme, array( 'auth', 'secure_auth', 'logged_in', 'nonce' ) ) ) { foreach ( array( 'key', 'salt' ) as $type ) { $const = strtoupper( "{$scheme}_{$type}" ); if ( defined( $const ) && constant( $const ) && empty( $duplicated_keys[ constant( $const ) ] ) ) { $values[ $type ] = constant( $const ); } elseif ( ! $values[ $type ] ) { $values[ $type ] = get_site_option( "{$scheme}_{$type}" ); if ( ! $values[ $type ] ) { $values[ $type ] = wp_generate_password( 64, true, true ); update_site_option( "{$scheme}_{$type}", $values[ $type ] ); } } } } else { if ( ! $values['key'] ) { $values['key'] = get_site_option( 'secret_key' ); if ( ! $values['key'] ) { $values['key'] = wp_generate_password( 64, true, true ); update_site_option( 'secret_key', $values['key'] ); } } $values['salt'] = hash_hmac( 'md5', $scheme, $values['key'] ); } $cached_salts[ $scheme ] = $values['key'] . $values['salt']; /** This filter is documented in wp-includes/pluggable.php */ return apply_filters( 'salt', $cached_salts[ $scheme ], $scheme ); } endif; if ( !function_exists('wp_hash') ) :
更新版本 | 源码位置 | 使用 | 被使用 |
---|---|---|---|
2.5.0 | wp-includes/pluggable.php | 3 | 1 |
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!