[논문 리뷰] A Public Key Block Cipher Based on Multivariate Quadratic Quasigroups
이 논문은 다변수 이차(quasigroup) 구조를 활용하여 빠르고 이항적이며 병렬 처리가 가능한 다변수 이차 포탄함수를 구성하는 데 목적이 있는 새로운 공개키 블록 암호인 MQQ(Multivariate Quadratic Quasigroups)를 제안한다. 이는 기존의 다변수 이차 공개키 암호체계(MPKC)에서 발생하는 알려진 공격을 피하기 위해 저차수 다항식 구조를 피하는 고유한 설계를 통해, 심벌릭 암호 수준의 성능을 달성한다—단일 CPU 코어에서 복호화가 11,000 사이클 이내로 이루어지며, 이는 기존의 다변수 이차 공개키 암호체계에서의 취약성의 핵심이었던 저차수 다항식 구조를 회피함으로써 보다 강력한 보안성을 확보한다.
We have designed a new class of public key algorithms based on quasigroup string transformations using a specific class of quasigroups called multivariate quadratic quasigroups (MQQ). Our public key algorithm is a bijective mapping, it does not perform message expansions and can be used both for encryption and signatures. The public key consist of n quadratic polynomials with n variables where n=140, 160, ... . A particular characteristic of our public key algorithm is that it is very fast and highly parallelizable. More concretely, it has the speed of a typical modern symmetric block cipher - the reason for the phrase "A Public Key Block Cipher" in the title of this paper. Namely the reference C code for the 160-bit variant of the algorithm performs decryption in less than 11,000 cycles (on Intel Core 2 Duo -- using only one processor core), and around 6,000 cycles using two CPU cores and OpenMP 2.0 library. However, implemented in Xilinx Virtex-5 FPGA that is running on 249.4 MHz it achieves decryption throughput of 399 Mbps, and implemented on four Xilinx Virtex-5 chips that are running on 276.7 MHz it achieves encryption throughput of 44.27 Gbps. Compared to fastest RSA implementations on similar FPGA platforms, MQQ algorithm is more than 10,000 times faster.
연구 동기 및 목표
- 대칭 암호 수준의 성능을 갖는 공개키 암호 체계를 설계함으로써 강력한 보안성을 유지한다.
- 기존의 다변수 이차 공개키 암호체계에서 알려진 취약성을 제거하기 위해 저차수 다항식 구조에 의존하지 않도록 한다.
- 쿼지그룹 이론을 활용하여 이항적이며 병렬 처리가 가능한 효율적인 포탄함수를 설계하여 암호화 및 디지털 서명에 활용한다.
- 특히 FPGA 환경에서의 하드웨어 가속을 고려하여 매우 병렬 처리가 가능하고, 실용적인 구현이 가능한 암호 체계를 제공한다.
제안 방법
- 쿼지그룹 문자열 변환을 사용하여 다변수 이차 쿼지그룹(MQQs)을 정의한다. 이는 차수 2 이하인 특수한 쿼지그룹 클래스이다.
- 선형 변환 T와 비선형 쿼지그룹 기반 함수 P를 사용하여 n개의 변수에 대한 n개의 이차 다항식 집합으로 공개 키를 구성한다. 여기서 n은 140 또는 160이다.
- 포탄함수 메커니즘은 쿼지그룹 변환의 가역성에 기반하며, 이는 빠른 복호화 및 서명을 가능하게 한다.
- 시스템은 병렬 처리가 매우 용이하도록 설계되었으며, 성능은 참조 C 코드 및 FPGA 구현을 통해 측정된다.
- 보안은 이전의 MQ 체계에서 발생하는 구조적 취약성—예를 들어, 식별 가능한 저차수 다항식 성분—을 피함으로써 확보된다.
- 선형 대수 기반의 새로운 공격 복구 방법을 분석하였지만, 변수 수에 따라 지수적 복잡도를 가지므로 실용적으로 불가능한 것으로 밝혀졌다.
실험 결과
연구 질문
- RQ1다변수 이차 쿼지그룹을 사용하여 대칭 암호 수준의 성능을 달성하는 공개키 암호 체계를 설계할 수 있는가?
- RQ2쿼지그룹 문자열 변환은 어떻게 사용하여 이항적이며 안전한 다변수 이차 포탄함수를 설계할 수 있는가?
- RQ3MQQ 구조는 왜 다른 다변수 이차 공개키 암호체계에서 알려진 공격, 특히 저차수 다항식 구조를 공격 대상으로 삼는 데에 저항하는가?
- RQ4선형 대수 기반 방법을 사용하여 MQQ 시스템에서 비밀 키를 복구하는 데 필요한 계산 복잡도는 얼마인가?
- RQ5MQQ 구조는 소프트웨어 및 하드웨어, 특히 FPGA 환경에서 효율적으로 구현할 수 있는가?
주요 결과
- 160비트 버전의 MQQ 체계는 단일 인텔 코어 2 듀오 코어에서 복호화에 11,000 사이클 미만을 소비하며, OpenMP를 사용한 이중 코어 환경에선 약 6,000 사이클 수준이다.
- 249.4MHz에서 동작하는 단일 Xilinx Virtex-5 FPGA에서, 이 체계는 399Mbps의 복호화 스루풋을 달성한다.
- 276.7MHz에서 동작하는 네 대의 Xilinx Virtex-5 FPGA를 사용할 경우, 암호화 스루풋은 44.27Gbps에 이를 정도로, 유사한 플랫폼에서 RSA보다 뛰어난 성능을 보인다.
- 유사한 FPGA 플랫폼에서 가장 빠른 RSA 구현보다도 MQQ 체계는 10,000배 이상 빠르다.
- 공격자가 코디멘션 k인 부분공간을 식별하는 데 기반한 공격은 공간 S의 모든 2^n 원소를 검사해야 하므로, 큰 n에 대해 계산적으로 불가능하며, 이는 체계의 보안성을 검증한다.
- 식별 가능한 저차수 다항식 성분을 노출하지 않는 다량의 MQQ 클래스를 사용함으로써, 이전의 MQ 체계에서 발생하는 구조적 결함을 피하고 있다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.