[英]Can I create salt keys in Wordpress without using the API?
我正在 python 中编写一个脚本,它可以帮助我创建一个带有自定义数据的标准wp-config.php
文件,当涉及到盐键时,我当然可以生成一个 64 个字符的随机字符串,但我想知道盐是否必须是related each other, hence generated only using the Wordpress API ( https://api.wordpress.org/secret-key/1.1/salt/ ) or if I can just bloat any random string.
在这种情况下,我可以使用任何符号来生成它还是排除某些符号? 如果我只是删除盐键怎么办,Wordpress 会第一次重新生成吗?
你可以使用任何你想要的盐键:它们只是随机字符串,它们彼此不相关,所以任何随机字符串生成器都可以。
据我所知,盐中使用的字符没有限制
是的,这很容易。 我建议将 WordPress 用于生成盐的原始wp_generate_password()
function 转换为 Python。 我在 bash 中做过同样的事情,看比较。
这是 PHP 中的原始 wp_generate_password() function WordPress 用于生成盐值:
function wp_generate_password( $length = 12, $special_chars = true, $extra_special_chars = false ) {
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
if ( $special_chars ) {
$chars .= '!@#$%^&*()';
}
if ( $extra_special_chars ) {
$chars .= '-_ []{}<>~`+=,.;:/?|';
}
$password = '';
for ( $i = 0; $i < $length; $i++ ) {
$password .= substr( $chars, wp_rand( 0, strlen( $chars ) - 1 ), 1 );
}
}
这是相同的wp_generate_password() function 重写为 bash :
function wp_generate_password() {
# Args
local length="$(test $1 && echo $1 || echo 12 )"
local special_chars="$(test $2 && echo $2 || echo 1 )"
local extra_special_chars="$(test $3 && echo $3 || echo 0 )"
chars='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
[[ $special_chars != 0 ]] && chars="$chars"'!@#$%^&*()'
[[ $extra_special_chars != 0 ]] && chars="$chars"'-_ []{}<>~`+=,.;:/?|'
password='';
for i in $(seq 1 $length); do
password="${password}${chars:$(( RANDOM % ${#chars} )):1}"
done
echo "$password"
}
然后,您可以通过在 PHP 中运行wp_generate_password( 64, true, true )
或在 bash 中运行wp_generate_password 64 1 1
来生成盐值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.