카테고리 없음

[자바] java.security.InvalidKeyException 예외 발생 : 유효하지 않은 AES 키 길이 : 28 바이트

행복을전해요 2021. 1. 18. 18:33

당신은을 사용합니다 Reader. A Reader의 목적은 텍스트를 읽는 것입니다.

그러나 여기서 바이너리, 즉 바이트 배열을 원합니다.

해결책 : Reader. 를 사용하고 InputStream16 개 요소 byte배열 로 읽습니다 .

-------------------

urandom은 인쇄 할 수없는 문자를 포함하는 바이트 청크를 생성합니다. 버퍼링 된 판독기를 사용하고 Java UTF-8로 읽는 것은 아마도 제어 문자로 일부 바이트를 얻고 인코딩 변환으로 인해 더 많은 데이터를 만드는 문제를 일으킬 수 있습니다.

InputStream을 사용하면 문자열 대신 바이트를 가져 오는 문제를 해결하거나 다음과 같은 다른 명령을 사용하여 읽을 수있는 키를 만들어야합니다.

tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 > /data/key.txt


출처
https://stackoverflow.com/questions/22007780