지수 미적분 알고리즘
Index calculus algorithm계산 번호 이론에서, 지수 미적분 알고리즘은 이산 로그 계산을 위한 확률론적 알고리즘이다. / )∗{\ 서 q{\은 유한 분야 및 일부 타원 곡선 계열에 적응한 알고리즘 계열로 이어진다. 알고리즘은 작은 프리임의 이산 로그 사이의 관계를 수집하여 선형 대수 절차에 의해 계산하고, 작은 프리타임의 이산 로그에 대해 원하는 이산 로그를 최종적으로 표현한다.
설명
대략적으로 말하면, 이산 로그 문제는 ( n g h g, h, modulus n이 주어지는 그런 x를 찾으라고 요구한다.
알고리즘(아래에 자세히 설명)은 그룹( Z )∗ 에 적용된다. 여기서 q는 prime이다. 입력으로 요인 기반이 필요하다. 이 요인 베이스는 일반적으로 숫자 -1과 2로 시작하는 첫 번째 rimes로 선택된다. 효율성의 관점에서, 우리는 이 인자 베이스가 작기를 원하지만, 큰 그룹에 대한 이산 로그를 해결하기 위해서는 인자 베이스가 (상대적으로) 커야 한다. 알고리즘의 실제 구현에서, 그러한 상충되는 목표는 어떤 식으로든 타협된다.
알고리즘은 세 단계로 수행된다. 처음 두 단계는 발전기 g와 primulus q에만 의존하며, 작은 소수 인자의 기초에 있는 이산 로그들을 찾는다. 세 번째 단계는 인자 베이스의 이산 로그 측면에서 원하는 숫자 h의 이산 로그를 찾는다.
첫 번째 단계는 인자 베이스와 발전기 g의 전력 사이의 일련의 선형 독립 관계를 검색하는 것으로 구성된다. 각 관계는 알 수 없는 r개의 선형 방정식 시스템, 즉 인자 베이스에서 rimes의 이산 로그에 하나의 방정식을 기여한다. 이 단계는 당혹스러울 정도로 평행하며 많은 컴퓨터들 사이에서 나누기 쉽다.
두 번째 단계는 인자 베이스의 이산 로그를 계산하기 위한 선형 방정식의 시스템을 해결한다. 수십만, 수백만 개의 방정식을 가진 시스템은 대량의 메모리를 필요로 하는 중요한 연산이며, 당황스러울 정도로 평행하지 않기 때문에 일반적으로 슈퍼컴퓨터가 사용된다. 이는 소규모 이산 로그 계산의 다른 단계와 비교했을 때 사소한 단계로 간주되었다. 그러나, 보다 큰 이산 로그[1][2] 기록은 선형 대수에서 벗어나 체로 작업물을 이동시키는 것(즉, 변수의 수를 줄이면서 방정식의 수를 증가시키는 것)에 의해서만 가능했다.
세 번째 단계는 발전기 g의 동력 s를 검색하는데, 이 출력 s를 인수 h로 곱하면 인자 베이스 ghs = (-1) f02f1 3f2··p의rfr 관점에서 고려될 수 있다.
마지막으로, 4단계라고 하기에는 너무 간단한 수술에서는 원하는 이산 로그 x = flog0g(-1) + flog21g + flog32g + ···+flogprgr -s를 계산하기 위해 간단한 대수 조작으로 2단계와 3단계의 결과를 재배열할 수 있다.
제1단계와 제3단계 모두 당황스러울 정도로 평행하며, 사실 제3단계는 제1단계와 제2단계 결과에 좌우되지 않기 때문에 제2단계와 병행해서 할 수도 있다.
factor base size r의 선택은 매우 중요하며, 세부 사항은 여기에서 설명하기엔 너무 복잡하다. 요인 기반이 클수록 1단계에서 관계를 찾기 쉽고, 3단계 완성은 쉬워지지만, 2단계로 진행하기 전에 필요한 관계가 많아지고, 2단계는 더 어렵다. 1단계와 2단계에 필요한 다양한 유형의 계산에 적합한 컴퓨터의 상대적 가용성 또한 중요하다.
다른 그룹의 응용 프로그램
타원곡선의 점군에서 주요 원소의 개념이 부족하기 때문에 이들 그룹에서 여기에 제시된 바와 같이 지수 미적분법을 실행할 수 있는 효율적인 요인 기반을 찾을 수 없다. 따라서 이 알고리즘은 타원 곡선 그룹에서 이산 로그들을 효율적으로 해결할 수 없다. 그러나: 특수한 종류의 곡선(초대칭 타원 곡선)의 경우 일반적인 방법보다 문제를 더 빨리 해결하기 위한 전문 알고리즘이 있다. 이러한 특수 곡선의 사용은 쉽게 피할 수 있지만, 2009년 특정 분야의 경우 이러한 필드 위에 있는 일반 타원곡선의 점군에서 이산 로그 문제를 일반적인 방법보다 더 빨리 해결할 수 있다는 것이 입증되었다. 알고리즘은 실제로 지수 미적분법의 적응이다.[3]
알고리즘
입력: 이산 로그 생성기 g, 계량 q 및 인수 h. 길이 r + 1의 요인 기준 {-1,2,3,5,7,11,...,pr}.
출력x:x g ≡ h(mod q)와 같은 값.
- 관계 ← 빈_list
- k = 1, 2, ...에 대해
- 행이 관계인 행렬 구성
- 매트릭스의 축소된 에셀론 형식 획득
- 마지막 열의 첫 번째 요소는 -1의 이산 로그, 두 번째 요소는 2의 이산 로그 등이다.
- s = 1, 2, ...에 대해
- =(- ) f 1 r p r { p r ^{}}:2f_{r_r}}}{r
- 인자화가 발견되는 경우:
- 출력 = 0 (- 1)+ 1 + + r- . +{
복잡성
인자 베이스의 최적 선택을 가정하면, 알고리즘의 예상 가동 시간(L-notation 사용)은 [/ 2 ,+ ) 로 명시할 수 있다
역사
알고리즘의 기본이념은 서양과 밀러(1968년)에 기인하며,[4] 궁극적으로 크레이치크(1922년)의 사상에 의존한다.[5] 첫 번째 실제 구현은 1976년 이산 로그에 의존하는 Diffie-Hellman 암호 시스템의 도입 이후에 이루어졌다. 머클의 스탠포드 대학 논문(1979년)은 포흘리그(1977년)와 헬만과 레이네리(1983)의 공로를 인정받았는데, 이 역시 이행을 개선했다.[6][7] Adleman은 알고리즘을 최적화하여 현재의 형태로 제시했다.[8]
지수 미적분학 계열
미적분학 지수는 많은 알고리즘 계열에 영감을 주었다. In finite fields with for some prime , the state-of-art algorithms are the Number Field Sieve for Discrete Logarithms, , p{p\displaystyle} 큰 q{\displaystyle q}, 기능의 필드 체, Lq[1/3,32/93]{\textstyle L_{q}[1/3,{\sqrt[{3}]{32/9}}\,\right 해결}, Joux,[9]나는 c을에[1/4+ε, c야 너는 어떻]{\displaystyle L_{q}[1/4+\varepsilon ,c\right]}q에 비해 0{년.dispc p {\ p이() {\q}에 비해 작을 p {\ p이(가) 일c > 0 {\에 3 타원 곡선 일부 패밀리의 이산 로그는 > 3,에 대해 q [ /, 에서 해결할 수 있지만 일반적인 경우는 기하급수적으로 유지된다.
외부 링크
- Andrew Odlyzko에 의한 유한한 분야의 이산 로그 및 그 암호의 중요성
- Chris Studhholme에 의한 이산 로그 문제 2002년 6월 21일 논문 "이산 로그 문제"를 포함.
- A. Menezes, P. van Oorschot, S. Vanstone (1997). Handbook of Applied Cryptography. CRC Press. pp. 107–109. ISBN 0-8493-8523-7.
{{cite book}}: CS1 maint: 작성자 매개변수 사용(링크)
메모들
- ^ 토르스텐 클라인중, 클로스 디엠, 알렌 K. Lenstra, Christine Priplata, Colin Stahlke, "768비트 기본 필드 이산 로그 계산", IACR 스프린트, 2017
- ^ Joshua Fried, Pierrick Gaudry, Nadia Heninger, Emmanuel Thome, "A kilobit hidden snfs 이산 로그 계산", IACR 스프링, 2016년 7월
- ^ Diem, C (2010). "On the discrete logarithm problem in elliptic curves". Compositio Mathematica.
- ^ 웨스턴과 밀러 (1968) 지수와 원시적 뿌리의 표, 왕립 사회 수학 표, 제9권, 캠브리지 대학 출판부.
- ^ M. Kraitchik, Théory des nombres, Gautier--빌라드, 1922년
- ^ 암호학의 Pohlig, S. 대수학 및 콤비네이터적 측면. 기술 의원 6602-1, 스탠퍼드 일렉트로닉스. 1977년 10월, 스탠포드, 캘리포니아 연구실.
- ^ M.E. Hellman과 J.M. 레이네리, GF(q)의 이산 로그의 고속 연산, 암호학의 조언--Crypto의 진행, 1983
- ^ L. Adleman, 1979년 제20회 컴퓨터 과학의 기초 심포지엄에서 암호화에 대한 응용과 관련된 이산 로그 문제를 위한 보조 알고리즘
- ^ A. Joux, 복잡성 L /+ 1)을(를) 매우 작은 특징으로 하는 새로운 지수 미적분 알고리즘 [1]