Hash Function, Hash Algorithm   해쉬 함수, 해시 함수, 해쉬 알고리즘, 해시 알고리즘

(2017-12-11)

Hash Value, 해쉬 값, 해시 값

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
정보보호/보안 > [정보보호관리]
[정보보호(기타일반)]
[보안공격]
[암호기술]
[네트워크보안]
[인증]
인증 >   1. 인증(Authentication)
[주요 인증도구]
[사용자 인증]
[메세지 인증]
[인증 프로토콜]
[인증 인프라 (PKI)]
메세지 인증   1. 메세지 인증
  2. 메세지 축약
  3. 메세지 인증 코드
  4. 해쉬 함수

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
정보보호/보안 > [정보보호관리]
[정보보호(기타일반)]
[보안공격]
[암호기술]
[네트워크보안]
[인증]
암호기술 >   1. 암호
  2. 암호 관련 주요 용어
[고전 암호]
[주요 암호화 방식]
[대칭 암호]
[비대칭 암호]
[메세지 인증 & 해쉬 함수]
[암호키 관리]
메세지 인증 & 해쉬 함수   1. 메세지 인증
  2. 해쉬 함수
  3. MD-5/MD-4
  4. SHA

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
정보보호/보안 > [정보보호관리]
[정보보호(기타일반)]
[보안공격]
[암호기술]
[네트워크보안]
[인증]
인증 >   1. 인증(Authentication)
[주요 인증도구]
[사용자 인증]
[메세지 인증]
[인증 프로토콜]
[인증 인프라 (PKI)]
주요 인증도구   1. 디지털 서명
  2. 인증서
  3. 해쉬 함수
  4. 메세지 인증 코드

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램,프로그래밍
[프로그래밍 언어론]
[객체지향]
[자료구조]
[알고리즘]
[자료표현(알파벳/코드)]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
알고리즘 >   1. 알고리즘
  2. 알고리즘 설계
  3. 계산 복잡도
  4. 하노이 탑
[알고리즘 종류]
알고리즘 종류   1. 알고리즘 분류
  2. 탐색 알고리즘
  3. 정렬 알고리즘
  4. 그래프 알고리즘
  5. 해쉬 알고리즘
  6. 해싱 탐색
  7. 최대 최소 구하기
  8. 유클리드 알고리즘

1. 해쉬 함수 (Hash Function)/해쉬 알고리즘 (Hash Algorithm)

  ㅇ 임의 길이의 메세지를 일정 고정 길이의 해쉬 값으로 변환시켜주는 단방향성 함수/알고리즘

  ㅇ [용어의미]
     - 단방향성 (One-way) 
        . 결과값으로는 입력 값을 알 수가 없는 또는 알기가 어려운 성질
     - 해쉬 값 (Hash Value)
        . 단방향성 해쉬 함수의 출력 값
        . 때론, `Fingerprint`,`메세지 다이제스트(Message Digest)` 이라고도 함


2. 해쉬 함수/알고리즘의 주요 응용

  ㅇ 주로, 메세지(중요 정보)의 무결성 확인
  ㅇ 디지털서명의 생성
     - 메세지에 대한 디지털서명이 아니고, 그 해시 값에 대해서 만 디지털 서명을 함
  ㅇ 메세지인증코드의 생성
     - 메세지 내용의 무결성 확인 (변경 검출) 및 메세지 송신자가 진짜인지 인증 (인증 확인)
  ㅇ 일회용 패스워드(OTP)의 생성
  ㅇ 세션 키 도출 
  ㅇ 소프트웨어 배포시 변경 검출


3. 해쉬 함수 표현

  ㅇ 임의의 길이를 가진 메세지를 (입력 : 메세지),  
     일정한 고정 길이의 해쉬 값/다이제스트/축약 으로 (출력 : 해쉬값),  
     변환시켜 그 결과값을 역산할 수 없게하는 단방향성 함수
     

     - 해쉬 함수는 입력 키 이외 별도의 키 가 필요 없음


4. 해쉬 함수의 주요 요구 사항

  ㅇ 임의 길이 메세지가 고정 길이의 해시값을 계산해낼 것
  ㅇ 쉽게 계산이 가능해야 함

  ※ 주요 기본 성질 셋(3)
     - 해시 값으로부터 입력 값을 찾아낼 수 없음 (역상 저항성, 일방향성)
     - 해시 값이 일치할 것 같은 또다른 입력 값을 찾아낼 수 없음 (두번째 역상 저항성)
     - 해시 값이 같은 임의의 두 입력 값을 찾아낼 수 없음 (해시 충돌 저항성)

 
5. 해쉬 알고리즘 (Hash Algorithm) 구현

  ㅇ 임의의 길이의 비트 열을 고정된 길이의 출력 값인 해쉬 코드손실 압축시킴
     - 암호 응용 例) ☞ MD5, SHA 참조

  ㅇ 해쉬 함수 구현 例
     - 나눗셈법 :  h(k) = k mod m
        . 키 값 k를 해쉬테이블 원소 개수 m으로 나눈 나머지를 해쉬값으로 함 
     - 곱셈법
     - 유니버설 해싱법 등

  ㅇ 해쉬값 충돌 상존
     - 계산결과로써 사용가능한 해쉬값 보다 입력 키 값 개수가 더 크므로 충돌 발생이 가능


[메세지 인증] 1. 메세지 인증 2. 메세지 축약 3. 메세지 인증 코드 4. 해쉬 함수
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
      1.   정보보호관리
      2.   정보보호(기타일반)
      3.   보안공격
      4.   암호기술
      5.   네트워크보안
      6.   인증
            1. 인증(Authentication)
        1.   주요 인증도구
        2.   사용자 인증
        3.   메세지 인증
          1.   1. 메세지 인증
              2. 메세지 축약
              3. 메세지 인증 코드
              4. 해쉬 함수
        4.   인증 프로토콜
        5.   인증 인프라 (PKI)
    8.   IT 기타기술
  8.   공업일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록(시험중)     참고문헌