从字节数组中删除NUL字符

在我的代码示例中,我生成了一个随机字节数组,必须在我的密码字段中将其用作盐。

当我的字节数组中有一个NUL字符时,就会出现问题。 我已经找到了一种使用字符串删除此字符的方法,但是出于安全原因,我想使用数组而不是字符串来删除此值。

下面是我的解决方案的摘要。在此示例中,我删除了NUL出现,但可以替换掉它们。我该如何更换? 谢谢。

private static byte[] generateSalt() throws UnsupportedEncodingException,NoSuchAlgorithmException{
    final Random RANDOM = new SecureRandom();

    byte[] salt = new byte[12];
    RANDOM.nextBytes(salt);  

    String str = new String(salt,StandardCharsets.UTF_8);
    str.replaceAll("\u0000","");
    salt = str.getBytes("UTF-8");

    return salt;
}
q00120994 回答:从字节数组中删除NUL字符

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3155903.html

大家都在问