
VCAST est une entreprise française qui propose des solutions de vote en ligne transparentes et vérifiables, basées sur la technologie open source Belenios. Sa plateforme permet aux organisations de mener des élections électroniques sécurisées, tout en garantissant une totale transparence et une vérification complète des scrutins.

Le défi
L’histoire de VCAST commence en 2012 avec le projet Belenios, mené à l’INRIA, où un système de vote électronique open source a été développé. Le projet a pris une ampleur particulière durant la pandémie de COVID-19 en 2020. Mais rapidement, la recherche académique n’a pas suffi face aux demandes croissantes des organisations, qui attendaient un accompagnement professionnel et des services robustes.
C’est ainsi qu’en décembre 2024 est née VCAST, avec pour mission d’apporter un support de niveau entreprise autour de la technologie Belenios.
Le défi technique était de taille : concevoir un système de vote capable de garantir confidentialité, sécurité et vérifiabilité cryptographique, tout en restant simple d’utilisation pour des publics non techniques. Pour atteindre ces objectifs, la plateforme s’appuie sur des mécanismes avancés comme le chiffrement asymétrique et les preuves à divulgation nulle de connaissance, le tout avec des performances fiables et constantes.
Les résultats
Notre plateforme de vote en ligne, développée en OCaml, a déjà démontré son efficacité :
- Plus de 7 000 élections organisées avec succès
- Plus de 740 000 électeurs invités à voter
- Environ 240 000 votes réellement enregistrés
La performance d’OCaml a été particulièrement remarquable. Par exemple, lors du développement d’un vérificateur pour le système de vote des Français de l’étranger, l’implémentation OCaml a surpassé une solution existante en Java : le temps de vérification est passé de plusieurs heures à moins de 30 minutes.
Pourquoi OCaml ?
La relation avec OCaml a commencé pendant les années universitaires de Stéphane Glondu, en parallèle de l’assistant de preuve Coq, dans le cadre de ses travaux de thèse. Lorsque nous avons lancé Belenios en 2012 à l’INRIA, choisir OCaml nous a semblé naturel, grâce à sa robustesse et à son adéquation avec des problématiques cryptographiques complexes.
- La sécurité apportée par le typage fort est essentielle dans nos implémentations cryptographiques.
- L’expérience acquise avec Coq nous a donné confiance dans la capacité d’OCaml à gérer des implémentations mathématiques complexes.
- La compilation vers JavaScript via js_of_ocaml a été un atout majeur, permettant de proposer des fonctionnalités avancées côté client tout en gardant une sécurité maximale et une excellente expérience utilisateur.
La solution
Notre implémentation technique a beaucoup évolué depuis les débuts. Initialement, nous nous sommes appuyés sur l’interface de vote Helios, utilisant leur implémentation JavaScript côté frontend. Avec la version 2, nous avons totalement réécrit l’interface de vote en OCaml, ce qui a marqué un tournant dans notre architecture.
La plateforme a aussi bénéficié de contributions externes : par exemple, un développeur a réalisé une interface en React, preuve que notre architecture sait s’adapter à des technologies variées et à des profils de développeurs différents.
Côté backend, nous avons choisi Eliom comme socle, pour gérer à la fois le serveur et la couche API. Ce qui avait commencé comme une application web classique en HTML4 est aujourd’hui devenu une application client-serveur sophistiquée, avec une séparation claire entre les composants.
Notre stack technique inclut :
- Eliom pour le backend et la couche API
Les enseignements
Au fil du développement de VCAST, plusieurs leçons clés se sont imposées :
- Le système de types d’OCaml apporte des garanties essentielles pour les implémentations cryptographiques
- L’interopérabilité offerte par js_of_ocaml favorise une architecture flexible et moderne
- Les développeurs non-OCaml peuvent contribuer efficacement, notamment sur les composants frontend
- Le recrutement de profils OCaml reste un défi, mais ces développeurs apportent un haut niveau de compétences
- La combinaison performance + sécurité fait d’OCaml un choix particulièrement adapté pour nos applications critiques en sécurité