본문 바로가기

보안/보안기술동향

양자컴퓨팅 환경에서의 암호기술

양자컴퓨터... 지금 현존하는 컴퓨터의 계산능력을 초월한 동시계산량을 가지는 컴퓨터라고 한다. 2017년 49큐비트 프로세스로 2의 49승의 동시계산을 수행하는 컴퓨터가 IBM과 구글에서 발표하였다. 


우리가 아는 암호기술은 풀지 못하는 문제가 아니라 푸는데 오랜 시간이 걸리는 문제 인데 이런 양자컴퓨터가 상용화가 된다면 기존의 암호화는 더이상 안전하지 않을것 이라고 이야기 한다.


여기벌써 처음 들어보는 단어가 나왔다.


큐비트(quantum bit, qbit) 

물질의 최소 단위인 양자 정보의 단위다. 일반 컴퓨터가 정보를 0과 1 비트 단위로 처리하고 저장한다면, 양자 컴퓨터는 1과 0의 상태를 동시에 가지는 큐비트를 단위로 쓴다. 


아욱... 수십년 0과 1로만 데이터 처리를 이해하고 있는 사람으로서는 어떻게 1과 0을 동시에 가지지 라고 생각할 수 있다.


아래 그림은 양자 컴퓨터의 특징을 설명하고 있는 그림이다. 


[그림출처] KISA 양자컴퓨팅 환경에서의 암호기술 이용 안내서 



현재의 반도체는 트랜지스터를 기반으로 전류가 흐르면 1, 전류가 흐르지 않으면

 0으로 처리된다. 이 트랜지스터는 점점 작아져서 현재는 더 이상 물리적으로

작게 만들 수 없을 만큼 작게 반도체에 집적된 상태이다.


기존 컴퓨터의 한계를 극복하기 위한 컴퓨터가 양자 컴퓨터이다.


양자 컴퓨터는  작은 에너지 덩어리인 양자가가 가진 중첩과 얽힘이라는 특성을 사용하는 것인데. 이러한 특성 때문이 한개의 입자속에 여러속성을  중첩된 형태로 가질 수 있다. 그리고 이 속성들이 고정된 형태가 아니라 서로 영향을 주고 받으며 얽히는 특성을 가지고 있어 우리의 기존 상식으로 이해하기 어려운 물리 현상이다.



큐비트는 0이면서 동시에 1일수도 있기 때문에 2개의 큐비트는 00,01,10,11 등 4개의 값을 동시에 가질 수 있다. 


이러한 특성으로 큐비트가 표시하는 정보량은 큐비트가 3개일때 8, 4개 일때 16식으로 2의 거듭제곱 형태로 기하급수적으로 늘어나게 된다.


즉, 양자 중첩을 통해 양자 컴퓨터는 기존 컴퓨터와 다르게 병렬계산이 가능해 진다. 양자 컴퓨터의 능력은 슈퍼컴의 36배 이상의 처리 능력을 가진다고 한다. 즉 몇일이 걸리 작업을 한시간이면 가능하다는 것이다.


그래서 미국과 영국, 중국은 수천억달러의 기술 개발비를 투입하면 사활은 건 전쟁을 수행하고 있다.


현재 한국은 삼성이 IBM의 진영에 합류하고 양자컴퓨터 개발에 박차를 가하고 있으며, 구글은 머신러닝, 자율주행, 양자컴퓨터를 묶어서 세계를 제패하려고 하고 있다.


이러한 어마어마한 컴퓨팅 파워는 현재 소인수 분해의 계산 시간이 오래 걸림을 사용하는 암호화 방식이 무용지물이 될 수 있게 할 수 있다.



양자 컴퓨팅 환경에서 권고 되는 양자내성암호 알고리즘은 크게 5가지로 구분 하고 있다. 


[그림출처] KISA 양자컴퓨팅 환경에서의 암호기술 이용 안내서 



양자내성암호별 최적화된 오픈소스 라이브러리가 배포되고 있는 사이트 주소이다.

[그림출처] KISA 양자컴퓨팅 환경에서의 암호기술 이용 안내서 



미리 미리 준비해야 하지 않을까 싶다.

좀 더 시간을 내서 양자내성암호 알고리즘을 하나씩 하나씩 파헤쳐 봐야 겠다.



양자컴퓨팅이란 무엇인가? 를 쉽게 설명하고 있는 동영상이 있어서 링크 걸어본다.

https://www.youtube.com/watch?v=8gWU0KLimNU


"KISA 양자컴퓨팅 환경에서의 암호기술 이용 안내서" 다운로드 링크도 걸어본다.

https://www.kisa.or.kr/public/laws/laws3_View.jsp?cPage=1&mode=view&p_No=259&b_No=259&d_No=96&ST=total&SV=



열공~~~ 화팅!!!!