양자암호

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

양자암호(Quantum Cryptography)는 안전한 통신을 위한 암호체계이다. 1984년 C. H. Benett과 G. Brassard가 제안하였으며,[1] 기존에 있던 대부분의 암호체계가 대부분 수학적 복잡성에 기반하는데 비해, 양자암호는 자연현상에 기반하고 있는 특징을 띄며, 암호에 사용되는 원타임 패드를 생성하는 이상적인 방법 중 하나다. 중간에 도청자가 난입할 경우 그 존재가 드러나며, 신호가 왜곡되어 도청자도 정확한 정보를 얻을 수 없는 보안성을 띄고 있다. 다른말로 양자 키 분배(Quantum Key Distribution)체계라고도 한다.

원리[편집]

파장이나 진폭등으로 통신하는 일반적인 통신과는 달리 양자암호는 광자(photon) 하나하나단위로 신호를 실어 나른다. 광자 단위로 편광이나 위상차를 이용하여 신호를 전송하며, 송신측에서도 편광패드나, 간섭계를 사용하여 측정한다.

각종 외부환경에 취약한 광자의 특성상 가용전송거리가 매우 짧으며 보통은 이를 실용적으로 이용하기 위해 25km정도 단위마다 중계소를 설치하여 구성한 양자암호 네트워크가 있으며,[2] 중계소 단위로 각각의 키를 분배한다. 현재 중계소 없이 가용한 통신거리는 약 140km이다.[3]

편광과 위상[편집]

광자를 이용한 양자통신에서 신호를 부여하는 방법에는 두가지가 있다. 광자에 편광성질을 부여해 전송한 다음 편광 필터로 측정하는 방식이 있으며, 위상시간차를 두어 간섭계를 이용해 측정하는 방법이 있다. 보통 마흐-젠더 간섭계가 측정을 위해 사용된다.[4]


양자채널 / 퍼블릭채널[편집]

양자암호학에는 두가지 채널이 사용된다. 광자 하나하나에 신호를 실어 보내서 통신하는 양자채널(quantum channel)과 기존의 통신망을 활용하는 퍼블릭채널(public channel)이 있다.[4] 퍼블릭채널은 일반적으로 기존의 TCP/IP 프로토콜을 활용한다.[2]

BB84 프로토콜[편집]

이 문단은 C. H. Bennet과 G. Brassard가 1984년 IEEE International Conference on Computers, Systems, and Signal Processing에서 발표한 《Quantum Cryptography: Public key distribution and coin tossing》논문과 Bouwmeester, Dirk, Artur K. Ekert, Anton Zeilinger가 저서한 Springer社의 《The physics of quantum information :quantum cryptography, quantum teleportation, quantum computation》을 토대로 작성했습니다. [1][4]
Basis 0 1
PlusCM128.svg Arrow north.svg Arrow east.svg
Multiplication Sign.svg Arrow northeast.svg Arrow southeast.svg

1984년 C. H. Bennet과 G. Brassard가 양자암호에 대한 논문을 발표하면서 같이 제안한 양자암호 통신 프로토콜이다. 송신자(엘리스)와 수신자(밥) 사이에 OTP를 생성하는 프로토콜이며, 표와 같이 0비트의 상태를 나타내는 편광 2가지와 1비트의 상태를 나타내는 편광 2가지를 정의 한 다음 십자필터와 대각필터를 통해 측정하게 된다. 이 프로토콜을 통해 엘리스와 밥은 임의의 난수를 생성할 수 있으며, 중간에 도청자(이브)가 난입하여 정보를 가로채려는 시도를 해도 정확한 정보획득이 어려울뿐더러, 신호가 왜곡되어 이브의 존재가 드러나게 된다. BB84 프로토콜의 전체적인 흐름은 다음과 같다.

  1. 엘리스가 임의의 비트를 생성한다
  2. 비트를 전송할 편광신호로 변환하기 위해 필터를 하나 선택한다.
  3. 필터에 대응되는 편광신호를 생성하고 양자채널로 보낸다
  4. 밥은 측정하기 위한 편광필터를 임의로 선택한다.
  5. 선택한 편광필터로 값을 측정하여 보관한다
  6. 엘리스와 밥은 퍼블릭 채널을 통해 같은 필터를 사용했는지 여부를 검증한다
  7. 같은 필터를 사용한 비트에 대해서만 보관하고 서로 다른 필터를 사용한 비트는 제거한다.

이와같은 과정을 거치면 표처럼 엘리스와 밥은 0101이라는 같은 값을 공유하게 되며 이것을 비밀키로 활용하게 된다.

엘리스가 생성한 비트 0 1 1 0 1 0 0 1
엘리스가 전송하는 편광필터 PlusCM128.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg Multiplication Sign.svg Multiplication Sign.svg Multiplication Sign.svg PlusCM128.svg
엘리스가 전송하는 광자 편광신호 Arrow north.svg Arrow east.svg Arrow southeast.svg Arrow north.svg Arrow southeast.svg Arrow northeast.svg Arrow northeast.svg Arrow east.svg
밥이 선택한 측정필터 PlusCM128.svg Multiplication Sign.svg Multiplication Sign.svg Multiplication Sign.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg PlusCM128.svg
밥이 측정한 편광 상태 Arrow north.svg Arrow northeast.svg Arrow southeast.svg Arrow northeast.svg Arrow east.svg Arrow northeast.svg Arrow east.svg Arrow east.svg
전송 패드와 측정패드가 일치하는지 여부 검증 퍼블릭 채널을 통한 데이터 교환(도청 가능)
최종적으로 생성되는 비밀키 0 1 0 1

보안성[편집]

수학적 파해[편집]

사용되고 있는 대부분의 암호체계는 보통 수학적 복잡성에 기반을 두고 있고 가역적이기 때문에 언젠가는 문제가 풀리게 된다. 가장 강력한 암호체계중 하나로 불리는 RSA의 경우 문제풀이에 천문학적인 시간이 소요되므로 사용되고 있지만, 컴퓨터의 발전에 따른 처리시간의 단축으로 인해 단시간 안에 파해될 가능성이 있다는 의견이 제시되기도 했다.[5] 반면 양자암호의 경우 수학적 복잡성이 아닌 비가역적인 물리학적 자연현상에 기반을 두고 있어서 앞선 다른 암호체계같은 수학적 접근이 불가능하다. [6]

광자 가로채기 후 재전송으로부터의 보안성[편집]

이 문단은 C. H. Bennet과 G. Brassard가 1984년 IEEE International Conference on Computers, Systems, and Signal Processing에서 발표한 《Quantum Cryptography: Public key distribution and coin tossing》논문과 Bouwmeester, Dirk, Artur K. Ekert, Anton Zeilinger가 저서한 Springer社의 《The physics of quantum information :quantum cryptography, quantum teleportation, quantum computation》을 토대로 작성했습니다. [1][4]

통신 프로토콜의 약점을 이용해 공격하는 방법중 대표적인 방법 중 리플레이 공격(Replay attack)이 있다.[7] 양자암호의 경우도 이러한 공격을 생각할 수 있지만, 공격자가 신호를 측정하는 과정에서 실수를 하게 되는 경우 신호가 왜곡되어 정확한 정보를 측정하지 못할뿐더러 왜곡된 신호를 통해 도청자의 존재가 발각된다. 자세한 내용은 다음과 같다.

패킷등의 다수입자를 이용한 일반적인 통신방법과 달리 양자암호의 경우 양자채널에서는 하나하나의 광자에 신호를 부여해 나가므로 도청을 위해서는 모든 단일 광자에 대해서 측정을 해야 한다. 양자역학에서는 복제 불가능성 원리(No-cloning theorem)와 측정 후 붕괴(Wave function collapse)라는 특이한 현상 때문에 단일 광자를 정확하게 측정할 수 있는 기회는 단 한번으로 제한된다. [8] 공격자는 단 한번의 기회에 정확한 패드(십자 또는 대각선 패드)를 선택해야 하는데, 둘 중 하나이므로 50%의 확률로 잘못 선택하게 된다. 또한 잘못 선택하게 되는 경우에 한해 이를 우연히 정확한 비트(0 또는 1)로 선택할 확률은 50%이다. 따라서 공격자가 단일 광자에 실린 비트를 잘못 측정할 확률은 \tfrac{1}{2} \times \tfrac{1}{2} = 25% 가 되며 반대로 정확하게 전송 할 확률은 75%가 된다. 반면 퍼블릭채널에서는 일반적인 방법과 동일하게 용이한 도청이 가능하다.

송신자와 수신자는 퍼블릭채널을 통해 교환된 비트의 무결성(integrity)을 체크하여 도청자의 존재를 알아낼 수 있다. 데이터가 손상되어있을 경우 중간에 누군가가 신호를 왜곡했다는 증거이며 이는 다시말해 도청자가 존재한다는 것으로 해석이 된다. 도청자가 하나의 광자를 정확히 측정할 확률은 75%이므로 n개의 광자를 사용하는 n비트 데이터의 경우 중간에 도청자가 발견될 확률은 다음과 같다.

P_d = 1 - \left(\frac{3}{4}\right)^n

즉 n=72비트 데이터의 경우 도청자가 발견 될 확률은 Pd = 0.999999999에 육박한다.하지만 모든 데이터를 교환하는 것은 정보를 노출시킬 위험이 있으므로 보통은 데이터의 일부만 체크하여 도청자의 존재를 파악한다. 다음의 표는 BB84 프로토콜에서 도청자가 중간에 난입해 있을 경우 어떻게 신호가 전송되고 왜곡되는지를 보여준다. 표에서 앨리스는 송신자, 밥은 수신자, 이브는 도청자를 의미한다.

앨리스가 생성한 비트 0 1 1 0 1 0 0 1
앨리스가 사용하는 전송용 편광필터 PlusCM128.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg Multiplication Sign.svg Multiplication Sign.svg Multiplication Sign.svg PlusCM128.svg
앨리스가 전송하는 광자 편광신호 Arrow north.svg Arrow east.svg Arrow southeast.svg Arrow north.svg Arrow southeast.svg Arrow northeast.svg Arrow northeast.svg Arrow east.svg
이브가 임의로 선택한 측정필터 PlusCM128.svg Multiplication Sign.svg PlusCM128.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg
이브가 측정하고 재전송하는 편광신호 Arrow north.svg Arrow northeast.svg Arrow east.svg Arrow north.svg Arrow southeast.svg Arrow east.svg Arrow northeast.svg Arrow east.svg
밥이 임의로 선택한 측정필터 PlusCM128.svg Multiplication Sign.svg Multiplication Sign.svg Multiplication Sign.svg PlusCM128.svg Multiplication Sign.svg PlusCM128.svg PlusCM128.svg
밥이 측정한 편광 상태 Arrow north.svg Arrow northeast.svg Arrow northeast.svg Arrow southeast.svg Arrow east.svg Arrow northeast.svg Arrow north.svg Arrow east.svg
전송 패드와 측정패드가 일치하는지 여부 검증 퍼블릭 채널을 통한 데이터 교환(이 부분은 도청 가능)
최종적으로 생성되는 비밀키 0 0 0 1
생성된 비밀키에 대한 무결성 검증

복제 불가능성 원리에 의한 보안성[편집]

양자암호의 제일 큰 보안성은 측정이 1회만 허용된다는 것이다. 최초의 기회를 제대로 활용하지 못할 경우 신호는 왜곡이 되며 두 번째 측정부터는 정확한 측정이 불가능하게 된다. 이 경우 전송 중인 광자를 한 번 복사하여 2개 이상의 광자를 생성한 다음 따로 측정하는 가설이 존재할 수 있으나, 이는 양자역학의 기초현상 중 하나인 복제 불가능성 원리[9]에 따라 광자의 완벽한 복사 자체가 불가능하다.[4]

취약점[편집]

광자분리공격[편집]

광자분리공격(Photon Number Splitting Attack, PNS Attack)은 현재 존재하는 단일광자생성기(Single photon generator)의 불완정성을 이용하여 파훼하는 방법이다. 일반적으로 신호를 생성하면 하나의 광자만 생성되지 않고 수개의 광자가 동시에 생성되어 전송된다. 통신회선 중간에 반투명거울(Beam Splitter)을 설치하여 광신호의 일부를 분리해 낸 다음 측정하여 전송되는 신호가 무엇인지 알아내는 공격방법이다.

맨-인더-미들-어택[편집]

맨-인더-미들-어택(Man-in-the-middle attack, MITM Attack)은 중간에 공격자가 중계소 행세를 하며 송신자와 수신자를 교란하는 방법이다. 송신자와 공격자 사이에 다른 키를 서로 공유하고, 공격자와 수신자 사이에 다른 키를 공유하며 중간에서 오가는 신호를 도청하는 방법이다.

서비스 거부 공격[편집]

서비스 거부 공격(Denial of Service, DoS)은 통신선상에 과부하를 주어서 정상적인 통신을 하지 못하거나 하기 힘들게 만드는것을 뜻한다. 제일 대표적인 서비스 거부 공격으로는 케이블의 물리적 절단이 있다. 그 외에도 퍼블릭 채널을 대상으로 하는 고전적인 서비스 거부 공격등이 가능하다.

실용화[편집]

가용통신거리 연장[편집]

일반적으로 단일 광자가 가지는 민감성 때문에 양자채널에서는 신호의 왜곡이나 노이즈가 많이 발생한다. 이를 보완하기 위해 물리계층에서의 연구를 통해 현재는 1회 가용 통신거리를 144km까지 늘렸으며,[3] 이보다 더 큰 거리를 통신할때는 중간에 중계소를 설치하여 비밀키를 다시 분배하는 구조로 구성되어 있다. [2]

양자암호 통신용 네트워크 장치[편집]

SECOQC 프로젝트[편집]

EU에서 11개국이 같이 참가하여 양자 키 분배 네트워크를 구축한 프로젝트, 기존의 양자암호체계가 가진 한계점을 일부 극복했으며 2008년도에 실험이 성공적으로 행해졌다.[2]

같이보기[편집]

관련문헌, 논문[편집]

양자암호학 관련 논문[편집]

  • Quantum Cryptography: Public key distribution and coin tossing, C. H. Bennet and G. Brassard [1]
  • Outline of the SECOQC Quantum-Key-Distribution Network in Vienna, Poppe, Andreas 외 2명[2]
  • Experimental Demonstration of Free-Space Decoy-State Quantum Key Distribution over 144 km, Tobias Schmitt-Manderbach외 11명 [3]

양자암호학 관련 서적[편집]

  • The physics of quantum information :quantum cryptography, quantum teleportation, quantum computation[4]
  • 뉴턴 하이라이트, 양자론

양자역학/양자정보과학 관련 서적/논문[편집]

  • Introduction to quantum mechanics. David J. Griffiths (대한민국에서는 《양자역학》이라는 제목의 번역서가 있음)[9] [8]
  • Quantum information: Remember that photon. Philippe Grangier [6]
  • Experimental realization of Shor's quantum factoring algorithm using nuclear magnetic resonance. Lieven M.K외 6명[5]

암호학 관련 서적[편집]

  • 코드북, Simon Singh
  • Cryptography and network security: principles and practice, Stallings, W.[7]

주석[편집]

  1. C. H. Bennet and G. Brassard (1984년). Quantum Cryptography: Public key distribution and coin tossing. 《Proceeding in IEEE International Conference on Computers, Systems, and Signal Processing, Bangalore》: 175.
  2. Poppe, Andreas. Peev, Momtchil. Maurhart, Oliver. (4월 2일). Outline of the SECOQC Quantum-Key-Distribution Network in Vienna. 《International Journal of Quantum Information》 6 (2): 10. doi:10.1142/S0219749908003529.
  3. Tobias Schmitt-Manderbach, Henning Weier, Martin Fürst, Rupert Ursin, Felix Tiefenbacher,, Thomas Scheidl,, Josep Perdigues, Zoran Sodnik, Christian Kurtsiefer, John G. Rarity, Anton Zeilinger,, and Harald Weinfurter (2007년 1월). Experimental Demonstration of Free-Space Decoy-State Quantum Key Distribution over 144 km. 《Physical Review Letters》 98: 010504. doi:10.1103/PhysRevLett.98.010504.
  4. Bouwmeester, Dirk, Artur K. Ekert, Anton Zeilinger (2000년 6월). 《The physics of quantum information :quantum cryptography, quantum teleportation, quantum computation》. Springer. ISBN 3-540-66778-4
    Chapter 2. Quantum Cryptography p. 15
  5. Lieven M.K. Vandersypen, Matthias Steffen, Gregory Breyta, Costantino S. Yannoni, Mark H. Sherwood, Isaac L. Chuang (2001년 12월). Experimental realization of Shor's quantum factoring algorithm using nuclear magnetic resonance. 《Nature》 414: 883-887.
  6. Philippe Grangier (2005년 12월). Quantum information: Remember that photon. 《Nature》 438: 749-750.
  7. Stallings, W. Cryptography and network security: principles and practice. Prentice Hall, 2006. p. 73
  8. Griffiths, David J (2004년 10월). 《Introduction to Quantum Mechanics》. Benjamin Cummings. ISBN 0-13-111892-7
    Chapter: Party theory
  9. Griffiths, David J (2004년 10월). 《Introduction to Quantum Mechanics》. Benjamin Cummings. ISBN 0-13-111892-7
    Appendix: No-cloning theorem