[image of a Brave GNU World]
Brave GNU World - Issue #52
Copyright © 2003 Georg C. F. Greve <greve@gnu.org>
Permission statement below.

[CN | DE | EN | FR | JA | ES | KO | PT | ZH]

Welcome to another issue of the Brave GNU World, more or less "late-live" from the LinuxTag in Karlsruhe, Germany, since there was no time before LT to get working on it.

e-Government -- sometimes referred to as e-Democracy -- is one of today's more controversial subjects. A large number of lobbies are looking into this topic. The European Commission has launched a special working group; some trade unions, like Ver.di [5] in Germany, have even organized congresses on e-Democracy, and the IT industry looks forward to increased revenue in future [6].

Generally speaking e-Democracy is designed to make government's working processes more flexible and transparent, reducing costs and increasing efficiency, and improving accessibility to the general public. One topic under the e-Democracy umbrella is e-Voting, and this is what the Sede Project [7] deals with.


Sede [7] is an acronym for "Secure Democracy". The goal of the project's initiator, Jos Boersema, is to create simple, but secure electronic voting mechanisms, that ensure the voter's anonymity and at the same time allow results to be validated, thus avoiding fraud.

The mechanism is fairly simple. Each voter receives a unique ballot code. The ballot code has an arbitrary length and is generated randomly to help prevent manipulation. Sede mails virtual ballot papers, including the ballot code, to the voters before the election. The voters can then use their email clients to return their votes to the voting server.

The voting server collects the votes and filters out duplicate and invalid votes. Each voter can then check her vote online to ensure that her vote has been counted correctly.

Voters can add comments and statements, and the ballot forms can be adjusted to comply with voter preferences. As an addition, Sede supports proportional representation.

The idea behind this project occurred to the author in November 2002, while looking into how a system based on a ballot form code might work. After some teething trouble the program proved its value and has been the subject of concentrated development activities ever since.

The project was written in C and Z shell script and is a free software program released under the GNU General Public License (GPL). Sede is a modular program that allows the use of other protocols instead of email. However, it still lacks a graphical front-end for Web access.

As already mentioned in issue 25 of Brave GNU World, this project is somewhat controversial. Many people question the security of this kind of mechanism and its implementation. Also, some people would prefer mechanisms of this kind not to be implemented at all.

As Jos' sees it, the problem is that many attempts have been made to complete imitate paper based ballot procedures using computer techniques. Of course the advantage here is that these programs do not actually leverage the potential of electronic data processing.

Non-voters are another important aspect. If an intruder managed to sniff the system's email messages, and discover the voter codes of non-voters, the intruder could exploit these codes.

The anonymity relies on there being no way to link voter codes to specific email addresses. But there can be no guarantee of this, as email messages are transferred across the Internet. An attacker could create a database of email addresses and voter codes, by sniffing the ballot documents on delivery.

Thus, the success of the project depends to a great extent on the implementation of the individual components. Of course, feedback mechanisms and email encryption could improve security drastically.

After all, paper-based methods also have some weaknesses, as some elections in highly developed western countries shown. In recent times we have seen that checks by volunteer civil helpers can do nothing about that.

Notwithstanding any potential weaknesses, the Sede Project is definitely an interesting contribution to the technical discussion taking place in this field.

Future development plans envisage enhancing the program to provide a compact and stable solution, and getting down to some serious debugging shortly. The next thing on the developers' list is encryption support and creating packages for various Linux distributions.

As usual, the project could do with some help to get all that work done. Jos welcomes feedback, and more help.

Online Voting: Sense or Nonsense?

But before going further into implementing online voting, it is warranted to think some more about whether online voting is (un)desirable.

People who advocate this new technology are convinced that it will allow quicker and more efficient elections. On its own merit, this would certainly not change the quality of the process of democratic decision making, although some objectors claim that computer votes would not be taken as seriously.

Things start getting really interesting when the promoters of a more direct form of democracy state that online voting would allow more elections to take place, and thus provide the people with more control over government.

This increases the danger of permanent election campaigns, and as experience shows, good politics and election campaigns do not typically go hand in hand. Especially necessary but unpopular decisions will probably not be made.

It always takes a while to go through coalition talks and take over the offices of government. This is why some people are in favor of having local elections at the same time as national elections.

Unfortunately, there is another reason to assume that more elections will not automatically improve the quality of democracy:

The votes themselves are not the most important aspect of an election. Every vote is preceded by an opinion and decision finding process in which the likely effects are examined and the long-term questions are considered.

A vote will only reap a qualitatively good result if every single voter has participated in that process before making a decision -- and that takes time.

But even today we find that professional politicians can often not participate in all decision finding processes they would have to be part of, even though they are usually only responsible for specific resorts and generally have very long working days.

Consequently, in a direct democracy it would be impossible for every single voter to go through a process of intensive reflection, even if the whole population were to do nothing else but think about politics. Thus, decisions are often based on an extremely superficial appreciation of a scenario, and this can be strongly influenced by rhetorical trickery. All of this impacts the quality of the decision made.

All of these considerations imply that more elections increase the tendency to more superficial short-term decisions. It would seem better to change the system in a way that allows politicians to actually participate in the decision finding processes they are responsible for.

However, finding a way of achieving that has very little to do with the question as to whether online voting is a good thing or nonsense, so let's get back to computer business, more specifically to the often maligned subject of backups.


Storebackup [8] by Heinz-Josef Claes stores data on hard disks; either locally, or on a remote computer using NFS. This allows you to create backups quickly and simply without investing in additional hardware.

Although tape backups provide an extremely secure solution (particularly if you keep the tapes in a safe in another building), hard disk backups do speed up and simplify the process of restoring your data.

Storebackup first saw the light of day about three years ago; at the time Heinz-Josef was regularly on the road with a laptop and on the lookout for a backup system that did not require too much in the line of resources and could use a parallel Zip drive with a low data transfer rate. This is why the program is designed to use as little hard disk space as possible and to simplify the process of restoring your data.

Storebackup uses hardlinks to ensure that identical files are only written to the backup disk once -- even across independent backup sets. Additionally, this approach leverages the benefits of incremental and full backups.

After completing an initial backup, any subsequent jobs only require the resources needed for an incremental backup. Despite this fact, each backup set includes the whole filesystem tree with all its files. Thus, when users need to restore data, there is no need to go through an arduous search procedures just to find a specific file.

As both the backup and restore procedures keep file permissions, a file manager can be used to restore some files. One disadvantage of using hardlinks is the fact that some assistance from the administrator is required at times. If multiple users have identical files, they may be unable to restore a file, as their file permissions do not allow this.

The individual backup steps are performed in parallel. For example, the program calculates MD5 checksums to identify identical files. Each user can also specify a pattern that Storebackup will use to select files for compression. The processes of creating hardlinks and copying large files also takes place simultaneously. To utilize multiprocessor systems more efficiently, copying and compression can also be performed in parallel.

The Storebackup Project includes analysis and restore tools, as well as a tool for managing individual backup sets, and deleting older backups. Furthermore, Storebackup generates useful logfiles.

The program was written in Perl and released under the GPL. A Debian package is available besides the source code, however, the package status is Testing and Unstable at the time of writing.

The project has already seen some production use. In many cases, it greatly simplifies users' tasks, such as the case of an employee required to edit quite sizeable spreadsheets and unfortunate tendency to destroy the spreadsheets at regular intervals. After switching to Storebackup, the time required to restore the spreadsheets dropped from two hours right down to two minutes.

When asked how he had achieved this, the administrator joked that he had been watching the employee quite closely and logging her activities. The employee only calmed down again after the admin had explained the real reason to her and was apparently able to laugh about the issue some time later.

Heinz-Josef plans to improve the routines for deleting old backups in future versions. He also plans to add a direct link between the analysis of a backup (when was the file modified? Is there an identical file somewhere?) and the restore process.

The other enhancements in the pipeline are "luxury items": backing up files, that are not directories, files, named pipes, symbolic or hard links.

Heinz-Josef would appreciate some help with the documentation. All the programs have a fairly advance help function, but there are no manpages available at present, for example.

That's it

So, that's all for this issue. As usual, I would appreciate feedback, questions, comments, and suggestions about interesting projects and new developments to the usual address [1].

[1] Send ideas, comments and questions to Brave GNU World <column@brave-gnu-world.org>
[2] Home page of the GNU Project http://www.gnu.org/
[3] Home page of Georg's Brave GNU World http://brave-gnu-world.org
[4] "We run GNU" initiative http://www.gnu.org/brave-gnu-world/rungnu/rungnu.en.html
[5] ver.di Kongress 07. - 09. Mai 2003: eDemocracy - eGovernment (German) http://www.governet.de/9465.html
[6] Heise.de: "E-Government als ein Motor der IT-Branche" ("eGovernment as a motor of it industry"") http://www.heise.de/newsticker/data/anw-08.07.03-001/
[7] Secure Democracy (SeDe) http://www.xs4all.nl/~joshb/c/
[8] Storebackup http://www.sf.net/projects/storebackup

[ previous issue | Brave GNU World home | next issue ]

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to gnu@gnu.org.
There are also other ways to contact the FSF.

Please send comments on Georg's Brave GNU World (in English or German) to column@gnu.org,
send comments on these web pages to webmasters@www.gnu.org,
send other questions to gnu@gnu.org.

Copyright (C) 2003 Georg C. F. Greve

Permission is granted to make and distribute verbatim copies of this transcript as long as the copyright and this permission notice appear.

Last modified: Fri Aug 29 13:01:18 CEST 2003