JAVA

[Java] security - local_policy.jar, US_export_policy.jar

단델x 2023. 1. 5. 17:03

개발환경 셋팅을 하는데

security 폴더에 local_policy.jar, US_export_policy.jar 이 두개의 파일을 덮어씌우라는 내용이 있었다.

도대체 이게 무엇이고 왜 해야하는지 궁금하여 내용을 찾아보았다.


기본적으로는 128Bit로 암호화를 하는데, 그 이상(256Bit)으로 암호화를 처리해야 하는 경우

 java.security.InvalidKeyException: Illegal key size 예외가 발생 한다고 한다. 

 

제한이 걸려있는 암호화 길이를 무시하고 위와 같은 에러가 뜨지 않도록 별도의 작업이 필요하다고 한다.

 

JDK 8u151 이전 버전의 경우에는

<JAVA_HOME>/jre/lib/security 디렉토리에 본인이 사용하고 있는 Java 버전에 맞는 local_policy.jar, US_export_policy.jar 파일을 다운받아서 덮어 씌운다. 

<다운로드>
jdk8 (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 8)
http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

jdk7  (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 7)
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

jdk6 (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 6)
http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

JDK 8u151 이상 버전에서는

아래 사진과 같이 <JAVA_HOME>/jre/lib/security/policy 폴더 안에 limited와 unlimited가 나뉘어 있는 것을 확인할 수 있다.

여기서는 따로 파일을 다운받아 덮어 씌우지 않고 

<JAVA_HOME>/jre/lib/security 내의 java.security 파일 내용에서

crypto.policy=unlimited 옵션의 주석을 풀어주면 된다.

 

✨아래 링크 글에서 자세한 설명을 확인 할 수 있으니 한 번 읽어보는 것을 추천한다.

[Java] JDK의 암호화 알고리즘 키 제한 이슈 (Illegal key size 오류) (1004lucifer.blogspot.com)


참고

 

 

local_policy.jar, US_export_policy.jar, 다운 java.security.InvalidKeyException: Illegal key size or default parameters, java,

local_policy.jar, US_export_policy.jar java.security.InvalidKeyException: Illegal key size or ...

blog.naver.com