마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

롤리팝 https 접근할수 있는 방법 없나요 ?

0 추천
  • TLSv1.2 and TLSv1.1 protocols are now enabled,
  • AES-GCM (AEAD) cipher suites are now enabled,
  • MD5, 3DES, export, and static key ECDH cipher suites are now disabled,
  • Forward Secrecy cipher suites (ECDHE and DHE) are preferred.
롤리팝이 되면서 
MD5 암호화를 더이상 지원이 안되는거같은데요 
 
HttpClient,  HttpURLConnection, webview 
 
전부다 안되는데 
 
서버 ssl 을 변경하지 않고 접근할수 있는 방법이 있을까요 ?
하마구라 (200 포인트) 님이 2015년 9월 10일 질문

2개의 답변

0 추천

HttpClient, HttpURLConnection 둘다 방법이 있는데 HttpClient는 deprecated되었으니 따로 설명할 필요는 없을것 같구요.

https://developer.android.com/about/versions/android-5.0-changes.html

만약 직접 운영하시는 서버라면 서버 certificate를 업데이트하는 것이 가장 좋은 해결책이구요. 그렇지 않은 경우 앱에서의 해결책이 아래와 같이 나와있습니다. 

An alternative is to modify the app to use a custom SSLSocketFactory to communicate with the server. The factory should be designed to create SSLSocket instances which have some of the cipher suites required by the server enabled in addition to default cipher suites.

Custom SSLSocketFactory를 만들어서 쓰라는 이야기구요. 정확한 값은 서버가 멀 사용하고 있느냐에 따라 달라질수 있을것 같네요.

http://saltnlight5.blogspot.kr/2014/10/how-to-setup-custom-sslsocketfactorys.html

참고하세요.

회색 (21,000 포인트) 님이 2015년 9월 10일 답변
댓글 감사합니다.

말씀해주신데로 링크와 비슷하게 테스트해봤습니다.

회색님께서 보내주신 링크도 다시 테스트했구요

자바 콘솔에선 되는데

안드로이드 상에서는

error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:770 0x7f6825a4b0:0x00000000)

에러와 함께 작동되지 않습니다.

서버가 SLV1.1 버전이라서

TLS SSL TLSv1.1 이렇게 바꿔가면서 해봤는데 동일합니다.

제가 무엇을 잘못한것일까요 ?
0 추천
aucd29 (218,390 포인트) 님이 2015년 9월 11일 답변
...