use bcrypt::{hash, verify, DEFAULT_COST}; fn main() { let password = "demo123"; // 生成新的bcrypt hash let new_hash = hash(password, DEFAULT_COST).unwrap(); println!("New hash for '{}': {}", password, new_hash); // 验证当前数据库中的hash let current_hash = "$2b$10$ha5wU.mOi8fHLJCfun860u2cfVopa04jwe/q82IKOwqp5uG70qsH6"; let valid = verify(password, current_hash).unwrap(); println!("Current hash valid for '{}': {}", password, valid); if valid { println!("✅ Current hash is correct!"); } else { println!("❌ Current hash is incorrect!"); println!("Update SQL:"); println!("UPDATE sftpgo_users SET password_hash = '{}' WHERE username IN ('testuser', 'demo', 'warren', 'momentry');", new_hash); } }