암호 기초 : 정보 보안 - 암호학

2023. 9. 11. 13:52 · 암호학
목차
  1. 암호 체계 (시스템)
  2. Kerckhoffs’ Principle
  3. 단순 치환 암호 (Simple Substitution Cipher) 알고리즘
  4. 암호 해석 1
  5. 암호 해석 2
  6. 안전한 암호 체계
  7. 암호 해독 (Cryptanalysis)
  8. 암호에서의 혼란과 발산

암호 기초 : 정보 보안 - 암호학

위의 유투브 강의를 듣고 정리하였다.

 

  • Cryptology (암호학) : 많이 사용하는 단어는 아님.
    • cryptography : 암호화(혹은 복호화) 기술
    • cryptanalysis : 암호해독, 암호를 공격하는 입장에서, key 를 모를 때 사용.

 

암호 체계 (시스템)

  • 기본 가정 **
    • 공격자는 전체 암호 체계를 잘 알고 있다.
    • 즉, 암호 알고리즘(cipher)는 비밀이 아니다.
    • 오직 암호화 키 (key) 만이 비밀이다.
  • 위의 기본 가정을 Kerckhoffs(키르히호프)’ Principle 이라고 한다.
  • 이러한 가정을 하는 이유
    • 경험상, 암호 알고리즘(어떻게 암호가 만들어지는가) 이 노출되면 암호화의 기능은 약해진다. (무용지물이 된다)
    • 암호화 알고리즘은 결코 비밀이 유지될 수 없다. (결국 알고리즘은 알려지게 되어있다.)
    • 따라서, 이러한 암호 알고리즘의 약점에 대해 미리 대처하는 것이 더 바람직하다.

 

Kerckhoffs’ Principle

암호 체계는 암호키를 제외하고 암호 체계의 모든 사항이 알려진다고 해도 안전할 수 있어야 한다.

특히, 공격자가 암호화, 복호화 알고리즘을 알아낸다고 하더라도 암호 체계는 안전해야 한다.

encryption (암호화) decryption (복호화) 는 알고리즘이다.

암호화와 복호화를 할 때 key 를 적용시킨다.

 

단순 치환 암호 (Simple Substitution Cipher) 알고리즘

: 가장 기본적인 알고리즘. 위치를 바꾸는 것. → Caesar cipher (시저 암호) 라고도 한다.

 

문자열의 순열에 의한 치환 (Substitution by permutation)

: 알파벳의 순서를 변경하여 치환한다.

 

이 암호 방법은 암호의 역사에서 초기 1000년간 비밀 코드를 만드는 방법으로 사용되었다.

→ 26! 은 지금 기준(2^80) 으로도 꽤 커서 안전하다고 생각되는 범위이기 때문이다.

암호 해석 1

  • 암호문을 해독하는데 아무런 정보가 없을 경우, 전사(전수) 조사 혹은 무차별 대입공격(Exhausted key search or Brute-Force Attack)을 할 수 밖에 없다.
    • 즉, 모든 키에 대해서 시도해보는 것.
  • 가능한 키의 수에 의해 결정됨.
    • 단순 치환 암호에서는 (알파벳이라고 할 때) 26번 시도할 수 있다.
    • 순열에 의한 치환은 2^88 번 시도해야 한다.
  • 키의 수의 크기로 보면 순열에 의한 치환은 안전한 (secure) 암호라고 할 수 있다.

 

암호 해석 2

  • 문자 빈도수 분석 (frequency analysis)
    • 2^88 개 키에 대해 모두 시도할 필요가 없다.
    • 영어 알파벳은 각각 사용되는 빈도수가 다른 통계적 특성을 가지고 있기 때문이다.
    • 영어 알파벳에 사용되는 통계값의 분포

 

 

즉, 모든 경우의 수에 대해 시도해보지 않아도 해독이 가능하다.

  • 빈도수 조사의 역사
    • 빈도수 분석은 처음 아랍인이 발견. 9C Al-Kindi 의 책에서 발견된다.
    • 후 르네상스 기간에 유럽에 소개됨.

 

안전한 암호 체계

  • 안전한 암호체계(secure Cryptosystem)란 무엇인가.
    • 알려진 최선의 공격 방법이 모든 키에 대해 다 시도해보는 것 밖에 없을 때 그 암호 체계는 안전하다 고 한다.
    • 만약, 모든 키에 대해 다 시도해보지 않아도 암호문을 해독할 수 있는 경우, 그 암호 체계는 안전하지 않다(insecure) 고 한다.
  • 따라서 안전한 암호체계란 암호문을 해독하지 못하는 것은 아니다.

 

암호 해독 (Cryptanalysis)

수학적 분석은 빈도수 분석 등이 있다.

최근 기기의 물리적 특성을 이용하는 공격도 있다.

 

물리적 특성 이용 공격 (Implementation Attacks)

  • Side-channel Analysis (대표적 예시)
    • 암호 연산을 하는 프로세서(cpu) 의 전력 소모량을 측정하여 키 값을 구할 수 있다.
    • 신호 처리 기술을 사용하여 전력 사용량 추세를 통해 키를 찾을 수 있다.
  • 전자기 방사(electromagnetic radiation) 량도 키에 대한 정보를 제공할 수 있다.
  • 물리적 특성 이용 공격은 물리적 공격과 관련하여 사용될 수 있다.
    • ex) IoT 장치, firmware 등으로 공격할 수 있다.

RSA 는 공개키 암호화인데, 이걸 구현할 때의 시간에 따른 power 전력량 변화량이다. → 어떤 알고리즘을 사용하는 지 알 수 있다.

 

사회 공학 공격

  • 인간의 활동에 관련된 공격
    • 뇌물 매수, 공갈 협박, 사기, 스파이 등
  • 피싱(Fishing) 은 전형적인 사회 공학적 (social engineering) 공격이다.

 

암호에서의 혼란과 발산

  • 이를 제안한 사람이 Claude Shannon : 정보 이론(Information Theory) 의 창시자
  • 그가 제안한 암호를 만드는 데에 있어 필요한 2가지 개념
    • 혼란 (confusion) : 평문과 암호문 (혹은 키와 암호문의 관계) 의 관계를 모호하게 한다.
    • 발산 (Diffusion) : 평문의 한 기호 (a symbol) 의 영향을 암호문의 여러 기호 (several symbols) 들에 분산시켜서 평문의 통계적 특성을 숨긴다.

 

위에서 “암호화 기술”을 배울 것이다.

 

** 암호를 cipher 라고 한다.

 

이 과정으로 공부할 예정!

'암호학' 카테고리의 다른 글

전자 서명 : 정보 보안 - 암호학  (0) 2024.09.30
메시지 인증 코드 (MAC); 키 해시 (HMAC) : 정보 보안 - 암호학  (0) 2024.09.29
암호 해시 함수 : 정보 보안 - 암호학  (0) 2024.09.29
AES ; 블록 암호 : 정보 보안 - 암호학  (0) 2024.09.27
블록 암호 : 정보 보안 - 암호학  (1) 2024.09.26
  1. 암호 체계 (시스템)
  2. Kerckhoffs’ Principle
  3. 단순 치환 암호 (Simple Substitution Cipher) 알고리즘
  4. 암호 해석 1
  5. 암호 해석 2
  6. 안전한 암호 체계
  7. 암호 해독 (Cryptanalysis)
  8. 암호에서의 혼란과 발산
'암호학' 카테고리의 다른 글
  • 메시지 인증 코드 (MAC); 키 해시 (HMAC) : 정보 보안 - 암호학
  • 암호 해시 함수 : 정보 보안 - 암호학
  • AES ; 블록 암호 : 정보 보안 - 암호학
  • 블록 암호 : 정보 보안 - 암호학
섬섬옥수수
섬섬옥수수
컴공 AI 개발자가 되기 위한 노역입니다
아날로그 인간의 컴공 되기컴공 AI 개발자가 되기 위한 노역입니다
섬섬옥수수
아날로그 인간의 컴공 되기
섬섬옥수수
전체
오늘
어제
  • 분류 전체보기
    • 백준 단계별 코딩 테스트
    • KB 논문 정리
    • Memory network 논문 정리
    • LLM 관련 논문 정리
    • Python 및 Torch 코딩 이모저모
    • Clustering 관련 논문 정리
    • 머신러닝 이모저모
    • 암호학

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 오블완
  • 심재형
  • 인공지능융합기반시스템개론
  • 백준
  • ragas
  • vocabulary expansion
  • 소프트웨어
  • 코딩테스트
  • dependency tree
  • constituency tree
  • eeve
  • e5-v
  • 하드웨어
  • GIT
  • 이화여대
  • 문제풀이
  • PEFT
  • 티스토리챌린지
  • efficient and effective vocabulary expansion towards multilingual large language models
  • CUDA

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.0
섬섬옥수수
암호 기초 : 정보 보안 - 암호학
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.