8.1 인증이란?

컴퓨터는 모니터 앞에 앉아 있는 사람이 누구인지 알 수 없다. 게다가 네트워크 저편에 누가 있는지 알 수가 없다. 그래서 서버에 엑세스하고 있는 사람이 누군지 알려면 상대방 클라이언트에 이름을 알려달라고 해야 한다.

다만, 엑세스하고 있는 쪽이 “김유빈"이라고 이름을 밝혀도, 이것이 정말인지는 알 수가 없다. 시스템에 엑세스하는 권한을 가진 “김유빈" 본인인지 아닌지를 확인하기 위해서는 [등록된 본인만이 알고 있는 정보] 나 [등록한 본인만이 알고 있는 정보] 등으로 확인해야 한다.

이러한 정보에는 주로 다음과 같은 것이 사용되고 있다.

단, 상대가 가짜라 하더라도 본인 확인을 하기 위한 정보를 제시할 수 있다면 컴퓨터는 본인으로 인식해 버린다. 그래서 패스워드 등의 정보는 타인에게 알려지지 않게 하고 더욱이 쉽게 추측할 수 없도록 해야 한다.

HTTP 에서 사용하는 인증 방법

HTTP/1.1 에서 이용할 수 있는 인증 방식에는 다음과 같은 것이 있다.

이번 장에서는 설명하지 않지만 이 밖에도 통합 Windows 인증(Kerberos 인증, NTLM 인증) 등이 있다.

8.2 BASIC 인증

BASIC 인증은 HTTP/1.0 에 구현된 인증 방식으로 현재에도 일부 사용되고 있다. BASIC 인증웹 서버와 대응하고 있는 클라이언트 사이에서 이루어지는 인증 방식이다.

8.2.1 BASIC 인증 수순