Le client xVote est utilisable de plusieurs manières, selon les situations ou les choix du citoyen :

Il peut donc choisir entre :

  1. une installation complète en machine virtuelle (prête à l'emploi) sur son poste,

  2. une pure utilisation à distance d'une machine virtuelle personnelle,

    1. soit avec le service natif sous Windows,

    2. soit en installant un petit logiciel,

    3. soit en employant un navigateur Web (browser);

  3. une installation partielle, puis dynamique, de la machine virtuelle sur son poste,

  4. une installation intégrale des toutes les applications nativement sur son poste.

Machine virtuelle installée sur le poste du citoyen

L'ensemble des logiciels pour gérer (hyperviseur) ou pour former (système invité) la machine virtuelle et son application (xVote et annexes) sont installés1 ou copié sur le poste du votant, ou disponibles sur un CD inséré dans le lecteur.

Virtual Appliance : Voting process in a Virtual Machine as a guest of the citizen's host computer

Le logiciel est reçu par téléchargement préalable (de préférence en cascade) ou par réception d'un CD (envoyé par poste, obtenu à la mairie ou au consulat, etc.). Par Internet, le temps de chargement est d'environ cinq minutes avec une connexion ADSL moyenne (5000 kb/s).

Le logiciel client est donc llivré en "Virtual Appliance", c'est-à-dire packagé en une machine virtuelle, avec son système, les applications et toutes les configurations.

Le processus de vote est protégé des éventuelles maliciels (malwares) pouvant se trouver sur le poste du citoyen votant (virus, troyens, vers, etc...).

Les logiciels, et même le système d'exploitation, utilisés pour voter sont sains, car chargés directement de la source et au moment du vote (virtual appliance).

Du fait que toute l'opération de vote a lieu dans une machine virtuelle, à la fin de l'opération aucune trace du processus de vote ne peut rester sur l'ordinateur (physique) car tout disparait avec la machine virtuelle.

Virtual Appliance : Voting process in a Virtual Machine as a guest of the citizen's host computer



Pour mémoire, le client d'xVote (au sein de la machine virtuelle) entre en contact nominalement avec les serveurs de l'habilitation, et anonymement avec les serveurs de la scrutation (dont un stockage temporaire et la livraison du bulletin), ainsi qu'avec divers tiers de confiance ou services additionnels (identité numérique, méreau anonyme, entropie, notarisation, etc.).

Cet usage nécessite un ordinateur moyen, mais de processeur relativement actuel, avec assez de mémoire vive disponible, une bonne puissance, un espace disque suffisant et surtout une bonne connectivité Internet pour avoir le débit nécessaire à la télécharger (ou de la patience, si ce n'est des moyens en cas de facturation au volume).
Voir le document 20080223_1859.pdf pour plus d'indications.

Machine virtuelle téléactivée depuis le poste du citoyen

Le votant ne charge pas, ni n'exécute, la machine virtuelle sur son poste, mais l'utilise à distance en toute individualité et sécurité.

Dans le mode d'utilisation "Virtual Desktop as a Service", la machine virtuelle est créée sur un serveur lors de la connexion du votant, celui-ci est mis en communication directe et sécurisée avec l'interface utilisateur de celle-ci, cette dernière ne génère aucune donnée utilisable sur le serveur et disparaît sans trace à la fin de la connexion.

Le votant se connecte à la machine virtuelle soit au moyen d'un petit logiciel qui est intégré par défaut dans Windows, ou disponible pour MacOSX, ou pour (ou dans) les distributions Linux. Ce logiciel est aussi disponible pour les principaux smartphones (p.ex. WinMobile-PocketPC), organiseurs ou téléphones Java (p.ex. Nokia Symbian S60).
Il est aussi possible d'utiliser simplement un navigateur Web, par exemple en entreprise, dans un cybercafé ou une bibliothèque publique.

Ce mode d'utilisation permet, avec un compromis très limité et volontaire sur le contrôle par le citoyen et en gardant toute la sécurité, de voter avec des versions obsolètes de Windows, avec d'anciens ordinateurs aux faibles capacités, avec des machines limitées en mémoire ou puissance, ou avec un espace disque insuffisant, au moyen de machines exotique, ou de voter malgré une connectivité internet minimale ou encore en déplacement sans ordinateur personnel (avec des machines publiques).

Virtual Desktop : Voting process in a Virtual Machine as guest of a server host, personaly used and on behalf from the citizen's computer

Virtual Desktop : Voting process in a Virtual Machine as guest of a server host, personaly used and on behalf from the citizen's computer



Cette utilisation est bien adaptée pour les nomades ou les résidents à l'étranger :

Elle est aussi indiquée pour des ordinateurs spécialisés ou hors des normes usuelles, tels les ultraportable ou Mobile Internet Devices / Internet Appliances, voir même des organiseurs ou des mobiphones, munis ou munissables de l'un ou l'autre des logiciels de bureau mobile nécessaires.

Dans tous les cas, et c'est en particulier intéressant pour le cas d'ordinateurs publics (ou utilisés par plusieurs personnes), l'application de bureau virtuel sur le poste local ne sert qu'à présenter l'affichage brut de la machine virtuelle distante, qui -elle seule- manipule les données personnelles et du vote. L'ordinateur utilisé localement ne fait donc qu'exécuter de pures primitives d'affichage, qui ne contiennent aucune information sémantique ou logique sur le vote en cours, aussi il ne peut pas conserver la moindre information3 sensées de la session du votant.

Trois possibilités sont offertes par xVote dans ce mode par téléactivité (voir ci-dessous), selon le type de système, de connectivité4 ou de droits disponibles :

Win utilisation du service de connexion au bureau à distance présent dans Windows

LTT installation d'un puissant logiciel client multi-plateforme de télétraitement

Web emploi du navigateur Web acceptant une appliquette Java (Internet Explorer, Firefox, Opera, ...)

Dans tous les circonstances, les liaisons et le processus de vote sont entièrement sécurisés.

La machine virtuelle est créée dynamiquement au moment de la connexion du votant, et détruite immédiatement avec la fin de la déconnexion; durant son fonctionnement, elle est strictement isolée des autres machines virtuelles. Elle est étanche envers le serveur supportant les machines virtuelles, et elle ne laisse aucune trace sur celui-ci.

Enfin, comme mentionné plus haut, le logiciel de bureau virtuel (ou le navigateur Web) sur le poste utilisé ne reçoit ni ne manipule aucune donnée sémantique et n'offre donc pas de prise à une attaque, ni ne laisse de traces sensées.

Si le logiciel client de bureau virtuel devait être téléchargé, celui-ci est très petit : entre quelques faibles centaines de kibi-octets ("Ko") à au plus une petite poignée de mébi-octets ("Mo"), voire juste dizaines de kibi-octets pour la version Java, selon le canal choisi. L'installation en est avantageusement directe, et prend vraiment très peu de place sur le disque.

téléactivité Win - Virtual desktop natif du système sur le poste Windows du citoyen

L'accès à une incarnation personnelle d'une machine virtuelle xVote peut être fait à partir d'un service efficace disponible au sein de toute la gamme Microsoft Windows. Cette application est nativement installée dans XP et Vista, et l'est souvent dans l'édition Win Mobile.

Il suffit de lancer l'application "Bureau à Distance5" qui est intégrée à Windows :

DémarrerProgrammesAccessoiresCommunicationBureau à distance

ou  plus simplement encore  en activant un tout petit fichier6 téléchargé depuis le site de vote et contenant déjà toutes les données et option de connexion du service de bureau à distance (Remote Desktop).

Le client logiciel utilisé est aussi disponible librement ou gratuitement pour d'anciens Windows (ou les WinMobile/PocketPC), Linux ou Mac OSX. Il est disponible aussi pour d'autres plateformes, comme PalmOS, BlackBerry et les JavaPhones (dont Symbian S60).

téléactivité LTT - Virtual desktop puissant et efficient à installer pour tous

Dans ce cas, pour se connecter à distance avec une machine virtuelle xVote personnelle, il suffit de télécharger et installer un logiciel efficace de bureau à distance.

Le logiciel client est un peu plus important à télécharger que les autres mentionnés ici, quoique son obtention prenne moins de dix secondes avec une liaison ADSL moyenne (5000 kb/s). Ce protocole de bureau à distance est celui qui offre le plus de services7 sur toutes les plateformes et il est si efficient qu'il peut être utilisé même avec une connectivité à très faible débit, par exemple en Internet mobile ou dans des régions défavorisées.

Le logiciel client est disponible gratuitement (ou év. librement) pour les Windows (dès 2000), la majorité des Linux et pour Mac OSX; ainsi que pour certains organiseurs. Alternativement, il peut aussi être installé automatiquement comme greffon d'un navigateur Web (plug-in).

téléactivité Web - virtual desktop simplement par le Web

Il est possible de voter avec toute la puissance et la sécurité d'xVote au moyen d'un simple navigateur Web ("browser" p.ex. Internet Explorer, Firefox, Opera, Safari, ...), qui doit accepter les appliquettes Java8. Il suffit de pointer le navigateur vers le site de vote indiqué pour ce service spécial.

Il est à souligner que, bien que l'on utilise un navigateur Web, il ne s'agit pas d'un vote par le Web, et ce n'est pas avec un serveur classique que la transaction a lieu, mais l'appliquette met bel et bien le votant en relation directe et sure avec une machine virtuelle personnelle qui est créée à l'instant et exclusivement pour lui, qui est complètement cloisonnée, et qui sera détruite sans laisser de trace dès la fin de sa session. L'appliquette ne servant qu'à l'affichage de l'interface utilisateur de la machine virtuelle, le navigateur ne manipule aucune donnée de la session du votant, et donc, aucune trace n'est susceptible d'être maintenue sur le poste utilisé.

Pour les utilisateurs situés derrière un garde-barrière (firewall) filtrant (interdisant) les activités autres que l'accès au Web [p.ex. en entreprise ou certains HotSpot WiFi), ou devant obligatoirement utiliser un serveur mandataire HTTP (proxy), il leur est possible d'atteindre néanmoins xVote moyennant une petite configuration de l'appliquette.

Alternativement, le logiciel est aussi disponible gratuitement ou librement sous la forme d'un client natif très léger à installer (chargement en moins d'une seconde avec une liaison ADSL moyenne -5000 kb/s), et ce, pour toutes les plateformes (Linux, Unix, Mac OSX), y compris pour Windows Mobile (ou PocketPC); en changeant une option, il est aussi possible de l'utiliser derrière un gardien sévèrement filtrant ou un serveur mandataire.
Le logiciel client est aussi disponible pour les BlackBerry et les JavaPhone (dont Symbian S60).

Machine virtuelle partiellement installée et solde téléchargé au vol sur le poste du citoyen

La situation générale est similaire au premier cas (machine virtuelle sur le poste du citoyen), à la différence que l'installation est très partielle (le téléchargement est de l'ordre d'une minute par une liaison ADSL moyenne  5000 kb/s).

Le chargement de la machine virtuelle proprement dite se fait ensuite en parallèle, durant l'utilisation, par le moyen performant distribuant la charge sur un système réseau décentralisé pair-à-pair spécialisé, dont la plupart des postes sont à la fois clients et serveurs des autres postes (P2P, peer-to-peer).

L'avantage premier est de ne pas surcharger les serveurs de distribution, et donc de ne pas ralentir les téléchargements, secondement de limiter pour le votant le temps d'attente durant le chargement préliminaire, troisièmement de ne pas utiliser de manière permanente une portion conséquente du disque, et enfin de permettre une éventuelle mise à jour du logiciel et de l'interface utilisateur à chaque session de votation sans obliger les votants à recharger d'abord tout le logiciel.

Applications installées sur le poste du citoyen

Non décrite ici, car déconseillé dans les cas courants. Voir le document 20060904_2200.pdf pour plus d'indications.

Ce serait l'emploi typique pour une machine à voter au local, ou pour une borne de vote dans un lieu public; dans les deux cas le système9 est dédié et sous contrôle, donc robuste et sain.


1Nécessite environ 650 mio ("Mo") d'espace sur le disque, avec le CD, environ 30 mio suffisent, dans les deux cas, plus quelques centaines de mébi-octets temporairement lors de l'utilisation.

2Selon le cas, une connexion avec un modem téléphonique classique de 56 kb/s peut suffire; voir même aussi peu que 9,6 kb/s et une latence de l'ordre de 0,5 s, soit les ancien GSM ou certains téléphones satellitaires. En particulier, le transfert des images, du choix de couleur et le taux de rafraichissement sont automatiquement adaptés selon la vitesse de la connexion. Généralement, le minimum absolu du canal descendant (download) doit être de 33,6 kb/s (images très simplifiées, couleurs limitées et faible rafraichissement), et la préférence est de disposer d'au moins 300 kb/s.

3Il en est de même dans le cas de figure de base, où la machine virtuelle est locale du poste du votant. Celle-ci étant cloisonnée les données personnelles et de la logique de traitement disparaissent à sa fermeture, le système hôte de l'ordinateur qui l'embarque ne peut pas en garder la moindre trace.

4Le trafic est asymétrique : le canal descendant porte les informations d'affichage (ou de sons) et donc est plus conséquent que le canal montant formé essentiellement des ordres de l'utilisateur. Les débits asymétriques usuels des connexions Internet (fixes ou mobiles) sont donc bien adaptés.

5Appelé aussi "Terminal Service" ou "Remote Desktope Protocole/Connection".

6Un fichier de taille inférieure à 4 kio, et de type *.rdp

7Outre le transfert du son et l'échange du presse-papier, il est possible d'imprimer localement (p.ex. le rapport de session) et d'accéder aux disques du poste pour sauver/relire des données (p.ex. l'état temporaire de la session).

8Ne pas confondre avec JavaScript, celui-ci nomme de petits éléments programmatiques inclus dans la page Web et qui l'automatisent. Les appliquettes Java sont par contre des programmes complets,, mais qui dépendent du navigateurs pour l'interface utilisateur; elles s'exécutent  généralement  dans un greffon du navigateur (plug-in).
Les navigateurs actuels supportent presque tous Java, mais ce dernier doit avoir été installé, ce qui est usuel.

9Le logiciel xVote est livré en instruction Common Language Infrastructure (CLI, ECMA-335 and ISO/IEC 23271), les applications adjointes sont FLOSS, largement portées ou très portables, aussi le système d'exploitation peut être Windows (framework dotNET) ou Linux (Mono), Mac OSX, (Unix) BSD, Solaris, ...