"말씀해주신 RSA 암호체계 중에서도 양자 컴퓨터로도 풀기 힘든 알고리즘을 사용하는 것들이 있습니다. 소인수 분해처럼 현재 컴퓨터로 푸는데 오래 걸리는 문제가 있고 그걸 암호에 이용하듯이 양자 컴퓨터로 푸는데 오래걸리는 문제가 있고 그걸 암호에 이용하는거죠. 이런 암호학을 quantum resistant cryptography (양자 컴퓨터에 대항할 수 있는 암호학)이라고 합니다. 그중에서 수학자들이 연구하는 대표적인 암호로 Lattice Cryptography (래티스 암호기법)과 Supersingular isogeny graph (슈퍼싱귤러 아이소제니 그래프)가 있는데 제가 공부하는 중이라 아는 Supersingular isogeny graph를 간단히 설명드리면 일반적인 암호학에서는 Hash function(해쉬 함수)라고 주어진 y값 (함숫값)에 대해 대응하는 x값 (대입값)을 알기힘든 함수 y=f(x)를 많이 사용하는데 Supersingular elliptic curve라는 특별한 elliptic curve(타원곡선, 식으로는 y^2=x^3+ax+b 꼴을 가지는 곡선입니다)를 이용해서 그래프 (이산수학에서 쓰는 점(vertic)들이 점들사이의 관계를 나타내는 선(edge)들로 연결되어있는 그 그래프입니다)를 그리면 한 점에서 시작해서 주변에 선(edge)으로 이어진 점들을 몇번 지나면 그래프에 다른 어느 점으로든 갈수 있는데 그래프 이론에서는 이를 연결되있다(connected)라고 하죠. 이렇게 한점에서 다른 점으로 이어진 선들을 경로라고 하는데 Supersingular isogeny graph는 주어진 두 점사이에 있는 경로를 찾기 힘듭니다. 이걸 이용해서 만든 해쉬 함수는 주어진 두 점이 y값이고 그 사이의 경로들이 x값이죠. 그러면 일반적인 해쉬 함수처럼 주어진 함숫값 (y값)을 주는 대입값(x값)을 찾기 힘들겠지요? 조금 더 보태서 Supersingular elliptic curve들을 이용해서 그래프를 그리는 방법에 대해 간단히 설명해드리겠습니다. Supersingular isogeny graph에서 각각의 점들은 특별한 타원곡선들 (Supersingular elliptic curve)을 나타냅니다. 예를 들어서 E1: y^2=x^3+2x+1, E2:y^2=x^3+3x+2라는 타원곡선이 두 개있으면 그게 그래프의 두 점(vertex) v1, v2이 되는거죠. 그리고 두 타원곡선 사이에 l-isogeny라는 특별한 map (그냥 함수라고 보시면 됩니다. 예를 들어서 f:E1 -> E2는 타원곡선 E1 위의 점을 하나 대입하면 또다른 타원곡선 E2 위의 점을 내놓죠)이 존재하면 두 점(vertex)를 선(edge)으로 이으면 됩니다. 이런 특별한 그래프에서 두 점 사이의 경로를 찾는건 양자 컴퓨터로 노가다를 뛰어도 시간이 오래 걸리고 그래서 암호에 사용할 수 있죠. 현재 암호학자들과 수학자들이 연구하고 있는것은 수학적으로 이런 경로를 쉽게 찾는 방법이 있는지 없는지 증명하는것입니다. 만약에 그런 쉬운 방법이 존재하면 이 방법은 암호로 쓸 수 없겠죠? 만약에 누군가 수학적으로 소인수분해를 쉽게하는 방법을 찾아내면 소인수분해의 어려움을 이용하는 암호체계는 현재의 컴퓨터로도 쉽게 뚫을 수 있는것과 마찬가지 입니다. 제가 설명드린 암호체계들은 아직 연구된지 얼마되지 않았고 연구하는 사람들도 그렇게 많지 않아서 전공분야에서 공부하는게 아니면 들어보기도 힘든 것들입니다. 그래서 정부주도하에 문제마다 각각 프로젝트로 팀을 꾸려서 연구되고 있고 누군가 이런 암호체계들이 이용하는 수학 문제가 어렵다는 것을 증명하면 그 사람은 부와 명성을 얻을겁니다 ㅎㅎ"