본문 바로가기
CS

ep 06-1.Hash

by L_SU 2022. 12. 18.

Hash와 Hash function

Hash

- 데이터를 다루는 기법 중 하나

- 다양한 길이를 가진 데이터를 고정된 길이를 가진 데이터로 매핑(즉, 변환)한 값.

- 데이터를 검색할 때 사용할 key 와 실제 데이터의 값 value가 한 쌍으로 존재

- key값이 배열의 인덱스로 변한돼 검색과 저장의 평균적 시간 복잡도가 1에 수렴

Hash function

- 해시를 진행하는 함수

 

Why?

-  검색과 저장이 아주 빠르게 진행됨

👉 즉, 효율적으로 데이터를 찾기 위함

 

특징

  • 무결성
    - 데이터가 조금만 달라져도 확연히 달라지기에 무결성을 지키는데 많은 도움을 줌
    ex) aA, aB 둘은 해시 결과 값이 완전히 다른 문자열이 나오게 됨
  • 보안성
    - 복호화가 불가능함
  • 비둘기집 원리
    -해시는 항상 고정된 길이의 문자열을 반환함
    👉 이로 인해 해시 값이 중복될 수 있음, 이 경우 해시 충돌이 발생함
  • 해시레이트
    - 해시의 속도를 의미
    - 해시레이트가 높아져 연산량이 많아질 경우 채굴 난이도가 높아짐

'CS' 카테고리의 다른 글

ep 07-2. 트랜잭션  (0) 2023.01.01
ep 07-1. 정규화  (0) 2023.01.01
ep 05-2. Primary index vs Secondary index /Composite  (0) 2022.12.03
ep 05-1. index  (0) 2022.12.02
ep 04. Blocking/Non-blocking  (0) 2022.11.28