SSL 프로토콜 ③

일반입력 :2002/07/29 00:00

배진석

SSL에 이용되는 암호문SSL 프로토콜은 서버 및 클라이언트 인증, 인증서 전송, 세션키 수립에 필요한 다양한 암호화 알고리즘과 암호문을 지원한다. 서버 및 클라이언트가 지원하는 암호문의 종류는 현재 이용하는 SSL의 버전과 사용자가 선택하는 암호화 수준, SSL을 구현할 수 있는 소프트웨어의 수출금지법 적용여부 등에 따라 각각 달라지게 된다.암호화 알고리즘 목록 :

  • DES(Data Encryption Standard) : 데이터 암호화 표준. 미국 정부에서 이용하는 암호 알고리즘.
  • DSA(Digital Signature Algorithm) : 데이터 서명 알고리즘. 미국 정부에서 이용하는 디지털 인증 표준.
  • KEA(Key Exchange Algorithm) : 키 교환 알고리즘. 미국 정부에서 키 교환시 이용하 알고리즘.
  • MD5 : 리베스트(Rivest)에서 개발된 메시지 압축 알고리즘.
  • RC2 & RC4 : RSA 데이터 시큐리티에서 개발한 리베스트 암호문.
  • RSA : 암호화 및 인증에 필요한 공개키 알고리즘. 리베스트, 샤미르(shamir), 아드레만(Adreman)에서 개발.
  • RSA 키 익스체인지 : RSA 알고리즘에 기반한 SSL을 위한 키 교환 알고리즘.
  • SHA-1 : 안전 해쉬 알고리즘. 미국 정부에서 사용하는 해쉬 함수.
  • 스킵잭(SKIPJACK) : 미국 정부에서 사용하는 FORTEZZA-complaint 하드웨어에서 사용하는 체계화된 대칭키 알고리즘.
  • 트라이플 DES(Triple-DES) : 3번 적용된 DES.
  • KEA나 RSA 키 익스체인지와 같은 키 교환 알고리즘에 따라 클라이언트와 서버가 SSL 세션 수립에 사용할 대칭키를 선택하는 방법이 결정됩니다. 가장 일반적으로 이용되는 SSL 암호문은 RSA 키 익스체인지 방식을 따른다.SSL 2.0과 SSL 3.0 프로토콜은 공통으로 지원하는 암호문을 갖고 있으며 관리자가 클라이언트 및 서버에서 지원가능한 암호문의 종류를 자유롭게 설정할 수 있습니다. 특정 서버와 클라이언트가 SSL 핸드세이크시 정보를 교환하게 되면 양쪽에서는 공통으로 갖고 있는 암호문 중 가장 강력한 수준의 암호문을 SSL 세션에 사용하게 됩니다.SSL을 사용하는 업체에서는 보호할 데이터의 중요성과 암호화 스피드, 수출금지법의 적용여부에 따라 어떤 수준의 암호문을 사용할지를 결정하게 됩니다.물론 상대적으로 취약한 보안성을 가진 40/56비트의 SSL 암호문을 사용하지 않으려는 업체들도 있었지만 미국 정부는 40비트 이상의 암호화를 제공하는 상품에 대한 수출을 규제했기 때문에 미국 이외에서도 강력한 암호화 수준을 이용할 수 있는 글로벌 서버 ID를 제외하면 미국 외 지역에서 128비트의 강력한 암호문을 이용할 수 없었다. 미국의 수출금지법에 대해 자세히 알고 싶으면 Export Restrictions on International Sales를 참조해라.SSL을 이용하는 업체에서 많은 고객을 확보하려면 웹서버에서 이용하고 있는 SSL의 암호화 범위를 확장시킬 수 있어야 한다. 국내 클라이언트나 서버가 국내의 다른 서버나 클라이언트와 거래하고 있다면, 서버나 클라이트는 공통으로 최대한 높은 수준의 암호문을 사용할 것이다. 국내 클라이언트나 서버가 외국의 서버나 클라이언트와 거래하고 있다면 미국 수출금지법하에서 허용되는 암호문을 사용하게 될 것이다(현재는 수출금지법이 폐지됐기 때문에 해당사항 없음).하지만 40비트 암호문은 상대적으로 쉽게 해독될 수 있으므로 제 3자의 정보 도용을 방지하고자 한다면 강력한 암호화 기능을 이용해야 한다.※ 본 내용은 developer.netscape.com에서 참조했다. @