Perché Keybase firma hash di prove precedenti?

1

I (penso) Capisco approssimativamente come Keybase funziona per stabilire connessioni verificabili tra un utente su Keybase e una serie di altre identità (ad es. Twitter, GitHub, ecc.). Uno dei passaggi necessari per firmare e pubblicare pubblicamente una prova di questa connessione su ciascun account collegato. Parte di quella dimostrazione consiste "dell'hash della sua precedente firma" (che presumo significhi hash della precedente dimostrazione).

Qual è lo scopo di questo elemento dell'architettura Keybase: cosa ottengono gli hash di firma delle prove precedenti?

    
posta orome 30.05.2017 - 14:06
fonte

1 risposta

1

Vedo che ci sono già ottimi commenti, ma lascia che li condensi e aggiunga i pezzi mancanti:

Perché eseguire l'hash della prova precedente nella prova corrente?

Come già indicato da ISMSDEV , la base dei tasti sta essenzialmente creando una struttura dati solo per l'aggiunta, un registro immutabile. L'idea è che incorporando la prova precedente, non solo firmi l'affermazione corrente, ma rassicuri anche la tua conoscenza del precedente.

Perché una tale catena è una buona cosa?

Le strutture dati di sola aggiunta hanno alcune buone proprietà: la sequenza è fissa e questo è facile da provare e verificare. Supponiamo che tu abbia una catena come questa:
A -> B
Dove A è la prima prova e B è una prova che incorpora l'hash di A . Se ora desideri aggiungere una prova X che "è successo" tra A e B , puoi incorporare l'hash di A per trasformarlo in successore. Tuttavia, la catena biforcuta ora si presenta in questo modo:
X < - A - > B
Se vuoi veramente che X faccia parte della catena, devi creare un nuovo B' che incorpori l'hash di X invece di% diA. Questo sarebbe simile a questo:
A - > X - > B' Ora la cosa bella è che questo renderà la prova esistente di B (la firma) sbagliata, dal momento che il contenuto firmato è cambiato. Quindi, le persone possono rilevarlo, perché la testa ora è B' invece di B . Per renderlo più chiaro, se hai una catena lunga, ad esempio:
A - > B - > ... - > Z , quindi è possibile verificare che nessun elemento dell'intera catena sia mai stato modificato ricordando solo l'attuale capo della catena. Se in QUALSIASI punto della catena qualcosa è cambiato, tutti gli elementi che seguono dovrebbero essere ricreati e l'elemento superiore (hash di s). Così, per un servizio che pubblica continuamente la catena e quindi la firma di testa, è sufficiente ricordare questo e non appena i cambiamenti a catena (probabilmente nuovi elementi sono stati in allegato), non vi resta che verificare tutto, dalla testa hai già avuto e dopo, ricorda quello nuovo.
Se sei interessato a maggiori dettagli, Keybase spiega altri dettagli del loro approccio qui .

Informazioni sul commit della blockchain di Bitcoin ...

Ok, quindi quello che ho spiegato sopra vale già senza Bitcoin. Ma perché ora spingere anche alla catena dei Bitcoin? In sostanza, gli utenti / client di Bitcoin controllano e verificano continuamente la catena di Bitcoin come un log di sola aggiunta, un libro mastro pubblico e con data e ora. Questo ci fornisce un registro pubblico e sigillato di eventi che è garantito da una grande comunità globale. Ora le persone hanno iniziato a sfruttarlo, commettendo dati, come gli hash, alla Blockchain per poter timestamp in modo sicuro e irrevocabile i loro dati. La parte importante qui è che, al contrario di una catena di sig che tu, come proprietario di un servizio, pubblichi, non puoi riscrivere la cronologia. Per voi come un utente Keybase, questo significa quanto segue: Se, in qualsiasi punto nel tempo, l'hash testa disponibili attraverso il servizio Keybase e quello hash in Bitcoin Blockchain in quel momento divergono, è ora qualcosa è pescoso. La gente del Keybase lo chiama "Sii onesto o impaurito". Non è possibile ottenere ciò pubblicando su una pagina Web solo perché può cambiare in qualsiasi momento. La Blockchain di Bitcoin tuttavia è (quasi *) non modificabile.

(*) Ovviamente Bitcoin non è perfetto, ma le probabilità o gli attacchi che riescono a riscrivere la storia su larga scala sono minuscole (vedi attacco del 51%).

Quindi qual è l'immagine bit

Il quadro generale è che aziende come Keybase si impegnano molto nella creazione di software di crittografia che riduca al minimo la quantità di fiducia che devi mettere nei creatori / proprietari di servizi. Oltre a stabilire trasparenza attraverso il codice open sourcing, la pubblicazione di sig catene, hash, ecc consente ai clienti di utilizzare il servizio anche se non si fidano di esso. L'idea è che tu come fornitore di servizi non puoi ingannare il tuo cliente.

Ok, questa è stata una lunga risposta, ma spero che chiarisca le cose. Ho appena sentito che c'è un contesto che deve essere menzionato quando si parla di queste cose.

    
risposta data 24.10.2017 - 11:48
fonte

Leggi altre domande sui tag