쉬운 설명 · 전체 7부 중 7부
표준이 오래가는 이유

오늘 만든 증명이 삼십 년 뒤에도 여전히 통해야 할 수 있습니다. 최초 라는 주장을 수십 년이 지난 뒤에도 여전히 확인할 수 있어야 하는 어느 과학적 발견을 떠올려 보십시오. 또는 서명한 사람들이 이미 오래전에 떠나 버린 뒤에도 누군가가 반드시 검증해야 하는 계약서 보관소를 떠올려 보십시오. 그런 증명이라면 "오늘은 작동한다"는 것만으로는 충분하지 않습니다. 아무도 아직 내다볼 수 없는 미래 속에서, 한참 앞날까지 계속 작동해야 합니다.
이것은 현실의 문제입니다. 이러한 증명의 바탕에 있는 수학이 한자리에 머물러 있지 않기 때문입니다.
좋은 방식도 영원히 좋은 채로 남지는 않습니다
모든 암호 방식은 하기는 쉽지만 되돌리기는 사실상 불가능한 어떤 계산 위에 놓여 있습니다. 시간이 흐르면 두 가지 일이 일어납니다. 컴퓨터는 빨라지고 연구자는 더 영리해지므로, 반석처럼 보이던 방식도 서서히 약해질 수 있습니다. 그리고 이전의 무엇보다도 강한, 완전히 새로운 방식이 발명됩니다.
그래서 정직한 표준이라면 어떤 표준이든 한 가지 냉엄한 사실과 마주하게 됩니다. 오늘 쓸 수 있는 최선의 방식이 영원히 최선의 방식으로 남지는 않는다는 사실입니다. 새롭고 더 나은 것은 언제나 다가오고 있습니다.
한 가지 방식을 못 박아 두는 것이 왜 함정인가
"언제나 바로 이 방식만 쓰라"고 못 박아 정한 표준을 상상해 보십시오. 그것은 훌륭하게 작동합니다. 그 방식이 약해지기 전까지는 말입니다. 그렇게 되면 옴짝달싹 못 하게 됩니다. 더 나은 것으로 옮겨 가려면 규칙을 다시 쓰고, 모두가 같은 날에 전환하도록 하고, 게다가 옛 규칙 아래에서 만들어진 증명을 하나도 빠짐없이 어떻게든 처리해야 합니다. 그런 "모두가 한꺼번에 바꾼다"는 순간이야말로 역사를 끊어 놓고 오래된 레코드를 버려두는, 바로 그런 부류의 일입니다. 그런 식으로 만들어진 표준은 세상에 나온 그 순간부터 조용히 썩어 가고 있는 것입니다.
Label 309는 애초에 고정된 방식을 하나도 지목하지 않음으로써 이 함정을 통째로 비껴갑니다.
계속 더해 가는 목록
한 가지 방식을 박아 넣는 대신, Label 309는 각 방식을 개방형 목록, 곧 레지스트리에서 가져온 이름 으로 참조합니다. 부품 카탈로그 같은 것이라고 생각해 보십시오. 모든 증명은 자신이 어떤 "부품"으로 만들어졌는지를 — 어떤 방식이 지문을 떴는지, 어떤 방식이 봉인했는지, 어떤 방식이 서명했는지를 — 이름으로 기록합니다.
부품 종류마다 별도의 카탈로그가 있고(해시용 하나, 봉인용 하나, 서명용 하나, 이런 식으로), 어느 하나에 손을 대는 것은 엄밀히 추가 일 뿐입니다.
- 새 방식은 공개 참조 문헌(RFC, NIST 간행물 따위)을 갖춘, 실재하는 공개 표준이어야 합니다 — 자체 제작 암호는 허용되지 않습니다.
- 그 방식은 카탈로그에서 새 이름을 부여받으며, 그 동작을 정확히 못 박는 테스트가 함께 붙습니다.
더 강한 방식이 나타나도 카탈로그를 찢어 버리거나 옛 페이지를 다시 인쇄하지 않습니다. 새 페이지를 한 장 더할 뿐입니다. 옛 페이지는 언제까지나 바로 그 자리에 그대로 남습니다. 그리고 여기에 조용히 영리한 대목이 있습니다. 지금까지 만들어진 모든 증명은 자기 페이지에 원래의 부품을 적은 채로 보존됩니다. 오래된 증명을 찾아보면, 카탈로그는 지금도 그것을 정확히 어떻게 확인하면 되는지 알려 줍니다. 그 부품은 결코 제거된 적이 없고, 더 새로운 것이 곁에 더해졌을 뿐이기 때문입니다.
그래서 두 가지가 동시에 참이 됩니다.
- 오래된 증명은 계속 검증됩니다. 몇 년 전에 만들어진 증명도 여전히 카탈로그에 남아 있는 방식을 지목하므로, 만들어진 그날과 똑같이 오늘도 확인됩니다.
- 새 증명은 가장 최신의 방식을 고를 수 있습니다. 새로 증명을 만드는 사람은 목록에서 더 새로운 이름을 고르기만 하면 됩니다.
전환을 일제히 시행하는 날 같은 것은 없습니다. 모두가 함께 갈아타야 하는 순간도 없습니다. 역사가 끊기는 일도, 산더미 같은 오래된 레코드를 변환하느라 허둥대는 일도 없습니다. 그 변경은 순수한 추가 — 목록에 더해진 새 항목 — 이지, 결코 교체가 아닙니다. 항목 하나를 더한다고 해서 포맷의 버전이 바뀌는 일조차 없습니다. 새 이름을 들어 본 적 없는 검증자는 충돌하거나 어림짐작하는 대신, "그건 아직 지원하지 않습니다"라고 깔끔하게 말할 뿐입니다.
양자라는 도약도 마찬가지로 일어납니다
강력한 새 컴퓨터가 언젠가 오늘날의 암호 일부를 깨뜨릴 수 있다는 이야기를 들어 보셨을지도 모릅니다. (바로 그 주제를 다룬 관련 글이 있습니다.) 안심이 되는 점은, Label 309에서는 그것에 맞서는 데 특별한 구제 계획이 전혀 필요 없다는 것입니다 — 다른 모든 개선과 똑같은 동작입니다. 새로운, 양자 내성을 지닌 방식을 카탈로그에 이름으로 추가하는 것입니다. 사실 그 일은 이미 한 번 일어났습니다. 포스트 양자 봉인 방식이 고전적인 방식 바로 옆에 추가되어, 새 레코드는 오늘 그것을 택하고 오래된 것들은 손대지 않은 채 그대로 이어집니다. 바닥부터 다시 짓기를 요구할 것처럼 들리는 위협도, 막상 열어 보면 카탈로그의 또 한 페이지에 지나지 않았던 것입니다.
자신의 방식보다 오래 살아남도록 만들어졌습니다
어떤 증명 안의 방식이든 언젠가는 퇴역하기 마련입니다 — 그것은 정상이며, Label 309는 그것을 예상하고 있습니다. 오래 남는 것은 카탈로그 그 자체입니다. 오직 더하기만 하는 개방형 레지스트리의 집합이며, 거기서는 모든 증명이 자신의 원래 부품을 언제까지나 기록으로 간직합니다. 오래된 증명을 하나도 버려두지 않고 어떻게 자라나는지는 알고리즘 레지스트리를 참고하십시오.