Buongiorno Stefano, Stefano Zacchiroli <zack@upsilon.cc> writes:
È (purtroppo) un argomento fallace che vedo spesso circolare in ambiti FOSS.
Se qualcuno (VW/Audi in questo esempio) sta commettendo qualcosa di illegale, non si capisce perché ci si dovrebbe fidare degli stessi quando dicono "tutto il software dell'auto è software libero; abbiamo pubblicato i sorgenti qua: <URL>". Se sono disposti a barare, possono benissimo farlo anche quando dichiarano che il codice sorgente pubblicato corrispondo a quello installato nei veicoli (quando ciò non è vero).
Questo dovrebbe essere chiarissimo a tutti coloro che hanno compreso la natura duale del software: sorgente in questo universo, binario nel "cyberspazio" Non capisco però cosa ci sia di fallace nel breve messaggio di Lars Noodén riportato da Andrea Trentini (una risposta con commenti inline forse aiuterebbe) [...]
Quindi serve un modo di permettere agli utenti delle auto di verificare che il codice sorgente pubblicato corrisponda ai binari installati nell'auto.
Immagino tu abbia in mente possibili modi: sarebbero? ...si torna alla _profonda_ spaccatura evidenziata nel thread citato da Andrea Trentini, come ad esempio in questo messaggio: https://server-nexa.polito.it/pipermail/nexa/2022-December/049959.html [...]
Ricapitolando, una soluzione tecnologica lungo questo asse richiede:
(a) 100% open source,
100% significa anche i driver necessari per "comandare" l'hardware, vero? :-)
(b) reproducible builds,
Reproducible builds non basta, il software deve essere anche bootstrappable per _risolvere_ il problema del "Trusting Trust" https://bootstrappable.org/
(c) accesso completo ai binari installati nell'auto.
Siccome l'esecuzione dei processi dipende anche dall'ambiente (environment) nel quale il binario viene eseguito /e/ alla configurazione di sistema, direi che l'accesso ai binari non basta, occorre l'accesso a tutto il sistema operativo (accesso root, per intenderci... sempre che non ci sia un ring-3 anche lì, ma non divaghiamo) Counque per brevità di esposizione, limitiamoci ai binari: giustissimo. Lo dico per i non addetti ai lavori: potendo analizzare i binari è possibile (anche) calcolare i loro "checksum", che possiamo considerare come le "impronte digitali" del binario: se cambia anche un bit nel codice binario, il "checksum" cambia. In questo modo, applicando i principi del "reproducible build", chiunque può verificare che il binario compilato sul proprio computer (in questo caso deve essere la stessa architettura del/dei computer embedded usato nella centralina dell'auto) corrisponda al binario distribuito dal "vendor" Processo _per nulla_ facile, considerando che _deve_ essere il "vendor" a distribuire la "ricetta" di build che _deve_ essere riproducibile (cosa non facile, tecnicamente) ma SOPRATTUTTO che occorre avere accesso /completo/ a un computer con la stessa achitettura di quello embedde nella centralina dell'auto. ...e /quindi/ torniamo alla (im)possibilità di accedere /completamente/ all'hardware della centralina al fine di ripetere il build (e magari anche il bootrap software) Siamo lontani da queste cose, siamo decisamente in un altro... UNIVERSO di discorso. Se continuiamo a girarci intorno non ci arriveremo mai. [...]
Ma da un punto di vista di policy pubbliche, se dobbiamo imporlo per legge, allora è molto più facile imporre il libero accesso per audit a tutto il software in esecuzione in un'auto da parte del regolatore.
Sì ma mi spiegheresti /come/ "il regolatore" può essere in grado di fare un audit di tutto il software se manca anche solo una delle condizioni che tu hai elencato e che "io" (le idee non sono mie, eventualmente io le ho solo espresse male) ho integrato? É /ovvio/ che per fare un lavoro serio il regolatore dovrebbe verificare tutto il software delle centraline dei veicoli (cosa che non avviene ancora oggi, nonostante i trucchi che probabilmente si ripetono dal 1999), ma per poterlo fare "lui" dovremmo poterlo fare tutti... ...a meno che qualcuno è convinto che agli "utenti" (cioè i cittadini) può essere precluso partecipare alla vita sociale e politica, della quale l'applicazione di automatismi cibernetici è /una/ delle espressioni. [...] Grazie, 380° [1] https://en.wikipedia.org/wiki/Checksum, tipo https://en.wikipedia.org/wiki/Sha1sum -- 380° (Giovanni Biscuolo public alter ego) «Noi, incompetenti come siamo, non abbiamo alcun titolo per suggerire alcunché» Disinformation flourishes because many people care deeply about injustice but very few check the facts. Ask me about <https://stallmansupport.org>.