해시 알고리즘 SHA-256과 SHA-512 차이

DB에 저장하는 비밀번호는 일반적으로 평문으로 저장하지 않고 해싱하여 알아볼 수 없도록 저장합니다. 가장 널리 사용되는 알고리즘은 아직까진 sha256이 아닐까 체감합니다.

sha256은 해시 값의 길이가 256비트 입니다. 어떤 값을 넣어도 동일한 길이(64자)의 값을 생성합니다.

hello를 sha256으로 해시하면 아래와 같습니다.

2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

sha512는 sha256보다 해시 값의 길이가 두 배로 늘어난 512비트입니다. 어떤 값을 넣어도 동일한 길이(128자)의 값을 생성합니다.

hello를 sha512로 해시하면 아래와 같습니다.

9b71d224bd62f3785d96d46ad3ea3d73319b40502e8fcd14d9382dd0c49a54da
a8337c3dfe5a7303a4dbe3a753a8c159df42bc57f5d014a4e27feca270c9695d

sha256과 sha512는 공통점을 가지고 있습니다.

둘 다 입력 데이터를 고정 길이의 해시 값으로 변환하는데 사용됩니다. 블록 크기가 일정합니다. 같은 SHA-2(Secure Hash Algorithm 2) 계열의 해시 함수입니다.

sha256과 sha512의 차이점도 있습니다.

해시 값의 길이가 각각 256비트와 512비트로 다릅니다. 해시 값의 길이가 길수록 더 안전하기 때문에 보안성은 sha512가 더 높다고 볼 수 있을 거 같습니다.

댓글 남기기