SHA-256 코드를 분석하기 이전에
SHA-256이 무엇인지 간단히~ 알아보겠다.
SHA-256이란?
입력 메시지를 크기가 512bit인 블록 단위로 나누고
압축함수(c)를 실행하여 256bit의 해시값을 도출하는 해시함수 알고리즘이다.
여기서 IV는 초기벡터로,
첫 번째 메시지 블록(M1)을 압축함수에 실행할 때 사용되는
첫 번째 해시값(H1)이 되어준다.
그렇다면 해시함수는 무엇일까?
임의의 길이를 가진 메시지를 해시함수에 입력하면 256bit와 같은 고정 길이의 해시값을 출력한다.
해시값을 다시 해시함수에 넣기 전인 원래의 메시지로 돌아갈 수 없다는 점이 장점이다.
즉, 암호문(해시값)으로부터 평문(입력값)을 얻을 수 없다. (예측 불가능성)
자세한 내용은 시간이 되면 추후에 글을 쓰도록 하겠다~
- 출처 -
'Security > SHA' 카테고리의 다른 글
[SHA-256] 코드 및 알고리즘 분석 - (5) (0) | 2021.07.16 |
---|---|
[SHA-256] 코드 및 알고리즘 분석 - (4) (0) | 2021.07.14 |
[SHA-256] 코드 및 알고리즘 분석 - (3) (0) | 2021.07.14 |
[SHA-256] 코드 및 알고리즘 분석 - (2) (0) | 2021.07.13 |
[SHA-256] 코드 및 알고리즘 분석 - (1) (0) | 2021.07.12 |