Привет хабрачитатель!
Ниже я хотел бы рассказать о своём опыте электронного голосования на Ubuntu 9.04. Тема электронного голосования и электронной идентификации в Эстонии на хабре не нова: здесь уже писали о возможностях так называемой ИД-карты, об одних из первых в мире электронных выборах и даже показывали картинки процесса, но на Windows.
Не буду повторяться и скажу, что подробней ознакомиться с технологией ИД-карты можно по выше указанным ссылкам. А дальше будет описан процесс настройки ИД карты под Убунту и сам процесс голосования с картинками. Может быть кому-то будет интересно.
Моя система уже была настроена для работы с ИД-картой. Но чтобы утолить интерес, примерно опишу процесс.
Процесс настройки описан на специальной вики (на эстонском).
Прежде всего необходим считыватель, который заработает с linux. Список устройств есть на вики. Ситуация такова, что в продаже имеются считыватели работающие на всех поддерживаемых операционках. Считыватели стоят от 6 до 10 евро и продаются в компьютерных магазинах, банковских конторах и почтовых отделениях.
Получив считыватель, можно приступить к настройке софта. Для Ubuntu и Fedora есть странички с описанием процесса.
1 Необходимо установить OpenSC
2 Необходимо настроить Java. На данный момент открытая ява поставляемая с дистрибутивом не содержит необходимой реализации работы с сертификатами. Поэтому необходимо установить вариант от Sun
3 После этого нужно отредактировать файл /etc/opensc/opensc.conf и убедиться в присутствии данных настроек:
4 Обновив настройки, перезапускаем pcscd
5 Проверяем, запустился ли сервис:
6 И, момент истины, проверяем считыватель:
получаем ответ:
7 Можно вставить ИД-карту и проверить её:
получаем список сертификатов на карте. Их всего два: 1) определение личности 2) электронная подпись:
Данная система поддерживает браузеры на основе Mozilla/Firefox. Опять же список есть на вики.
На странице имеется список сертификатов аутентификации для основных государственных порталов. Они устанавливаются простым кликанием на них.
Затем нужно сообщить браузеру где находится модуль opensc. Для этого имеется готовый список для популярных дистрибутивов и волшебная кнопка подгрузки.
Теперь мы можем заходить в интернет банки, на различные гос. порталы и другие страницы поддерживающие ИД-карту
Дигитальная подпись работает при помощи Java. Инструкции на вики.
1 Необходимо выяснить куда установлена последняя версия Java. На Ubuntu 9.04 это
2 Переходим в каталог библиотек Java и устанавливаем libpkcs11wrapper
Данный пункт нужно повторять с каждым обновлением явы (естественно в правильном каталоге явы — самом свежем).
3 Необходимо сделать линки для библиотеки
Теперь мы можем давать электронную подпись в интернет банках, на различных гос. порталах и участвовать на электронных выборах.
Если честно, голосовать не хотелось т.к у всех партий и списков есть свои большие недостатки, а партия пиратов ещё не участвывает в выборах.
Но технический интерес возобладал :)
Для начала нужно было зайти на портал голосования и идентифицироваться.
Добро пожаловать!
Вы попали на страницу электронного голосования
Имя, личный код (изменён)
Если вы готовы, жмите кнопку снизу. Edasi = Next
На следующей странице предлагается скачать клиент для голосования
Качаем, проверяем, запускаем. Судя по всему без явы опять не обошлось. Програмка выглядит также как ActiveX компонент (или всё же ява апплет?) при голосоании на Windows.
Добро пожаловать на э-голосование. Для загрузки списка кандидатов убедитесь, что ИД карта установлена в считыватель и нажмите кнопку «Загрузить списки»
Как ни странно списки не появляются. Программа просит опознать себя при помощи кода PIN 1. Затем пользователя предупреждают о том, что голос поданный электронно учитывается так же как поданный на бумаге.
Жмём Otsustama (решать) и получаем список кандидатов. Система сама определяет где ты прописан и даёт список твоего участка.
Выбираем и жмём Valin (выбираю)
Для подтверждения выбора нажмите «Hääletan» (голосую). Для изменения выбора нажмите Tagasi (назад).
Для подтверждения выбора программа спросит вас код для дигитальной подписи PIN 2 от ИД-карты
Кого вы выбираете в местное собрание?
Мой выбор: номер, имя, партия
Жмём кнопку и голос уходит в просторы интернета. Далее программа сообщает о важных датах этих выборов и просит себя закрыть.
Неизвестно где и как хранится мой выбор. Остаётся только надеяться, что всё зашифровано и приватность сохранена.
У данного метода есть большие недостатки, о которых идут споры. Голосовать можно с любого компьютера с доступом в интернет и заинтересованные люди могут организовать скупку голосов и проверять результат голосования на страничке подтверждения выбора. Избирательная комиссия подтвердила, что нахождение двух человек в будке для голосования — нарушение, а нахождение нескольких человек за компьютером в момент голосования — нет.
Несколько партий организовывали мобильные участки для голосования и находились те, кто голосовал не отходя от кассы подарков (шоколадки и шарфики). Вот такая она дигитальная демократия…
Но всё же данная система хороша экономией бумаги и быстрым подсчётом голосов. Надеюсь в будущем голосовать можно будет только с приватных будок установленных на участках для голосования (по традиции в школах и детских садиках). А может даже в торговых центрах, почему бы и нет?
Электронные выборы в органы местного самоуправления закончились 14 октября и в них приняло участие 104 415 человек (21.6% обладающих правом голоса). Перерыв в 4 дня (сами выборы были 18 октября) скорее всего необходим для отметки на участках людей проголосоваших электронно.
Наконец за выборами можно было следить на твиттере избирательной комиссии. Опять же на эстонском :(, но google translate в помощь, может ещё и посмеяться получится.
Update: как вёлся подсчёт голосов можно узнать тут (mirror). Пишут что база надежно защищена.
PS по голове не бить, первый пост на хабре :)
Ниже я хотел бы рассказать о своём опыте электронного голосования на Ubuntu 9.04. Тема электронного голосования и электронной идентификации в Эстонии на хабре не нова: здесь уже писали о возможностях так называемой ИД-карты, об одних из первых в мире электронных выборах и даже показывали картинки процесса, но на Windows.
Не буду повторяться и скажу, что подробней ознакомиться с технологией ИД-карты можно по выше указанным ссылкам. А дальше будет описан процесс настройки ИД карты под Убунту и сам процесс голосования с картинками. Может быть кому-то будет интересно.
Настройка системы
Моя система уже была настроена для работы с ИД-картой. Но чтобы утолить интерес, примерно опишу процесс.
Процесс настройки описан на специальной вики (на эстонском).
считыватель
Прежде всего необходим считыватель, который заработает с linux. Список устройств есть на вики. Ситуация такова, что в продаже имеются считыватели работающие на всех поддерживаемых операционках. Считыватели стоят от 6 до 10 евро и продаются в компьютерных магазинах, банковских конторах и почтовых отделениях.
Получив считыватель, можно приступить к настройке софта. Для Ubuntu и Fedora есть странички с описанием процесса.
1 Необходимо установить OpenSC
sudo apt-get install opensc pcscd libccid
2 Необходимо настроить Java. На данный момент открытая ява поставляемая с дистрибутивом не содержит необходимой реализации работы с сертификатами. Поэтому необходимо установить вариант от Sun
sudo apt-get install sun-java6-plugin sun-java6-fonts
sudo update-java-alternatives -s java-6-sun
3 После этого нужно отредактировать файл /etc/opensc/opensc.conf и убедиться в присутствии данных настроек:
try_emulation_first = yes;
lock_login = false;
reader_drivers = pcsc, ctapi;
4 Обновив настройки, перезапускаем pcscd
sudo /etc/init.d/pcscd restart
5 Проверяем, запустился ли сервис:
ps ax | grep pcscd
6 И, момент истины, проверяем считыватель:
opensc-tool --list-readers
получаем ответ:
Readers known about:
Nr. Driver Name
0 pcsc OmniKey CardMan 1021 00 00
7 Можно вставить ИД-карту и проверить её:
pkcs15-tool --list-certificates
получаем список сертификатов на карте. Их всего два: 1) определение личности 2) электронная подпись:
X.509 Certificate [Isikutuvastus]
Flags : 0
Authority: no
Path : 3F00EEEEAACE
ID : 01
X.509 Certificate [Allkirjastamine]
Flags : 0
Authority: no
Path : 3F00EEEEDDCE
ID : 02
Настройка браузера
Распознание личности
Данная система поддерживает браузеры на основе Mozilla/Firefox. Опять же список есть на вики.
На странице имеется список сертификатов аутентификации для основных государственных порталов. Они устанавливаются простым кликанием на них.
Затем нужно сообщить браузеру где находится модуль opensc. Для этого имеется готовый список для популярных дистрибутивов и волшебная кнопка подгрузки.
Теперь мы можем заходить в интернет банки, на различные гос. порталы и другие страницы поддерживающие ИД-карту
Дигитальная подпись
Дигитальная подпись работает при помощи Java. Инструкции на вики.
1 Необходимо выяснить куда установлена последняя версия Java. На Ubuntu 9.04 это
/usr/lib/jvm/java-6-sun-1.6.0.16
2 Переходим в каталог библиотек Java и устанавливаем libpkcs11wrapper
cd /usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/i386
wget ideelabor.ee/downloads/pkcs11wrapper-linux.tar.gz -O - | sudo tar zxf -
Данный пункт нужно повторять с каждым обновлением явы (естественно в правильном каталоге явы — самом свежем).
3 Необходимо сделать линки для библиотеки
sudo ln -sf /usr/lib/opensc-pkcs11.so /usr/lib/libopensc-pkcs11.so
sudo ln -sf /usr/lib/opensc-pkcs11.so /usr/lib/libesteid-pkcs11.so
Теперь мы можем давать электронную подпись в интернет банках, на различных гос. порталах и участвовать на электронных выборах.
Голосование
Если честно, голосовать не хотелось т.к у всех партий и списков есть свои большие недостатки, а партия пиратов ещё не участвывает в выборах.
Но технический интерес возобладал :)
Для начала нужно было зайти на портал голосования и идентифицироваться.
Добро пожаловать!
Вы попали на страницу электронного голосования
Имя, личный код (изменён)
Если вы готовы, жмите кнопку снизу. Edasi = Next
На следующей странице предлагается скачать клиент для голосования
Качаем, проверяем, запускаем. Судя по всему без явы опять не обошлось. Програмка выглядит также как ActiveX компонент (или всё же ява апплет?) при голосоании на Windows.
Добро пожаловать на э-голосование. Для загрузки списка кандидатов убедитесь, что ИД карта установлена в считыватель и нажмите кнопку «Загрузить списки»
Как ни странно списки не появляются. Программа просит опознать себя при помощи кода PIN 1. Затем пользователя предупреждают о том, что голос поданный электронно учитывается так же как поданный на бумаге.
Жмём Otsustama (решать) и получаем список кандидатов. Система сама определяет где ты прописан и даёт список твоего участка.
Выбираем и жмём Valin (выбираю)
Для подтверждения выбора нажмите «Hääletan» (голосую). Для изменения выбора нажмите Tagasi (назад).
Для подтверждения выбора программа спросит вас код для дигитальной подписи PIN 2 от ИД-карты
Кого вы выбираете в местное собрание?
Мой выбор: номер, имя, партия
Жмём кнопку и голос уходит в просторы интернета. Далее программа сообщает о важных датах этих выборов и просит себя закрыть.
Неизвестно где и как хранится мой выбор. Остаётся только надеяться, что всё зашифровано и приватность сохранена.
У данного метода есть большие недостатки, о которых идут споры. Голосовать можно с любого компьютера с доступом в интернет и заинтересованные люди могут организовать скупку голосов и проверять результат голосования на страничке подтверждения выбора. Избирательная комиссия подтвердила, что нахождение двух человек в будке для голосования — нарушение, а нахождение нескольких человек за компьютером в момент голосования — нет.
Несколько партий организовывали мобильные участки для голосования и находились те, кто голосовал не отходя от кассы подарков (шоколадки и шарфики). Вот такая она дигитальная демократия…
Но всё же данная система хороша экономией бумаги и быстрым подсчётом голосов. Надеюсь в будущем голосовать можно будет только с приватных будок установленных на участках для голосования (по традиции в школах и детских садиках). А может даже в торговых центрах, почему бы и нет?
Электронные выборы в органы местного самоуправления закончились 14 октября и в них приняло участие 104 415 человек (21.6% обладающих правом голоса). Перерыв в 4 дня (сами выборы были 18 октября) скорее всего необходим для отметки на участках людей проголосоваших электронно.
Наконец за выборами можно было следить на твиттере избирательной комиссии. Опять же на эстонском :(, но google translate в помощь, может ещё и посмеяться получится.
Update: как вёлся подсчёт голосов можно узнать тут (mirror). Пишут что база надежно защищена.
PS по голове не бить, первый пост на хабре :)