저는 학교에서 쓰고있는 앱과 서버 백엔드 사이의 통신을 보호하기 위해 노력하고 있습니다. 나의 초기 계획은 안드로이드 클라이언트와 PHP 서버 사이의 Diffie-Hellman 교환을 설정하는 것이었다. 그러나 SSL은 공개 키 교환 프로토콜과 매우 유사하게 (정확하게 이해하면 동일 할 수도 있음) 사용하며 더 많은 기본 지원과 더 나은 문서를 가지고있는 것으로 나타났습니다.자체 서명 된 SSL 대 모바일 응용 프로그램 용 Diffie-Hellman 교환?
Diffie-Hellman 교환을 설정하는 것보다 내 인증서가 하드 코딩 된 인증서로 자체 서명 SSL로 전환 하시겠습니까? 하나 더 나은 네트워크/배터리/CPU 성능을 제공합니까?
두 방법 모두 Man-in-the-middle 공격으로부터 실제로 보호하지 못한다는 것을 알고 있지만,이 시점에서 내 우선 순위는 단순히 도청자로부터 보호하는 것입니다.
SSL은 DH뿐만 아니라 다른 키 교환 프로토콜을 사용할 수 있습니다. 또한 키 교환은 그림의 일부일뿐입니다. 실제로 제대로 작동하더라도 프로토콜이 실제로 안전해야하는 다른 많은 것들이 있습니다 (키 유도, 무결성 검사, 재생 보호 등). 아래에서 SSL 사용 방법을 배우십시오. –