Skip to main content
QUICK REVIEW

[논문 리뷰] An efficient attack of a McEliece cryptosystem variant based on convolutional codes

Grégory Landais, Jean–Pierre Tillich|arXiv (Cornell University)|2013. 02. 20.
Coding theory and cryptography인용 수 4
한 줄 요약

이 논문은 시간에 따라 변하는 컨volution형 코드와 결합된 고파 코드를 사용하는 메셀리에 암호 체계의 변종에 대해 효율적인 고전적 공격을 제시한다. 이 공격은 공개 코드 내의 낮은 무게의 코드어를 이용해 컨볼루션형 구조를 폭 드러내며, 이로 인해 암호 체계가 하루 이내로 해체됨을 입증한다. 이는 무작위화를 통한 보안 확보가 낮은 무게의 코드어 탐색에 대비해 부족하다는 것을 보여준다.

ABSTRACT

Löndahl and Johansson proposed last year a variant of the McEliece cryptosystem which replaces Goppa codes by convolutional codes. This modification is supposed to make structural attacks more difficult since the public generator matrix of this scheme contains large parts which are generated completely at random. They proposed two schemes of this kind, one of them consists in taking a Goppa code and extending it by adding a generator matrix of a time varying convolutional code. We show here that this scheme can be successfully attacked by looking for low-weight codewords in the public code of this scheme and using it to unravel the convolutional part. It remains to break the Goppa part of this scheme which can be done in less than a day of computation in the case at hand.

연구 동기 및 목표

  • 시간에 따라 변하는 컨볼루션형 코드로 확장된 고파 코드를 사용하는 메셀리에 암호 체계 변종의 보안을 분석하는 것.
  • 공개 생성 행렬의 무작위화가 비밀 코드어의 복구를 방지하는지 조사하는 것.
  • 공개 코드 내의 낮은 무게의 코드어가 기반 컨볼루션형 코드어의 구조를 드러내는 데 사용될 수 있는지 확인하는 것.
  • 코드어 탐색 알고리즘과 구조적 필터링 기법을 사용해 체계를 해체하는 데의 실현 가능성을 평가하는 것.
  • 코드 기반 암호에서 고파 코드와 컨볼루션형 코드를 조합할 경우의 보안적 영향을 평가하는 것.

제안 방법

  • 공개 코드 내의 낮은 무게의 코드어를 수정된 최접근 이웃 검색 알고리즘을 사용해 식별한다.
  • 지원 집합이 작은 컨볼루션형 구성 요소의 부분코드에 속하는 코드어를 분리하기 위해 필터링 절차를 적용한다.
  • 중간 정도의 무게(예: 약 370)의 부분코드는 매우 낮은 무게의 코드어보다 더 높은 확률로 발견될 수 있기 때문에, 이는 높은 비율과 밀도 덕분이다.
  • 후보 부분코드의 지원 집합을 드러내기 위해 공개 생성 행렬의 체계적 형태 변환을 사용한다.
  • 공개 코드와 컨볼루션형 구성 요소의 부분코드 사이의 비율 유사성을 활용하여 유효한 코드어 탐지 확률을 높인다.
  • 낮은 무게의 코드어 탐색 알고리즘의 알려진 개선 사항(MMT, BJMM 등)을 활용해 효율성을 향상시킨다.

실험 결과

연구 질문

  • RQ1컨볼루션형 코드를 사용하는 메셀리에 변종의 공개 코드 내 낮은 무게의 코드어를 이용해 비밀 코드어의 구조를 복원할 수 있는가?
  • RQ2제안된 체계의 설계자들이 주장하는 바와 같이, 공개 생성 행렬의 높은 무작위성은 구조적 cryptanalysis를 방지하는가?
  • RQ3컨볼루션형 구성 요소에서 유도된 부분코드의 비율이 코드어 탐색 공격의 성공 확률에 얼마나 큰 영향을 미치는가?
  • RQ4원래 제안에서 주장한 바와 같이 이중 코드의 최소 거리가 크더라도 컨볼루션형 구조는 드러나는가?
  • RQ5코드어 탐색 및 부분코드 탐지 기법을 사용해 체계를 해체하는 데 필요한 계산 복잡도는 얼마인가?

주요 결과

  • 설계자들이 구조적 공격에 저항한다고 주장했음에도 불구하고, 체계는 하루 이내로 해체될 수 있다.
  • 가장 효과적인 공격 벡터는 가장 낮은 무게의 코드어가 아니라 중간 정도의 무게(예: 약 370)의 코드어를 대상으로 하며, 이는 더 높은 탐지 확률 덕분이다.
  • 지원 집합이 작은 컨볼루션형 구성 요소의 부분코드는 공개 코드 내의 낮은 무게의 코드어를 필터링하여 식별할 수 있다.
  • s가 증가함에 따라 부분코드 $\mathscr{C}_s$의 비율은 공개 코드의 비율에 가까워지며, 이는 체계적 형태 분석을 통한 탐지 가능성을 높인다.
  • 이중 코드의 최소 거리가 크다는 주장에도 불구하고 공격은 효과를 유지하며, 원래의 보안 논거와 모순된다.
  • 무작위화가 낮은 무게의 코드어 탐색과 결합될 경우, 공개 행렬의 무작위성은 구조적 복원을 방지하지 못한다는 것이 본 방법을 통해 입증된다.

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

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

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

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