이 글에서는 피터 쇼어(Peter Shor)가 1994년 (Arxiv논문 링크), 이제는 쇼어의 알고리즘이라고 불리는 양자 소인수분해 알고리즘을 제안한 이후, 여러가지 측면에서 양자컴퓨터가 소인수분해 문제를 풀기에 얼마나 발전했는지, 그리고 얼마나 빨리 소인수분해를 할것으로 예측하고 있는지를 정리하고자 한다.
이 글은 다음과 같이 구성된다.
- 쇼어알고리즘의 간략한 설명
- 쇼어알고리즘의 구체적 구현과 최적화 논문들
- 양자컴퓨터를 이용한 실제 소인수분해 실험들
그치만 결론만 먼저 요약하면 앞선 글에서 소개했듯 RSA-240,250, 즉 약 800비트 정수를 소인수분해 하는데 2000 core-년이 필요한 반면, 2천만 큐비트의 에러가 있는 양자컴퓨터가 있다면 그럴듯한 가정 하에 RSA-2048, 즉 2048비트 정수를 소인수분해 하는데 8시간이면 충분하다고 한다! 이게 바로 양자컴퓨터의 위력 ㅡㅡ!
다만 쇼어알고리즘을 양자컴퓨터로 실제로 돌리는 것은 (내가 아는바에 의하면) 딱히 실험적으로 진행한 바가 없다. 쇼어알고리즘에 어느정도 치팅을 한 버젼이나, Adiabatic quantum computer등을 이용한 방식이 진행되었을 뿐이다. 치팅을 한 버젼도 최대한 치팅을 한것은 아니고, 그럴듯한 정도로 해서 양자 소인수분해에 대한 어느정도 근거를 주기는 하지만 말이다.
계속 읽기