Hello

[정처기 필기] 암호 알고리즘, 공개키, 비밀키, 해시

by 볼빵빵오춘기

암호 알고리즘(Cryptographic Algorithm)

  • 평문을 암호문으로 바꾸고, 암호문을 다시 평문으로 바꿀 때 사용되는 알고리즘을 의미한다.
  • 암호화 : 평문 → 암호문으로 바꾸는 과정
  • 복호화 : 암호문 → 평문으로 바꾸는 과정
  • 암호화 및 복호화 과정에 암호키가 필요하다.

 

공개키(Public Key, 비대칭키) 암호화 기법

  • 암호키와 해독키가 서로 다른 기법으로 키 개수는 2n개가 필요하다.
  • 비대칭키 암호화 기법 또는 공개키(공중키) 암호화 기법이라고도 한다.
  • 키 분배가 비밀키 암호화 기법보다 쉽고, 암호화/복호화 속도가 느리며 알고리즘이 복잡하다.
  • RSA, ELGama 기법 등이 있다.

RSA(Rivest Shamir Adleman)

소인수 분해의 어려움에 기초를 둔 알고리즘이고 전자문서에 대한 인증 및 부인 방지에 활용된다.

 

EIGama

이산대수 문제의 어려움에 기초를 둔 알고리즘

동일한 메시지라도 암호화가 이루어질 때마다 암호문이 변경되고 암호문의 길이가 2배로 늘어나는 특징이 있다.

 

비밀키(Private Key, 대칭키) 암호화 기법

  • 동일한 키로 암호화하고 복호화하는 기법으로 키개수는 N(N-1)/2 개가 필요하다.
  • 대칭키 암호화 기법 또는 개인키 암호화 기법이라고도 한다.
  • 암호화/복호화 속도가 짜르고 알고리즘이 단순하다.
  • 키 분배가 공개키 암호화 기법보다 어렵다.
  • 스트림 방식과 블록 방식으로 분류된다.
    • 스트림 방식 : RC4, A5/1, LSFR, SEAL, WEP, OFB
    • 블록 방식 : DES, AES, ARIA, SEED, IDEA

 

DES(Data Encryption Standard)

  • 70년대 초 IBM이 개발한 알고리즘
  • 16라운드 Feistel 구조를 가진다.
  • 평문을 64비트로 블록화를 하고, 실제 키의 길이는 56비트를 이용한다.
  • 전사 공격(Brute-Force Attack)에 취약하다.

 

AES(Advanced Encryption Standard)

  • DES를 대신하여 새로운 표준이 되었다.
  • 블록 크기는 128비트이고, 키 길이는 128/192/256 비트이다.
  • SPN(Substitution Permutation Network) 구조이다.

 

ARIA

  • 국내 기술로 개발된 암호 알고리즘이다.
  • 경량 환경 및 하드웨어 구현에서의 효율성 향상을 위해 개발되었다.
  • 우리나라 국가 표준으로 지정되었다.
  • 블록 크기와 키 길이가 AES와 동일하다.

 

SEED

  • 국내 기술로 개발된 128비트 블록 암호 알고리즘이다.
  • Feistel 구조이다.
  • 2005년 국제 표준으로 제정되었다.

 

IDEA

  • DES를 대체하기 위해서 스위스에서 개발한 알고리즘이다.
  • 상이한 대수 그룹으로부터의 세 가지 연산을 혼합하는 방식이다.

 

해시(HASH) 암호화 방식

  • 임의의 길이의 메시지를 입력으로 하여 고정된 길이의 출력값으로 변환하는 기법이다.
  • 주어진 원문에서 고정된 길이의 의사난수를 생성하며, 생성된 값을 해시값이라고 한다.
  • 해시 함수라고도 한다.
  • 디지털 서명에 이용되어 데이터 무결성을 제공한다.
  • 블록체인에서 체인 형태로 사용되어 데이터의 신뢰성을 보장한다.
  • SHA, SHA1, SHA256, MD5, RMD160, HAS-160, HAVAL 기법 등이 있다.

Salt

시스템에 저장되는 패스워들은 Hash 또는 암호화 알고리즘의 결과값으로 저장된다.

이 때 암호 공격을 막기위해 똑같은 패스워드들이 다른 암호 값으로 저장되도록 추가되는 값을 의미한다.

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기