핸드셰이킹

(핸드셰이크에서 넘어옴)

핸드셰이킹(handshaking), 주고받기[1]정보기술전기통신 및 관련 분야에서 채널에 대한 정상적인 통신이 시작되기 전에 두 개의 실체 간에 확립된 통신 채널의 변수를 동적으로 설정하는 자동화된 협상 과정이다. 채널의 물리적인 확립이 잇따르며, 정상적인 정보 전송 이전에 이루어진다.

TCP 3방향 핸드셰이크

편집
 
3방향 핸드셰이킹의 예.

정상적인 TCP 연결을 수립하려면 3가지 단계가 필요하다:

  1. 최초의 호스트(Alice)가 두 번째 호스트(Bob)에 SYN(동기화) 메시지를 보낸다. 이 메시지에는 자체 시퀀스 번호 x가 있으며, 이것을 Bob이 받는다.
  2. Bob은 SYN-ACK 메시지와 함께 응답한다. 이 메시지는 자체 시퀀스 번호 y와 응답 번호 x+1을 포함하며, Alice가 이를 받는다.
  3. Alice는 응답 메시지와 함께 응답한다. 이 메시지는 응답 번호 y+1이 포함되며 Bob이 이것을 받지만 이에 응답할 필요는 없다.

SMTP(간이 우편 전송 프로토콜)는 이메일 전송을 위한 주요 인터넷 표준이다. 인증, 암호화, 최대 메시지 크기를 협상하기 위한 핸드셰이킹을 포함하고 있다.

TLS 핸드셰이크

편집

전송 계층 보안(SSL 또는 TLS) 연결이 시작되면 레코드는 핸드셰이크 메시징 프로토콜(콘텐츠 타입 22)인 "control" 프로토콜을 감싼다. 이 프로토콜을 사용하여 TLS에 의한 실제 애플리케이션 데이터 교환을 위해 양측에 필요한 모든 정보를 교환한다.

이 프로토콜은 세션의 보안 특성을 협상하기 위해 사용된다.(RFC 5246, p. 37)[2]

WPA2 무선

편집

무선을 위한 WPA2 표준IEEE 802.11i-2004에 정의된 4방향 핸드셰이크를 사용한다.

각주

편집
  1. “주고받기”. IT용어사전. 2017년 5월 18일에 확인함. 
  2. The Transport Layer Security (TLS) Protocol, version 1.2. IETF. August 2008. RFC 5246. https://tools.ietf.org/html/rfc5246.