암호 알고리즘 AES-GCM-SIV 최적화 작업 소개
![thumbnail](https://images.nomadterrace.com/articles/835fd670-cbcf-11ed-82da-0a58a9feac02.png)
- AES-GCM-SIV 소개
- AES-GCM-SIV은 AES-GCM 운영 모드의 개선된 알고리즘이다.
- AES 알고리즘을 내부에서 사용하여 안전성이 높고, 논스 재사용 문제에 내성이 있다.
- 암/복호화와 인증에 대해 AES 알고리즘을 사용하기 때문에 성능이 떨어질 수 있으며, 데이터를 스트림 형태로 처리하지 못하는 단점이 있다.
- 최적화 과정
- AES-GCM-SIV 알고리즘 내부에서 사용하는 암호화 과정과 데이터 인증 과정을 최적화 대상으로 선정하였다.
- 키 확장 부분은 룩업 테이블 방식을 사용하여 최적화하였다.
- 연산 부분은 AES 명령어를 이용하여 최적화하였다.
- 최적화 결과 비교
- 인증 태그 생성 부분은 데이터 크기에 따라 최적화 효과가 달라진다.
- 암호화 부분은 데이터 크기에 상관 없이 같은 수치를 보여준다.
- 그 외 개선 사항 및 장점
- 내장 함수를 이용한 구현으로 가독성을 높였다.
- AES 명령어를 이용한 구현으로 부 채널 공격 내성을 확보하였다.
- 유지 보수 및 참고 문헌
- 내장 함수로 구현하여 유지 보수를 용이하게 하였다.
- 참고 문헌: AES-GCM-SIV [1], 룩업 테이블 방식 [7]