HTTPS는 어떻게 보안을 보장하나요? (상해)
이 기사에서는 HTTP의 문제를 이해하고 HTTPS가 보안을 보장하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
HTTP
1. 도청 위험: 통신은 암호화되지 않은 일반 텍스트를 사용하므로 내용이 도청될 수 있습니다(제3자가 통신 내용을 알 수 있음)
2. 사칭 위험 : 통신 당사자의 신원이 확인되지 않아 위장될 수 있습니다. 3.
위조 위험: 메시지의 무결성을 입증할 수 없으므로 변조되었을 수 있습니다.
HTTPS
HTTPS 웹사이트를 볼 수 있으며, 브라우저의 주소 표시줄에 잠긴 표시가 나타납니다.
SSL/TLS 프로토콜은 위에서 언급한 HTTP 문제를 해결하기 위해 탄생했습니다. 해결 방법을 살펴보겠습니다.
대칭 암호화
암호화 동일한 비밀 키를 사용하여 복호화하는 방법을 공유 키 암호화, 대칭 키 암호화라고도 합니다.
client_random
및 일련의 암호화 방법을 보냅니다.client_random
和一系列加密方法服务端发送给浏览器
server_random
和加密方法
现有浏览器和服务器有了三个相同的凭证:client_random
、server_random
和加密方法
用加密方法把 client_random
、server_random
两个随机数混合起来,生成秘钥,这个密钥就是浏览器和服务端通信的暗号。
存在的问题:第三方可以在中间获取到client_random
、server_random
서버는 브라우저에 server_random
및 암호화 방법을 보냅니다.
기존 브라우저와 서버에는 세 가지 동일한 자격 증명이 있습니다: client_random
, server_random
및 암호화 방법
암호화 방법을 사용하여 client_random 암호화 , <code>server_random
두 개의 난수를 혼합하여 비밀 키를 생성합니다. 이 키는 브라우저와 서버 간의 통신을 위한 비밀 코드입니다.
기존 문제: 제3자가 client_random
, server_random
과 암호화 방법을 중간에 얻을 수 있습니다. 이 암호화 방법은 동시에 복호화가 가능하므로 중개자가 할 수 있습니다. 암호를 성공적으로 해독하고 데이터를 얻으면 이 암호화 방법을 쉽게 해독할 수 있습니다.
- 비대칭 암호화
- 브라우저는 일련의 암호화 방법을 서버에 보냅니다.
서버는 암호화 방법과 공개 키를 브라우저에 보냅니다.
그런 다음 브라우저는 공개 키를 사용합니다. key to 데이터는 암호화되어 서버로 전송되며, 서버는 데이터를 받아 개인키를 이용해 복호화합니다. 서버가 브라우저에 데이터를 보낼 때, 브라우저는 개인 키를 사용하여 이를 암호화하고, 서버에서 보낸 데이터를 수신하고 공개 키를 사용하여 이를 해독합니다. 기존 문제:
비대칭 암호화는 너무 비효율적입니다. 이는 암호화 및 암호 해독 속도와 사용자가 페이지를 여는 속도에 심각한 영향을 미칩니다.
서버에서 브라우저로 보낸 데이터가 안전하다는 보장은 없습니다 서버의 데이터는 개인 키로만 암호화할 수 있습니다(공개 키를 사용하면 브라우저가 이를 해독할 수 없기 때문입니다). 중개인이 공개 키를 얻으면 서버에서 전송된 데이터를 복호화하고 다시 크랙할 수 있습니다.
HTTPS는 대칭 암호화와 비대칭 암호화의 조합을 사용합니다.
- 브라우저는 client_random과 암호화 방법 목록을 서버로 보냅니다.
- 서버는 이를 수신하고 server_random, 암호화 방법 및 공개 키를 반환합니다.
- 🎜브라우저는 이를 수신한 다음 pre_master라는 또 다른 난수를 생성하고 공개 키로 암호화하여 서버로 전송합니다. (키 조작!)🎜🎜🎜🎜서버는 암호화된 pre_master를 개인키로 복호화합니다. 🎜
이 시점에서 서버와 브라우저는 동일한client_random
、server_random
和 pre_master
을 가지며 서버와 브라우저는 이 세 가지 난수 세트를 사용하여 대칭 비밀 키를 생성합니다. 대칭 비밀 키를 사용하면 양 당사자가 대칭 암호화를 사용하여 데이터를 전송할 수 있습니다.
CA(디지털 인증서)
는 대칭 및 비대칭 방법을 혼합하여 데이터 암호화 전송을 달성합니다. 하지만 여전히 문제는 서버가 해커에 의해 사칭될 수 있다는 것입니다. 이런 방식으로 브라우저는 해커의 서버에 접근하게 되고, 해커는 자신의 서버에 공개키와 개인키를 구현할 수 있게 된다. 그러나 브라우저는 해커의 사이트가 방문하고 있다는 사실을 완전히 알지 못한다.
서버는 자신의 신원을 증명해야 하며, 권위 있는 기관에서 발급한 인증서를 사용해야 합니다. 이 권위 있는 기관은 CA(인증 기관)이며, 발급된 인증서를 디지털 인증서라고 합니다.
브라우저의 경우 디지털 인증서에는 두 가지 기능이 있습니다.
디지털 인증서를 통해 브라우저에 서버의 신원을 증명합니다.
디지털 인증서에는 서버의 공개 키가 포함됩니다
살펴보겠습니다. 디지털 인증서가 없는 HTTPS 요청 프로세스의 경우 디지털 인증서가 포함된 HTTPS 요청 프로세스에서 다음 두 가지 주요 변경 사항이 발생합니다
서버는 공개 키를 브라우저에 직접 반환하지 않고 숫자 인증서를 반환합니다. 공개 키는 디지털 인증서에 포함되어 있습니다.
인증서가 확인된 후 후속 프로세스를 계속할 수 있습니다.
- 참고자료
비대칭 암호화를 이해하기 쉬운 용어로 설명하는 방법은 무엇입니까?
위 내용은 HTTPS는 어떻게 보안을 보장하나요? (상해)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











NginxProxyManager를 사용하여 HTTPS 프로토콜에서 역방향 프록시를 구현하는 방법 최근 몇 년 동안 인터넷의 인기와 응용 프로그램 시나리오의 다양화로 인해 웹 사이트 및 응용 프로그램의 액세스 방법이 점점 더 복잡해졌습니다. 웹사이트 액세스 효율성과 보안을 향상시키기 위해 많은 웹사이트에서는 사용자 요청을 처리하기 위해 역방향 프록시를 사용하기 시작했습니다. HTTPS 프로토콜의 역방향 프록시는 사용자 개인 정보를 보호하고 통신 보안을 보장하는 데 중요한 역할을 합니다. 이 기사에서는 NginxProxy를 사용하는 방법을 소개합니다.

NginxProxyManager를 사용하여 HTTP에서 HTTPS로의 자동 점프를 구현하는 방법 인터넷이 발전하면서 점점 더 많은 웹사이트가 HTTPS 프로토콜을 사용하여 데이터 전송을 암호화하여 데이터 보안과 사용자 개인 정보 보호를 향상시키기 시작했습니다. HTTPS 프로토콜에는 SSL 인증서 지원이 필요하므로 HTTPS 프로토콜 배포 시 특정 기술 지원이 필요합니다. Nginx는 강력하고 일반적으로 사용되는 HTTP 서버 및 역방향 프록시 서버이며 NginxProxy

Nginx는 고성능 웹 서버 소프트웨어이자 강력한 역방향 프록시 서버 및 로드 밸런서입니다. 인터넷의 급속한 발전과 함께 점점 더 많은 웹사이트가 민감한 사용자 데이터를 보호하기 위해 SSL 프로토콜을 사용하기 시작하고 있으며 Nginx도 강력한 SSL 지원을 제공하여 웹 서버의 보안 성능을 더욱 향상시킵니다. 이 글에서는 SSL 프로토콜을 지원하고 웹 서버의 보안 성능을 보호하기 위해 Nginx를 구성하는 방법을 소개합니다. SSL 프로토콜이란 무엇입니까? SSL(보안소켓

https 워크플로에는 클라이언트 시작 요청, 서버 응답, SSL/TLS 핸드셰이크, 데이터 전송 및 클라이언트 측 렌더링과 같은 단계가 포함되어 있으며 이러한 단계를 통해 전송 중 데이터의 보안과 무결성을 보장할 수 있습니다.

구성 단계: 1. SSL 인증서를 얻습니다. 2. SSL 인증서를 구성합니다. 3. Tomcat 구성 파일을 편집합니다. 자세한 소개: 1. 자체 서명된 인증서 또는 인증 기관(예: Let's Encrypt)으로부터 유효한 SSL 인증서 중 하나를 획득해야 합니다. 2. 획득한 SSL 인증서와 개인 키 파일을 서버에 배치하고 이러한 파일이 안전한 위치에 있는지 확인하고, 충분한 권한이 있는 사용자만 액세스할 수 있도록 하세요. 3. Tomcat 구성 파일 등을 편집하세요.

오류가 발생하는 이유는 urllib3의 ProxySchemeUnknown(proxy.scheme) 오류가 일반적으로 지원되지 않는 프록시 프로토콜을 사용하여 발생하기 때문입니다. 이 경우 urllib3은 프록시 서버의 프로토콜 유형을 인식하지 못하므로 네트워크 연결에 프록시를 사용할 수 없습니다. 이 문제를 해결하려면 HTTP 또는 https와 같은 지원되는 프록시 프로토콜을 사용하고 있는지 확인해야 합니다. 해결 방법 이 문제를 해결하려면 HTTP 또는 HTTPS와 같은 지원되는 프록시 프로토콜을 사용하고 있는지 확인해야 합니다. . urllib3의 프록시 매개변수를 설정하여 이 문제를 해결할 수 있습니다. http 프록시를 사용하는 경우 코드 예제는 다음과 같습니다. importurllib3http

오늘날의 인터넷 시대에 보안통신은 필수불가결한 부분이 되었습니다. 특히 HTTPS 통신에서는 보안을 확보하는 방법이 특히 중요합니다. 널리 사용되는 웹 서버 및 역방향 프록시 서버인 Nginx의 방화벽은 HTTPS 보안 통신을 보장하는 데에도 중요한 역할을 할 수 있습니다. 이 기사에서는 다음 측면에서 Nginx 방화벽에 대해 설명합니다. TLS/SSL 암호화 HTTPS 통신의 보안은 주로 TLS/SSL 암호화 기술을 기반으로 하며, 이는 전송 중에 데이터가 전송되는 것을 방지할 수 있습니다.

단방향 확인과 양방향 확인의 차이점: 단방향 확인: 클라이언트가 서버측 인증서를 확인하는 것을 말하며 서버는 클라이언트 인증서를 확인할 필요가 없습니다. 양방향 검증: 클라이언트가 서버측 인증서를 검증하는 것을 말하며, 서버도 CA의 공개키 인증서를 통해 클라이언트 인증서를 검증해야 합니다. 세부 핸드셰이크 프로세스: 단방향 인증 브라우저가 보안 서버에 연결 요청을 보냅니다. 1. 서버는 자신의 인증서와 인증서 관련 정보를 클라이언트 브라우저로 보냅니다. 2. 클라이언트 브라우저는 서버가 보낸 인증서가 자신이 신뢰하는 CA 센터에서 발급된 것인지 확인합니다. 그렇다면 계약을 계속 실행하고 그렇지 않으면 클라이언트의 브라우저는 클라이언트에게 이 인증서를 신뢰할 수 없다고 경고하고 계속해야 하는지 묻는 경고 메시지를 표시합니다. 3. 고객 픽업
