인증/보안(HTTPS, CA, Hashing, Salt) ✍🏻
HTTPS(HTTP + Secure) : HTTP 프로토콜 내욜을 암호화 하여 보안성이 추가되었다.
HTTP 의 경우 요청에 대한 내용을 암호화 되지 않기 때문에 개인정보 등에 대한 중요한 내용이 노출되어 보안에 취약하다.
하지만 HTTPS의 경우 내용을 암호화 하기때문에 보안에 용이하다.
인증서(Certificate)
CA(Certificate Authority)
로컬을 인증된 발급기관으로 추가해야 한다.
$ mkcert -install
localhost
로 대표되는 로컬 환경에 대한 인증서를 만들려면 다음 명령어를 입력해야 한다.
$ mkcert -key-file key.pem -cert-file cert.pem localhost 127.0.0.1 ::1
이제 옵션으로 추가한 localhost
, 127.0.0.1
(IPv4), ::1
(IPv6)에서 사용할 수 있는 인증서가 완성되었습니다. cert.pem
, key.pem
이라는 파일이 생성된 것을 확인할 수 있다.
여기서 발급받은 key와 cert를 계속 활용하게 된다. 저장 경로를 반드시 확인!!
인증서는 공개키, 그리고 인증기관의 서명을 포함하고 있으므로 공개되어도 상관이 없지만, key.pem의 경우 개인 키이므로 git에 커밋하지 않고, 암호처럼 다루어야 한다.
임의의 문자열에 '임의의 연산'을 적용하여 다른 문자열로 변환하는 것
암호화해야 하는 값에 어떤 '별도의 값'을 추가하여 결과를 변형하는 것
Salt 사용 시 주의 사항