Rapporto esplicativo
Consultazione 2021/61: Modifica dell’ordinanza sui diritti politici (ODP) e dell’ordinanza della CaF concernente il voto elettronico (OVE) · 31 pagine
Fedlex · Rapporto esplicativo · Pagina 30Fedlex · Rapporto esplicativo
Un elenco di configurazione è un insieme unificato di elementi di configurazione che rappresenta lo stato del software e della sua documentazione in un particolare momento. Idealmente, permette di ricostruire una versione precedente del software.
N. 24.3: Deve essere garantito un corretto approntamento del sistema a partire dal codice sorgente fino alla sua installazione in produzione (build and deployment). A tale scopo il fornitore di sistema deve impiegare un metodo comprovato e tracciabile di build and deployment per raggiungere i seguenti obiettivi:
- il metodo build and deployment consente di garantire che il software impiegato corrisponda alla versione pubblicata, verificata e autorizzata;
- oltre a questa tracciabilità, il metodo build and deployment dovrebbe consentire di prevenire il più possibile la manipolazione delle componenti del sistema;
- occorre evitare che con gli strumenti di sviluppo e le biblioteche utilizzate si introducano punti vulnerabili nel software rendendo così il sistema vulnerabile agli attacchi.
A questo scopo sono stati introdotti nuovi requisiti, basati sulle linee guida dello stato federale americano del Colorado per l'uso dei sistemi di voto elettronici10, sulla documentazione Trusted Build pubblicata da GitHub11 e sulla documentazione Reproducible Builds12 dell’omonimo progetto.
N. 24.4: Sono considerate utenti tutte le persone che, in un modo o nell’altro, entrano in contatto con il software. Sono ad esempio utenti gli impiegati cantonali, gli aventi diritto di voto, coloro che effettuano i test e, in definitiva, chiunque abbia un interesse nel sistema.
Affinché lo sviluppatore gestisca le segnalazioni di difetti in modo appropriato e in questo contesto comunichi in modo efficace, è importante che gli utenti sappiano come trasmettergli le segnalazioni di difetti e come registrarsi per ricevere informazioni appropriate.
Per contribuire a migliorare la sicurezza di un sistema bisogna allestire un elenco il più completo possibile delle vulnerabilità sospette e dei correttivi da attuare sistematicamente. Questi requisiti sono complementari alla divulgazione del codice sorgente (art. 11-12 AV-OVE) e al programma bug bounty (art. 13 AV-OVE).
N. 25 Qualità del codice sorgente e della documentazione
La qualità del codice sorgente e della documentazione è fondamentale per la sicurezza del voto elettronico. Le basi legali attuali definiscono i requisiti a tal proposito. Le descrizioni hanno però carattere piuttosto generale: si pensi ad esempio all’obbligo di preparare e documentare il codice sorgente conformemente alle migliori prassi e all’attuazione di determinati punti di common criteria. I criteri di qualità esistenti sono stati pertanto precisati nel presente avamprogetto. Grazie a criteri chiari si vuole garantire un’elevata qualità dei sistemi di voto elettronico che a sua volta andrà a beneficio della sicurezza agevolando le verifiche di tutte le parti interessate e del pubblico. Per definire questi criteri di qualità è stato creato un modello di qualità per i sistemi di voto elettronico. Questo modello è basato sulla norma ISO 25010 e sul modello di qualità di McCall13. I criteri sono stati selezionati in base al loro contributo agli obiettivi di sicurezza e qualità definiti.
N. 26 Criteri di verifica dei sistemi e del loro esercizio
Per garantire l’efficacia e la credibilità delle verifiche sono state adeguate le competenze. La suddivisione dei compiti fra la Confederazione e i Cantoni sarà quindi modificata in modo tale che la Confederazione assuma maggiori responsabilità e un ruolo più diretto nella verifica dei sistemi.
Alla Confederazione compete la verifica del rispetto dei requisiti inerenti al sistema e dei relativi sottoprocessi. Questo non da ultimo per garantire che i risultati della revisione vengano integrati in modo mirato nelle successive fasi di test. Le verifiche dovranno essere commissionate a esperti indipendenti.
10 Colorado Election Rules [8 CCR 1505-1] Rule 1. Definitions, 2020 e Colorado Voting Systems Trusted Build Procedures, 2020
11 GitHub How to: Trusted builds, 2017
12 https://reproducible-builds.org/
13 FACTORS IN SOFTWARE QUALITY - Vol. 1: Concept and Definitions of Software Quality - Jim A. McCall, Paul K. Richards, Gene F. Walters (1977)