javax.net.ssl.SSLException: Not trusted server certificate

이오류가 뜨고있습니다..

 

그런데 검색해서

 

인증서 형식을 bks? 로 변환시키라고 해서

 

안드로이드가 java 서버로 접속해서 데이터 전달하면 서버는 다시 에코로 넘겨주는 방법입니다.

 

java 서버는 jks 쓰고 안드로이드는 같은 jks문서를 변환한 bks 파일을 쓰는데.. 

 

아래와 같은 오류 뜸.

 

bks로 변환한 파일로 java서버에서 돌리면 서버안켜짐.(test)

 

06-17 01:01:08.016: WARN/System.err(1710): javax.net.ssl.SSLException: Not trusted server certificate  <=인증서 문제?

06-17 01:01:08.028: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:371)
06-17 01:01:08.028: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLOutputStream.<init>(OpenSSLSocketImpl.java:564)
06-17 01:01:08.058: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.getOutputStream(OpenSSLSocketImpl.java:479)
06-17 01:01:08.089: WARN/System.err(1710):     at com.slsl.Android_SSlActivity.onCreate(Android_SSlActivity.java:65)
06-17 01:01:08.089: WARN/System.err(1710):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
06-17 01:01:08.096: WARN/System.err(1710):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
06-17 01:01:08.106: WARN/System.err(1710):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
06-17 01:01:08.106: WARN/System.err(1710):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
06-17 01:01:08.117: WARN/System.err(1710):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
06-17 01:01:08.126: WARN/System.err(1710):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-17 01:01:08.126: WARN/System.err(1710):     at android.os.Looper.loop(Looper.java:123)
06-17 01:01:08.126: WARN/System.err(1710):     at android.app.ActivityThread.main(ActivityThread.java:4627)
06-17 01:01:08.126: WARN/System.err(1710):     at java.lang.reflect.Method.invokeNative(Native Method)
06-17 01:01:08.157: WARN/System.err(1710):     at java.lang.reflect.Method.invoke(Method.java:521)
06-17 01:01:08.157: WARN/System.err(1710):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
06-17 01:01:08.157: WARN/System.err(1710):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
06-17 01:01:08.157: WARN/System.err(1710):     at dalvik.system.NativeStart.main(Native Method)
06-17 01:01:08.176: WARN/System.err(1710): Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: TrustAnchor for CertPath not found.
06-17 01:01:08.226: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkServerTrusted(TrustManagerImpl.java:168)
06-17 01:01:08.226: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:366)
06-17 01:01:08.226: WARN/System.err(1710):     ... 16 more
06-17 01:01:08.246: WARN/System.err(1710): Caused by: java.security.cert.CertPathValidatorException: TrustAnchor for CertPath not found.
06-17 01:01:08.266: WARN/System.err(1710):     at org.bouncycastle.jce.provider.PKIXCertPathValidatorSpi.engineValidate(PKIXCertPathValidatorSpi.java:149)
06-17 01:01:08.266: WARN/System.err(1710):     at java.security.cert.CertPathValidator.validate(CertPathValidator.java:202)
06-17 01:01:08.266: WARN/System.err(1710):     at org.apache.harmony.xnet.provider.jsse.TrustManagerImpl.checkServerTrusted(TrustManagerImpl.java:164)
06-17 01:01:08.278: WARN/System.err(1710):     ... 17 more

 

 

 

안드로이드 sdk에서 레퍼런스에서

 

 keytool -import -alias "my server cert" -file server.crt -keystore my.truststore

 

명령어로 jks에서 추출한 crt 인증서를  확인하고

my.truststore 파일을 넣어서 사용도 해봤는데 똑같은 오류 뜸..