본문 바로가기

Java

java.security.InvalidKeyException: Illegal key size 오류

암호화 테스트 중 java.security.InvalidKeyException: Illegal key size 오류가 났다.

SHA256은 그냥 바로 되던데, AES256은 오류가 난다. 오류 코드를 검색해보면 바로 해결방법이 나오지만, 왜그런지 해결이 안됬다. 몇번의 삽질 끝에 원인을 찾았는데, 컴파일하는 jdk버전이 다른 버젼으로 맞춰져있었다... 이런 삽질은 고만 해야할텐데...


해결방법은 간단한데, 미국에서 일정 이상 암호화 기술은 수출금지를 시켰단다. 그래서 필요한 파일만 다운받아 사용하면 되는 것이다. 수출 금지인데 다운받으면 바로 해결되는 것도 좀 이상하긴 한데... 오라클 홈페이지에 가면 jar파일이 있는데 jdk 버전별로 다운 받아서 넣어주자. jdk가 설치된 경로 밑에 jre/lib/security 로 찾아가서 다운받은 파일을 압축풀면 나오는 local_policy.jar, US_export_policy.jar 파일 두개를 덮어써주면 된다.


다운로드 경로

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 6

http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html


Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 7

http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html


Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 8

http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html



'Java' 카테고리의 다른 글

Static Import 에 대해  (0) 2015.09.18
captcha를 만들어보자  (0) 2015.04.29
문자열 패턴 분석 정규식  (0) 2015.04.21
hadoop - 하둡(Hadoop)이란 무엇인가?  (0) 2012.10.05
자바 7 보안 패치  (0) 2012.08.31