일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- body size
- AWS
- Kubernetes
- apollo router
- notification system
- http 413
- 대규모 시스템 설계
- intellij ide
- UnBuffered channel
- GoF 디자인패턴
- System Design
- Infra
- Logrus
- 컴포지트패턴
- Intellij
- gitops
- 배포 파이프라인
- 티스토리챌린지
- m4 pro
- GoF
- go
- 사설 ip
- 오블완
- elasticsearch
- 디자인패턴
- Buffered channel
- 배포 프로세스
- golang
- goland
- 윈도우키보드
Archives
- Today
- Total
Fall in IT.
스프링시큐리티를 사용하여 비밀번호 암호화하기 본문
반응형
안녕하세요.
오늘은 스프링시큐리티(Spring-security)를 사용하여, 비밀번호를 암호화 하는 방법에 대해서 알아보겠습니다.
비밀번호를 암호화하는 암호화 알고리즘의 종류는 다양하지만, 그 중에서도 많이 사용되는 방법으로는 BCrypt와 Pdkdf2가 있습니다.
스프링시큐리티를 사용하여 비밀번호를 암호화하는 방법
- spring-security 에서 제공하는 비밀번호 암호화 모듈을 사용합니다.
public interface PasswordEncoder { String encode(String rawPassword); boolean matches(String rawPassword, String encodedPassword); }
- BCrypt를 사용하여 암호화하는 방법
// Create an encoder with strength 16 BCryptPasswordEncoder encoder = new BCryptPasswordEncoder(16); String result = encoder.encode("myPassword"); assertTrue(encoder.matches("myPassword", result));
- Pbkdf2를 사용하여 암호화하는 방법
// Create an encoder with all the defaults Pbkdf2PasswordEncoder encoder = new Pbkdf2PasswordEncoder(); String result = encoder.encode("myPassword"); assertTrue(encoder.matches("myPassword", result));
※ 위와 같이 암호화를 하게 되면, salt값을 랜덤하게 만들어줘서 같은 비밀번호를 사용하더라도 다른 값으로 데이터베이스에 저장할수있습니다.
참조
- 스프링시큐리티 Reference에 자세히 나와있습니다.
- http://docs.spring.io/spring-security/site/docs/4.1.0.RELEASE/reference/htmlsingle/
반응형
'기타' 카테고리의 다른 글
맥용 인기 터미널 에뮬레이터 iterm2 (0) | 2016.06.21 |
---|---|
클라우드의 기초 개념 (0) | 2016.06.13 |
Visual Studio Code에서 html파일 웹에 실행하는 방법 (1) | 2016.05.20 |
비쥬얼스튜디오코드 설치 및 사용방법 (0) | 2016.05.11 |
Spring @RequestBody 와 @ResponseBody 개념 (0) | 2016.05.08 |
Comments