암호화 알고리즘

SOO·2021년 3월 3일
0

1. 양방향 알고리즘

암호화된 암호문을 복호화 할 수 있는 알고리즘

1) 대칭키 (비공개키) 방식

  • 특징: 암복호화에 서로 동일한 키가 사용됨. 따라서 비공개키를 사용
  • 장점: 빠른 속도
  • 단점: 키 배송의 위험성이 존재하여 송신 측에서 수신 측에 암호 키를 전달하는 과정에서 노출우려가 있음
  • 대칭키의 대표적 알고리즘

    • DES (Data Encryption Standard)
      • 1975년 IBM에서 개발. 1979년에 미국 국가 표준 암호 알고리즘으로 지정
      • 블록 암호 기법을 사용. 블록의 단위는 64비트로 평문을 64비트 단위로 암호화를 수행하여 64비트의 암호화 문서를 생성하며, 키 길이는 64비트이지만 패리티 비트가 8비트 추가되어 실제 키 길이(=암호화 강도)는 56비트임
        *** 패리티 비트: 정보 전달 과정에서 오류가 생겼는지를 검사하기 위한 추가적인 비트
      • 구조적인 취약점은 발견되지 않았으나 현재의 컴퓨팅 환경에서는 너무 짧은 길이 때문에 무차별 공격 방식으로 암호를 해독할 수 있기 때문에, 현대의 신규 암호화 문서 생성에는 사용 금지
    • AES (Advanced Encryption Standard)
      • DES 이후 대칭키를 쓰는 블럭 암호. 한국어로 고급 암호화 표준
      • 현재 가장 보편적으로 쓰이는 암호화 방식이며 현 미국 표준 방식
      • 128~256비트 키를 적용할 수 있어 보안성이 뛰어남

2) 비대칭키 (공개키) 방식

  • 특징: 암호화 키와 복호화 키가 구분. 하나의 키는 공개키로 사용
  • 장점: 키 배송의 문제를 근본적으로 차단하여 안전성이 높음
  • 단점: 대칭키(비공개키) 방식에 비해 느린 속도
  • 비대칭키의 대표적 알고리즘

    • RSA
      • 공개키 암호 시스템의 하나로, 두 개의 키를 사용
      • 소인수 분해를 활용한 알고리즘
      • 전자서명이 가능한 최초의 알고리즘

2. 단방향 알고리즘

암호화는 수행하지만 복호화가 불가능한 알고리즘. 해싱(hashing)을 이용해 평문을 암호문으로 암호화 하는 것은 가능하지만 암호문을 평문으로 복호화하는것은 불가능

  • 특징: 암호화 키와 복호화 키가 다름. 주로 Hash 기법을 사용
  • 장점: 키 배송 문제가 발생하지 않음
  • 단점: 현저하게 느린 속도. 때문에 현실적으로는 비대칭형 암호를 이용해 대칭형 암호의 키를 배송하고 실제 암호문은 대칭형 암호를 사용하는 등 상호보완적으로 이용하는 것이 일반적
  • 사용 예시
    패스워드의 경우 단방향 암호로 저장하는 것이 안전함. 암호화된 패스워드가 유출되어도 이를 통해 원래의 패스워드를 복원할 수 없고, 패스워드를 검증할 때에는 입력값을 암호화하여 암호화한 값끼리 비교
  • 암호학적 해시 함수의 종류

    • SHA-256
      • 1993년부터 미국 NSA가 제작하고 미국 국립표준기술연구소(NIST)에서 표준으로 제작한 해쉬 암호 알고리즘
    • SHA-3
      • SHA-2를 대체하기위해 미국 국립표준기술연구소가 2015년 8월에 발표한 암호화 해시 함수
    • MD5
      • 임의의 길이의 값을 입력받아서 128비트 길이의 해시값을 출력하는 알고리즘
      • 단시간 내에 충돌값을 찾아낼 수 있으므로 현재는 안전하지 않음

출처:

0개의 댓글