Skip to main content
QUICK REVIEW

[논문 리뷰] Cryptanalysis of Two McEliece Cryptosystems Based on Quasi-Cyclic Codes

Ayoub Otmani, Jean–Pierre Tillich|arXiv (Cornell University)|2008. 04. 02.
Coding theory and cryptography참고 문헌 18인용 수 5
한 줄 요약

이 논문은 순환부분코드를 기반으로 한 두 가지 메셀리에 암호체계에 대한 구조적 공격 기법을 제시한다: 하나는 원시 BCH 코드의 부분코드를 사용하고, 다른 하나는 순환형 저밀도검사행렬(QC-LDPC) 코드를 사용한다. 공격은 각각 선형대수학(비 BCH 변형)과 저중량 코드어 탐색을 통한 다항식 인수분해(비 QC-LDPC 변형)를 이용해 숨겨진 대칭적 구조를 악용하며, 후자의 경우 약 15분 이내로 비밀 키를 성공적으로 복구한다. 이는 키 크기를 줄인 데서 비롯된 효율성에도 불구하고 두 체계 모두 보안상 취약함을 보여준다.

ABSTRACT

We cryptanalyse here two variants of the McEliece cryptosystem based on quasi-cyclic codes. Both aim at reducing the key size by restricting the public and secret generator matrices to be in quasi-cyclic form. The first variant considers subcodes of a primitive BCH code. We prove that this variant is not secure by finding and solving a linear system satisfied by the entries of the secret permutation matrix. The other variant uses quasi-cyclic low density parity-check codes. This scheme was devised to be immune against general attacks working for McEliece type cryptosystems based on low density parity-check codes by choosing in the McEliece scheme more general one-to-one mappings than permutation matrices. We suggest here a structural attack exploiting the quasi-cyclic structure of the code and a certain weakness in the choice of the linear transformations that hide the generator matrix of the code. Our analysis shows that with high probability a parity-check matrix of a punctured version of the secret code can be recovered in cubic time complexity in its length. The complete reconstruction of the secret parity-check matrix of the quasi-cyclic low density parity-check codes requires the search of codewords of low weight which can be done with about $2^{37}$ operations for the specific parameters proposed.

연구 동기 및 목표

  • 키 크기를 줄이기 위해 순환형 코드를 사용하는 메셀리에 암호체계의 보안성을 분석하기 위해.
  • 최근에 제안된 두 가지 변형—원시 BCH 코드의 부분코드를 기반으로 한 것과 순환형 LDPC 코드를 기반으로 한 것—의 구조적 약점을 규명하기 위해.
  • 이들의 기반 대칭적 구조를 악용해 실용적인 해독 공격 기법을 개발하여 두 체계를 해독하기 위해.
  • 기존 메셀리에 체계에 비해 효율성이 향상된 이들 변형의 보안이 손상되었음을 입증하기 위해.

제안 방법

  • BCH 기반 변형의 경우, 비밀 코드가 알려진 BCH 코드의 부분코드이므로, 비밀 순열행렬의 원소를 제약하는 과도하게 제약된 선형계를 구성한다.
  • QC-LDPC 변형의 경우, 공개된 다항식과 동일한 곱을 가지는 두 개의 저중량 다항식을 찾는 다항식 중심 접근법을 사용한다. 이는 순환형 구조를 활용한다.
  • 공개된 다항식의 약수 중 저중량을 가지는 것을 검색함으로써, 비밀 코드의 구조적 구성요소를 식별한다.
  • 비밀 코드의 단절된 변형을 분석하여, 저중량 코드어를 검색함으로써 그의 검사행렬을 복구한다.
  • 비밀 검사행렬의 복구를 위해, Canteaut-Chabaud 알고리즘을 적용하여 단절된 코드에서 저중량 코드어를 식별한다.
  • 공개 데이터와 복구된 구조적 구성요소로부터 유도된 변환된 행렬의 역행렬을 계산함으로써 비밀 행렬을 복구한다.

실험 결과

연구 질문

  • RQ1원시 BCH 코드의 부분코드를 사용하는 메셀리에 변형에서 비밀 순열행렬을 효율적으로 복구할 수 있는가?
  • RQ2메셀리에 체계에서 순열행렬 대신 순환형 LDPC 코드를 사용하는 것이 구조적 해독 공격에 대해 충분한 저항력을 제공하는가?
  • RQ3순환형 코드의 대칭적 구조를 악용하여 비밀 키를 다항식 시간 내에 복구할 수 있는가?
  • RQ4공개된 형태에서 QC-LDPC 코드의 비밀 검사행렬을 복구하는 데 필요한 계산 복잡도는 얼마인가?
  • RQ5QC-LDPC 변형에서 선형 변환의 선택이 얼마나 많은 취약점을 노출시키는가?

주요 결과

  • BCH 기반 변형에서 비밀 순열행렬은 모든 실험에서 선형방정식계를 풀어 복구되었으며, 해공간의 차원은 1이었다.
  • QC-LDPC 변형에 대한 공격의 첫 번째 단계—저중량 다항식 약수를 찾는 것—은 2.80GHz Pentium 4에서 MAGMA를 사용해 140초 내에 완료되었다.
  • 두 번째 단계인 단절된 비밀 코드에서의 저중량 코드어 복구에는 약 2^37회의 연산이 소요되었다.
  • 비밀 검사행렬의 완전한 재구성은 약 2^37회의 연산으로 수행되었으며, 이는 Canteaut-Chabaud 알고리즘의 성능과 일치했다.
  • 공격은 두 변형 모두에 성공적으로 적용되었으며, 순환형 구조를 사용함으로써 보안이 손상되었음을 입증했다. 이는 비밀 키의 무작위성 부족이 원인이다.
  • 구현 결과, 두 공격 모두 실용적이며, 표준 하드웨어에서 QC-LDPC 변형은 약 15분 이내에 해독되었으며, 일반 공격에 대한 면역성 주장에도 불구하고 성공적으로 무너졌다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.