我需要将四位数字密码加密和解密到数据库中,但遇到了麻烦。我尝试过使用使用 Base64 的示例,即使在导入包后也找不到类。我究竟做错了什么?我知道下面的类可能是正确的,但是为什么找不到类并创建一个对象。在 Eclipse 中,当我导航到参考库中的 Base64 类时,它会显示“找不到源”。
import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Random;
import org.apache.commons.codec.binary.Base64;
public class PasswordEncryption {
private static Random random = new Random((new Date()).getTime());
public static String encrypt(String userId) {
Base64() encoder = new Base64();
byte[] salt = new byte[8];
random.nextBytes(salt);
return encoder.encode(salt)+
encoder.encode(userId.getBytes());
}
public static String decrypt(String encryptKey) {
if (encryptKey.length() > 12) {
String cipher = encryptKey.substring(12);
BASE64Decoder decoder = new BASE64Decoder();
try {
return new String(decoder.decodeBuffer(cipher));
} catch (IOException e) {
// throw new InvalidImplementationException(
// "Failed to perform decryption for key ["+encryptKey+"]",e);
}
}
return null;
}
}
如果我没有正确使用这些论坛,请道歉,这是我的第一篇文章。
谢谢