암호학에서 “해시(hash)”는, 입력 데이터가 조금만 달라져도 출력이 완전히 달라지는, 일방향 함수다. 이렇게 민감한 변화 덕분에 해시는 무결성 검증이나 데이터 위변조 감지 등의 용도로 널리 사용된다. 하지만 만약 입력값의 경우의 수가 유한하고 미리 알 수 있다면, 해시를 단순 비교만으로는 안전하지 않을 수 있다. 이럴 때 사용되는 것이 바로 Rainbow table 기법이다. 해시 함수의 기본 성질해시는 보통 다음과 같은 성질을 가진다: 입력이 단 한 비트만 달라져도 출력 전체가 크게 바뀐다 (눈사태 효과, avalanche effect)같은 입력은 같은 해시를 내보낸다 (결정적)그러나 해시만 보고 원래 입력을 되찾는 것은 계산상 어렵다 (단방향 함수) 이 특성 덕분에, 해시는 파일 무결성 검..