사용자 패스워드를 전송 및 보관하는 방법에 대해 정리하고자 한다.
1. 패스워드 전송
- 사용자 패스워드를 전송할 때는 네트워크에서의 도청과 변조를 방지해야 한다.
- 대표적인 방법으로는 TLS(Transport Layer Security), CSRF(Cross-Site Request Forgery) 토큰 사용 등이 있다.
2. 패스워드 저장
- 서버에서 사용자 패스워드를 해싱하여 저장한다.
- 이때 사용되는 해싱 알고리즘으로는 bcrypt, 솔트(salt) 추가 등이 있다.
(여기서 솔트(salt)란, 암호학 및 보안에서 사용되는 무작위로 생성된 고유한 데이터로 패스워드를 해싱하기 전에 추가하는 값을 의미한다. 즉, 패스워드에 솔트를 추가한 후 해싱한다.)
3. 패스워드 검증
- 사용자가 로그인할 때 입력한 패스워드에 저장된 솔트를 적용해 해시한 값과 데이터베이스의 해시 값을 비교한다.
'IT > CS' 카테고리의 다른 글
[CS] CRDT (0) | 2024.12.11 |
---|---|
[CS] .so 파일과 .a 파일 비교 (1) | 2024.12.11 |
[CS] Base64 인코딩 (1) | 2024.12.11 |
[CS] System Call (1) | 2024.12.09 |
[CS] 예외 처리 (0) | 2024.03.24 |