비밀번호와 같은 민감한 정보를 String 형식으로 전달했습니다. 나중에 암호가 힙 메모리 덤프에서 텍스트 형식으로 저장 됨으로 쉽게 읽을 수 있음을 알게되었습니다. 문자 배열 Vs 사용할 바이트 배열?
String password = "super_password";
그래서 나는
Char[] passChar = password.toCharArray();
, 문자 배열을 사용하기로 결정하지만 암호가 여전히 문자로 메모리 덤프 문자에서 읽을 수 있는지 걱정입니다. 그럼 대신 바이트 배열을 사용하여 생각.
byte[] passByte = password.getBytes();
내 질문 : 암호와 같은 중요한 정보를 전달하기 위해 바이트 배열을 사용하는 것이 안전합니까? 또는 누구든지 보안을 권할만한 사람이 있습니까?
char로 char을 읽을 수 있다면 바이트를 바이트 단위로 읽고 수동으로 다시 변환하는 것을 중단해야 할 대상은 무엇입니까? – Pokechu22
@ Pokechu22 나는 그가 [this] (http://stackoverflow.com/questions/8881291/why-is-char-preferred-over-string-for-passwords)를 참조하고 있다고 생각한다. – August