암호화 정보

보안되지 않은 네트워크 상에서 전송된 민감한 정보는 컴퓨터 침입자에 의해 가로채일 가능성이 있습니다. 따라서, 중요한 재무 정보나 개인 정보를 처리하는 웹 사이트에 대한 액세스 권한을 사용자에게 제공하려는 경우, 암호화로 네트워크 연결을 보호해야 합니다.

암호화의 원리

암호화란 지정된 사람이 아니면 원래의 정보를 알아내기가 아주 어렵게 하기 위해 수학 알고리즘을 적용하여 정보를 부호화하는 작업입니다. 이 작업의 핵심은 키라고 하는 수학적인 값으로서 고유하고 복잡한 방법으로 정보를 부호화하는 과정에서 사용됩니다.

웹 서버에서는 근본적으로 같은 암호화 프로세스를 사용하여 사용자와의 통신 연결을 안전하게 합니다. 안전한 연결을 설정한 후 웹 서버와 사용자의 웹 브라우저에서 정보를 암호화화거나 암호를 풀기 위해 특별한 세션 키를 사용합니다. 예를 들어, 인증된 사용자가 안전한 채널을 필요로 하는 웹 사이트에서 파일을 다운로드하려는 경우 웹 서버에서 세션 키를 사용하여 그 파일 및 관련 HTTP 헤더를 암호화합니다. 암호화된 파일을 받은 후 웹 브라우저에서는 같은 세션 키의 사본을 사용하여 그 파일을 복원합니다.

이 암호화 방법은 안전하기는 하지만 근본적으로 단점이 있습니다. 안전한 연결을 만드는 동안에 세션 키의 사본이 보안이 이루어지지 않은 네트워크를 통해 전송될 수 있습니다. 즉, 컴퓨터 침입자가 마음만 먹으면 그 세션 키를 가로챌 수 있다는 의미가 됩니다. 그러나, 그러한 가능성을 없애기 위해 웹 서버에서는 다른 암호화 방법을 추가로 사용합니다.

공개 키 암호화

웹 서버의 SSL(Secure Sockets Layer) 보안 기능은 공개 키 암호화라고 하는 기법을 사용하여 세션 키를 전송하는 동안 가로채지 못하게 보호합니다. 공개 키 암호화는 개인 키와 공개 키를 사용하며 다음과 같이 작동합니다.

  1. 사용자의 웹 브라우저는 웹 서버와의 보안 통신 연결(https://)을 설정합니다.
  2. 통신 보안에 사용할 암호화의 수준을 사용자의 웹 브라우저와 서버가 함께 결정합니다.
  3. 웹 서버가 브라우저에게 공개 키를 보냅니다.
  4. 웹 브라우저는 세션 키를 만드는 데 사용된 정보를 서버의 공개 키와 함께 암호화하여 서버로 보냅니다.
  5. 서버에서는 개인 키를 사용하여 메시지 암호를 풀고, 세션 키를 만들어 공개 키와 함께 암호화한 다음에 브라우저로 보냅니다.
  6. 웹 서버와 브라우저에서는 모두 세션 키를 사용하여 전송한 데이터를 암호화하거나 암호를 풉니다.
암호화와 암호 해독 다이어그램

개인 키는 통신 연결을 안전하게 유지하는 데 중요한 역할을 수행합니다. 개인 키가 없어지거나 도난 당하지 않도록 모든 예방 조치를 취해야 합니다. 인증서를 플로피 디스크에 복사하여 안전한 곳에 백업해 두는 것이 좋습니다. 마찬가지로 개인 키가 손상되었을 때는 인증 기관에 알리고 웹 서버 인증서 마법사를 사용하여 새로운 인증서 요청을 만든 다음, 서버 인증서를 새로 받으십시오. 자세한 내용은 새 보안 작업 마법사 사용을 참조하십시오.

세션 키 암호화 수준

세션 키의 암호화 수준은 세션 키 파일을 구성하는 이진 비트의 수에 비례합니다. 즉, 세션 키가 가진 비트의 수가 많을수록 보안 수준이 높으며 강제로 디코딩하기가 매우 어려워집니다.

사용자가 웹 서버와 안전하게 통신하려면 브라우저의 암호화 수준, 즉 세션 키 수준을 해당 채널을 통한 통신을 안전하게 할 수 있는 가장 높은 수준으로 조정해야 합니다. 이것은 웹 서버와 사용자의 브라우저에 호환할 수 있는 세션 키 암호화 및 암호 해독 기능이 갖추어져야 함을 의미합니다. 예를 들어, 최소 40비트(기본) 암호화 수준의 세션 키를 요구하도록 웹 서버를 구성하면, 40비트 세션 키를 가진 정보를 처리할 수 있는 웹 브라우저를 사용해야 연결이 보호됩니다.


© 1997-2001 Microsoft Corporation.All rights reserved.