여정의 기록

[컴퓨터보안]암호의 개념 본문

공부중 .../컴퓨터보안

[컴퓨터보안]암호의 개념

Chelsey 2022. 2. 28. 18:18
728x90

암호의 정의

두 사람이 안전하지 않은 채널을 통해 정보를 주고받을 때, 제 3자가 이 정보의 내용을 알 수 없도록 하는 것

평문(plaintest) : 원래의 메시지 -> 암호문(ciphertext) : 코드화된 메시지 -> 암호문(encryption) : 평문을 암호문 한것. -> 복호화(decryption) : 암호문을 평문으로.

 

키(key) : 암호화와 복호화를 위한 가장 중요한 열쇠

암호는 기밀성을 보장하기 위한 필수적인 기술


암호의 역사

과거

- 처음에는 군사, 정치적 목적으로 주로 사용(세계 2차대전 때가 생각난다)

- 컴퓨터와 통신이 결합됨에 따라, 불법 사용자의 봉쇄 또는 데이터의 위조 및 변조를 막는 수단으로 이용

- 최근 인터넷 뱅킹에 사용되는 인증서, 보안 키패드, 소프트웨어의 시리얼 키 , 전자투표에도 점차 널리 이용


고대 암호(기원전)

스테가노그래피

- 실제로 전달하고자 하는 정보 자체를 숨기는 것

- 기원전 BC 480년, 스파르타에서 추방돼 페르시아에 살던 데마라토스가 페르시아의 침략계획 소식을 나무판에 조각 후 밀랍을 발라 스파르타에 보냄 

- 하지만, 엄밀하게는 최초의 암호로 보기 힘듦 (제3자가 키가 없으면 암호를 풀 수 없어야 하므로)

 

두가지 암호 방식 : 전치법, 치환법

전치법(permutation cipher , transposition cipher)

평문에 잇는 문자들의 순서를 바꿈으로써 암호화하는 기법

- 가장 단순한 방식 : 두 문자씩 앞뒤로 섞는 방법

- 스파르타의 봉 암호 : 봉에 종이를 감은 상태에서 평문을 쓴다. 제3자는 어떤 봉인지 모른다.

 

치환법(substitiution cipher)

평문의 문자들을 다른 문자로 치환함으로써 암호화

    비밀 -암호화-> E+3

치환 규칙에 따라 암호화 및 복호화 (치환표 필요, 예를 들어 , A(평문) : C(암호문 문자))

    비밀 -치환표에 따른 암호화-> SM

    SM -치환표에 따른 복호화-> 비밀

시저암호 : 과거 많이 쓰이던 방법, 각 문자를 알파벳 순서로 세번째 뒤 문자로 치환

    CAESAR -암호화-> FDHVDU

    FDHVDU -복호화-> CAESAR

시프트 암호 : 시저암호를 보완, 각 문자를 알파벳 순서로 k번째 뒤 문자로 치환(0 <= k <= 25)


근대 암호

비즈네르 암호

- 시프트 암호를 개선한 새로운 치환법

- 여러 개의 정수값을 키로 이용

ex) k= 3, 8, 0  여러 정수를 키로 사용

   CAESAR -암호화-> F(3자리뒤)I(8자리뒤)E(0자리뒤)V(3자리뒤)I(8자리뒤)R(0자리뒤) 

   주어진 여러 정수 차례대로 사용한다.

 

20세기 초반까지 플레이페러 암호, 힐 암호 등 다양한 암호방식이 등장

20세기 들어 암호에 대한 연구가 활발히 진행

 - 통신기술의 발전, 기계식 계산기에 대한연구

두 차례의 세계대전을 통해 암호설계와 해독에 대한 필요성 증가

 

1949년 섀넌(Shannan)

- 일회성 암호체계(OTP, one-time pad)가 안전함을 (수학적으로) 증명 (규칙성이 없다)

- 암호체계 설계의 두 가지 기본원칙 제시 : 혼돈과 확산

    혼돈(confusion) : 평문과 암호문 사이의 상관관계를 숨김

    확산(diffusion) : 평문의 통계적 성격을 암호문 전반에 확산시켜 숨김


현대 암호

1970년 두 가지 큰 변화 

1. 표준 암호 알고리즘의 등장

- 컴퓨터가 발전하면서, 데이터 보호에 대한 필요성 증가

- 때에 따라 다르게가 아니라 암호 방법을 정해놓자는 플로우

- 1977년 미국 NBS에서 표준 암호 알고리즘인 DES 공표(대칭키 암호 알고리즘)

- 2001년 AES 공표(현재 사용)

 

2. 공개키 암호 알고리즘의 등장 

- 1976년 디피와 헬먼이 공개키 암호 개념 제시

    공개키 암호 : 암호화와 복호화에 서로 다른 키 사용

- 1978년 리베스트, 샤미르, 애들먼이 RSA 공개키 암호 알고리즘 개발

    RSA: 최초로 발명된 암호키이지만 지금도 사용하고있다. 소인수분해 문제에 기반을 둔 대표적인 공개키 암호 알고리즘


대칭키 암호의 개념

암호화와 복호화에 하나의 같은 키를 사용하는 암호 방식

장점 : 암호화와 복호화 속도 굉장히 빠름

단점 : 키 분배(제3자에게 들키지 않을) 문제 존재

DES, AES, IDEA 등 대표적 알고리즘

 

블록 암호

    평문을 고정된 크기의 블록으로 나누고, 각 블록마다 암호화, 블록단위로 암호문을 얻는 대칭키 암호 방식

스트림 암호

    평문과 같은 길이의 키 스트림을 하나 생성, 평문과 키르 비트 단위로 XOR하여 암호문을 얻는 대칭키 암호 방식

 

공개키 암호의 개념

암호화와 복호화에 두 개의 서로 다른 키를 사용하는 암호 방식

공개키 : 누구나 공개키를 이용해 암호화 할 수 있다

개인키 : 오직 자신만 복호화 할 수 있다.

장점 : 키 관리가 쉽다, 키 분배 문제 해결

단점 : 대칭키 암호에 비해 속도가 느림

 

728x90