정보 보안 기초
암호에서 사용되는 해시 함수(암호학적 해시 함수)의 성질로 올바른 것은?
- A해시값으로부터 원래 데이터를 개인 키를 사용하면 복원할 수 있다
- B입력 길이에 비례하여 해시값도 길어진다
- C입력이 같으면 반드시 같은 해시값이 되고, 입력이 1비트만 달라도 해시값은 예측할 수 없을 만큼 크게 바뀐다
정답과 해설 보기
정답: C. 입력이 같으면 반드시 같은 해시값이 되고, 입력이 1비트만 달라도 해시값은 예측할 수 없을 만큼 크게 바뀐다
해시 함수는 임의 길이의 데이터로부터 정해진 길이의 값(해시값, 다이제스트)을 계산하는 함수입니다. 예를 들어 SHA-256은 입력 길이와 관계없이 256비트 값을 출력합니다. 같은 입력에서는 반드시 같은 값이 얻어지고, 입력이 조금이라도 다르면 출력은 예측할 수 없을 만큼 크게 바뀝니다. 암호에서 사용하는 해시 함수에는 나아가 해시값으로부터 원래 입력을 구하는 것이 현실적으로 불가능할 것(일방향성, 역상 저항성)과, 같은 해시값이 되는 서로 다른 두 입력을 찾기 어려울 것(충돌 저항성)이 요구됩니다. 해시 함수는 키를 사용하지 않는 계산이며 암호화가 아니므로, 복호화하여 원래대로 되돌릴 수도 없습니다. 변조 검출, 디지털 서명, 비밀번호 저장 등에 사용됩니다.