Grass Roots Democracy Machine
Grass Roots Democracy Machine
english below
Das System basiert auf PHP, MySQL, GPG und Linux und ermöglicht sowohl eine geheime, als auch eine öffentlich nachprüfbare Abstimmung.
Das System besitzt nachvollziehbare Abstimmungen, bei denen jeder nur eine
Stimme hat. Dies wird durch eine Authentifizierung ermöglicht.
Eine neue Abstimmungsfrage kann jedes Mitglied erstellen. Bei der Abstimmung wird ein Pseudozufallscode erstellt, mit dem die abgegebene Stimme in der Abstimmliste eingetragen wird. Jede Entscheidung wird mit einem individuellen und vom Benutzer zu wählenden Entscheidungsschlüssel versehen und veröffendlicht. Dies gibt dir die Möglichkeit zu überprüfen, dass Deine Entscheidung nicht manipuliert wurde. Gleichzeitig kann niemand außer Dir den Entscheidungsschlüssel mit deiner Entscheidung in Verbindung bringen. Auch das System speichert keine Informationen darüber wer welche Entscheidungen getroffen hat.
Auswahlfrage
Hier musst Du einzelne Punkte vorgeben, die im Beispiel mit "mehr grün", "mehr rot" bzw. "mehr gelb" angegeben sind. Du kannst beliebig viele Punkte mit eigenen Texten angeben, solltest aber nur soviele Punkte angeben, wie benötigt werden. Auch solltest du drauf achten, dass Deine Punkte zu deiner Frage passen. Wie das für den "Entscheider" aussehen könnte siehst Du in der Abbildung 2.
Der "Entscheider" gibt zu jedem Punkt wieder an, ob er ihm zustimmt ("Ja"), ihn ablehnt ("Nein"), sich in dem Punkt enthält ("Enthaltung") oder eine ungültige Stimme ("Ungültig") abgeben möchte. Der Entscheider hat dabei eine Stimme pro Punkt. Auch das sieht man in Abildung 2.
Gewichtete Auswahlfrage
Diese Frageart ist ähnlich zur "Auswahlfrage", jedoch mit dem Unterschied, dass der Entscheider eine Gewichtung der Antworten vorgibt. So sortiert er ihm wichtig erscheinende Punkte weiter nach oben, unwichtigere nach unten und gibt zu jedem Punkt wieder an ob er ihm zustimmt ("Ja"), ihn ablehnt ("Nein"), sich in dem Punkt enthält ("Enthaltung") oder eine ungültige Stimme ("Ungültig") abgeben möchte. Der Entscheider hat dabei eine Stimme pro Punkt.
Umverteilungsfrage
Ein Gut (siehe Beispiel) mit vorgegebener Menge kann prozentual oder absolut auf verschiednen Posten (im Beispiel Inge, Heinz, Gudrun und Peter) verteilt werden. Der Entscheider hat dabei eine Stimme pro Posten. (siehe Abbildung 3)
Hinweiss zu Entscheidungsschlüsseln Damit das Wahlgeheimnis auch erhalten bleibt, sollte man keine Verbindung zwischen deinem Entscheidungsschlüssel und dir herstellen können. Wähle also keinesfalls Teile Deines (Benutzer-)Namens oder persönliche Informationen. Zufällige Kombinationen aus Zahlen, Buchstaben und Sonderzeichen sind dafür ideal.
Entscheidungsschlüssel
Hierbei kann der "Entscheidungsschlüsselrechner" helfen. Gib einfach in das Feld "Rechnereingabe" einen beliebigen Text ein und klicke anschliessend auf "Entscheidungsschlüssel berechnen". Mit Hilfe des MD5-Algorithmus wird aus Deinem Text eine 32 Zeichen lange Zahlen- und Buchstabenkombination errechnet, von der nicht mehr auf deinen Eingabetext zurückgeschlossen werden kann. Der berechnete Schlüssel wird automatisch in das Feld "Entscheidungsschlüssel" übernemmen. Da der Schlüssel auf deinem Computer berechnet wird, brauchst Du einen Browser mit aktiviertem JAVASCRIPT. (siehe Abbildung 4)
Jede Entscheidung wird mit dem individuellem und vom Benutzer zu wählenden Entscheidungsschlüssel versehen und veröffentlicht. Dies gibt dir die Möglichkeit zu überprüfen dass deine Entscheidung nicht manipuliert wurde. Gleichzeitig kann niemand außer dir den Entscheidungsschlüssel mit deiner Entscheidung in Verbindung bringen. Auch das System speichert keine Informationen darüber, wer welche Entscheidung getroffen hat. (siehe Abbildung 5)
Es ist kein Zusammenhang zwischen dem Pseudozufallscode und einem Benutzer vorhanden (Wahlgeheimnis). Die Liste wird durch den Server digital signiert, wie auch der Stimmzettel eines jeden Benutzers, den er als "Beweis" für seine abgegebene Stimme erhält (Nachvollziehbarkeit).
Server:
- Typ: Dediziert, XEN oder andere Virtualisierung
- Linux: Debian
- Rootzugriff
- PHP, MySQL, Apache, GPG und Mailserver
Mitarbeiter:
- Mind. 1 Admin für die Installation und Wartung des Servers
- Mind. 1 PHP-Entwickler für Codereview
- Tester
- Evtl. Designer für Anpassung der Oberfläche insbesondere CSS
Zeitrahmen:
- 1 Monat für die Einrichtung, Installation, Anpassung
- 5 Monate Testbetrieb und weitere Anpassungen, Korrekturen
- Danach stabiler Betrieb
Grass Roots Democracy Machine: voting tool (englisch translation of the above text)
The system is based on PHP, MySQL, GPG and linux. It allows a secret as well as a publicly reviewable voting.
The System features comprehensible voting, in which everyone has only one single vote. This is made possible trough authentication.
A new question to be voted on can be created by any member. During the voting an pseudorandom code ist created which is used to store the voting in the voting list. Every decision will be tagged and published with an individual decision key which is chosen by the user. This gives you the possibility to check whether your made decision was manipulated. At the same time noone besides you can link your decision key with your decision. The system also doesn't keep track about who made which decision.
multi-choice question
For this question you must provide several items, like "mehr grün", "mehr rot" and "mehr gelb" in the example. You can provide an arbitrary amount of items with user-defined texts. But you should only enter as many items as needed. You should also check wether your answers fit the question. An example how the interface for the "decision maker" could look is show in figure 2.
The "decision maker" names for every point whether he approves it ("yes"), disagrees with it ("no"), abstains ("abstention") or decides to cast an invalid vote ("invalid"). The "decision maker" has one vote per item. This can also be seen in figure 2.
weighted multi-choice question
This kind of question is similar to the "multi-choice question" with the difference that the decision maker gives a weight for his answers. Using the weights he sorts the items according to importance. More important go up while less important go down. Then he decides again whether he approves ("yes"), disagrees with it ("no"), abstains ("abstention") or to cast an invalid vote ("invalid"). The decision maker has one vote per item.
redistribution question
A commodity (see example) with a given amount can be distributed either percentaged or absolute on different items (in the example Inge, Heinz, Gudrun and Peter). The decision maker has one vote per item. (see figure 3)
remark about decision keys To ensure the secrecy of the vote there should be ne connection between your decision key and your person. Choose in no case parts of your (user) name or other personal information as your key. Random combinations of numbers, letter and special characters whould be a good idea.
decision key
The "decision key calculator" could help you. Just enter some text of your choice in the field "calculator input" and click on "calculate decision key". With the help of the MD5-algorithm a 32 character long string of numbers and letters is created from your text which isn't traceable to your text. The calculated key is automatically transferred to the field "decision key". As the key is calculated on your computer you need to active JAVASCRIPT in your browser. (see figure 4)
Every decision will be tagged and published with an individual decision key which is chosen by the user. This gives you the possibility to check whether your made decision was manipulated. At the same time noone besides you can link your decision key with your decision. The system also doesn't keep track about who made which decision. (see figure 5)
There is no connection between the pseudorandom code and the user (secrecy of the vote). The list will be digitally signed by the server, as is the ballot of each user. The latter is the proof that he cast his vote (traceability).
server:
- type: dedicated, XEN or other virtualisation
- linux: debian
- root access
- PHP, MySQL, Apache, GPG and mail server
staff:
- at least 1 administrator for installation and maintenance of the server
- at lest 1 php developer for code review
- testing people
- potentially designer to customise the user interface (in particular: CSS)
time frame:
- 1 month for setup, installation, customisation
- 5 months of test operation, further customisation, corrections
- after that: productive operation
https://sourceforge.net/projects/grassrootsdemoc/