자격증/정보관리기술사

[정보관리기술사 기출] 해쉬 알고리즘 feat. 전자서명

FintechPark 2021. 4. 6. 18:00

해쉬 알고리즘이란?


해쉬 알고리즘 임의 길이의 정보를 입력받아 고정 길이의 암호문(해시값)을 출력하는 암호화 기술이다. 우리가 수학문제를 푼다고 생각해보자.

 

f(x) = y = x^102 + x^23 + x^4 + x + 12

 

f(x)식에서, x에 값을 집어넣으면 y값을 계산하기 쉽지만, y가 무엇인지 안다고 해서 x를 구하기는 쉽지 않다. (아마 102개의 해가 있지 않을까?ㅋㅋ 모르면 문과) 해쉬 알고리즘은 이러한 개념을 활용한 암호화 기술이라 생각하면 된다.

 

해쉬 알고리즘은 아래 네가지 특성이 있다.


특성 설명
압축성 임의 길이의 문자열을 고정 길이의 문자열(해시값)으로 변환
역상저항성 f(x) = y인 x를 찾기 어려운 특성, 단방향 특성을 가짐
제2역상저항성 주어진 x에 대하여 f(x) = f(x')를 만족하는 x'를 찾기 어려운 특성을 사용함, 초기 입력과 다른 입력값 찾기 어려운 특성
충돌저항성 동일한 해시값 생성하는 두 개의 서로 다른 입력 값을 찾기 어려운 특성

 

해쉬 알고리즘의 종류와 보안강도


 

해쉬 알고리즘 종류 설명 특징
MD5 128bit의 출력 해시값 생성 최근 보안용도로 사용되지 않음
SHA-1
(Secure Hash Algorithm)
160bit, 가장 많이 사용, 인터넷 Default 해시 알고리즘 전자서명에 활용
SHA-256 AES 키 길이인 128, 192, 256 비트 대응 국내 보안강도 권고
TIGER 64비트 프로세스 최적화, 192비트로 암호화 알고리즘 64비트 프로세서의 해시
HAVAL MD5 보완, 128~256비트 알고리즘 제시 MD5 단점 보완

 

보안강도 NIST(미국) 안정성 연한
80비트 이상 SHA-1 2010년 까지
112비트 이상 SHA-224/256/384/512 2011년~2030년
(최대 20년)
128비트 이상 SHA-256/384/512 2030년 이후
(최대 30년)
192비트 이상 SHA-384/512
256비트 이상 SHA-512

 

주로 SHA는 IT직 문제에도 빈출되니 알아두도록 하자.

 

 

해쉬 알고리즘의 활용


 

활용사례 내용
소프트웨어 변경 검출 배포 소프트웨어의 불법 변경 여부 점검 로직, CRC -> HASH 발전
패스워드 기초 암호화 PBE(Password Based Encryption)에서 Password와 Salt의 조합을 Hash함수로 암호화 하여 암호화 키로 활용
메시지 인증 코드 네트워크 & 대용량 자료의 송수신 시 무결성 검증 위해 활용
전자 서명 전자 서명 시 Message Digest를 암호화 후 송수신하여 무결성 & 인증을 수행함. 거래의 신속한 처리 가능하게 함

 

전자 서명은 모든 곳에서 빈출되며, 프로세스 또한 정확히 알아두어야 한다. 후에 프로세스를 기술하겠다.

 

 

정보관리기술사 기출 해설