일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바스크립트
- 자바
- 알고리즘
- 인프콘2023
- 클래스101
- 프로젝트
- JS
- 일상을 여행처럼
- 우선순위설정
- 프리온보딩
- PM
- 커리큘럼기획
- 프로그래머스
- PM스쿨
- ChatGPT
- 교육 운영
- 인프랩
- 전세대출후기
- jsp
- java
- 데이터 분석
- 1주차
- PO
- 회고
- 커뮤니케이션\
- 항해99
- 인생공략집
- HTTP
- 원티드
- 제로베이스
- Today
- Total
HANA -J
프로젝트 DAY3회원가입시 비밀번호 해싱_JSP 본문
>간단한 정리
- 해싱과 암호화는 일상에서 어느 정도 통용되지만 암호학적으로 봤을 때는 차이가 있다.
해싱 : 단방향, 복호화 불가능
암호화 : 양방향, 복호화 가능
- 단방향 해시함수(One-Way Hash Function)
어떤 수학적 연산 또는 알고리즘에 의해 원본 데이터를 매핑시켜 완전히 다른 암호화된 데이터로 변환시키는 것을 의미한다. 이러한 변환을 해시라고 하며, 해시에 의해 암호화된 데이터를 다이제스트라고 한다.

-단방향 해시함수의 단점
1. 동일한 데이터는 동일한 다이제스트를 갖는다.
2. 무차별 대입 공격에 취약하다.
-단방향 해시 함수 보완
1. 해시함수 여러 번 수행하기

2. 솔트
- 해시함수를 수행하기 전에 원문에 임의의 문자열을 덧붙이는 것.
- 사용자마다 다른 Salt를 사용한다면 같은 비밀번호를 사용하는 다른 사용 자는 비교적 안전하다.
- 가장 이상적인 솔트는 길이 32비트 이상 , 암호학적으로 안전한 난수 생성을 사용하는 것.

출처 : https://st-lab.tistory.com/100
패스워드의 암호화와 저장 - Hash(해시)와 Salt(솔트)
'보안은 그 어느 시스템의 정보보다 가장 중요하며 가장 안전해야 하는 것이다' 필자가 "프로그래머로써 가장 중요하게 생각해야 할 것 하나만 뽑는다면?" 이라는 질문이 들어온다면 위와 같이
st-lab.tistory.com
여기서 공부하고 제 식대로 정리한 부분이기 때문에 가서 공부하세요

> JSP코드로 작성 (자세하게 보기 원하시면 => https://github.com/hana-j/Shop_MVC2/tree/master/src )


'기록' 카테고리의 다른 글
프로젝트 DAY11 (0) | 2021.08.12 |
---|---|
Git 잘모르고 사용하다가 프로젝트 날릴 뻔 (0) | 2021.08.11 |
프로젝트 DAY4 (0) | 2021.08.06 |
프로젝트 DAY2 (0) | 2021.08.03 |
8월 첫째주를 맞이하며 (0) | 2021.08.02 |