암호학적으로 해시를 안전하게 설계하기 위해서는 크게 3가지 조건이 필요하다.
이를 해시의 3가지 성질이라 한다.
제 1역상 저항성(pre-image resistance)
- 주어진 output 값으로 원래의 input을 알아내기 어려워야 한다.
- 주어진 해시값 y로부터 $h(x)=y$를 만족하는 x를 찾는 것이 어려워야 함을 의미한다.
제 2역상 저항성(second pre-image resistance)
- 동일한 output을 가지는 input이외의 input'을 찾기 어려워야 한다.
- 해시함수 h와 x값이 주어졌을 때 동일한 y값을 내는 x`을 찾기 어려워야 한다.
충돌 저항성(collision resistance)
- 서로 다른 입력 값을 해시했을 때 같은 output이 나오기 어려워야 한다.
- 해시함수 h가 주어졌을 때 동일한 y값을 내는 $(x, x')$ 쌍을 찾기 어려워야 한다.
한마디로 말해 차례대로 $x, x', (x,x')$을 찾기 어려워야 한다.
'Computer Science > 사이버 보안' 카테고리의 다른 글
[암호학] Diffie Hellman 키 교환 프로토콜 (0) | 2021.09.29 |
---|---|
[암호학] 영지식 증명의 조건 (0) | 2021.09.29 |
[암호학] Elgamal 암호 알고리즘과 취약점 (0) | 2021.09.29 |
[암호학] RSA 알고리즘과 선택암호문공격(CCA) (0) | 2021.09.29 |
[암호학] 현대 암호 (블록 암호 운용 방식) (0) | 2021.09.29 |