goal
- 인증 (Authentication) 에 대해서 알아본다.
- 암호화, hasing, salting 의 개념을 안다.
- HTTP vs HTTPS 차이점을 이해하다.
- 권한부여 (Authorization), 인증(Authentication) 을 이해한다.
- 쿠키, 세션, 토큰, OAuth를 통해 인증을 구현한다.
- 클라이언트, 서버, 데이터베이스의 전체 동작을 이해한다.
- 회원가입 및 로그인 등의 유저인증을 구현한다.
- 서비스의 보안과 관련된 방법을 탐색 후 원리, 장단점을 이해한다.
(= HTTP over SSL(TLS), HTTP over Secure)
이러한 방식으로 브라우저는 인증된 CA가 발급한 인증서를 이용해서 데이터를 제공하는 안전한 서버를 사용할 수 있도록 사용자를 유도한다.
$ sudo apt install libnss3-tools
$ wget -O mkcert https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-amd64
$ chmod +x mkcert
$ sudo cp mkcert /usr/local/bin/
$ brew install mkcert
# firefox를 사용할 경우 필요에 따라 설치해주세요.
$ brew install nss
$ mkcert -install
$ mkcert -key-file key.pem -cert-file cert.pem localhost 127.0.0.1 ::1