반응형
12. 암호 - 보안의 기본 |
* 암호란?
-
암호는 어떤 데이터를 외부인은 간단히 읽을 수 없도록 하기 위한 수단 중 하나이다.
-
평문을 외부인만 읽을 수 없는 상태로 만드는 것을 암호화라고 하며, 암호화된 데이터를 원래의 누구나 읽을 수 있는 데이터로 되돌리는 것을 복호화라고 한다.
암호화를 하려면 암호 알고리즘과 키가 필요하다.
암호 알고리즘이란 암호의 구조를 말한다.
* 공통키 암호화 공개키 암호
-
암호에는 크게 공통키 암호(symmetric-key cryptography)와 공개키 암호(public-key cryptography)가 있다.
공통키 암호에서는 데이터의 암호화와 복호화에 똑같은 키를 사용한다.
공개키 암호에서는 데이터를 압호화할 때와 복호화할 때 서로 다른 키를 사용한다.
* 암호는 반드시 풀린다
-
어떤 암호든 시간을 들여 모든 키를 조합하여 시험하면 언젠가는 반드시 풀린다.
하지만 현재 사용되는 암호의 모든 조합을 시험하려면 방대한 시간과 데이터가 필요하기 때문에 그렇게 간단히 풀리지는 않는다.
예를 들어 키의 길이가 128bit 인 AES(Advanced Encryption Standard)를 풀기 위해서는 몇 조 페타바이트의 데이터량이 필요하다고 한다.
반응형
'프로그래밍 놀이터 > 보안' 카테고리의 다른 글
[도서 정리] 14. 하드닝(Hardening) - 보안의 기본 (0) | 2019.10.15 |
---|---|
[도서 정리] 13. 해시(Hash) - 보안의 기본 (0) | 2019.10.14 |
[도서 정리] 11. 인증과 인가 - 보안의 기본 (0) | 2019.10.12 |
[도서 정리] 10. 보안 사고 대응의 4단계 - 보안의 기본 (0) | 2019.10.11 |
[도서 정리] 09. 보안 폴리시 - 보안의 기본 (0) | 2019.10.10 |
댓글