다음은 워싱턴 대학의 조직 CA를 사용하여 전체를 예로 들어 보십시오. 감사합니다! 이 예제는 유용합니다. rfreedman / 안드로이드 SSL의 새로운 릴리스에 대한 알림을 원하십니까? 지금까지 예제는 HttpsURLConnection를 사용하여 HTTPS에 초점을 맞추지 못했습니다. 경우에 따라 앱은 HTTP와 별도로 SSL을 사용해야 합니다. 예를 들어 전자 메일 앱은 SMTP, POP3 또는 IMAP의 SSL 변형을 사용할 수 있습니다. 이러한 경우 앱은 HttpsURLConnection가 내부적으로 수행하는 것과 거의 동일한 방식으로 SSLSocket을 직접 사용하려고 합니다. 예, 정말 그렇게 간단 할 수 있습니다. HTTP 요청을 조정하려면 HttpURL연결로 캐스팅할 수 있습니다. HttpURLConnection에 대한 Android 설명서에는 요청 및 응답 헤더 처리, 콘텐츠 게시, 쿠키 관리, 프록시 사용, 응답 캐싱 등의 방법에 대한 추가 예제가 있습니다. 그러나 인증서 및 호스트 이름을 확인하는 세부 정보 측면에서 Android 프레임워크는 이러한 API를 통해 이를 처리합니다. 이것은 당신이 가능한 한 원하는 곳입니다.

즉, 아래몇 가지 다른 고려 사항입니다. 이 프로젝트의 /res/value/strings.xml 파일을 업데이트 – example_url 값을 서버를 가리키도록 변경합니다. 기본값은 https://www.google.com-이 작동 하지만 정말이 코드를 테스트 하지 않습니다., Google의 SSL 인증서를 신뢰할 수 있는, 그리고 구글 클라이언트 인증서를 필요로 하지 않습니다. 안드로이드, androidhttpclientconnection, basichttpparams, 연결, 내용, 헤더, httphost, httpsconnection, io예외, 그물, 네트워크, 재정의, ssl, sslconnectionclosedbyuserexception, sslcontextimpl, sslsocket, 문자열, 트러스트 매니저, x509인증서 앱은 고정이라는 기술로 부정하게 발급된 인증서로부터 자신을 보호할 수 있습니다. 이는 기본적으로 위의 알 수 없는 CA 사례에 제공된 예제를 사용하여 앱의 신뢰할 수 있는 CA를 앱 서버에서 사용하는 것으로 알려진 작은 집합으로 제한하는 것입니다. 이렇게 하면 시스템의 다른 100개 이상의 QA 중 하나가 손상되어 앱 보안 채널이 침해되는 것을 방지할 수 있습니다. 클라이언트 인증서 및 자체 서명된 서버 인증서가 있는 HTTPS/SSL을 사용하는 Android 프로젝트예제입니다. 여기에 표시된 고정 예제를 구현하려면 인증서 SPKI 데이터를 알아야 합니다. 여기에 제시된 API 중 일부는 고정이 실패할 때 서버에서 반환하는 키에 대한 예외를 throw하지만 이러한 API를 직접 검색하려는 경우 openssl을 사용할 수 있습니다. 1 월 31, 2013 리치 프리드먼 태그에 의해 : 안드로이드, https, 자바, 모바일, ssl 여기에 좋은 예는 매니페스트 파일 및 활동 파일에 대해 이야기하지 않기 때문에 새로운 사용자를위한 그것은 불완전하지만 나는 얻을 : 스레드 “메인”java.ioException : 인증의 예외 에서 실패 sun.net.www.httpURLConnection.doTunneling (HttpURLConnection.java:1329) 에서 sun.net.www.protocol.https.httpsURL연결(추상위임HttpsURLConnection.java:168) sun.net.www.httpURLConnection.getinputStream(HttpURLConnection.java:934) HTTPSExample.main(HTTPSExample.java:43) 일부 사이트는 리소스를 제공하는 데 사용되는 보조 웹 서버에 대해 의도적으로 이 작업을 수행합니다. 예를 들어 전체 인증서 체인이 있는 서버에서 기본 HTML 페이지를 제공하지만 이미지, CSS 또는 JavaScript와 같은 리소스에 대한 서버가 CA를 포함하지 않고 대역폭을 절약할 수 있습니다. 불행히도, 때로는 이러한 서버가 Android 앱에서 호출하려는 웹 서비스를 제공 할 수 있습니다.