HASH

2024. 6. 27. 22:25Linux*security/Network

반응형

 

 해시는 임의의 데이터로부터 짧은 전자 지문을 만들어 내는 방법이며 단방향 함수로 치환된 해시 값에서 원래의 데이터를 구하는 것이 불가능해야한다.

 



해시 암호화의 특징과 원리

1. 단방향성:
   - 해시 함수는 단방향 함수이며 입력 데이터를 해시 값으로 변환하는 것은 쉽지만, 해시 값으로부터 원래 입력 데이터를 추출하는 것은 사실상 불가능하다.

2. 고정된 크기:
   - 해시 함수는 입력 데이터의 크기와 상관없이 항상 고정된 크기의 해시 값을 출력한다. 예를 들어, SHA-256은 항상 256비트(32바이트) 해시 값을 생성한다.

3. 충돌 저항성:
   - 서로 다른 두 개의 입력 데이터가 같은 해시 값을 갖는 상황을 충돌이라고 한다. 좋은 해시 함수는 이러한 충돌이 발생할 확률을 매우 낮게 만든다.

4. 효율성:
   - 해시 함수는 입력 데이터를 빠르게 해시 값으로 변환할 수 있다.

5. 균등 분포:
   - 해시 값은 입력 데이터에 대해 균등하게 분포된다. 작은 입력 데이터의 변화라도 해시 값에 큰 변화를 일으킨다.

해시 암호화 알고리즘의 종류

1. MD5 (Message Digest Algorithm 5):
   - 128비트 해시 값을 생성한다.
   - 빠르지만, 충돌 취약점으로 인해 보안이 중요한 용도에는 권장되지 않는다.

2. SHA-1 (Secure Hash Algorithm 1):
   - 160비트 해시 값을 생성한다.
   - 충돌 취약점으로 인해 보안이 중요한 용도에는 더 이상 권장되지 않는다.

3. SHA-2:
   - SHA-224, SHA-256, SHA-384, SHA-512 등 여러 변형이 있다.
   - SHA-256은 256비트 해시 값을 생성하며, 현재 많이 사용된다.

4. SHA-3:
   - SHA-2 이후의 표준 해시 함수로, 다양한 해시 길이를 지원한다.

 

 

 

 

 

 

 

해시값 출력 과정

 

 

반응형

'Linux*security > Network' 카테고리의 다른 글

Networking protocols  (0) 2024.07.03
소켓 프로그래밍  (0) 2024.07.02
Triple DES, AES, SEED, ARIA, IDEA  (0) 2024.06.27
보안의 3대 요소  (0) 2024.06.27
비밀키(대칭키), 공유키(비대칭, 공개키)  (0) 2024.06.26