Domanda:
I sistemi di controllo della versione, come Git, possono essere utilizzati per stabilire la data di priorità di un documento?
msx
2016-09-20 22:19:25 UTC
view on stackexchange narkive permalink

I sistemi come Git sono abbastanza robusti in modo che, se sorgessero domande sulla priorità di un articolo, si dimostrerebbe o sostanzierebbe una pretesa di avere un registro VCS?

Cosa intendi per priorità? Che un foglio è stato scritto prima dell'altro?
Questo è esattamente quello che intendo :)
@Ian_Fin Ho chiesto informazioni sulla priorità qualche tempo fa: http://academia.stackexchange.com/questions/66052/what-do-researchers-mean-by-the-priority-of-an-idea
Stai parlando di priorità per la legge sui brevetti o per "dimostrare" alla tua collega / moglie / madre che hai avuto l'idea per prima?
Si noti che negli Stati Uniti il ​​primo a inventare è scomparso, sostituito dal primo a presentare file. Presumo che l'ufficio brevetti tenga traccia di ciò che arriva quando ...
Potresti chiedere a git stesso - `git help commit` - e notare la cospicua opzione "[--date = ]" nella sinossi ... :-)
Risposta breve: no, la data di un commit può essere facilmente modificata. Cfr. http://stackoverflow.com/q/454734/2657549
@Clément Penso che github memorizzi due date, quella in cui è stato effettuato il commit e quella in cui è stato caricato. Vedi ad esempio le due serie di date in https://github.com/torvalds/linux/commits/master.
Tre risposte:
DCTLib
2016-09-20 22:26:53 UTC
view on stackexchange narkive permalink

Capisco la tua domanda nel modo seguente:

Stai chiedendo se un repository git può essere utilizzato per aggiungere un "timestamp" a un'idea, in modo che nel caso in cui più ricercatori abbiano la stessa idea , puoi dimostrare di essere stato il primo (ogni volta che questo è effettivamente vero).

Sfortunatamente, le date in un repository git possono essere facilmente contraffatte. Vedi qui per un thread di stackexchange che lo documenta.

Forse se è il tuo repository. Ma cosa succede se si tratta di un repository controllato da un'altra persona / dipartimento / organizzazione / rivista?
@smcl Possono ancora essere contraffatti.
Se presumiamo che una terza parte sia attendibile, potrebbe convalidare le date e ad esempio rifiutare i commit che sono nel futuro. Quindi potresti almeno dimostrare la priorità se spingi immediatamente dopo la pubblicazione o altro. Ma a quel punto lo stesso VCS diventa irrilevante e potrebbe essere un qualsiasi vecchio sito web.
@smci: Sei consapevole del fatto che mentre git ha controlli di accesso, è un sistema peer-to-peer distribuito, in modo che i cloni posseduti da chiunque abbia accesso push siano praticamente equivalenti?
@BenVoigt: no se il repo è privato.
Tutto ciò che non è firmato da un '** autorità fidata ** non vale nulla. Puoi inviare il tuo repository a un'autorità fidata, se è d'accordo, ma ciò non dipende da git. Il modo migliore per dimostrare che un documento esisteva in un momento specifico è [marca temporale attendibile] (https://en.wikipedia.org/wiki/Trusted_timestamping), secondo me.
@MattiVirkkunen, il problema è falsificare date precedenti a quelle che affermi, non successive.
@OrangeDog: Uh. Ottimo punto. Avresti bisogno di una finestra temporale. E l'utilizzo di un VCS sarebbe ancora più inutile.
E.P.
2016-09-21 05:10:19 UTC
view on stackexchange narkive permalink

Dipende da cosa si desidera contrassegnare con il timestamp e da chi si desidera convincere con i dati, ma ci sono alcuni punti importanti da tenere a mente.

  • Se si tratta di un repository tenuto localmente, quindi semplicemente non può essere utilizzato per stabilire alcun tipo di priorità, perché quei timestamp possono essere falsificati. Git semplicemente non è abbastanza robusto (dipende come fa, ad esempio, dall'orologio di sistema) per essere un proiettile d'argento; può essere inserito in un caso (analogamente ad esempio ai libri di laboratorio con timestamp) ma non è sufficiente da solo.

  • D'altra parte, puoi usare un controllo di versione repository ospitato da una terza parte, come un repository privato su GitHub o Bitbucket. Qui è necessario assicurarsi di eseguire regolarmente il push al repository remoto, perché ciò che conta davvero è il timestamp sul push e non il commit (di nuovo, perché i timestamp generati localmente possono essere falsificati); devi anche assicurarti che la terza parte conservi effettivamente i log con timestamp di tali caricamenti.

    Questo è in linea di principio utilizzabile, ma se sarà sufficiente o meno dipenderà da cosa vuoi farne. Alla fine si tratterà se le persone che stai cercando di convincere possono essere persuase a fidarsi dei registri di terze parti e della loro neutralità. (Nota, inoltre, che ciò che conta qui non è la robustezza di git che conta: è invece l'affidabilità della terza parte.)

  • A seconda del tuo campo e della sua comunità , aver scritto il documento per primo potrebbe in realtà non avere importanza - molto spesso, si può dare molto più peso (giusto o sbagliato) all'essere il primo a pubblicare il lavoro.

    C'è molta variabilità da campo a campo, ma se qualcun altro pubblica un lavoro che è essenzialmente equivalente al tuo, almeno dovresti aspettarti una ripida salita per ottenere un diario che pubblichi il tuo manoscritto, anche se puoi dimostrare di aver completato il testo prima ancora che gli altri lo presentassero. Lascerò da parte queste discussioni, tuttavia, presumendo che ci abbiate già pensato o che lo farete prima di agire.

MichaelK
2016-09-21 19:50:24 UTC
view on stackexchange narkive permalink

Servizio di timestamp affidabile

Quello che stai cercando è un fornitore di timestamping affidabile.

Git non può, o meglio: non dovrebbe - essere usato per questo, perché git non è in alcun modo pensato per eseguire quel tipo di servizio. Affinché git possa essere utilizzato in questo modo, dovresti dimostrare che il repository git è accurato quando arriva il momento, preciso su chi lo invia e a prova di manomissione quando si tratta di commit.

E certo, puoi presumere che questo sia il caso di uno qualsiasi dei grandi provider di terze parti, come github. E certo, in una causa civile, dove una preponderanza delle prove è sufficiente (cioè le prove devono essere solo più probabili che non probabili, invece che come in un processo penale in cui devono essere provate oltre ogni ragionevole dubbio), allora questo potrebbe benissimo volare.

Ma perché preoccuparsi di riproporre git quando ci sono provider dedicati per questo stesso tipo di servizio? Esistono provider sia gratuiti che a pagamento. Personalmente prenderei qualcuno molto più seriamente quando usa un servizio adeguato per questo rispetto a qualcuno che rielabora qualcosa che è destinato a cose completamente diverse.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...