java.lang.SecurityException: JCE cannot authenticate the provider BC
TroubleShooting 2012. 8. 19. 22:03IOS Push 발송기능이 포함된 웹 어플리케이션을 로컬 및 개발서버에서 테스트 한 후에 Live 서버의 Jboss-as 서버위에 Deploy 하였다.
헌데 아래와 같은 오류가 발생하면서 Push 전송이 안된다.
국내 사이트에서는 관련 정보가 없어 구글링을 해본결과 프로바이더관련 에러인것으로 확인되었다.
근데 프로바이더가 머지?
일단 급한 불부터 끄기러 하고 아래사이트를 참고 하여 해결책을 따라하였다.
http://www.randombugs.com/java/javalangsecurityexception-jce-authenticate-provider-bc.html
(http://blog.naver.com/arad21?Redirect=Log&logNo=130077580236)
1. Find java.security in /path_to_your_jvm/jre/lib/security
2. Add security.provider.9=org.bouncycastle.jce.provider.BouncyCastleProvider
Your file should look like
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=com.sun.net.ssl.internal.ssl.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider
security.provider.6=com.sun.security.sasl.Provider
security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.8=sun.security.smartcardio.SunPCSC
security.provider.9=org.bouncycastle.jce.provider.BouncyCastleProvider
If you don’t have all those security providers then change security.provider.9 with your next number from security.provider, don’t use 9.
3. add the bcprov-jdk16-143.jar, bcmail-jdk16.143 and any other BC library to /path_to_your_jvm/jre/lib/ext
4. Remove any other BC library from your class path.
2번항목에서 security.provider.1~8 까지는 애초에 존재하는 코드이고,
security.provider.9 가 존재하지 않아 추가하였다.
그리고 3번항목에 해당하는 파일들을 아래사이트에서 다운받아 지시한 디렉토리에 추가하였다.
(http://www.bouncycastle.org/fr/example.html)
다운 BC 파일들 (JDK 1.6 관련 BC*) :
bcprov-jdk16-146.jar
bcmail-jdk16-146.jar
bctsp-jdk16-146.jar
bcpg-jdk16-146.jar
bctest-jdk16-146.jar
이후 JBoss를 재가동하니 관련 이슈 해결!! 하지만 다음 이슈가 기다리고 있었으니....ㅠㅠ
기타 참고 :
https://jira.primekey.se/browse/ECA-1113
https://community.jboss.org/message/541468
System.exit(0);
by CJ.Lee
'TroubleShooting' 카테고리의 다른 글
java.security.InvalidKeyException: Illegal key size (0) | 2012.08.19 |
---|