본문 바로가기
프로그래밍 놀이터/보안

[도서 정리] 61. AES - 보안의 기본

by 돼지왕 왕돼지 2019. 12. 10.
반응형

61. AES - 보안의 기본



-

AES(Advanced Encryption System)는 현재 각 나라의 암호 규격에 의해 이용이 권장되고 있는 공통키 암호 방식이다.

1990년대는 DES(Data Encryption Standard)라는 공통키 암호 방식이 주류였지만, 컴퓨터의 성능 향상과 함께 DES 의 보안 강도(깨지기 어려운 정도)가 불안해지기 시작해서 1999년에 DES 해독에 필요한 시간이 24시간이 안 걸렸다는 점에서 새로운 암호화 방식이 강하게 요구되었고, 그래서 태어난 것이 AES 이다.



-

DES 키의 경우의 수는 2^56이다.

즉, 공격자는 올바른 키를 발견하기 위해 2^56가지의 키를 시험해 볼 필요가 있다. (보통은 평균하여 그 반 정도)





* AES 의 탄생


-

공통키 암호 방식에서는 키의 길이(복잡함)가 보안 강도의 바로미터가 된다.

AES 키의 복잡함은 2^128 이상이다.

DES 를 하루에 해독하는 시스템을 이용한 경우 AES(128)의 해독에는 1000경년(1경=10000조) 걸린다는 계산이 나온다.



-

AES 에서는 기본 128비트 외에도 192비트, 256 비트도 선택할 수 있다.



-

공통키 암호 방식에서는 키가 길면 길수록 안전성은 올라가지만 그만큼 퍼포먼스가 떨어지므로 주의해야 한다.

평소에는 AES(128)만으로도 충분하다.





* 폭넓게 사용되는 AES


-

Wi-Fi 의 암호화 규격인 WPA2 에 사용되고 있다.

또한 ZIP 이나 RAR 와 같은 파일 압축 소프트웨어의 암호화 기능이나 하드디스크 암호화 제품에도 사용되고 있다.

TLS 의 암호화 프로토콜로 AES 가 사용된다.





* 브루트 포스 공격에 의한 키의 해독


-

공격자는 공통키 암호화 방식의 키를 해독하려고 하는 경우 무차별 대입 공격을 가해 키에 사용하는 문자 조합을 하나하나 시험한다.

해독에 필요한 시행 횟수는 평균적으로 전체 조합의 약 반이다.



-

DES(56bit)의 경우 1999년 전용 해독기 + 100만원대의 컴퓨터를 병렬로 연결하여 계산한 결과 22시간 만에 해독되었다.




반응형

댓글