실시간 암호화 기술
기존의 암호화 방식은 암호화 문서를 수정할 때 복호화 과정이 필요합니다. 하지만, 실시간 암호화 방식은 복호화 과정이 필요없습니다. 아래의 그림처럼 문서를 실시간으로 암호화하여, 암호화 문서를 수정할때에도 복호화는 필요없게 됩니다.![]() |
![]() |
그림 1. 기존 암호화 방식 |
그림2. 실시간 암호화 방식 |
AES 알고리즘
AES는 Advanced Encryption Standard의 약자로 현재 미국의 표준 암호 알고리즘에 대한 공식 명칭입니다.AES 이전에 미국의 표준알고리즘으로는 DES와 3DES가 있었습니다. 이들의 뒤를 잊는 암호 알고리즘이 바로 AES입니다. 1997년 1월2일 미국의 NIST(National Institude of Standard and Technology)에서 AES 선정계획을 공고했고 이를 본 전세계의 많은 암호학자와 연구소에서 암호알고리즘을 개발하여 제출했습니다. 이때 제출된 알고리즘들은 CAST-256, CRYPTION, DEAL, DFC, E2, FROG, HPC, LOK197, MAGENTA, MARS, RC6, Rijndael, SAFER+, Serpent, Twofish 등이 있습니다. 이 중 일부는 암호분석학자들에 의해 문제점이 노출되었고 일부는 성능상의 문제로 제외되어 1999년 4월경 AES후보 알고리즘은 모두 5개 (MARS, RC6, Rijndael, Serpent, and Twofish)로 좁혀지게 됩니다. 이후 컨퍼런스를 거쳐 2000년 10월 Rijndael(리즌댈 또는 라인돌이라고 읽습니다.) 이 AES로 선정되게 됩니다.
Rijndael은 벨기에의 암호학자인 Joan Daemen과 Vincent Rijmen이 개발한 알고리즘으로 DES와 3 DES가 Feistel network 이었던 것과는 달리 substitution permutation network 구조를 가지고 있으며 하드웨어나 소프트웨어적으로 구현했을때 모두 좋은 성능을 보이는 특성을 가지고 있다. 구현이 쉽고 메모리를 적게 소모하는것도 장점으로 뽑히고 있습니다.
Rijndael은 암호알고리즘 분류 상 대칭형암호알고리즘으로 분류됩니다. 대칭형 암호알고리즘에도 두가지 종류가 있는데 Rijndael은 이중에서 Block암호알고리즘 방식이며 128bit 블럭 단위로 암호화를 하고, 사용되는 Key의 사이즈는 128bit, 192bit, 256bit 등이 있다. 라운드 수는 10, 12, 14 라운드를 사용하고 각 라운드마다 SubBytes, ShiftRows, MixColumns, AddRoundKey의 4단계를 거치게 됩니다.
현재 AES의 취약점에 대한 연구가 활발하게 이루어지고 있으며 관련하여 XSL Attack이나 cache timing attack등에 관련된 논문이 발표되었습니다.


