안드로이드 개발 지식학습-HTTPS

정의

  • HTTP 보안 / SSL을 통한 HTTP / TLS를 통한 HTTP

  • SSL:보안 소켓 계층 -> TLS 전송 계층 보안

  • 정의: HTTP 암호화 전송을 보장하기 위해 HTTP 아래에 추가된 보안 계층

  • 본질: 비대칭 암호화를 사용하여 클라이언트와 서버 간에 대칭 키 집합이 협상됩니다. 콘텐츠는 각 메시지가 전송되기 전에 암호화되고 수신 후에는 해독되어 콘텐츠의 암호화된 전송이 이루어집니다.

  • 왜 비대칭 암호화를 사용하지 않는 걸까요?
    비대칭 암호화는 복잡한 수학적 원리를 사용하므로 계산이 상당히 복잡하며,
    통신 내용을 암호화하는 데 비대칭 암호화가 완전히 사용된다면 네트워크 통신 성능에 심각한 영향을 미치게 됩니다.

HTTPS 연결

  1. 클라이언트가 TLS 연결 설정을 요청합니다.
  2. 서버가 인증서를 다시 보냅니다.
  3. 클라이언트가 서버 인증서의 유효성을 검사합니다.
  4. 클라이언트는 서버를 신뢰한 후 서버와 대칭 키를 협상합니다.
  5. 대칭 키를 사용하여 통신 시작

HTTPS 연결 설정 프로세스

  1. Client Hello 정보 구축 요청
    여기에 이미지 설명을 삽입하세요.

  2. Server Hello 서버가 클라이언트에게 메시지를 다시 보냅니다.
    여기에 이미지 설명을 삽입하세요.

  3. 서버 인증서 신뢰 구축
    여기에 이미지 설명을 삽입하세요.

  4. Pre-master Secret 마스터 비밀 계산 대칭 암호화를 위한 키 계산
    여기에 이미지 설명을 삽입하세요.

  5. 클라이언트 알림: 암호화된 통신이 사용됩니다.
    여기에 이미지 설명을 삽입하세요.

  6. 클라이언트 전송: 완료
    여기에 이미지 설명을 삽입하세요.

  7. 서버 알림: 암호화된 통신이 사용됩니다.
    여기에 이미지 설명을 삽입하세요.

  8. 서버 전송: 완료
    여기에 이미지 설명을 삽입하세요.

방과후 질문

1. [단답형 질문] HTTPS 메시지 전송 시 비대칭 암호화가 아닌 대칭 암호화를 사용하는 이유는 무엇인가요?
A. 대칭 암호화가 더 안전하기 때문
B. 대칭 암호화가 더 나은 성능을 발휘하기 때문
C. 비대칭 암호화의 역사가 너무 짧고 모든 서버가 비대칭 암호화와 호환되는 것은 아니기 때문

답변: B
답변 분석: HTTPS 메시지 전송은 비대칭 암호화 대신 대칭 암호화를 사용합니다. 주로 대칭 암호화의 성능이 더 좋기 때문입니다. 비대칭 암호화는 더 안전하지만 알고리즘이 더 복잡하기 때문에 암호화 및 복호화 속도가 느립니다. 이와 대조적으로 대칭 암호화는 간단한 알고리즘, 더 빠른 암호화 및 암호 해독 기능을 갖추고 있으며 메시지 전송을 위한 HTTP 프로토콜의 실시간 요구 사항을 더 잘 충족할 수 있습니다. 따라서 HTTPS에서 대칭 암호화를 사용하면 메시지 전송의 효율성과 보안이 더 잘 보장될 수 있습니다.

2. [단답형 질문] HTTPS 연결 설정 시 인증서의 역할은 무엇인가요?
A. 클라이언트와 통신하는 사람이 실제로 자신이 생각하는 사람인지 확인하게 하십시오.
B. 클라이언트가 방문하는 웹사이트가 불법 웹사이트가 아닌지
확인하게 하십시오. C. 클라이언트가 자신이 방문하는 웹사이트가 불법 웹사이트가 아닌지 확인하게 하십시오. 컴퓨터는 충분히 안전하며 침입당하지 않았습니다.

답변: A답변
분석: HTTPS 연결 설정 과정에서 인증서의 주요 기능은 클라이언트와 통신하는 사람이 실제로 자신이 생각하는 사람임을 클라이언트가 확신하도록 하는 것입니다. 인증서는 권위 있는 제3자 기관에서 발급되며 서버의 공개 키와 인증 기관(CA), 주체, 공개 키, 유효 기간 등을 포함한 관련 정보가 포함되어 있습니다. 클라이언트가 HTTPS 연결을 설정하면 먼저 서버 인증서를 획득하고 인증서의 적법성과 유효성을 확인하여 서버의 신원을 확인합니다. 따라서 인증서는 통신의 보안과 신뢰성을 보장하기 위해 HTTPS 연결 설정 프로세스에서 중요한 역할을 합니다.

3. [객관식 질문] HTTPS 연결 설정 과정 중 인증서 검증 단계에서는 인증서의 어떤 내용을 주로 검증하나요?
A. 인증서의 적법성
B. 인증서 보유자는 최근 범죄 경력이 없습니다.
C. 인증서 보유자는 최근 범죄 경력이 없습니다
. D. 인증서의 호스트 소유권은 고객의 기대와 일치합니다.

답: A, D
답 분석: HTTPS 연결 설정 프로세스의 인증서 확인 단계에서는 주로 다음과 같은 인증서 내용을 확인합니다.
A. 인증서의 적법성: 인증서가 권위 있는 제3자 기관에서 발급되었는지 여부 유효기간 내입니다.
D. 인증서의 호스트 소유권과 클라이언트 기대 사이의 일관성: 인증서가 클라이언트가 액세스할 것으로 예상하는 웹사이트 또는 서비스와 연결되어 있는지 여부.
인증서 보유자의 범죄 이력 및 사이버 범죄 이력에 관한 옵션 B 및 C는 HTTPS 연결 설정 중 인증서 확인의 주요 내용이 아닙니다.

추천

출처blog.csdn.net/weixin_74239923/article/details/134117969