본문 바로가기
IT 이론/정보보호

블록 암호와 해시 암호

by 아이들링 2016. 10. 13.

블록 암호와 해시 암호의 가장 큰 차이는 복호화가 가능하냐 불가능하냐 이다. 암호화 해서 전달은 하되 수신측에서도 내용을 알아야 한다면 블록 암호를 사용하고 그냥 무결성 검증 및 인증 용도로만 사용할 것이라면 해시 암호를 쓰면 된다.

블록 암호
 - 사전에 공유한 비밀키를 이용하여 암호화/복호화한다.
 - Feistel 구조, SPN 구조, 기타 대수적 구조로 구분된다.
 - DES, TDES, IDEA, AES, SEED 등이 있다.

SEED는 국내에서 개발되어 TTA의 인증을 받은 국내 표준이며 국제 표준화가 진행 중이다.
안정성이 높지만 속도가 느리다는 단점이 있다.

해시 암호
 - 일방향성 : 출력값에 대응하는 입력 값을 찾는 것이 계산적으로 불가능하다.
 - 충돌 저항성 : 동일한 출력값을 갖는 입력 값을 찾는 것이 매우 어렵다.
 - MD4, MD5, SHA-1/256/384/514, HAS-160, RIPEMD-160 등이 있다.

MD4는 더이상 쓰이지도 않고 MD5와 SHA-1또한 안정성에 논란이 있다. 얼마전 주요 브라우저에서 SHA-1사용 웹서비스의 접속을 차단 하겠다고 하여 한바탕 시끄러웠다. 현재 진행 중이다. 해독법이 알려진 건 아니고 현대 컴퓨터의 계산 능력을 고려했을때 충돌 저항성이 약하다고 암호학적으로 증명만 되어 있는 정도이다.

댓글0