인프런 커뮤니티 질문&답변

SJkim님의 프로필 이미지
SJkim

작성한 질문수

모든 개발자를 위한 HTTP 웹 기본 지식

인증

로그인 인증 과정 문의

작성

·

555

1

안녕하세요, 강의를 듣고 로그인 하는 과정에서의 궁금증이 생겨 질문 남깁니다.

로그인할 때 유저의 id,비밀번호를 body에 넘기고 있는 사이트를 우연히 발견하게 되면서 보안에 굉장히 취약할 거란 생각을 하게 되었고 몇몇 유명 사이트들을 확인해보니 대부분 네트워크탭 payload에 담기지 않는 것을 확인했습니다.
조금 더 찾아보니 세션id를 활용하는 경우 서버에 로그인 요청할 때 authorization 헤더에 base64로 인코딩해서 전송하는 basic authentication 방식이 있는 것을 확인했습니다.

궁금한 것이 제가 찾아본 내용이 실무에서도 사용되고 있는 방식인지 그렇지 않다면 유저정보를 어떤 방식으로 body에 담지않고 서버에 전송할지 있는지 궁금합니다.

답변 1

0

안녕하세요. SJkim님, 공식 서포터즈 David입니다.

일반적으로 클라이언트 단에서 로그인 정보(id, password) 암호화하여 서버로 보냅니다.

로그인 이후 토큰 또는 세션id를 클라이언트쪽 스토리지에 보관한 뒤 헤더(또는 쿠키)를 통해 보내게 됩니다.

감사합니다.

SJkim님의 프로필 이미지
SJkim
질문자

답변 감사합니다. 그런데 제가 궁금한건 실무에서 유저정보를 어떤 방식으로 암호화해서 클라이언트에서 서버로 전송하는지인데 답변 가능할까요?

주로, 공개키 암호화를 사용하여 암호화 합니다.

클라이언트에서는 로그인 페이지 접속시, 로그인 정보를 암호화 할 공개키를 함께 요청합니다.

로그인 정보를 입력 받은 후 입력 받은 로그인 정보를 공개키로 암호화한 후 서버로 전송합니다.

SJkim님의 프로필 이미지
SJkim

작성한 질문수

질문하기