строка, переданная методу, напрямую подверженному проверке кучи - PullRequest
0 голосов
/ 10 января 2020

Если у меня есть класс SecureString с методом .getPassCharArrays(byte[] bytes), который возвращает char[]. Если он используется в методе, который принимает тип String, уязвим ли он для проверки кучи?

Допустим, у меня есть этот метод для создания пользователя

createUser(User user, String pass) {
...
}

Скажем, я вызываю этот метод и передайте пароль:

createUser(user, String.valueOf(SecureString.getPassCharArrays(passBytes)));

Будет ли это восприимчиво к проверке кучи? Я знаю, что если я сохраню его в переменной, он будет создан, поскольку он создает строку в пуле строк в куче, а переменная указывает на местоположение этого пула строк.

// A no-no
String pass = String valueOf(secureString.getPass(pass));

Пожалуйста, поделитесь своими мыслями и любыми ссылками. Спасибо.

...