해시함수는 임의의 길이를 가지는 데이터를 고정된 길이의 데이터로 매핑하는 단방향 함수를 말한다.
단방향 함수 : input data가 output data로 매핑될 수는 있지만 output data가 input data로 역방향 매핑 할 수는 없다는 의미를 가진다.
가능 : input output
불가능 : intput output
위의 그림을 보면 keys에 해당하는 것들이 input data. hash function이 input data에 해당하는 key들의 값을 output인 hashses에 매핑해주는 단방향 함수다. 단방향 함수이므로 해시함수를 통해 keys를 hashes에 매핑할 수 있지만, hashes에서 keys로 역방향 매핑하는 것은 불가능하다.
가능 : keys hashes
불가능 : keys hashes
해시테이블 :
탐색 알고리즘 중 하나
암호화
SHA
해싱을 통해 입력 데이터를 hash로 변환
데이터 압축
임의의 길이 데이터를 정해진 길이 데이터로 매핑
매핑된 길이로 데이터들을 서로 비교할 수 있음