CS
ep 06-1.Hash
L_SU
2022. 12. 18. 23:01
Hash와 Hash function
Hash
- 데이터를 다루는 기법 중 하나
- 다양한 길이를 가진 데이터를 고정된 길이를 가진 데이터로 매핑(즉, 변환)한 값.
- 데이터를 검색할 때 사용할 key 와 실제 데이터의 값 value가 한 쌍으로 존재
- key값이 배열의 인덱스로 변한돼 검색과 저장의 평균적 시간 복잡도가 1에 수렴
Hash function
- 해시를 진행하는 함수
Why?
- 검색과 저장이 아주 빠르게 진행됨
👉 즉, 효율적으로 데이터를 찾기 위함
특징
- 무결성
- 데이터가 조금만 달라져도 확연히 달라지기에 무결성을 지키는데 많은 도움을 줌
ex) aA, aB 둘은 해시 결과 값이 완전히 다른 문자열이 나오게 됨 - 보안성
- 복호화가 불가능함 - 비둘기집 원리
-해시는 항상 고정된 길이의 문자열을 반환함
👉 이로 인해 해시 값이 중복될 수 있음, 이 경우 해시 충돌이 발생함 - 해시레이트
- 해시의 속도를 의미
- 해시레이트가 높아져 연산량이 많아질 경우 채굴 난이도가 높아짐