더북(TheBook)

나쁜 사람들 손에 넘어가더라도 데이터의 비밀을 지키고자 보안 소프트웨어는 암호화 키(encryption key)를 사용한다. 그림 3-1처럼 암호화 알고리즘의 일부로서 암호화 키를 평문에 적용해 도무지 알아볼 수 없는 암호문으로 변환할 수 있다. 이 암호문을 동일한 알고리즘과 키로 복호화하면 원래의 평문으로 다시 변환할 수 있다. 이때 이 키를 여러분과 여러분의 친구만 가지고 있다면 중간에 다른 사람이 암호문을 가로챈다고 해도 원래의 평문을 알아낼 수 없다.

▲ 그림 3-1 암/복호화 키가 동일한 대칭 키 암호화 방식으로, 평문의 내용을 암/복호화하기 위한 공개/개인 키 쌍

 

원격 서버에 로그인할 때 여러분이 하는 일은 그저 세션 정보를 담은 데이터 패킷을 두 컴퓨터 간에 왔다 갔다 하게 만드는 것이다. 안전한(secure) 통신의 비결은 이 패킷들을 전송하기 직전에 암호화하고 상대방은 받는 즉시 복호화하는 것이다. SSH 네트워크 프로토콜은 이 작업을 아주 빠르게 그리고 눈에 띄지 않게 수행하므로 기존에 텔넷을 사용하는 데 익숙한 사람들도 별다른 차이를 느끼지 못한다.

SSH는 1990년대에 유닉스 계열 OS에서 원격 로그인할 때 전송되는 데이터를 안전하게 암호화하려고 만들어졌다. 이 프로토콜을 구현한 OpenSSH는 인기가 아주 많아서 마이크로소프트에서도 근래에는 윈도우 OS에 OpenSSH를 내장하기 시작했다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.