하다보니
해시 본문
해시란 단방향 암호화 기법으로 해시함수(해시 알고리즘)을 이용하여 고정된 길이의 암호화된 문자열로 바꿔버리는 것을 의미한다.
해시 함수(짧게는 해시)는 임의의 길이를 갖는 임의의 데이터를 고정된 길이의 데이터로 매핑하는 함수를 말한다. 쉽게 말해 아무리 큰 숫자를 넣어도 정해진 크기의 숫자가 나오는 함수이다. 이때 매핑 전 원래 데이터의 값을 키(key), 매핑 후 데이터의 값을 해시값(hash value), 매핑하는 과정을 해싱(hashing)이라고 한다.
이러한 해시 함수들을 적용하여 나온 고정된 길이의 값을 해시값이라고 한다.
해시값 자체를 index로 사용하기 때문에 평균 시간 복잡도가 O(1)로 매우 빠르다.
해시함수는 계산이 복잡하지 않고 키값에 대해 중복없이 해시값을 고르게 만들어 내는 함수가 좋은 함수이다. (충돌이 일어나지 않을수록 좋다.)
'CS 지식' 카테고리의 다른 글
MVC 패턴 (0) | 2022.05.30 |
---|---|
정렬 알고리즘 (0) | 2022.05.29 |
Parameter와 Argument (0) | 2022.05.24 |
API, 라이브러리, 프레임워크 (0) | 2022.01.16 |
unsigned,signed (0) | 2022.01.15 |