2011-01-17 2 views
3

Android 플랫폼 전체에 대한 소스 코드를 다운로드했으며 SSL 구현에 관심이 있습니다. 예를 들어, SSL 지원 사이트를 방문하면 안드로이드가 SSL 핸드 쉐이크를 수행하고 연결을 설정하는 방법을 정확하게 파악하고 싶습니다.Android SSL 내부 - 실제 구현은 어디에 있습니까?

코드의 여러 섹션을 살펴 보았지만 아직 찾고있는 것을 찾지 못했기 때문에 여기서 질문하고 누군가 올바른 방향으로 나를 가리킬 수 있는지 확인했습니다.

+0

알아 낸 내용을 문서화 할 계획이 있습니까? 나는 너무 흥미 롭다. – lkraider

+0

'SSLEngine' 또는 다른 클래스의 구현을 찾았습니까? – AndiDog

답변

2

에서 찾을 수 있습니다
https://android.googlesource.com/platform/packages/apps/Browser

기능의 대부분은 android.webkit.WebView 및 관련 클래스에있을 것입니다 :

https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/webkit

일부 패키지는 C++로 구현됩니다.

https://android.googlesource.com/platform/external/webkit

내가 웹킷은 컬 사용 생각 : : 다시하지만, 대부분의 기능은 웹킷 (어떤이 C++로 작성)에 의해 구현 될 것이다

https://android.googlesource.com/platform/external/webkit/+/gingerbread-release/WebCore/platform/network

그리고 컬은 OpenSSL을 사용 :

https://android.googlesource.com/platform/external/openssl

2

나는 당신이 찾고있는 것을 정확하게 모르지만 안드로이드의 SSL은 openssl에서 제공합니다. 이 라이브러리의 코드는 웹 브라우저 응용 프로그램 소스 코드에있다 /androidroot/external/openssl

+0

SSL 핸드 셰이크가 어떻게 작동하는지 알아 내려고합니다. Java에서 어떤 부분이 발생하고 OpenSSL 라이브러리에서 어떤 부분이 처리됩니까? 비밀 키는 어디에서 어떻게 생성됩니까? 그런 종류의 ... – PeterM