2012-08-01 2 views
3

나는 this link을 거쳤습니다.Android HTTPS 연결 기본 사항

1 키 스토어는 무엇입니까 :

나는 몇 가지 질문 몇 가지있다? 그리고 무엇을 왜 구현해야합니까?

2.이 경우 TrustManagerFactory 란 무엇이며 'X509'는 무엇입니까? 대답은 'X509'이외의 것이 있습니다.

3. 내 웹 서버 응용 프로그램 팀에서 알아야 할 사항이나 세부적인 내용은 무엇입니까? 어떤 종류의 인증서 또는 다른 것에 대해 알아야합니까?

내 문제 시나리오 : 네트워크에서 일부 XML 문자열을 검색하는 것이고 조금 민감하기 때문에 보안 조치를 취해야합니다.

답변을 기다리고 있습니다.

답변

0

XML을 보호하기 위해 HTTPS를 자세히 연구 할 필요가 없을 수도 있습니다. HTTPS를 사용하려면 대부분 도메인의 공식 SSL 인증서를 가져와 서버에서 사용해야합니다. 그런 다음 브라우저, WebView 또는 Java HTTPClient의 HTTP 클라이언트가이를 어떻게 처리해야하는지 알 수 있습니다.

+0

나는 이미 인증서를 가지고 있습니다. HttpsURLConnection을 사용해야합니까, 아니면 단순히 HttpUrlConnection이 작동합니까? – Debopam

+0

HttpUrlConnection이 작동합니다. http://developer.android.com/reference/java/net/HttpURLConnection.html –

0

Java SSL 구현 JSSE documentation을 읽고 몇 가지 기본 사항과 관점을 확인하십시오.

  1. 키 스토어에는 키 또는 인증서가 저장됩니다. 서버 인증서를 발급 한 CA가 Android에서 신뢰할 수있는 경우 (즉, 이미 시스템 신뢰 저장소에 설치되어있는 경우) 키 저장소를 사용하지 않아도됩니다. 그것은 단지 작동해야합니다. 그렇지 않은 경우 서버가 자체 서명 된 경우 서버의 인증서를 포함하는 자체 신뢰 저장소를 만들거나 그렇지 않은 경우 발급 CA의 인증서를 포함하는 자체 신뢰 저장소를 만들어야 할 수 있습니다.

  2. TrustManagerFactoryTrustManager을 생성한다. 그것은 당신의 app/system에게 신뢰할 수있는 인증서를 알려줍니다. 기술적으로 X.509 외에도 다른 구현이있을 수 있지만 실제로는 사용중인 유일한 구현입니다.

  3. 참조 1. 누가 인증서를 발행했는지 확인하십시오. 또는 단순히 브라우저로 사이트에 액세스하십시오. 경고 나 오류가 발생하면 Android가 기본적으로 서버 인증서를 신뢰하지 않기 때문에 상황이 다소 복잡해질 수 있습니다. 그렇지 않은 경우 앱은 http:// 대신 https://myserver/sevice 유형의 URL로 작동해야합니다.

+0

의 "HTTPS와의 보안 통신"을 참조하십시오. 브라우저에 경고가 표시되지 않습니다. 그냥 녹색 잠금 기호. 이렇게하면 간단한 HttpUrlConnection이 목적을 가져 오는 데 효과적일까요? – Debopam

+0

대부분의 경우, 예. 너 해봤 니? –