>  기사  >  운영 및 유지보수  >  HTTPS가 HTTP보다 더 안전한 이유

HTTPS가 HTTP보다 더 안전한 이유

angryTom
angryTom앞으로
2019-11-28 15:52:063256검색

HTTPS가 HTTP보다 더 안전한 이유

HTTP(Hypertext Transfer Protocol)는 현재 인터넷에서 가장 널리 사용되는 프로토콜입니다. 네트워크 보안에 대한 사람들의 인식이 높아짐에 따라 HTTPS 채택도 늘어나고 있습니다. 일부 쇼핑 웹사이트를 방문하든 일부 블로그, 포럼 등에 로그인하든 우리는 모두 HTTPS로 보호됩니다. Google Chrome 및 Firefox와 같은 주류 브라우저조차도 모든 HTTP 기반 사이트를 안전하지 않은 것으로 표시했습니다.

HTTP가 HTTP보다 더 안전한 이유는 무엇인가요? 이 질문에 답하기 전에 먼저 HTTP와 HTTPS가 무엇인지 이해해야 합니다.

HTTP 및 HTTPS의 액세스 프로세스

인터넷이 발달한 이래로 HTTP는 인터넷에서 정보를 전송하는 표준 프로토콜이었습니다. 전송되는 정보는 인터넷 내의 컴퓨터 간에 문서, 파일, 이미지, 비디오 등이 될 수 있습니다.

HTTPS가 HTTP보다 더 안전한 이유

HTTP 요청 프로세스 중에는 클라이언트와 서버 사이에 신원 확인 프로세스가 없습니다. 모든 데이터는 인터넷에서 일반 텍스트로 "줄무늬"로 전송되므로 해커의 공격을 받기 쉽습니다.

HTTPS가 HTTP보다 더 안전한 이유

위 그림에서 볼 수 있듯이, 이때 해커가 서버를 사칭하면 클라이언트가 보낸 요청을 쉽게 가로챌 수 있습니다. 그래서 우리는 '하이재킹'이라는 말을 자주 듣습니다.

HTTPS가 HTTP보다 더 안전한 이유

그리고 HTTPS는 실제로 SSL을 사용하는 HTTP입니다(HTTP + SSL = HTTPS). 브라우저의 주소 표시줄에 HTTPS가 표시되면 웹사이트와의 모든 통신이 암호화되어 전체 방문이 더욱 안전해짐을 의미합니다.

HTTPS가 HTTP보다 안전한 이유

HTTPS의 보안은 세 가지 측면에서 나타나는 경우가 많습니다.

서버 인증을 통해 사용자는 현재 해당 서버와 통신하고 있음을 알 수 있습니다.

데이터 기밀성, 제출된 데이터는 암호화되어 있으므로 전송된 데이터의 내용을 상대방이 이해할 수 없습니다.

데이터 무결성, 전송에는 확인을 위해 메시지 인증 코드(MAC)가 포함되므로 전송된 데이터는 상대방에 의해 변경되지 않습니다.

예를 들어 비교해보실 수 있습니다. HTTP 요청은 다음 GET 요청과 같이 HTTP 프로토콜을 따르는 여러 줄의 텍스트로 구성됩니다.

GET /helloupyun.txt HTTP/1.1
User-Agent: curl/7.73.0 libcurl/7.73.0 OpenSSL/1.1.l zlib/1.2.11
Host: www.upyun.com
Accept-Language: en

요청은 일반 텍스트 형식이므로 직접 전송됩니다. 프로토콜 명령과 구문에 대한 기본적인 이해가 있어야 합니다. 사람들은 요청 전송 프로세스를 모니터링하는 한 요청의 의미를 얻고 이해할 수 있습니다. 따라서 HTTP를 통해 비밀번호 등의 데이터를 보내는 경우 보안 수준이 매우 낮습니다.

반대로 HTTPS는 SSL(또는 TLS)을 사용하여 HTTP 요청과 응답을 암호화하므로 위의 예에서 요청을 모니터링하는 사람은 읽을 수 있는 텍스트 대신 임의의 숫자 문자열을 보게 됩니다.

GsERHg9YDMpYk0VVDiRvw1H5miNieJeJ/FNUjgH0BmVAWII6+T4MnDwmCMZUI/orxP3HGwYCSIvyzS3MpmmSe4iaWKCOHH==

암호화 과정에서는 비대칭 키와 대칭 키를 포괄하는 표준 보안 기술인 SSL(Secure Socket Layer)을 사용합니다.

대칭 암호화

대칭 암호화는 암호화와 복호화에 동일한 키를 사용하는 암호화 알고리즘을 말합니다.

현재 일반적인 암호화 알고리즘에는 DES, AES, IDEA 등이 포함됩니다.

비대칭 암호화

비대칭 암호화는 공개 키와 개인 키라는 두 개의 키를 사용하여 웹사이트 계정 비밀번호를 페어링합니다. 암호화할 데이터를 지정한 다음 개인 키를 사용하여 데이터를 해독합니다. 이 공개 키는 웹 사이트를 보는 모든 사람에게 전송되지만 개인 키는 웹 사이트 서버 자체에서만 소유됩니다.

현재 일반적인 비대칭 암호화 알고리즘: RSA, DSA, DH 등

ChaCha20-Poly1305 암호화 제품군과 같이 일반적으로 사용되는 제품군은 이 두 가지 알고리즘을 사용합니다. 여기서 Chacha20은 대칭 암호화 알고리즘을 나타내고 Poly1305는 신원 인증 알고리즘을 나타냅니다.

RFC 문서를 보면 ChaCha20이 256비트 암호화 강도를 제공한다는 것을 알 수 있는데, 이는 HTTPS 보안을 보장하는 대칭 암호화 알고리즘으로 충분합니다.

HTTPS가 HTTP보다 더 안전한 이유

그리고 Poly1305는 신원 인증 알고리즘으로 인증을 제공하여 공격자가 TLS 핸드셰이크 프로세스 중에 보안 데이터 스트림에 허위 정보를 삽입하는 것을 방지할 수 있습니다. Poly1305 알고리즘은 약 100비트의 보안 암호화 강도를 제공하므로 충분히 방지할 수 있습니다. 그런 공격.

일반적으로 HTTP에 비해 HTTPS는 암호화 방식으로 데이터를 암호화할 뿐만 아니라 웹 사이트에 안전하고 신뢰할 수 있는 ID 카드를 제공합니다.

HTTPS의 몇 가지 장점과 단점에 대해 이야기해 보겠습니다.

전체적으로 HTTPS에는 다음과 같은 5가지 장점이 있습니다.

● 웹에서 데이터 및 거래의 보안을 극대화합니다.

● 사용자의 민감한 정보 또는 기밀 정보를 암호화합니다.

● 검색 엔진 순위 향상

● 브라우저에서 "안전하지 않은" 프롬프트 방지

● 웹사이트에 대한 사용자 신뢰도 향상.

상대적으로 말하면 단점도 중요합니다.

● HTTPS 프로토콜은 핸드셰이크 단계에서 상대적으로 오랜 시간이 걸리며 이는 전체 페이지 로딩 속도에 영향을 미칩니다.

● 브라우저와 서버 암호화에 더 많은 CPU 주기가 필요합니다. /decrypt data;

● SSL 인증서를 얻으려면 일반적으로 비용이 저렴하지 않습니다.

● 웹사이트가 공격을 받고 서버가 탈취되면 HTTPS는 기본적으로 감당할 수 없습니다. 모든 안전 보호 기능.

관련 기사 튜토리얼: 웹 보안 튜토리얼

위 내용은 HTTPS가 HTTP보다 더 안전한 이유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제