[논문 리뷰] Smaller Keys for the McEliece Cryptosystem: A Convolutional Variant with GRS Codes
이 논문은 일반화된 리드-소ลม란(GRS) 코드를 사용하는 컨volution형 인코딩을 통해 기존의 McEliece 암호체계를 새롭게 변형하여 공개 키 크기를 크게 줄였지만도 보안성을 유지하는 방법을 제안한다. 기존의 순열 행렬 대신 가중치가 2인 마스킹을 적용하는 다항식 행렬을 사용함으로써 GRS 코드의 대수적 구조를 은폐함으로써 스처 제품 구별자와 같은 알려진 구조적 공격에 저항할 수 있으며, 동일한 보안 수준에서 기존의 클래식한 McEliece보다 최대 10배 작아진 키 크기를 달성한다.
In this paper we present a variant of the McEliece cryptosystem that possesses several interesting properties, including a reduction of the public key for a given security level. In contrast to the classical McEliece cryptosystems, where block codes are used, we propose the use of a convolutional encoder to be part of the public key. The permutation matrix is substituted by a polynomial matrix whose coefficient matrices have columns with weight zero or at least weight two. This allows the use of Generalized Reed-Solomon (GRS) codes which translates into shorter keys for a given security level. Hence, the private key is constituted by a generator matrix of a GRS code and two polynomial matrices containing large parts generated completely at random. In this setting the message is a sequence of messages instead of a single block message and the errors are added throughout the sequence. We discuss possible structural and ISD attacks to this scheme. We conclude presenting the key sizes obtained for different parameters and estimating the computational cost of encryption and decryption process.
연구 동기 및 목표
- 코드 기반 암호에서의 키 크기 문제, 특히 실용적 구현에 있어 여전히 주요 장벽이 되고 있는 McEliece 암호체계의 키 크기 문제를 해결하기 위해.
- GRS 코드가 짧은 키를 가능하게 하는 데 유리하지만, 강력한 대수적 성질로 인해 구조적 공격에 취약하다는 점을 해결하기 위해.
- 컨볼루션 코드의 랜덤성 특성을 활용하여 GRS 코드의 구조를 마스킹함으로써 효율성을 유지하면서도 보안성을 향상시키기 위해.
- 공개 키가 GRS 코드를 다항식 인코더를 통해 변형하여 유도되며, 이때 랜덤 성분을 포함함으로써 구별자 공격에 저항할 수 있도록 설계하기 위해.
- 암호화 및 복호화의 계산 비용을 평가하고, 기존의 코드 기반 암호체계와의 키 크기 및 보안 수준을 비교하기 위해.
제안 방법
- 이 방식은 다항식 컨볼루션 인코더 $ G'(D) = S(D) G P(D) $ 를 사용하며, 여기서 $ G $ 는 GRS 코드의 생성행렬이고, $ S(D) $, $ P(D) $ 는 랜덤 블록과 가중치가 2인 컬럼 마스킹을 가진 다항식 행렬이다.
- 메시지는 시간에 따라 벡터의 스트림으로 전송되며, 전체 시퀀스에 걸쳐 오류가 추가되어 블록 인코딩 대신 컨볼루션 인코딩이 가능해진다.
- $ S(D) $ 와 $ P(D) $ 를 통한 마스킹으로 인해 각 계수 행렬의 컬럼이 가중치 0 또는 최소 2를 가지게 되어, 스처 곱 공격과 같은 구조적 구별자 공격을 방지할 수 있다.
- 비밀 키는 GRS 생성행렬 $ G $ 와 복호화에 사용되는 랜덤 다항식 행렬 $ S(D) $, $ P(D) $ 로 구성된다.
- 복호화 과정은 먼저 다항식 변환의 역행렬을 적용한 후, 베르레크람-마스키 알고리즘과 같은 효율적인 알고리즘을 사용해 GRS 코드를 복호화하는 방식이다.
- 특히, 작은 지지집합을 가지는 명백한 부분코드를 계산할 수 없도록 설계되어 있어, 구조적 공격 및 ISD 유형의 공격에 대한 저항력이 향상된다.
실험 결과
연구 질문
- RQ1GRS 코드의 대수적 구조를 컨볼루션 인코더를 통해 마스킹함으로써 McEliece 암호체계에서 안전하게 사용할 수 있는가?
- RQ2가중치가 2인 마스킹을 가진 다항식 행렬을 사용함으로써 스처 곱 기반의 구별자 공격, 예를 들어 GRS 코드를 대상으로 하는 공격을 방지할 수 있는가?
- RQ3클래식한 또는 블록 코드 변형 대비, GRS 코드와 컨볼루션 인코딩을 조합함으로써 공개 키 크기를 얼마나 줄일 수 있는가?
- RQ4이 새로운 체계에서 암호화 및 복호화의 계산 비용은 얼마이며, 기존의 코드 기반 시스템과 비교해 어떻게 되는가?
- RQ5S(D)와 P(D)에 포함된 랜덤 성분은 보안을 유지하면서도 낮은 무게의 코드워드 취약성을 피하기 위해 효율적으로 구성할 수 있는가?
주요 결과
- 128비트 보안 수준에서 제안된 체계는 공개 키 크기가 114,736비트 (202×142) 로, 고전적 Goppa 코드를 사용하는 클래식한 McEliece의 1,086,259비트보다 약 10배 작다.
- 256비트 보안 수준에서는 공개 키 크기가 1,302,400비트 (220×148) 로, 고전적 McEliece가 $ n=8192 $ 를 사용할 경우 필요한 8,373,911비트보다 크게 작다.
- 정보 집합 복호화(ISD) 공격에 대한 작업량은 202×142 파라미터 세트 기준으로 $ 2^{257.92} $ 로 추정되어 ISD에 대한 강력한 저항력을 보인다.
- S(D)와 P(D)에 포함된 가중치가 2인 마스킹과 랜덤 성분 덕분에 알려진 구조적 공격, 예를 들어 스처 곱 구별자 공격에 저항할 수 있다.
- 컨볼루션 인코딩의 성격으로 인해 암호문 크기가 표준 체계보다 크다. 예를 들어 202×142 파라미터 세트 기준으로 45,248비트이다.
- 더 큰 암호문 크기에도 불구하고 복호화 복잡도는 $ ilde{O}(s n^2 + s^3 k^3) $ 수준으로 관리 가능하며, 시퀀스 길이 $ s $ 가 작은 $ n $ 과 $ k $ 를 통해 영향이 완화된다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.