Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- StringBuffer
- 그리디 알고리즘
- 주린이
- 다형성
- etf
- 인플레이션
- mco
- 현금흐름표
- 객체지향
- 미국주식
- 배당성장
- 무디스
- S&P500
- 오버라이딩
- 주식
- 자바
- 잉여현금흐름
- 접근제어자
- XLF
- javascript
- 금리인상
- 기업분석
- 알고리즘
- FCF
- 제태크
- 백준
- Java
- Bandit
- Redis
- 프로그래머스
Archives
- Today
- Total
Dukbong
[Hash Algorithm] 해시 길이 정리 (MD5, SHA-1, SHA-256, SHA-512) 본문
반응형
해킹/보안 공부나 인증 시스템 구현 시 자주 접하게 되는 해시 알고리즘의 해시 문자열(16진수)의 길이만 보고 어떤 알고리즘이 사용되었는지 추측할 수 있기 때문에 아래 내용을 정리해두었습니다.
알고리즘 종류 | 비트 수 | 16 진수 길이 | Base 64 길이 |
MD5 | 128 bit | 32 | 22 |
SHA-1 | 160 bit | 40 | 27 |
SHA-256 | 256 bit | 64 | 43 |
SHA-512 | 512 bit | 128 | 86 |
Salt 없는 Hash를 Crack하는 대표적인 방법
1. 사전 공격 (Dictionary Attack)
미리 준비한 일반적으로 많이 쓰이는 비밀번호(평문) 목록을 가지고 공격 시점에서 각 평문을 해시화하여 대상 해시와 비교하는 방식입니다.
- 구현이 단순하고 메모리 사용량이 적습니다.
- 사전에 잘 준비된 리스트일 경우 매우 빠르게 동작합니다.
- 목록에 없는 경우는 절대 찾을 수 없습니다.
2. 무차별 대입 공격 (Brute Force Attack)
가능한 모든 문자 조합을 하나씩 해시화해서 대상 해시와 비교하는 방식입니다.
- 이론적으로 모든 해시를 Crack 할 수 있습니다.
- 시간과 연산 비용이 매우 크기 때문에 사실 상 불가능한 경우가 있습니다.
반응형
'Algorithm' 카테고리의 다른 글
[JAVA] RSA 알고리즘에 대해 쉽게 알아보고 구현해보기 (0) | 2024.12.29 |
---|---|
[Greedy Algorithm] 백준 2217번 : 로프(Java) (1) | 2023.08.04 |
[Greedy Algorithm] 백준 5585번 : 거스름돈 (Java) (0) | 2023.08.04 |
[Greedy Algorithm] 백준 1541번 : 잃어버린 괄호 (Java) (0) | 2023.08.04 |
[Greedy Algorithm] 백준 1931번 : 회의실 배정 (Java) (0) | 2023.08.04 |
Comments