59 行
1.8 KiB
PHP
可执行文件
59 行
1.8 KiB
PHP
可执行文件
<?php
|
|
// 调试Crypto类的加密解密逻辑
|
|
require_once './Application/Addons/Api/Crypto.class.php';
|
|
|
|
$CryptoModel = new \Addons\Api\Crypto();
|
|
|
|
$userPassword = 'm5mbaGuYbw==';
|
|
$userAddTime = '20240903160000';
|
|
$timestamp = strtotime($userAddTime);
|
|
$timeFormat = date('YmdHis', $timestamp);
|
|
|
|
echo "目标密码哈希: {$userPassword}\n";
|
|
echo "用户add_time: {$userAddTime}\n";
|
|
echo "时间戳: {$timestamp}\n";
|
|
echo "格式化时间: {$timeFormat}\n\n";
|
|
|
|
// 测试解密
|
|
echo "=== 测试解密 ===\n";
|
|
$decrypted = $CryptoModel->decrypt($userPassword, $timeFormat);
|
|
echo "解密结果: '{$decrypted}'\n\n";
|
|
|
|
// 测试重新加密解密的结果
|
|
echo "=== 测试重新加密解密结果 ===\n";
|
|
$reencrypted = $CryptoModel->encrypt($decrypted, $timeFormat);
|
|
echo "重新加密: '{$reencrypted}'\n";
|
|
echo "是否匹配: " . ($reencrypted === $userPassword ? '是' : '否') . "\n\n";
|
|
|
|
// 测试一些常见密码的加密结果
|
|
echo "=== 测试常见密码加密 ===\n";
|
|
$testPasswords = ['123456', '888888', 'admin', 'password', '111111', '000000', 'di572'];
|
|
|
|
foreach ($testPasswords as $pwd) {
|
|
$encrypted = $CryptoModel->encrypt($pwd, $timeFormat);
|
|
echo "密码: '{$pwd}' -> 加密: '{$encrypted}'\n";
|
|
}
|
|
|
|
echo "\n=== 尝试不同的时间格式 ===\n";
|
|
// 尝试其他可能的时间格式
|
|
$timeFormats = [
|
|
$timeFormat,
|
|
date('Y-m-d H:i:s', $timestamp),
|
|
date('Ymd', $timestamp),
|
|
$userAddTime,
|
|
(string)$timestamp
|
|
];
|
|
|
|
foreach ($timeFormats as $tf) {
|
|
echo "时间格式: '{$tf}'\n";
|
|
$decrypted = $CryptoModel->decrypt($userPassword, $tf);
|
|
echo "解密结果: '{$decrypted}'\n";
|
|
|
|
if (!empty($decrypted)) {
|
|
$reencrypted = $CryptoModel->encrypt($decrypted, $tf);
|
|
echo "重新加密: '{$reencrypted}'\n";
|
|
echo "匹配: " . ($reencrypted === $userPassword ? '是' : '否') . "\n";
|
|
}
|
|
echo "\n";
|
|
}
|
|
?>
|