본문 바로가기
세상논란거리/정치

[팩트체크] 민경욱이 공개한 '프로그램 코드'로 개표조작 가능할까?

by 체커 2020. 4. 27.
반응형

다음

 

네이버

 

'비주얼베이직'으로 작성된 소위 '조작코드' 게재.."2번에 투표시 1번 득표로"
현직프로그래머 "썼다면 에러 났을 것"..선관위 "총선엔 자바 프로그램 사용"

 

재검표 추진 의사 밝히는 미래통합당 민경욱 의원 [연합뉴스 자료사진] 인천범시민단체연합 회원과 미래통합당 민경욱 의원이 22일 오전 서울 여의도 국회 소통관에서 "4.15총선에서 부정선거 사례로 의심되는 정황이 있어 증거보전 신청과 재검표 등을 추진하겠다"고 밝히고 있다. 2020.4.22 jeong@yna.co.kr

(서울=연합뉴스) 임순현 기자 = 제21대 국회의원선거(총선)에서 낙선한 민경욱 미래통합당 의원이 자신의 SNS에 '개표조작의 개념도'라며 게재한 '개표 프로그램 코드'가 온라인상에서 화제다.

민 의원은 26일 자신의 페이스북을 통해 "이제 가능한 개표조작 프로그램의 간단한 코드까지 나왔다"며 정상적인 개표 프로그램 코드와 조작된 개표 프로그램 코드를 비교한 그림을 올렸다.

민 의원이 개표조작이 가능한 프로그램이라고 언급하며 게재한 프로그램 코드는 마이크로소프트사가 1991년 발표한 프로그래밍 언어인 '비주얼 베이직'(visual basic)으로 작성된 것이다. 비주얼 베이직은 인터페이스가 매우 쉽고 간편해 비전문가도 쉽게 활용할 수 있도록 만든 프로그래밍 언어로 알려져 있다.

 

민경욱 의원이 페북에 게재한 '프로그램 코드' [민경욱 의원 페이스북 캡처=연합뉴스]

게재된 프로그램 코드의 의미는 복잡하지 않다. 정상적인 개표 프로그램에서는 '1'이 입력되면 a에 1을 더하고, '2'가 입력되면 b에 1을 더한다는 내용이다. '1번'에 투표하면 a후보의 득표수에 1을 더하고, '2번'에 투표하면 b후보의 득표수에 1을 더한다는 의미다.

반면 조작된 개표 프로그램은 z라는 변수를 전제한 뒤 '2'가 입력되면 b가 아닌 z에 1을 더하도록 한다. 이어 Z가 1이나 2가 된 경우엔 b에 1을 더하고, z가 3인 경우엔 a에 1을 더한 뒤 z를 0으로 초기화하도록 한다. 즉 '2'를 입력하면 3차례 중 2차례는 b에, 한차례는 a에 1을 더하도록 한다. 2번을 찍으면 세 번 중 한번은 a후보의 득표수에 부정하게 산입된다는 것이다.

민 의원의 의혹제기를 검증하기 앞서 우선 개표시 사용되는 컴퓨터 프로그램의 역할에 대해 짚고 넘어갈 필요가 있다.

프로그램이 내장된 개표기는 각 후보자가 득표한 투표용지를 분류하는 것에 불과하기에 설사 민 의원이 게재한 프로그램 코드를 실제로 사용해 득표 결과를 조작했더라도 특정 후보를 찍은 투표용지는 남아있게 된다. 프로그램 조작만으로 '완전범죄'를 꾀할 수 없게 돼 있는 것이다.

이경전 경희대 빅데이터연구센터 소장은 27일 연합뉴스와 통화에서 "우리 선거 시스템에서 개표기는 득표수를 계산해주는 단순한 개수기에 불과하다"며 "프로그램을 조작했다고 실제 투표용지까지 바뀌는 것이 아니기 때문에 프로그램 코드를 통한 개표조작은 실현 가능성이 작다"고 지적했다.

 

민경욱 의원이 26일 페북에 게재한 글 [민경욱 의원 페이스북 캡처=연합뉴스]

그러면 개표기의 작동 원리 변경을 통해 결과를 조작하는 것이 가능은 할까?

투표 결과 조작이 가능하기 위해서는 프로그램 조작 정황이 특별한 전문지식을 갖춘 자가 아니라면 발견하기 어려울 만큼 정밀해야 한다는게 전문가의 지적이다.

김강일 건국대 컴퓨터공학과 교수는 연합뉴스와 통화에서 "비주얼 베이직은 30여년 전에 개발된 프로그래밍 언어로 현재는 거의 활용되지 않는다"며 "단언할 수는 없지만 단순한 프로그램에서나 사용하는 언어일 뿐 복잡한 프로그램에서는 사용되지 않는다"고 말했다.

그리고 무엇보다 민 의원이 게재한 프로그램 코드는 실제로는 작동될 수 없다는 지적이 나온다.

익명을 요구한 현직 프로그래머인 A씨는 연합뉴스와 통화에서 "그냥 말도 안 되는 프로그램 코드"라며 "(민 의원이 게재한 프로그램을 가동할 경우) 개표조작 코드는 3개의 값만 한 차례 출력하고 작동을 중단할 것이며, 정상 프로그램 코드도 결과 출력 단계에서 에러가 날 수 밖에 없다"고 말했다.

만약 정상적으로 작성돼 실제로 작동하는 프로그램 코드가 존재했다면 개표조작이 가능했을까?

일단 민 의원이 게재한 것과 같은 비주얼 베이직 기반 프로그램 코드로는 개표 조작 자체가 불가능하다. 총선 개표과정을 총괄하는 중앙선거관리위원회가 다른 프로그램을 개표에 사용하기 때문이다. 선관위 관계자는 연합뉴스와 통화에서 "21대 총선 개표에는 '자바'라는 고급 프로그램 코드가 사용됐다"며 "비주얼 베이직 프로그램의 코드로는 조작이 불가능하다"고 설명했다.

민경욱 의원은 연합뉴스와 통화에서 해당 프로그램 코드를 SNS에 게재한 이유에 대해 "여러 개표조작 가설 중 하나로, 프로그램 코드를 통한 조작이 가능하다는 것을 보여주기 위해 게재한 것"이라며 "실제로 개표조작에 사용된 프로그램 코드라는 취지는 아니다"고 말했다.


 

이젠 옛날에 쓰던 프로그래밍 언어가 나오네요..

 

일단 민경욱의원이 언급하면서 논란이 된 부분입니다.. 논란이 된 것인지 알기가 어렵지만..

 

민경욱의원이 프로그래밍 전문인도 아닐테고.. 어디선가 출처가 있을 것이라 생각했습니다.. 보도에선 비주얼베이직의 코드를 언급한 것이라 나왔지만 일부에선 GW베이직이라 반박하는 이들도 있습니다. 

 

모두 DOS시절 개발된 컴퓨터 언어입니다.. 

 

참고링크 : 비주얼 베이직(위키백과)

 

참고링크 : GW베이직(위키백과)

 

아마 민경욱의원이 밝혀졌다는 Code.. 유튜브에서 나오지 않았을까 싶네요..

7:41에서 처음 순서도가 나옵니다..

설명을 하는 이는 법치와자유민주주의연대(NPK)의 이사장인 맹주성 한양대 명예교수인것 같습니다..

 

일단 설명은 순서도에 따라.. 프로그래밍을 하여 어떻게 조작을 할 수 있는지 여부를 설명하는 내용입니다. 일부 인수값의 변화등으로 원하는 수치가 나오도록 하는 방식이라고 하네요..

 

근데 연합뉴스의 팩트체크에선 이 코드를 적용시켜 돌리면 오류가 난다고 보도하였습니다..김강일 건국대 컴퓨터공학과 교수의 인터뷰를 인용했네요..

 

언급된 코드 그 자체만으론 원하는 동작을 할 수 없다고 하네요..

 

프로그래밍 언어가 비주얼베이직이 아닌 GW베이직이라 할지라고 똑같이 적용되는지는 컴퓨터 프로그래밍을 전문으로 하는 이들이 잘 알지 않을까 싶습니다..

 

일단 보도에 의하면 개표기에 쓰인 프로그래밍 언어는 자바라고 합니다.

 

참고링크 : 자바(위키백과)

 

사실 이러쿵 저러쿵 따지는 것보다 가장 좋은 방법은 위의 코드를 가지고 직접 프로그래밍을 짜서 넣고 돌려보면 다 밝혀지지 않을까 싶습니다.. 제일 좋은 방법이죠.. 근데 원하는 결과는 못 얻을 것이라 생각합니다.. 

 

일단 개표절차를 보죠...

정작 중요한... 개표기 자체가 없네요..;; 결국 언급된 개표기는 투표지 분류기라는 걸 의미하지 않을까 싶습니다..아마 맞겠죠..

 

그리고 선관위에선 투표지 분류기에 대해 팩트체크라 하며 입장을 이미 내놓은 적이 있었습니다.

정작 투표지 분류기는 그저 표를 분류시키는 기계죠..정해진 후보자의 표만 모아놓는 기계입니다.. 투표지에 어떤 장난질을 하는 기계는 아닙니다.. 그리고 그리 모아놓은 표를 투표 계수기가 세어서 투표수가 나오면 입력하는 방식에 대부분의 단계에서 개표참관인이 지켜보고 확인하는데.. 여기서 무슨 조작질이 나올까 싶습니다.. 숫자를 바꿔 몇몇 후보의 투표지의 수가 바뀌는 것이 과연 가능한가 의문을 가질 수 밖에 없는 건데.. 투표지 분류기가 투표용지에 어떤 표식을 하는 것도 아니죠.. 

 

즉 개표한 표가 남기에 민의원이 신청한 재검표를 하게 된다면 어차피 다 밝혀질 겁니다.. 그땐 사람이 수작업을 하기에 여기에 들어가는 비용이 상당합니다.. 대부분 인건비이기 때문이겠죠.. 그래서 6000만원을 모금을 하여 확보한 뒤에 투표함 보전신청을 하고 이후 돈을 지불하고 재검표를 요구할 것으로 보입니다.. 

 

재검표를 한다는데 뭐라 할 생각 없습니다.. 재검표는 출마자로서 요구할 수 있는 권리입니다.. 다만 비용이 드는 걸 감당할 수 있으면 언제든 하면 되는 거죠.. 다만 역대 재검표중 잘못되었다 밝혀진 사례가 얼마나 될까 싶고 재검표 요구로 인해 당의 대표가 대표직을 내려놓을만큼 파장이 온 적도 있었습니다. 즉 이후 후폭풍을 감당할 자신이 있으면 하면 됩니다.. 대신 후폭풍은 재검표를 요구한 출마자 뿐만 아니라 소속된 당도 역풍을 맞겠죠...소속 당이 총선 불복을 한 것이라 보일테니까요.

 

어려운 말 섞어가며 일반인들은 잘 모르는 프로그래밍 언어에 순서도까지 언급하며 주장해도.. 결국 이를 이해하고 받아들이는 이들은 사실 얼마나 될까도 싶네요.. 아마도 그저 한마디를 듣고 싶었겠죠.. 투표 조작이다.. 선거조작이다.. 총선은 조작선거다.. 라는 말을 말이죠..

 

투표지 분류기가 개표수를 조작한다... 투표지 분류기에서 모든게 다 끝난다면 의심을 해 볼 수도 있겠지만 분류가 끝나고 사람이 직접 확인하고 계수하는데 무슨 프로그램으로 조작을 한다는 것이 좀 믿기가 힘드네요..

반응형

댓글