본문 바로가기
Java Web/Spring Boot

[Spring Boot] 암호화 처리

by 스응 2023. 4. 22.
728x90
728x90

암호화 처리

  - 단방향 암호화 : 암호화되고 나면 복호화할 수 없음

      → 정보 통신법에서는 단방향 암호화를 지향함

  - 양방향 암호화

 

  - 해싱 처리

    · 값을 특수한 문자열로 암호화

    · 같은 값을 입력하면 동일하게 암호화된 값이 반환됨

    · 다른 값을 입력하면 특수한 문자열이 변경됨

        → 값이 변경되었음을 빠르게 인식할 수 있게 됨

 

  - 예시 코드 : https://young0105.tistory.com/239

 

 


#  build.gradle에 의존성 추가

1
implementation 'org.springframework.security:spring-security-crypto'
cs

 

#  기본 사용 방법

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static void main(String[] args) {
 
    // 기존 비밀번호
    String password = "p1234";
    
    // 암호화 처리 클래스        
    BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
 
    // 암호화된 비밀번호
    String hashedPassword = passwordEncoder.encode(password);
        
    // 기존 값 : p1234
    // 암호화된 값 : $2a$10$fV8IBOltO1ALaFn5FlxpAOmDxlkU0YJ91O3UR3ZdGMqRFrudEqk3Os
        
    // 입력된 값과 암호화된 값이 동일한지 확인
    boolean isMatched = passwordEncoder.matches(password, hashedPassword);
    System.out.println("비밀번호 일치 여부 : " + isMatched);
        
}
cs

 

320x100
반응형

댓글