In svariate applicazioni, ha senso affidare un'informazione segreta, qui semplicemente denominata “il segreto”, a un gruppo di soggetti che, nel rispetto di precise regole pre-stabilite, possono decidere di utilizzare tale informazione segreta per perseguire i loro scopi istituzionali. Si pensi, ad esempio, ad un consiglio di amministrazione il cui presidente, che custodisce in una cassetta di sicurezza documenti importanti e riservati, desideri affidare ai membri del consiglio il codice di accesso alla cassetta, stabilendo che ciò possa essere effettivamente compiuto solo nel caso in cui almeno la metà più uno dei componenti del consiglio concordi nell'accedere alle informazioni riservate. Più in generale, condividere un segreto che consente l’accesso ad una risorsa comune può rappresentare un problema nel caso in cui debbano essere mantenuti elevati i livelli di affidabilità e confidenzialità del segreto stesso, che può consistere in una chiave, passphrase, PIN, combinazione o altro. Infatti, affidare il segreto ad un solo soggetto per garantirne la riservatezza non assicura un’adeguata affidabilità nel caso in cui questo venisse accidentalmente smarrito, distrutto, alterato ecc.; per non parlare poi dei possibili usi fraudolenti del segreto da parte dell'unico affidatario. D’altra parte, affidare l'intero segreto a più soggetti aumenta la probabilità che uno di essi lo utilizzi impropriamente. Un approccio che offre una terza possibilità, intermedia rispetto i due casi estremi menzionati, è stato presentato da Shamir nel 1979 ed è basato sulla suddivisione del segreto in parti, in modo tale che comunque siano scelte di esse, queste siano sufficienti per ricostruirlo, ma la conoscenza di parti non riveli alcuna informazione riguardo il segreto . Tale approccio è stato denominato “condivisione di un segreto alla Shamir” ed è assai noto nella letteratura specializzata. Nonostante la sua notorietà ed eleganza matematica, basata sulle proprietà dell'interpolazione polinomiale, alcune caratteristiche intrinseche ne limitano l'usabilità: l'approccio non consente di determinare se e quando il segreto è stato ricostruito e neanche da chi. L'approccio è stato altresì sfruttato in alcuni domini applicativi specifici, in cui tali limitazioni non appaiono rilevanti. In questo lavoro presentiamo una applicazione Web basata sullo schema di Shamir, sviluppata alla Sapienza di Roma, che consente la condivisione di segreti sul Web in maniera sicura. L'applicazione permette di definire le identità degli soggetti con cui condividere il segreto e di scegliere la soglia , per la ricostruzione. In tal senso, l'applicazione realizza il sistema di condivisione di un segreto alla Shamir fra utenti remoti che sono collegati a Internet, scegliendo anche la soglia . Essa fa uso di un sistema centrale di riferimento, Web-accessibile, al quale si connettono numerosi altri client sparsi sull'intera rete e che consente ai partecipanti di collaborare senza la necessità di interazioni dirette. Rispetto allo schema originale di Shamir, l'applicazione offre funzionalità aggiuntive che permettono di superare i tradizionali limiti. In particolare, l'applicazione supporta gli utenti nella ricostruzione del segreto, impedendo ricostruzioni autonome: ciò permette di stabilire quando e da chi il segreto è stato ricostruito. Tutte le comunicazioni tra le diverse componenti (client, server) dell’applicazione sono state protette con un doppio livello di sicurezza crittografica che fornisce costantemente affidabilità, confidenzialità ed autenticità delle informazioni trasmesse. Per valutare la sicurezza del sistema di condivisione di segreti realizzato è stata utilizzata un’architettura di calcolo basata su GPU per considerare le reali potenzialità di un attaccante. Le analisi condotte hanno mostrato che un attaccante in grado di entrare in possesso dell’intera base di dati non ha la possibilità di ottenere in alcun caso informazioni sensibili riguardanti il segreto o le chiavi generate, in quanto sono state adottate opportune tecniche per la protezione dei dati che il sistema centrale mantiene per la gestione dei segreti amministrati. In conclusione, il sistema da noi realizzato offre le funzionalità pensate originariamente da Shamir, con alcune migliorie, che consentono di sapere chi ha ricostruito il segreto e quando, e impediscono operazioni di sabotaggio durante la fase di ricostruzione del segreto. Il sistema è Web-accessibile e dotato di un doppio livello di cifratura ed è resistente ad attacchi. Permette la fruizione del servizio a un gruppo di utenti che comunicano attraverso Internet, senza aver bisogno di specifiche infrastrutture di sicurezza né di sincronizzazione. Gli utenti, in particolare, non necessitano di pre-condivisione di chiavi, password o altro, né hanno la necessità di incontrarsi. Il sistema usa tecnologie standard e collaudate e può venire utilizzato, oltre che da gruppi di utenti, anche da applicazioni terze, grazie alle REST API da esso offerte. Il codice sorgente del sistema è disponibile alla pagina http://www.dis.uniroma1.it/~damore/sss/.

Condividere un segreto sul Web / F., Ciotoli; D'Amore, Fabrizio; M., de Santis. - In: ICT SECURITY. - ISSN 1724-1987. - STAMPA. - 107:(2013), pp. 48-52.

Condividere un segreto sul Web

D'AMORE, Fabrizio;
2013

Abstract

In svariate applicazioni, ha senso affidare un'informazione segreta, qui semplicemente denominata “il segreto”, a un gruppo di soggetti che, nel rispetto di precise regole pre-stabilite, possono decidere di utilizzare tale informazione segreta per perseguire i loro scopi istituzionali. Si pensi, ad esempio, ad un consiglio di amministrazione il cui presidente, che custodisce in una cassetta di sicurezza documenti importanti e riservati, desideri affidare ai membri del consiglio il codice di accesso alla cassetta, stabilendo che ciò possa essere effettivamente compiuto solo nel caso in cui almeno la metà più uno dei componenti del consiglio concordi nell'accedere alle informazioni riservate. Più in generale, condividere un segreto che consente l’accesso ad una risorsa comune può rappresentare un problema nel caso in cui debbano essere mantenuti elevati i livelli di affidabilità e confidenzialità del segreto stesso, che può consistere in una chiave, passphrase, PIN, combinazione o altro. Infatti, affidare il segreto ad un solo soggetto per garantirne la riservatezza non assicura un’adeguata affidabilità nel caso in cui questo venisse accidentalmente smarrito, distrutto, alterato ecc.; per non parlare poi dei possibili usi fraudolenti del segreto da parte dell'unico affidatario. D’altra parte, affidare l'intero segreto a più soggetti aumenta la probabilità che uno di essi lo utilizzi impropriamente. Un approccio che offre una terza possibilità, intermedia rispetto i due casi estremi menzionati, è stato presentato da Shamir nel 1979 ed è basato sulla suddivisione del segreto in parti, in modo tale che comunque siano scelte di esse, queste siano sufficienti per ricostruirlo, ma la conoscenza di parti non riveli alcuna informazione riguardo il segreto . Tale approccio è stato denominato “condivisione di un segreto alla Shamir” ed è assai noto nella letteratura specializzata. Nonostante la sua notorietà ed eleganza matematica, basata sulle proprietà dell'interpolazione polinomiale, alcune caratteristiche intrinseche ne limitano l'usabilità: l'approccio non consente di determinare se e quando il segreto è stato ricostruito e neanche da chi. L'approccio è stato altresì sfruttato in alcuni domini applicativi specifici, in cui tali limitazioni non appaiono rilevanti. In questo lavoro presentiamo una applicazione Web basata sullo schema di Shamir, sviluppata alla Sapienza di Roma, che consente la condivisione di segreti sul Web in maniera sicura. L'applicazione permette di definire le identità degli soggetti con cui condividere il segreto e di scegliere la soglia , per la ricostruzione. In tal senso, l'applicazione realizza il sistema di condivisione di un segreto alla Shamir fra utenti remoti che sono collegati a Internet, scegliendo anche la soglia . Essa fa uso di un sistema centrale di riferimento, Web-accessibile, al quale si connettono numerosi altri client sparsi sull'intera rete e che consente ai partecipanti di collaborare senza la necessità di interazioni dirette. Rispetto allo schema originale di Shamir, l'applicazione offre funzionalità aggiuntive che permettono di superare i tradizionali limiti. In particolare, l'applicazione supporta gli utenti nella ricostruzione del segreto, impedendo ricostruzioni autonome: ciò permette di stabilire quando e da chi il segreto è stato ricostruito. Tutte le comunicazioni tra le diverse componenti (client, server) dell’applicazione sono state protette con un doppio livello di sicurezza crittografica che fornisce costantemente affidabilità, confidenzialità ed autenticità delle informazioni trasmesse. Per valutare la sicurezza del sistema di condivisione di segreti realizzato è stata utilizzata un’architettura di calcolo basata su GPU per considerare le reali potenzialità di un attaccante. Le analisi condotte hanno mostrato che un attaccante in grado di entrare in possesso dell’intera base di dati non ha la possibilità di ottenere in alcun caso informazioni sensibili riguardanti il segreto o le chiavi generate, in quanto sono state adottate opportune tecniche per la protezione dei dati che il sistema centrale mantiene per la gestione dei segreti amministrati. In conclusione, il sistema da noi realizzato offre le funzionalità pensate originariamente da Shamir, con alcune migliorie, che consentono di sapere chi ha ricostruito il segreto e quando, e impediscono operazioni di sabotaggio durante la fase di ricostruzione del segreto. Il sistema è Web-accessibile e dotato di un doppio livello di cifratura ed è resistente ad attacchi. Permette la fruizione del servizio a un gruppo di utenti che comunicano attraverso Internet, senza aver bisogno di specifiche infrastrutture di sicurezza né di sincronizzazione. Gli utenti, in particolare, non necessitano di pre-condivisione di chiavi, password o altro, né hanno la necessità di incontrarsi. Il sistema usa tecnologie standard e collaudate e può venire utilizzato, oltre che da gruppi di utenti, anche da applicazioni terze, grazie alle REST API da esso offerte. Il codice sorgente del sistema è disponibile alla pagina http://www.dis.uniroma1.it/~damore/sss/.
2013
Segreti alla Shamir; Crittografia; Open Web application
01 Pubblicazione su rivista::01a Articolo in rivista
Condividere un segreto sul Web / F., Ciotoli; D'Amore, Fabrizio; M., de Santis. - In: ICT SECURITY. - ISSN 1724-1987. - STAMPA. - 107:(2013), pp. 48-52.
File allegati a questo prodotto
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11573/524838
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact