슈퍼싱귤러 등원 키 교환
Supersingular isogeny key exchange초싱귤러 등원 분포 -Hellman Key Exchange(SIDH; Hellman 키 교환)는 안전하지 않은 통신 채널을 통해 두 당사자 간에 비밀 키를 확립하기 위해 사용되는 양자화 후 암호화 알고리즘입니다.Diffie와 유사합니다.Hellman 키 교환은 슈퍼싱귤러 아이소제니 그래프에서의 워크에 기초하고 있으며 양자 컴퓨터를 소유하고 있는 적의 암호 해독 공격에 저항하도록 설계되어 있습니다.SIDH는 모든 양자화 후 키 교환 중 최소 크기 중 하나를 자랑합니다. SIDH는 압축을 통해 128비트 양자 보안 수준에서 2688비트[1] 공개 키를 사용합니다.또한 SIDH는 NTRU 및 Ring-LWE와[citation needed] 같은 유사한 시스템과 구별됩니다.완벽한 전송 비밀은 손상된 장기 키가 오래된 통신 세션의 기밀성을 침해하는 것을 방지하는 속성입니다.이러한 특성으로 인해 SIDH는 Diffie-를 대체할 수 있는 자연스러운 후보가 됩니다.Hellman(DHE) 및 타원 곡선 Diffie-인터넷 통신에서 널리 사용되는 Hellman(ECDHE).
서론
특정 종류의 문제에 대해 양자 컴퓨터에서 실행되는 알고리즘은 당연히 기존 컴퓨터보다 더 낮은 시간 복잡성을 달성할 수 있습니다.즉, 양자 알고리즘은 기존 컴퓨터에서 실행되는 가장 효율적인 알고리즘보다 특정 문제를 더 빨리 해결할 수 있습니다.예를 들어, Shor의 알고리즘은 정수 N을 다항식 시간으로 인수분해할 수 있는 반면, 가장 잘 알려진 인수분해 고전 알고리즘인 일반 수 필드 체는 하위 지수 시간으로 연산된다.RSA의 보안은 정수 인수분해 문제인 정수를 인수분해할 수 없는지에 따라 달라지기 때문에 공개 키 암호화에 중요합니다.Shor의 알고리즘은 또한 Diffie의 보안의 기초가 되는 이산 로그 문제를 효율적으로 해결할 수 있다.헬만, 타원 곡선 디피-Hellman, 타원곡선 DSA, Curve25519, ed25519 및 ElGamal.양자 컴퓨터는 현재 초기 단계에 있지만, 양자 컴퓨터의 지속적인 개발과 최신 암호화 프로토콜(TLS/SSL 등)을 손상시키는 이론적인 능력은 양자화 이후의 암호화 [2]기술의 발전을 촉진했습니다.
SIDH는 2011년 De Feo, Jao 및 [3]Plut에 의해 만들어졌습니다.기존의 타원 곡선 연산을 사용하며 특허를 취득하지 않았습니다.SIDH는 완벽한 전송 비밀을 제공하기 때문에 장기 개인 키의 보안에 의존하지 않습니다.Forward Secrety는 암호화된 통신의 장기적인 보안을 향상시키고 대규모 보안 감시로부터 방어하며 Heartbleed와 같은 취약성의 영향을 줄입니다.[4][5]
배경
바이얼스트라스 3 + + + {\ y}=에 의해 주어진 타원곡선의 j-등가수는 다음 공식으로 주어진다.
- ( ) a a + b ({ j) ={\ :
등형 곡선은 동일한 j 불변량을 가지며, 대수적으로 닫힌 필드에서는 동일한 j 불변량을 갖는 두 곡선이 동형이다.
SIDH(supersingular Diffie-Hellman protocol)는 정점이 (동형 클래스의) 상위 타원 곡선이고 모서리가 이러한 곡선 사이의 등진인 그래프와 함께 작동합니다. : \ E(\ E와 E E 사이의 E E는 군 동형사상인 유리맵이다.분리 가능한 경우, { 는 목표 곡선 E { E }의동형사상까지 커널에 의해 결정됩니다.
SIDH의 설정은 p l e A e B 1 { p =l _{ }의 프라임입니다.{B (작은) A 및 B) E({ l_에 대하여A 및 및 작은 f({ f와 F 22 위에 된 초대형 타원 E({E})가 있습니다. 이러한 곡선에는 2개의 큰 비틀림 E]가 있습니다 및 [ B E 각각 Alice와 Bob에 할당되어 있습니다(첨자 표시).각 당사자는 각각의 비틀림 서브그룹의 (비밀) 랜덤 순회 서브그룹을 선택하고 대응하는 (비밀) 등유전성을 계산함으로써 프로토콜을 시작한다.그런 다음 상대방이 등전성을 갖는 목표곡선에 대한 방정식을 상대방이 등전성을 갖는 비틀림 부분군의 이미지에 대한 정보와 함께 발표하거나 다른 방법으로 제공한다.이를 통해 두 회사 모두 E(\ E의 새로운 등각성을 비공개로 계산할 수 있습니다. E E)의 커널은 두 개의 비밀 순환 서브그룹에 의해 공동으로 생성됩니다.이 두 개의 새로운 등각선의 알맹이가 일치하기 때문에 이들의 목표곡선은 동형이다.그런 다음 이러한 목표 곡선의 공통 j-불변수를 필요한 공유 암호로 간주할 수 있습니다.
스킴의 보안은 작은 비틀림 서브그룹에 따라 다르기 때문에 l † B eB (\ 를 선택하는 것이 좋습니다.
이 주제에 대한 훌륭한 참고 자료는 De Feo의 기사 "등유성 기반 암호학의 [6]수학"이다.
보안.
SIDH의 보안은 점 수가 동일한 두 개의 초싱 타원 곡선 사이의 등원 매핑을 찾는 문제와 밀접하게 관련되어 있다.De Feo, Jao 및 Plut은 SIDH에 대한 최선의 공격이 관련된 손톱 찾기 문제를 해결하는 것이라고 제안합니다. 따라서 고전 컴퓨터의 경우 복잡성 O(p1/4), 양자 컴퓨터의 경우 O(p1/6)입니다.이는 768비트 프라임(p)의 SIDH가 128비트 보안 수준을 [3]갖는다는 것을 나타냅니다.델프스와 갤브레이스의 2014년 등진성 매핑 문제에 대한 연구에서 기존 컴퓨터의 [7]O(p1/4) 보안 분석이 확인되었습니다.SIDH의 고전적 보안 O(p1/4)는 갈브레이스, 쁘띠, 샤니, [8][9]티와 더불어 Biasse, Jao, Sankar의 연구에서 확인되었다.
효율성.
키 교환 중에 A와 B는 각각 타원 곡선과 2개의 타원 곡선 포인트를 정의하는 2개의 계수(mod2 p)의 정보를 전송합니다.각 타원 곡선 계수에는 로그프22 비트가 필요합니다.각 타원곡선점은 logp22+1비트로 전송할 수 있으므로 전송은22 4logp+4비트입니다.768비트 모듈러스 p(128비트보안)의 경우 6144비트입니다.그러나, 이것은 키 압축 기술을 사용하여 2640 비트(330 바이트)로 절반 이상 줄일 수 있습니다. 이 중 최신은 Costello, Jao, Longa, Nahrig, Renes 및 Urbanik의 [10]최근 연구에 나와 있습니다.이러한 압축 기술을 사용하면 SIDH는 기존의 3072비트 RSA 시그니처 또는 Diffie-Hellman 키 교환과 같은 대역폭 요건을 갖게 됩니다.이 작은 공간 요구사항은 SIDH를 Bitcoin이나 Tor와 같이 공간 요구사항이 엄격한 컨텍스트에 적용할 수 있게 합니다.Tor의 데이터 셀은 330바이트의 SIDH 키를 보유할 수 있도록 길이가 517바이트 미만이어야 합니다.반면 NTRUEncrypt는 128비트 보안을 실현하기 위해 약 600바이트를 교환해야 하며 Tor 내에서 셀 크기를 [11]늘리지 않으면 사용할 수 없습니다.
2014년 워털루 대학 연구진은 SIDH의 소프트웨어 구현을 개발했습니다.2.4GHz로 동작하는 x86-64 프로세서에서 부분적으로 최적화된 코드를 실행했습니다.768비트 모듈러스에서는 키 교환 계산을 200밀리초 만에 완료할 수 있었습니다.이를 통해 SIDH가 계산상 [12]실용적이라는 것을 알 수 있습니다.
2016년 마이크로소프트 연구진은 SIDH를 위한 소프트웨어를 게시했습니다. SIDH는 일정 시간(따라서 타이밍 공격에 대한 보호)으로 실행되며 현재까지 구현된 소프트웨어 중 가장 효율적입니다.그들은 다음과 같이 쓰고 있습니다.공개 키의 크기는 564바이트에 불과합니다.이것은 일반적인 양자화 이후의 키 교환 방법보다 훨씬 작은 것입니다.궁극적으로 소프트웨어의 크기와 속도는 SIDH가 양자화 후 키 교환 후보로서 강력한 가능성을 보여주고 있으며, 이러한 결과가 보다 광범위한 암호 분석 [13]작업을 촉진할 수 있기를 바랍니다."코드는 오픈소스(MIT)이며 github:https://github.com/microsoft/PQCrypto-SIDH 에서 구할 수 있습니다.
2016년 플로리다 애틀랜틱 대학 연구진은 SIDH의 효율적인 ARM 구현을 개발하고 아핀 좌표와 투영 [14][15]좌표를 비교했다.2017년 플로리다 애틀랜틱 대학 연구진은 SIDH의 [16]첫 번째 FPGA 구현을 개발했다.
초싱귤러 디프제니 헬만법
SIDH의 몇 가지 단계는 복잡한 등진 계산을 수반하지만, Diffie-Hellman 키 교환 또는 그 타원 곡선 변형에 익숙한 사람에게는 당사자 A와 B의 SIDH의 전체적인 흐름은 간단합니다.
세우다
이것들은 네트워크 내의 모든 사람이 공유할 수 있는 퍼블릭파라미터이거나 세션 시작 시 당사자A 및 B에 의해 네고시에이트될 수 있습니다.
- A Bf ±. \ p
- 2에 초대형 타원 EE {{
- E{ E의 를 고정하였습니다.
- 와 })의 순서는 ( A (})^{입니다.와 Q_A})의 순서는{A})입니다 .
키 교환
키 교환에서 당사자 A와 B는 각각 공통 타원곡선 E에서 등전성을 생성한다.이들은 각각 자신의 동질성의 핵심이 되는 임의의 점을 작성함으로써 이 작업을 수행합니다.등각의 핵심에는 R A R_와 B R_가 .사용되는 포인트가 다르면 당사자 A와 B가 서로 다른 비소통 동질성을 생성하게 됩니다.등각선 커널 내의 랜덤 포인트( A R(\는 (\ P_ (\displaystyle Q_}) P_{의 랜덤 선형 조합으로 작성됩니다
R R(\를 하여 A _와 B_{를 각각 벨루 공식으로 등화시킵니다.를 통해 A(\A}) (\B})의쌍 합니다.
그 결과, A와 B에는 2개의 포인트 이 (P A ) \ \ { P _ { A)、 ( Q A )\ style \_ { ( _ A) } ( ( ( P { ) 이제 A와 B는 통신 채널을 통해 이러한 포인트 쌍을 교환합니다.
이제 A와 B는 수신한 한 쌍의 포인트를 새로운 등각성의 커널의 기반으로 사용합니다.이들은 위에서 사용한 것과 동일한 선형 계수를 수신한 점과 함께 사용하여 등각의 커널에서 점을 형성합니다.각각 B 포인트를 계산하고 Velu의 공식을 사용하여 새로운 등진성을 구축합니다.
키 교환을 완료하기 위해 A와 B는 이 두 개의 새로운 등각선 아래에서 두 개의 새로운 타원 곡선의 계수를 계산합니다.그런 다음 이러한 곡선의 j-불변량을 계산합니다.전송에 오류가 없는 한 A에 의해 생성된 곡선의 j-불변량은 B에 의해 생성된 곡선의 j불변량과 동일합니다.
통지상 당사자A와 B 사이의 SIDH 키 교환은 다음과 같이 동작합니다.
1A. A는 2개의 랜덤 < ( A )A. \ m { } ,_ { A } < (
2A. A는 A : A ( ) + A ( )을 합니다 : =
3A. A는 A 를 사용하여 등각 을 작성합니다. A: \ _ { : 및 곡선 E_디스플레이 E_{ E E. 동종입니다
. A는 B({와 B에 p의 2개의 포인트를 형성합니다. _ 및 A _
5A. A는 ( B (\ _ 및 ( B로 송신합니다 _
1B~4B: A1~A4와 동일하나 A와 B의 서브스크립트가 교환되어 있다.
5B. B는 A B ""( { _ 및 " _ 에 송신합니다.
6A. 는 B ( { m { , n { , \_ {및 B ( )\_ { ( B:
7A. A는 A를 하여 등각 맵핑 B _를 작성합니다.
8A. 는 § A를 사용하여 A})를 작성합니다. E E와 동종입니다.
9A. 는K : { } j _ {) = { A의 BA E_
6B. 마찬가지로 B는 A(B {display m_{ \ _ 및 A( B {style \ _) 및 을 .
7B. B는 B})를 하여 등각 매핑을 만듭니다. B_ { } )
8B. B는 B를 사용합니다. 타원 B E_를 만듭니다. E E와 동종입니다.
9B. B는 K : : { 를 합니다.의 B 스타일E_{
B E_{ E_ ABA은 (는) 동일한 j-불변량을 가질 수 있습니다.공유 [3]키로서 K K의 을 사용합니다.
샘플 파라미터
De Feo 등에서는 다음 매개변수를 예로 들었다.[3]
w = 2, wB = 3, e = 63, eAB = 41, f = 11과의A 키 교환에 대한 p = 프라임.따라서 p = (263·341·11) - 1이다.
E0 = 키 교환을 위한 기준(시작) 곡선 = y2 = x3 + x
키 교환을 정의하는 이 문서의 저자 중 한 명인 Luca De Feo는 이러한 파라미터 [17]및 기타 파라미터의 키 교환을 구현하는 소프트웨어를 게시했습니다.
유사한 시스템, 시그니처 및 용도
SIDH의 전신은 2006년 로스토프체프와 스톨부노프에 의해 출판되었다.그들은 타원곡선 등유전성을 바탕으로 최초의 디피-헬만 치환을 만들었다.De Feo, Jao, Plut의 방법과는 달리, Rostovtsev와 Stolbunov의 방법은 통상적인[18] 타원 곡선을 사용했고, 지수 이하의 양자 [19]공격을 하는 것으로 밝혀졌다.
2014년 3월, 중국 통합 서비스 네트워크 및 Xidian 대학의 연구진은 SIDH의 보안을 강력한 검증 기능을 [20]갖춘 디지털 서명 형태로 확장했습니다.2014년 10월, 워털루 대학의 Jao와 Sokharev는 타원 곡선 등원성을 [21]사용하여 지정된 검증자를 사용하여 부정할 수 없는 서명을 만드는 대체 방법을 제시하였다.
레퍼런스
- ^ Costello, Craig; Jao, David; Longa, Patrick; Naehrig, Michael; Renes, Joost; Urbanik, David (2016-10-04). "Efficient compression of SIDH public keys".
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ Utsler, Jim (2013). "Quantum Computing Might Be Closer Than Previously Thought". IBM. Retrieved 27 May 2013.
- ^ a b c d De Feo, Luca; Jao, Plut. "Towards quantum-resistant cryptosystems from supersingular elliptic curve isogenies" (PDF). PQCrypto 2011. Springer. Retrieved 4 May 2014.
- ^ Higgins, Parker (2011-11-30). "Long Term Privacy with Forward Secrecy". Electronic Frontier Foundation. Retrieved 4 May 2014.
- ^ Zhu, Yan (2014-04-08). "Why the Web Needs Perfect Forward Secrecy More Than Ever". Electronic Frontier Foundation. Retrieved 4 May 2014.
- ^ De Feo, Luca (2017). "Mathematics of Isogeny Based Cryptography". arXiv:1711.04062 [cs.CR].
- ^ Delfs, Christina; Galbraith (29 Oct 2013). "Computing isogenies between supersingular elliptic curves over F_p". arXiv:1310.7789 [math.NT].
- ^ biasse. "A quantum algorithm for computing isogenies between supersingular elliptic curves" (PDF). CACR. Retrieved 11 December 2016.
- ^ Galbraith (2016). "ON THE SECURITY OF SUPERSINGULAR ISOGENY CRYPTOSYSTEMS" (PDF). IACR.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ Costello, Craig; Jao, David; Longa, Patrick; Naehrig, Michael; Renes, Joost; Urbanik, David. "Efficient Compression of SIDH public keys". Retrieved 8 October 2016.
- ^ Azarderakhsh; Jao; Kalach; Koziel; Leonardi. "Key Compression for Isogeny-Based Cryptosystems". eprint.iacr.org. Retrieved 2016-03-02.
- ^ Fishbein, Dieter (30 April 2014). "Machine-Level Software Optimization of Cryptographic Protocols". University of Waterloo Library - Electronic Theses. University of Waterloo. Retrieved 21 June 2014.
- ^ Costello, Craig; Longa, Patrick; Naehrig, Michael (2016-01-01). "Efficient algorithms for supersingular isogeny Diffie-Hellman".
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ Koziel, Brian; Jalali, Amir; Azarderakhsh, Reza; Kermani, Mehran; Jao, David (2016-11-03). "NEON-SIDH: Efficient Implementation of Supersingular Isogeny Diffie-Hellman Key Exchange Protocol on ARM".
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ Jalali, A.; Azarderakhsh, R.; Kermani, M. Mozaffari; Jao, D. (2019). "Supersingular Isogeny Diffie-Hellman Key Exchange on 64-bit ARM". IEEE Transactions on Dependable and Secure Computing. PP (99): 902–912. doi:10.1109/TDSC.2017.2723891. ISSN 1545-5971. S2CID 51964822.
- ^ Koziel, Brian; Kermani, Mehran; Azarderakhsh, Reza (2016-11-07). "Fast Hardware Architectures for Supersingular Isogeny Diffie-Hellman Key Exchange on FPGA".
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ "defeo/ss-isogeny-software". GitHub. Retrieved 2015-05-29.
- ^ Rostovtsev, Alexander; Stolbunov (2006). "PUBLIC-KEY CRYPTOSYSTEM BASED ON ISOGENIES". Springer. Archived from the original (PDF) on 29 May 2006. Retrieved 10 May 2014.
- ^ Childs, Andrew M; Jao, Soukharev (2014). "Constructing elliptic curve isogenies in quantum subexponential time". Journal of Mathematical Cryptology. 8: 1–29. arXiv:1012.4019. doi:10.1515/jmc-2012-0016. S2CID 1902409.
- ^ Sun, Xi; Tian (2 March 2014). "Toward quantum-resistant strong designated verifier signature". International Journal of Grid and Utility Computing. 5 (2): 80. doi:10.1504/IJGUC.2014.060187. Retrieved 21 June 2014.
- ^ Jao, David; Soukharev, Vladimir (3 October 2014). "Isogeny-based quantum-resistant undeniable signatures" (PDF). Post-Quantum Cryptography. Lecture Notes in Computer Science. Vol. 8772. pp. 160–179. CiteSeerX 10.1.1.465.149. doi:10.1007/978-3-319-11659-4_10. ISBN 978-3-319-11658-7. Retrieved 28 April 2016.