티스토리 뷰
☘️
사용자의 password를
db에 그대로 넣으면 안 된다.
(현행법상 막았다고 한다.)
상식적으로도 외부에서 접근이 되었는데
암호가 평문으로 모두 입력되어있으면 그대로 보일 것이다.
그리고 많은 이용자들이 비슷한 암호로 여러 서비스에 가입했을 것이니
피해는 엄청날 것이다.
SHA
패스워드의 암호화에 이용된다고 한다.
키를 사용하지 않고 같은 입력에 대하여
같은 출력이 나온다고 한다.
(본래는 무결성체크에 이용)
SHA256
무슨 문자열을 입력해도
같은 길이의 문자열이 나오게 되어있다.(32바이트)
그리고 입력값이 조금만 바뀌어도 출력 값이 매우 많이 바뀌게 되므로
입력값에 대하여 유추하기가 어렵다.
입력값에 대하여 같은 출력값이 나오게 되지만
아주 조그마한 확률로 다른값이 나올 수 있다.
아래 사이트에서 직접 확인해보자.
https://emn178.github.io/online-tools/sha256.html
SHA256 Online
emn178.github.io
Bcrypt
단방향 해시 비밀번호 메커니즘
$2a$10$rLz4XRZQ...
로 이루어지는데
앞에 $2a는 bcrypt의 버전
$10은 키스트레칭을 돌린 횟수라고 한다.
그뒤에는 salt + 인코딩된 암호이다.
반응형
'Java & Kotlin' 카테고리의 다른 글
| sql_mode=only_full_group_by (0) | 2021.08.30 |
|---|---|
| java)linkedList 구현 (0) | 2021.08.13 |
| mybatis mapper 사용기 (0) | 2021.07.31 |
| spring test? (0) | 2021.07.29 |
| JAVA🍄 (0) | 2021.07.29 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 백준 제로 자바
- Spring
- 백준
- jre
- ㅃ
- 프로그래머
- 스타트업
- 개발자채용
- 관계설정
- boot 일대다
- 문제
- JDK8
- 스택
- springboot
- jre11
- JPA
- 자바
- mappedby
- 자사서비스
- java8
- jvm
- 다대일
- 알고리즘
- jre8
- jdk11
- boot
- 백엔드
- JDK
- 코딩테스트
- 백준 제로
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함