본문 바로가기
JAVA

[AES 알고리즘] Input length must be multiple of 16 when decrypting with padded cipher 발생 시에 확인 해볼 사항

by Hwoarang757 2021. 10. 21.

[AES 알고리즘] Input length must be multiple of 16 when decrypting with padded cipher 발생 시에 확인 해볼 사항

 

저 같은 경우 , 특정 파일을 byte Array로 읽어서 복호화 처리 시에 아래와 같은 Exception 이 발생 하였습니다.

 

javax.crypto.IllegalBlockSizeException: Input length must be multiple of 16 when decrypting with padded cipher

 

 

평문으로 된 String 이나 Byte 를 Encrypt 처리 시에 , AES 알고리즘으로 Encrypt를 처리 한 상태에서 추가적으로 Base64로 Encode 한 파일이나 String을 

 

복호화 시도 시에 먼저 Base64로 Decode 하지 않고 , AES 알고리즘으로 Decrypt 시도 시에 위와 같은 Exception 이 발생 하였습니다. 

 

Base64로 Decode 후 , AES 알고리즘으로 Decrypt 시도 시에 정상적으로 복호화 되었습니다.

 

감사합니다.