Come posso dimostrare agli utenti del software che i binari che pubblico corrispondono al codice sorgente che è stato ispezionato e verificato da una terza parte? [duplicare]

0

Se ho un software simile a TrueCrypt in cui la sicurezza è molto importante, ma a differenza di TrueCrypt perché il mio non diventa misteriosamente offline per una ragione apparentemente senza motivo , come posso provare che i miei binari che pubblico sul sito corrispondono al codice sorgente che è stato verificato in modo indipendente?

In questa domanda , sembra che costruire in modo indipendente dal codice sorgente non generi lo stesso eseguibile ogni volta.

Voglio essere in grado di dimostrare che non ci sono backdoor, perché questo, a differenza di TrueCrypt, coinvolgerà l'archiviazione remota dei dati, e non voglio che nessuno pensi che le chiavi possano essere trapelate in alcun modo possibile.

    
posta Phoenix Logan 19.06.2014 - 14:11
fonte

1 risposta

4

Non puoi dimostrare che il file binario che hai fornito corrisponda davvero a un dato codice sorgente. Non è teoricamente impossibile, ma richiederebbe una cooperazione sostanziale da parte del compilatore. Alcuni ricercatori stanno lavorando su quell'argomento per alcune lingue che sono più adatte a tale compito rispetto a C (principalmente derivato ML o Lisp). In ogni caso, non esiste ancora un prodotto facilmente disponibile e non lo sarà per un po 'di tempo, quindi in pratica non è un'opzione.

Le tue migliori opzioni sono quindi:

  • Fornisci il codice sorgente (con la prova che si tratta dello stesso archivio utilizzato dal revisore indipendente) in modo che gli utenti possano eseguire autonomamente la compilazione.
  • Chiedi alle persone che hanno eseguito la "recensione indipendente" di eseguire effettivamente la compilation e fornire il file binario risultante.

In ogni caso, gli utenti dovranno fidarsi di qualcuno : tu, i revisori indipendenti ... nello stesso modo in cui devono fidarsi di Microsoft, Intel, AMD e tutte le altre parti coinvolte nella costruzione del computer. Quindi forse la domanda non è quella giusta. Il compilatore stesso può spingere una backdoor sul codice sorgente pulito (c'è un esempio molto classico di quel tipo di trucco). Invece di chiedere come potresti provare che il passo della compilazione non includeva una backdoor, dovresti chiederti: come posso costruire abbastanza di una buona reputazione in modo che le persone si fidino di me?

    
risposta data 19.06.2014 - 15:27
fonte

Leggi altre domande sui tag