패스워드 컬럼을 unique 하게 설정하는 부분에서 질문이 있습니다.
334
投稿した質問数 8
안녕하세요! 강의 잘 듣고 있는 학생입니다.
UserEntity.java
@Column(nullable = false, unique = true)
private String encryptedPwd;
이 부분에서 질문이 있는데요.
유저끼리 우연히 같은 암호를 가질 수 있고, 그것을 암호화 한 비밀번호는 같을 수도 있지 않나요 ??
제가 암호화에 대한 지식이 없어서 잘 못 생각한 것일 수도 있지만 의문이 생겨서 질문드려요 😃
------------------------------------------------
추가로 아래 질문에 질문 댓글을 달았는데 확인하기 어려울 수 있으실 것 같아 여기에 링크 달아둡니다.
질문 달아주시면 이 부분은 삭제할게요 !
https://www.inflearn.com/questions/255305
回答 2
1
안녕하세요, 이도원입니다.
올려주신 게시물에 추가 질문이 있었는지 몰랐네요. 죄송합니다. ^^;
말씀하신 것처럼 사용자가 설정하는 암호가 같은 경우도 발생할 수 있습니다. 다만, 강의에서는 사용자의 암호를 암호화하지 않고 그대로(평문, plain text) 저장하는 것이 아니라, 암호화 하여 저장하게 되며, BCryptPasswordEncode를 이용하여 암호화 하는 경우는 BCrypt 해시 함수를 이용해 암ㄹ호를 해시하는 PasswordEncoder입니다. BCrypt 해시 함수는 Blowfish 암호를 기반으로 설계된 암호화 함수로써 현재까지 사용중인 가장 강력한 해시 메커니즘 중 하나입니다. (참고로, 해시 함수란, 입력 값(메시지)를 고정된 길이의 해시 값으로 출력해 주며, 입력 값의 일부만 변경하여도 다른 결과 값을 출력하고, 출력된 결과 값을 토대로 입력값을 유추하기 어렵게 해 줍니다)
따라서, 사용자의 암호가 암호화 되어 저장되는 경우 암호화 된 값이 중복되지 않게 처리 되어 저장됩니다.
감사합니다.
0
다음 강의를 보니까 답이 나와있었네요 😢
BCryptPasswordEncoder에서 랜덤 Salt를 사용하기 때문에 같은 패스워드일지라도 다른 값으로 암호화된다고 이해했습니다.
kafka 업데이트 강의 듣고 시포요
0
91
2
강의 교안
0
80
2
마이크로서비스간 통신 시, 인증 처리
0
87
2
api gateway 에서 인증 처리
0
67
1
섹션 19 질문드립니다
0
60
2
강의 자료 업데이트
0
87
2
부하분산 강의 섹션
0
59
1
강의자료는 어디에서?
0
78
2
강의 자료는 어디서 다운 받을 수 있나요?
0
114
2
전체 사용자 조회시 오류
0
60
1
혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??
0
113
2
학습 방향
0
96
2
카프카 커넥터 사용 목적 문의
0
87
2
kafka 강의
0
109
2
서비스 디스커버리 종류
0
87
2
강의 자료에 대해서 궁금해요
0
119
2
GlobalFilter, LoggingFilter가 동작하지 않습니다.
0
91
2
Kafka Source Connect 버전 에러
0
90
2
소스커넥터는 사용안한 거 맞죠?
0
82
2
강의자료 업데이트 문의
0
97
2
강의에서 BCryptPasswordEncoder 에 역할(5-2)
0
59
1
강의 업데이트 계획이 궁금합니다.
0
115
2
MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)
0
163
2
어떤 것이 업데이트 된 건가요?
0
167
2

