목차
1. 서론
1.1 연구 목적 및 필요성
1.2 연구사
2. 이론적 배경
2.1 현대암호 알고리즘의 구조
2.1.1 대칭키암호
2.1.2 공개키암호
2.2 현대 암호
2.3 AES의 역사
3. AES알고리즘에서의 대수적 성질
3.1 행렬의 곱셈
3.2 XOR연산
3.3 아핀 변환
3.4 GF에서의 연산
4. AES의 구조
4.1 SubBytes
4.2 ShiftRows
4.3 Mixcoulums
4.4 AddRoundKey
4.5 KeyExpension
5. C++을 사용한 가속 효율성 분석
6. 결론
7. 참고문헌
본문내용
최근 우리 사회가 고도의 정보화 사회로 발전해가면서 많은 정보가 디지털화되어 인터넷상에서 저장 및 교류가 일어나고 있다. 이에 따라 정보보호의 필요성이 대두되었고, 다양한 보안 공격으로부터 정보를 보호하기 위한 수단으로 암호화가 사용되고 있다. 또한 암호화는 최근의 정보 유통에 있어서 의도적 편취나 정보변경을 차단하기 위한 필수적인 보안절차가 되었다. 최근의 관련 연구는 암호화의 소재별 성능이나 암호화 자료의 안전성에 기초한 연구가 진행되고 있다. 특히, 암호화에 수반되는 실행시간과 자원사용량을 무선 환경의 이동 단말기에 적합한 수준으로 최소화하기 위한 다양한 하드웨어 구현 방법과 성능 분석에 대해 연구되고 있다.
AES는 가장 널리 사용되고 있는 대표적인 대칭키 암호 시스템인 DES를 대체할 새로운 대칭키 암호 알고리즘 표준이다. AES 알고리즘은 128 비트의 고정된 블록크기에 대해 암호 키 길이에 따라 AES-128, AES-192, AES-256 로 구분되며 이 세가지 키는 응용 분야에 따라 선택적으로 구현된다. AES는 보안성 , 효율성, 융통성의 동작 특성을 가지고 있다. 또한 AES 알고리즘으로 채택된 Rijndael은 소프트웨어 구현, 스마트 카드 구현, 대규모 집적회로 평가를 통해, 가장 적합한 대칭키 암호 알고리즘으로 평가를 받았다. AES는 알려진 모든 보안 공격에 강하고 다양한 응용 분야에서의 속도와 하드웨어적 구현에서 장점을 가지고 있기 때문에, 대칭 암호 알고리즘은 필요한 정보 보안 분야에 응용될 것이다. 이에 본 논문의 1장에서는 AES의 고속 구현에 관한 기존 연구를 살펴보고, 2장과 3장에서는 각각 AES알고리즘을 구현하기 위한 이론적 배경에 대해 살펴본다. 4장에서는 AES의 구조, 5장에서는 C++을 통해 구현한 알고리즘의 가속 효율성 분석, 6장의 결론으로 구성되어 있다. 이번 연구를 통해 하드웨어적 안전성과 효율성을 위해 고속화된 AES 알고리즘을 제시한다.
참고 자료
조욱래, 신경욱. (2018). CIOS 몽고메리 모듈러 곱셈 알고리즘 기반 Scalable RSA 공개키 암호 프로세서. 한국정보통신학회논문지, 22(1), 100-108.
심재훈, 강재석, 김현수, 유수봉, 김종호, 강민섭. (2015). 개선된 S-Box 기반 AES 암호 프로세서 설계. 대한전자공학회 학술대회, , 430-433.
정창호, 박일환. (2008). 64-비트 프로세서에서 AES 고속 구현. 정보보호학회논문지, 18(6A), 51-61.
김상민, 장태민, 김현수, 강민섭. (2014). Pipeline 기법을 이용한 고속 AES 암호 프로세서 설계. 보안공학연구논문지, 11(2), 145-154.
오주영, 서진형. (2010). AES 암호화 알고리즘의 실험적 분석. 한국정보전자통신기술학회 논문지, 3(2), 58-63.
KISA, 『암호의 역사』, KISA, https://seed.kisa.or.kr/iwt/ko/intro/EgovHistory.do, 2018-11-09
『훤히 보이는 정보보호 – 블록 암호』, 네이버 지식백과, https://terms.naver.com/entry.nhn?docId=3432485&cid=58445&categoryId=58445, 2018-11-09
김대수, 선형대수학, 생능출판사, p50~70
성현경. (2016). 유한체 GF(p<SUP>m</SUP>)상의 고속 병렬 승산기의 설계. 한국정보기술학회논문지, 14(5), 17-24.