본문 바로가기

Miscellaneous

전송 계층 보안(Transport Layer Security, TLS)

전송 계층 보안(Transport Layer Security, TLS) 과 보안 소켓 레이어(Secure Sockets Layer, SSL)은 암호 규약이다.

이 규약은 TCP/IP 네트워크를 사용하는 통신에 적용되며, 통신 과정에서 전송계층 종단간 보안과 데이터 무결성을 확보 해준다.

이 규약은 웹 브라우징, 전자 메일, 인스턴트 메신저, voice-over-IP(VoIP) 같은 응용 부분에 적용되고 있다.

TLS는 국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF) 표준 규약이다.

-------------------------------------------------------------------------------------------------------------------

TLS는 클라이언트/서버 응용 프로그램이 네트워크로 통신을 하는 과정에서 도청, 간섭, 위조를 방지하기 위해 설계되었다.

또한 암호화를 해서 최종단의 인증, 통신 기밀성을 유지시켜준다.

TLS의 3단계 기본 절차:

1. 지원 가능한 알고리즘 서로 교환

2. 키 교환, 인증

3. 대칭키 암호로 암호화하고 메시지 인증

첫 단계에서 서버와 클라이언트는 암호 스위트(Cipher Suites)를 교환한다. 이 단계에서 키 교환와 인증에 사용될 암호화 방법, 메시지 인증 코드(MAC)가 결정된다. 키 교환과 인증 알고리즘은 공개키 방법을 사용하거나 미리 공유된 키(TLS-PSK)를 사용 할 수도 있다. 메시지 인증 코드들은 HMAC해시 함수로 만든다. SSL에서는 비표준 무작위 함수를 사용한다.


일반적인 알고리즘:

  • 키교환 : RSA, Diffie-Hellman, ECDH, SRP, PSK
  • 인증 : RSA, DSA, ECDSA
  • 대칭키 암호 : RC4, 트리플 DES, AES, IDEA, DES, Camelia, (Old Version SSL - > RC2)
  • 해시함수 : TLS에서는 HMAC-MD5 or HMAC-SHA
                    SSL에서는 MD5와 SHA.(Old Version SSL-> MD2, MD4)


반응형