해싱
2023. 4. 9. 15:19ㆍ보안
해싱
- 해싱은 데이터를 암호화하지 않는다.
- 해싱은 모든 크기의 데이터 조각을 취하고 수학 함수를 사용하여 고정 크기의 고유한 해시값으로 해당데이터를 나타내는 단방향 프로세스이다.
- 해시에서 원래 데이터를 계산할 수 없다.
- 각 해시는 고유해야 하므로 해시를 통해 문서가 변경되었는지 확인할 수 있다.
- 이상적으로 해시 함수는 항상 다른입력에 대해 고유한 값을 생성한다. 그렇지 않은 경우 해시 충돌이라고 한다.
- 거의 모든 해싱알고리즘에서 해시충돌이 발생할 수 있지만 SHA-256 과 같은 최신 알고리즘에서는 충돌이 발생하는데 너무 오래걸리므로 기능적으로 불가능하다.
- MD5 및 SHA-1 과 같은 초기 해싱알고리즘은 해시충돌이 발생할 가능성이 더 높다.
해시를 사용하여 데이터 보호
- 해시는 온라인 데이터베이스에 암호를 저장하기위해 널리 사용된다.
- 암호를 해시값으로 저장하면 누군가가 웹사이트의 데이터베이스를 해킹하더라도 비밀번호 해시만 노출된다.
- 공격자는 원래값을 얻기 위해 해시값을 해독할 방법이 없다. 해싱은 단방향 프로세스다.