C'è un modo per dimostrare la paternità in un repository condiviso?

3

Diciamo, abbiamo un certo numero di persone che lavorano su qualche tipo di sforzo collaborativo (come un documento di ricerca o un progetto software) che viene inserito in un repository condiviso. Tuttavia, un certo sottogruppo di queste persone sta anche cospirando contro il resto delle persone coinvolte in modo da negare loro la paternità. Le motivazioni potrebbero essere, ad esempio, prendere credito per il lavoro di altre persone, negando ad altri il riconoscimento o il denaro che meritavano come contributori, e così via.

Il modello di minaccia qui coinvolge istituzioni prive di una struttura di controllo fissa e senza un'efficace autorità superiore localizzata in casa che potrebbe risolvere una simile controversia, come spesso accade per i progetti di hobby elaborati dagli amici, e in certe situazioni, ricerca carte. (Per essere chiari, abbiamo un sistema giudiziario in cui possono essere intentate controversie legali.)

Le informazioni sul timestamp e sull'autore nel repository stesso non forniscono alcuna prova valida, dal momento che i cospiratori possono ricreare facilmente un'altra versione del repository che mostrerebbe che i commit sono stati fatti solo da loro.

Esiste un protocollo che, se seguito da ogni persona che si impegna nel deposito, consentirebbe alle vittime di dimostrare la propria paternità in caso di controversia?

    
posta user2064000 17.07.2016 - 20:47
fonte

3 risposte

4

Hai bisogno di una terza parte affidabile per testimoniare e garantire ogni commit. Ad esempio, se si utilizza un repository online come GitHub, esiste un record online di ciascun commit. Se non si utilizza un servizio di terze parti attendibile, è necessario utilizzare un notaio o un servizio simile . Può trattarsi di una persona che controlla ogni commit o un notarile online che esegue il lavoro elettronicamente Potresti semplicemente inviare o inviare email a una persona fidata (forse un avvocato).

Tutte queste soluzioni si basano sull'affidabilità di terze parti.

Si noti che tutte queste soluzioni provano solo che il lavoro esisteva in una data specifica. Non possono provare da chi è nato il lavoro. Per questo avrai bisogno di un lettore della mente .

    
risposta data 17.07.2016 - 21:11
fonte
0

Puoi accedere a quel sito usando link . Dovresti solo cambiare le password in seguito per precauzione.

    
risposta data 29.07.2016 - 00:18
fonte
0

Hai sempre bisogno di una terza parte affidabile per risolvere questi problemi. Esistono, tuttavia, alcuni approcci interessanti che utilizzano il pubblico stesso come una terza parte affidabile.

L'esempio classico utilizza un giornale e la sezione annunci. Quando hai un pezzo di lavoro per cui vuoi provare la paternità, prendi un checksum (forse SHA-1), firmalo (magari con RSA), e poi estrai un annuncio con i contenuti di quella firma. Attendi almeno un giorno prima di rivelare il tuo lavoro.

Chiunque voglia autenticare il tuo lavoro prende semplicemente il checksum e verifica che sia effettivamente il checksum che hai inserito nel classificatore, quindi verifica che tu fossi la persona che lo ha firmato.

Qualcuno che vuole rubare il lavoro deve firmare quel checksum e inserirlo in un annuncio classificato. Tuttavia, poiché non conoscono il contenuto del lavoro fino a quando non lo rilascia, devono inserire un annuncio nel giornale del giorno prossimo . In questo modo possono affermare di aver creato il lavoro, ma puoi sempre segnalare che il tuo annuncio è stato pubblicato un giorno prima del loro. L'unico modo in cui possono averlo creato e che hai postato per primo è se rubasti il lavoro prima che fosse reso pubblico.

Questo processo può essere facilmente applicato a un repository Git taggando il tuo lavoro con la tua firma e quindi pubblicando il tag in un annuncio classificato.

    
risposta data 29.07.2016 - 03:47
fonte

Leggi altre domande sui tag