사전투표용지 QR코드에 들어있는 암호... 왜?
상태바
사전투표용지 QR코드에 들어있는 암호... 왜?
  • 정병진
  • 승인 2018.11.22 16:06
  • 댓글 0
이 기사를 공유합니다

<스카이 데일리> “특정인만 아는 치환암호”... 선관위 “일련번호 알아볼 수 없도록 16진수로 치환”

 

▲ 재외투표 QR코드와 국내 사전투표 QR코드의 차이 19대 대선 재외투표용지  QR코드와 국내 사전투표용지 QR코드를 QR코드 리더기로 스캔해 나타난 숫자
▲ 재외투표 QR코드와 국내 사전투표 QR코드의 차이, 19대 대선 재외투표용지  QR코드와 국내 사전투표용지 QR코드를 QR코드 리더기로 스캔해 나타난 숫자
ⓒ 스카이데일리 제공

 

 

선거관리위원회가 공직선거 사전투표용지에 일련번호 용도로 QR코드를 사용하는 가운데 현행 사전투표지 QR코드에 '치환암호'(각 문자를 다른 문자로 바꾸는 암호)가 들어있다는 주장이 나왔다.

인터넷 매체 <스카이 데일리>는 13일 익명의 제보자를 인용해 "중앙선관위가 부여한 QR코드 각 자릿수의 아라비아 숫자 또는 알파벳에 부여된 숫자에서 5를 빼면 또 다른 형태의 숫자가 나타난다"고 보도했다.

현행 공직선거법은 사전투표용지 작성과 관련하여 "투표용지에 인쇄하는 일련번호는 바코드(컴퓨터가 인식할 수 있도록 표시한 막대 모양의 기호를 말한다) 형태로 표시하여야 하며, 바코드에는 선거명, 선거구명, 관할 선거관리위원회명을 함께 담을 수 있다"(제151조)고 규정한다.
   

바코드와 QR코드 안행위 보고서에 예시한 바코드와 QR코드
▲ 바코드와 QR코드 안행위 보고서에 예시한 바코드와 QR코드
ⓒ 안행위 보고서 캡처


 



하지만 선관위는 이 법령과 달리 일련 번호를 막대모양 기호인 바코드 형태가 아닌 QR코드로 표시해 국회 안전행정위원회(아래 안행위) 전문위원에게서 "법령에 부합하지 않는 측면이 있는 QR코드 사용을 재검토"해야 한다는 지적을 받은 바 있다(관련기사: "사전투표지 QR코드는 법 위반 소지 있어" http://www.netongs.com/news/articleView.html?idxno=107465 )

그런데 여기에 더해 사전투표용지 QR코드에 16진수 치환암호가 들어있다는 것이 <스카이 데일리>의 보도 내용이다.

치환암호란

사전투표용지 QR코드를 QR코드 리더기로 스캔하면 아라비아 숫자와 알파벳이 뒤섞인 여러 기호가 나온다.

<스카이 데일리>에 따르면 2017년 대선 때 사용한 사전투표용지의 QR코드는 총 34자리의 숫자와 알파벳이 들어있다. 여기서 1~13 자리는 선거명, 14~20 자리는 선거구명, 21~24 자리는 관할위원회명, 25~31자리는 투표용지 매수 확인을 위한 일련번호, 마지막 3자리는 투표용지 길이다. <스카이 데일리>는 이중 "투표용지 매수 확인을 위한 일련번호 구간인 25~31자리에 특정인만 아는 치환 암호가 숨겨져 있다"고 주장했다. 
  

사전투표용지 20대 총선 당시 사전투표용지
▲ 사전투표용지 20대 총선 당시 사전투표용지
ⓒ 정병진


 



이 매체는 2017년 대선 당시 사전투표지 암호 558658E, 5586ACC, 558BA76의 경우 자릿수에서 5를 빼고 알파벳 역시 16진수로 기존에 부여된 숫자(A=10, B=11, C=12, D=13, E=14, F=15)에서 각각 5를 뺀 결과인 0031039, 0031577, 0036521이 암호라는 제보자의 말을 보도했다.

이 매체는 그러면서 일반 선거인은 QR코드 리더기로 투표지를 스캔하더라도 이 암호를 판독하기 힘들기에 이는 "특정인만 알 수 있는 암호"라고 주장했다.

교부한 투표용지보다 더 많이 들어와도 검증 못해 

이럴 경우 전국의 각 개표장에서 개표 참관인이 한 투표구에서 교부한 투표용지보다 더 많은 투표용지가 들어와 이의 제기를 해도 개표 현장에서는 그것을 검증할 방법이 마땅치 않게 된다. 정확한 교부 매수를 알려면 치환 암호를 풀어 일련번호를 확인할 필요가 있는데 각 지역 선관위에서는 그 암호를 판독할 사람이 없기 때문이다. 

익명을 요구한 QR코드 전문가는 21일 기자와 한 통화에서 관련 의혹에 대해 다음과 같은 견해를 밝혔다. 

"선거인의 투표용지에 적는 QR코드를 '난수'(亂數, random number)를 발생시켜 넣은 거라면 그거는 선관위 쪽 관리자 영역에서 얼마든지 변경, 추가할 수 있는 여지가 있을 거다. 이거는 QR코드 문제가 아니다. 유권자와 투표용지가 1:1로 매치가 돼야 하는데 관리자 영역에서 얼마든지 추가로 발행할 수 있다는 얘기다. 근본적인 문제다. 큐알코드에 난수를 넣은 경우 반드시 해석하게 돼 있다. 그거를 해석해 보면 일단 규칙이 있다. 난수에 해당되는 부분은 어떻게 하면 된다는 그런 규칙 말이다. 그 규칙에 해당되는 부분은 소수, 즉 프로그램을 한 사람 밖에 알 수 없다. 

일반투표는 일련번호를 떼고 투표용지를 교부하기에 1:1로 추적할 수 없다. 근데 사전투표용지는 QR코드라는 매개체가 있다. 그러니까 1:1로 추적을 할 수 있다. 뿐만 아니라 그 안에 들어가서 투표용지를 10개, 20개, 100개 추가로 발행을 한다면 그거를 알아차릴 방법이 있느냐는 거다. 그렇다면 처음부터 (그런 QR코드 형태의 사전투표용지를) 구성한 자체가 문제가 되는 거고 그것을 증명하려면 현재 선관위에 있는 호스팅 서버에 들어가서 프로그램을 확인해야 한다. 현재로선 그럴 여지가 있다는 거고 정말 그런지는 직접 들어가서 확인해야 안다."


이에 대해 다년간 해당 업무에 종사한 한 선관위 관계자는 15일과 21일 기자와 한 통화에서 "(사전투표용지를 교부할 때) 법에 일련번호를 절취하라고 돼 있는데 왜 일련번호를 절취하지 않고 주느냐고 시비 거는 분들이 있어서 일련번호를 쉽게 알아볼 수 없도록 셈을 한 거고 암호화가 아니라 숫자를 16진수로 치환을 한 것뿐"이라며 관련 의혹을 일축했다.

그는 또 사전투표지의 일련번호가 16진수로 돼 있다는 사실을 각 지역선관위에 알려주지 않은 이유에 대해 "우리 직원조차 한 명이라도 이 규칙을 덜 아는 게 낫기 때문이다. 쉽게 알아보지 못하게 하기 위해 일부러 마스킹한 거를 누가 쉽게 알려주려 하겠느냐"라고 말했다.

이어 "필요가 있어서 일련번호를 확인해야 한다면 그 규칙을 공개해서 '이렇게 계산 하십시오'라고 하면 끝나는 문제다. QR코드로 특정인의 투표 결과를 추적하는 것도 불가능하다. (사전투표의) 일련번호는 선거인 명부 번호순에 따라 주는 게 아니라 사람과 관계 없이 부여한다. 오는 순서를 기록 못하면 누구의 표인지 알 수 없다"라고 설명하였다. 

사전투표용지의 일련번호를 절취하지 않고 교부하는 이유에 대해서는 다음과 같이 설명했다. 

"일반투표는 투표소에서 100매 묶음의 투표지를 준비해 뒀다가 본인 확인 이후 바로 교부한다. 하지만 사전투표는 본인 확인 이후 엔터를 치면 투표용지가 나오기 시작한다. 지방선거의 경우는 7장이 나오는데 45초가 걸린다. 그걸 자를 대고 절취하기 시작하면 시간이 더 늘어난다. 또 잘못 자르면 어떻게 되느냐. 그렇게 절취할 수 없으니 큐알코드로 가자고 한 거다. 선거인 대기열을 줄이고 빨리 교부를 하기 위해서다."

 
기자가 13일 중앙선관위 한 간부 직원에게 사전투표 QR코드 암호의 의미에 대해 물었을 때 그는 "전산으로 통계 같은 걸 내려다 보면 그런 게 필요해 넣은 거 같은데 담당 업무가 아니라 정확히는 잘 모르겠다"고 하였다.

앞서의 선관위 관계자에게 "선관위 내부 직원조차 (치환 암호의) 의미를 잘 모르더라"라며 사전투표지 QR코드에 담긴 치환 암호 의미를 아는 사람은 실제로 극소수인지 물었다.

그는 "중요한 사안이 아니다 보니까 전파가 덜 됐을 수도 있을 거 같다"라며 "(QR코드는 현행법에 규정된 바코드가 아니라는) 관련 소송이 진행 중이라 지금은 소송을 진행하는 과정에서 연관 업무에 있는 분들은 알 거 같다"고 말했다.

이어 "(어떤 사람이 관련) 소청을 제기했으나 소청은 기각됐다. 다시 그 사람이 소송을 건 걸로 안다. 그 판결 나오면 판결에 따라서 생각을 하시면 될 거 같다"고 덧붙였다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.