I Vampiri - Gli Immortali!

Shamir's Secret Sharing Scheme

« Older   Newer »
  Share  
zekiel
view post Posted on 1/12/2016, 12:33 by: zekiel     +2   +1   -1
Avatar

Neonati

Group:
Super Utente
Posts:
92
Reputation:
+25

Status:
Anonymous


Apro questo nuovo thread, visto l'interesse di un paio di utenti per il messaggio apparso (e poi cancellato) qualche giorno fa su questo Forum. Al solito cerchero' di essere piu preciso e conciso possibile.
L'ssss e' un algoritmo di cifratura ideato da Adi Shamir, questo vuol dire che permette di cifrare un messaggio, che d'ora in poi chiamero' segreto, tramite una serie di passaggi.
Ma non e' la solita crittografia "traduci e leggi", bensi' una crittografia a secret sharing. In pratica il segreto viene cifrato e diviso in un numero variabile di chiavi, le quali dovranno evidentemente essere riunite per ottenere il messaggio originale.
Gli algoritmi per dividere, combinare e decodificare sono molto, molto complessi, impensabile farli "a mano", Shamir ha quindi scritto un programma in C che una volta dati gli input fa tutto in automatico.
Per chi si intendesse di linguaggio C linko il sito da cui scaricare i file sorgente, mentre per chi usa Linux i file sono gia nei repository, bastera' quindi il comando apt-get install ssss. http://point-at-infinity.org/ssss/
Tornando a noi, ecco un esempio pratico: supponiamo ora che il nostro segreto sia Vampiri, gli Immortali, il programma ci permette di decidere quante chiavi generare e con quante chiavi il segreto puo' essere recuperato: possono essere tutte o meno. In un esempio semplice avremo 5 chiavi threshold 3, ovvero recuperando 3 chiavi su 5 avremo il nostro segreto. Genero quindi 5 chiavi:

0-1-7c67c9be66e1664ef874eae2535c9710bc993b2981a7
0-2-29af77ad378c3ca91e10b61c5c5b67f0f7da07a9205f
0-3-d90c3a191f032d8eee77ae7a60c7238373ace92add2b
0-4-d6a6c0781e5b46d6ff20aae5227b4b97b9e44dbe7c35
0-5-26058dcc36d457f10f47b2831ee70fe43d92a33d8153

Anche i meno esperti possono notare che sono tutti caratteri esadecimali e che la lunghezza di ciascuna chiave corrisponde alla lunghezza del segreto, tuttavia cercando di decodificare una singola chiave non otteremo nessuna informazione utile.
Invece prendendo una qualsiasi terna di chiavi e combinandole troveremo il nostro segreto.
Per i piu' curiosi lascio anche il link alla pagina di Wikipedia, molto piu' completa e dettagliata. https://en.wikipedia.org/wiki/Shamir's_Secret_Sharing
Grazie a tutti per l'attenzione!
 
Top
5 replies since 1/12/2016, 12:33   73 views
  Share