Méthodologie
Comment CivicLedger analyse les résultats électoraux
Avertissement important
- • Détection d'anomalies ≠ preuve de fraude
- • CivicLedger est un outil d'audit citoyen, pas un tribunal
- • Basé exclusivement sur des données publiques officielles
- • Les signaux doivent être interprétés avec prudence et recoupés
- • Une anomalie statistique peut avoir des causes légitimes (ex: quartier étudiant, zone rurale, contexte local)
Election Integrity Score (0–100)
Score composite calculé pour chaque bureau de vote, agrégeable par commune, département et scrutin.
Cohérence arithmétique — 30%
Niveau 1 — Le plus fiable
- ·Votants ≤ Inscrits
- ·Abstentions + Votants = Inscrits
- ·Exprimés + Blancs + Nuls = Votants
- ·Aucune valeur négative
- ·Taux de blancs / nuls dans les normes
Cohérence statistique locale — 25%
Niveau 2 — Très utile
- ·Z-score de participation vs. moyenne départementale
- ·Z-score du taux de nuls vs. département
- ·Seuil par défaut: z > 2.5
- ·Seuls les bureaux avec ≥ 50 inscrits sont analysés
Cohérence historique — 25%
Niveau 3 — Très puissante
- ·Comparaison avec les scrutins précédents du même type
- ·Détection de ruptures brutales de participation
- ·Seuil: variation > 20 points vs. moyenne historique
- ·Nécessite au moins 2 scrutins historiques par bureau
Analyse de distribution — 10%
Niveau 4 — Signal faible, jamais preuve
- ·Loi de Benford sur les premiers chiffres des votants
- ·Test d'uniformité sur les derniers chiffres
- ·Chi-squared test avec seuil α = 0.05
- ·Analysé par département (min. 100 bureaux)
- ·⚠ Produit beaucoup de faux positifs sur données électorales
Complétude des données — 10%
Qualité
- ·Bureaux avec 0 inscrits
- ·Bureaux avec participation 0% malgré des inscrits
- ·Données manquantes ou incomplètes
Interprétation des scores
Chaîne de hashes (Ledger)
Chaque donnée est hashée en SHA-256 pour garantir l'immuabilité et la traçabilité.
# Chaînage des hashes
row_hash = SHA256(election_id | station_id | registered | voters | ...)
commune_hash = SHA256(sorted row_hashes de la commune)
dept_hash = SHA256(sorted commune_hashes du département)
root_hash = SHA256(sorted dept_hashes du scrutin)
Si une seule donnée est modifiée, le root hash change. Cela permet à quiconque de vérifier l'intégrité complète du jeu de données.
Sources des données
Les données proviennent exclusivement de sources publiques officielles :
- · Source officielle : Ministère de l'Intérieur — résultats par bureau de vote
- · Jeu de données : data.gouv.fr — Résultats électoraux par bureau de vote (1999–2026)
- · Format : CSV avec séparateur point-virgule
- · Couverture : 55 scrutins de 1999 à 2026 (présidentielles, législatives, européennes, municipales, régionales, départementales, cantonales)
- · Granularité : bureau de vote (3,1 millions de lignes)
- · Licence : Licence Ouverte / Open Licence (Etalab)