IT202100031022A1 - Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato - Google Patents
Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato Download PDFInfo
- Publication number
- IT202100031022A1 IT202100031022A1 IT102021000031022A IT202100031022A IT202100031022A1 IT 202100031022 A1 IT202100031022 A1 IT 202100031022A1 IT 102021000031022 A IT102021000031022 A IT 102021000031022A IT 202100031022 A IT202100031022 A IT 202100031022A IT 202100031022 A1 IT202100031022 A1 IT 202100031022A1
- Authority
- IT
- Italy
- Prior art keywords
- data
- fragment
- telecommunications network
- portions
- message
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
DESCRIZIONE
Annessa a domanda di brevetto per INVENZIONE INDUSTRIALE avente per titolo
?Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato?
Campo tecnico dell?invenzione
La presente invenzione riguarda in generale il settore della gestione di dati associati ad un soggetto.
Pi? in particolare, la presente invenzione riguarda un metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato.
Tecnica nota
Sono noti sistemi di verifica in linea dell?identit? digitale di un soggetto, per mezzo del confronto fra un profilo di riferimento del soggetto acquisito precedentemente ed un profilo campione del soggetto acquisito in tempo reale.
Il profilo di riferimento/campione ? ad esempio un profilo vocale del soggetto, oppure un profilo video del soggetto oppure una combinazione di essi.
La domanda di brevetto PCT avente numero di deposito PCT/IB2021/055428 descrive di suddividere il profilo vocale di riferimento in due o pi? porzioni e di memorizzarle in memorie di rispettivi server di rete, in modo da aumentare la sicurezza e protezione dei dati.
La domanda di brevetto PCT avente numero di deposito PCT/US2020/017511 descrive la suddivisione di un template biometrico di riferimento (indicato con EBT= Enrollment Biometric Template) in una pluralit? di porzioni e la memorizzazione di dette porzioni in una pluralit? di nodi di rete differenti; successivamente, il template biometrico di riferimento viene ricostruito a partire dalla pluralit? delle sue porzioni e viene effettuato un confronto fra il template biometrico di riferimento ricostruito ed un template biometrico campione (ABS= Authentication Biometric Sample) acquisito in tempo reale.
La Richiedente ha osservato che uno svantaggio delle tecniche note ? di non garantire in modo sufficiente la distribuzione e memorizzazione di un dato associato ad un soggetto in modo sicuro e affidabile e di non garantire in modo sufficiente la riservatezza del dato associato, in cui detto dato ? ad esempio un profilo vocale/facciale che viene utilizzato come profilo di riferimento del soggetto per una successiva verifica in linea dell?identit? dell?utente.
Breve sommario dell?invenzione
La presente invenzione riguarda un metodo, realizzato mediante almeno un elaboratore elettronico, per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralit? di memorie distribuite come definito nella annessa rivendicazione 1 e da sue forme di realizzazione preferite descritte nelle rivendicazioni dipendenti da 2 a 6.
La Richiedente ha percepito che il metodo di suddivisione, distribuzione e memorizzazione del dato in accordo con la presente invenzione pu? garantire la distribuzione e memorizzazione del dato associato al soggetto in modo sicuro ed affidabile ed inoltre pu? garantire la riservatezza del dato, mantenendo al tempo stesso una buona velocit? di risposta nella fase di caricamento del dato e nella fase di inserimento nel sistema di memorizzazione.
Inoltre il metodo di suddivisione, distribuzione memorizzazione del dato secondo l?invenzione garantisce maggiore flessibilit? per l?aggiunta di nuovi servizi. Infatti il dato ? gestito in un sistema decentralizzato al quale possono essere aggiunti pi? servizi su pi? server che sfruttano il sistema di comunicazione ed il relativo protocollo di comunicazione; i servizi possono accedere al dato richiedendolo al sistema aggiungendo semplicemente le loro logiche applicative.
L?idea di base ? quella di implementare uno strato logico software utilizzando un?architettura di sistema decentralizzata comprendente una pluralit? di instradatori (router) di messaggi in una rete di telecomunicazioni, una pluralit? di componenti di server di rete ed una pluralit? di memorie distribuite in rete, ed inoltre utilizzare una particolare logica di interpretazione del dato associato al soggetto che consente una suddivisione (e successiva ricostruzione) del dato in modo sicuro e affidabile.
Forma oggetto della presente invenzione anche un supporto di memorizzazione non-transitorio leggibile da un elaboratore elettronico come definito nella annessa rivendicazione 7.
Forma oggetto della presente invenzione anche un programma per elaboratore elettronico comprendente porzioni di codice software atto ad eseguire i passi del metodo di suddivisione, distribuzione e memorizzazione di un dato associato ad un soggetto secondo l?invenzione, quando detto programma ? eseguito su almeno un elaboratore elettronico.
Forma oggetto della presente invenzione anche un sistema elettronico di suddivisione, distribuzione e memorizzazione di un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni, in cui il sistema elettronico ? definito nella annessa rivendicazione 8 e nelle forme di realizzazione preferite descritte nelle rivendicazioni dipendenti 9-10.
Breve descrizione dei disegni
Ulteriori caratteristiche ed i vantaggi dell?invenzione risulteranno dalla descrizione che segue di una forma di realizzazione preferita e di sue varianti fornita a titolo esemplificativo con riferimento ai disegni allegati, in cui:
- la Figura 1 mostra uno schema a blocchi di un sistema elettronico con architettura distribuita per la suddivisione, distribuzione e memorizzazione di un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni secondo l?invenzione;
- la Figura 2 mostra uno schema di logica di interpretazione di un dato associato ad un soggetto secondo l?invenzione;
- la Figura 3A mostra un diagramma temporale dei messaggi scambiati fra gli elementi del sistema elettronico di Figura 1 per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni secondo una prima forma di realizzazione dell?invenzione;
- la Figura 3B mostra un diagramma temporale dei messaggi scambiati fra gli elementi del sistema elettronico di Figura 1 per ricostruire un dato associato ad un soggetto da una pluralit? di porzioni del dato memorizzate in una pluralit? di memorie distribuite della rete di telecomunicazioni secondo la prima forma di realizzazione dell?invenzione;
- la Figura 4A mostra un diagramma temporale dei messaggi scambiati fra gli elementi del sistema elettronico di Figura 1 per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni in base ad una seconda forma di realizzazione dell?invenzione;
- la Figura 4B mostra un diagramma temporale dei messaggi scambiati fra gli elementi del sistema elettronico di Figura 1 per ricostruire un dato associato ad un soggetto da una pluralit? di porzioni del dato memorizzate in una pluralit? di memorie distribuite della rete di telecomunicazioni in base alla seconda forma di realizzazione dell?invenzione.
Descrizione dettagliata dell?invenzione
Si osservi che nella descrizione seguente blocchi, componenti o moduli identici o analoghi sono indicati nelle figure con gli stessi riferimenti numerici, anche se sono mostrati in differenti forme di realizzazione dell?invenzione.
Con riferimento alla Figura 1, viene mostrato uno schema a blocchi di un sistema elettronico 1 per la suddivisione di un dato associato ad un soggetto 7 in una pluralit? di porzioni e per la loro distribuzione e memorizzazione in una pluralit? di memorie distribuite secondo l?invenzione.
Il sistema elettronico 1 comprende due fasi di funzionamento:
- una prima fase di funzionamento in cui viene effettuata la suddivisione, distribuzione e memorizzazione del dato in una pluralit? di memorie distribuite;
- una successiva seconda fase di funzionamento in cui viene effettuata la ricostruzione del dato originale a partire dalla pluralit? di porzioni memorizzate nelle memorie distribuite.
Il sistema elettronico 1 ? implementato con una architettura decentralizzata, che permette di realizzare sistemi resilienti ai guasti ridondando i nodi (server) collegati ad una rete di comunicazione a sua volta distribuita e ridondata, la quale adotta un protocollo proprietario estendibile di messaggistica.
Il sistema di comunicazione opera a livello applicativo adottando protocolli, sistemi e hardware di commercio collaudati ed affidabili.
Inoltre la topologia decentralizzata permette di adottare strategie adattive e automatiche di instradamento dei messaggi, riducendo il pi? possibile il tempo totale di elaborazione di una particolare funzionalit? su un dato.
Ai fini della spiegazione dell?invenzione si considera un esempio in cui il dato ? un profilo vocale di riferimento di un soggetto 7 ed in cui il sistema elettronico 1 ha la funzione di effettuare una verifica in linea della identit? digitale del soggetto 7, per mezzo di un confronto fra il profilo vocale di riferimento del soggetto 7 ed un profilo vocale campione del soggetto 7, in cui:
- il profilo vocale di riferimento del soggetto 7 viene acquisito durante una fase di profilazione che si svolge in una condizione di massima sicurezza durante la quale vengono acquisiti dati personali del soggetto 7 (come ad esempio il suo nome, cognome, numero di telefono, carta di identit?) ed il profilo vocale di riferimento del soggetto 7;
- il profilo vocale campione del soggetto 7 viene acquisito durante una fase di normale funzionamento (successiva alla fase di profilazione), in cui viene effettuato il confronto in tempo reale fra il profilo vocale di riferimento del soggetto 7 acquisito precedentemente ed il profilo vocale campione acquisito in tempo reale.
Con il termine ?profilo vocale di riferimento? del soggetto 7 si intende un profilo di riferimento dell?identit? digitale del soggetto 7 generato in funzione di una traccia audio della voce del soggetto 7, in cui detta traccia audio (e quindi il profilo vocale di riferimento) viene generata per mezzo della conversione da analogico a digitale della voce del soggetto 7 acquisita nella procedura di profilazione per mezzo del microfono integrato in un dispositivo elettronico 8 ed in condizioni di sicurezza: il profilo vocale di riferimento ? quindi considerato attendibile.
Analogamente, con il termine ?profilo vocale campione? del soggetto 7 si intende un profilo campione di identit? digitale del soggetto 7 generato in funzione di una traccia audio digitale campione della voce del soggetto 7, in cui detta traccia audio digitale campione viene generata per mezzo della conversione da analogico a digitale della voce del soggetto 7 acquisita in tempo reale per mezzo del microfono integrato nel dispositivo elettronico 8.
Nel caso in cui il profilo vocale/facciale campione sia compatibile (ovvero uguale) al profilo vocale/facciale di riferimento, l?identit? digitale ? stata verificata con successo, ovvero il soggetto 7 ? veramente chi ha dichiarato di essere; diversamente, nel caso in cui il profilo vocale/facciale campione sia non compatibile (ovvero diverso) con il profilo vocale/facciale di riferimento, la verifica ha esito negativo, ovvero il soggetto 7 non ? stato identificato con successo.
Il profilo vocale di riferimento/campione ? implementato ad esempio con un codice alfanumerico generato per mezzo di un opportuno algoritmo che riceve in ingresso una traccia audio digitale di riferimento/campione rappresentativa della voce del soggetto e genera in uscita (per mezzo di detto algoritmo) un codice alfanumerico (indicato anche con ?impronta digitale?), cio? una stringa di caratteri alfanumerici.
La traccia audio digitale di riferimento/campione viene acquisito rivolgendo al soggetto 7 (per mezzo di un assistente vocale integrato nel dispositivo elettronico 8 o esterno ad esso) una o pi? frasi definite (ovvero note in anticipo) e acquisendo (per mezzo dello stesso assistente vocale) una o pi? corrispondenti risposte dal soggetto 7, in cui dette risposte costituiscono la voce del soggetto 7 che viene convertita da analogico a digitale generando una traccia audio digitale di riferimento/campione, la quale viene utilizzata per generare il profilo vocale di riferimento/campione.
Si osservi che l?invenzione ? applicabile anche ad altri tipi di dato associati al soggetto 7 diversi dal profilo vocale di riferimento, come ad esempio:
- un profilo facciale di riferimento del soggetto 7;
- una combinazione del profilo vocale/facciale di riferimento del soggetto 7;
- un profilo oculare di riferimento del soggetto 7;
- l?impronta digitale del polpastrello di un dito del soggetto 7;
- altri tipi di dati biometrici associati al soggetto 7, come ad esempio l?impronta di un piede;
- una immagine rappresentativa di un documento di identit? del soggetto 7;
- dati indicativi del codice fiscale del soggetto 7;
- dati indicativi dell?indirizzo di residenza o domicilio del soggetto 7;dati rappresentativi di pattern di posizioni geografiche rilevate del soggetto 7 (per esempio, mediante il sistema di localizzazione satellitare GPS);
- dati indicativi di un documento di identit? del soggetto 7;
- dati indicativi di un diploma del soggetto 7;
- dati indicativi di una carta di circolazione di un veicolo del soggetto 7;
- un valore indicativo dell?estratto conto di un conto corrente bancario del soggetto 7;
- un contratto stipulato dal soggetto 7.
In particolare, il sistema elettronico 1 comprende una porzione interna 10, una porzione intermedia 11 ed una porzione pi? esterna 12.
Inoltre il sistema elettronico 1 comprende un dispositivo elettronico mobile 8 (per esempio, uno smartphone, un tablet o un personal computer portatile) associato ad un soggetto 7 ed un dispositivo elettronico 6 di tipo fisso (per esempio, un personal computer).
La porzione interna 10 del sistema elettronico 1 ? una rete di telecomunicazioni che comprende una pluralit? di nodi di rete (nucleo di rete) collegati fra di loro con una topologia a maglia, sui quali vengono implementati in software una pluralit? instradatori di messaggi 20, 21, 22, 23.
La porzione intermedia 11 del sistema elettronico 1 comprende una pluralit? di dispositivi server, ciascuno dei quali comprende un ricetrasmettitore di segnali a media-lunga distanza ed una unit? di elaborazione (per esempio, un microprocessore).
Il dispositivo elettronico mobile 8 comprende una unit? di elaborazione (per esempio, un microprocessore), un ricetrasmettitore di segnali a media-lunga distanza, uno schermo, un microfono, un altoparlante ed una fotocamera.
Secondo la prima forma di realizzazione dell?invenzione, l?unit? di elaborazione del dispositivo elettronico mobile 8 esegue un programma software che effettua una suddivisione del dato associato al soggetto 7 (oppure 5) in una pluralit? di porzioni del dato e associa un rispettivo identificativo frammento a ciascuna porzione del dato, come verr? spiegato pi? in dettaglio in seguito relativamente alla descrizione della Figura 3A.
La suddivisione del dato viene effettuata per mezzo di un algoritmo al quale sono associate una o pi? strategie di instradamento, replica e memorizzazione del dato ottimizzate per diminuire il tempo di attraversamento del sistema elettronico 1.
In particolare, detta suddivisione del dato associato al soggetto 7 (oppure 5) viene effettuata al dispositivo elettronico mobile 8 utilizzando algoritmi di dispersione di informazioni (IDA= Information Dispersal Algorithm), come ad esempio l?algoritmo di Michael O. Rabin (si veda il documento ?Efficient dispersal of information for security, load balancing, and fault tolerance?, Journal of the ACM. 36 (2): 335-348, 1989) ed utilizzando tecniche di ?secret sharing? (si veda Wikipedia al link https://en.wikipedia.org/wiki/Secret_sharing).
In particolare, viene utilizzato lo schema di secret sharing di Adi Shamir (si veda il documento ?How to share a secret?, Communications of the ACM, 22 (11): 612?613, 1979) in cui il dato viene suddiviso in una pluralit? di porzioni (chiamate ?shares?) ed in cui ? necessario recuperare un numero minimo di porzioni per poter ricostruire il dato originale.
Ciascuno dei dispositivi server esegue un programma software indicato in seguito con ?componente server?, in cui per semplicit? in Figura 1 sono mostrati due componenti server 30, 31.
Secondo una prima ed una seconda forma di realizzazione dell?invenzione, i componenti server 30, 31 hanno la funzione di calcolare il numero di memorie distribuite in cui memorizzare una pluralit? di porzioni (cio? frammenti) del dato associato al soggetto 7 (oppure 5) e hanno la funzione di distribuire la pluralit? di porzioni del dato associato al soggetto 7 (oppure 5) in una pluralit? di memorie distribuite 40-1, 40-2, 41-1, 41-2, 42-1 associate ai nodi di memorizzazione frammenti 40, 41, 42, come verr? spiegato pi? in dettaglio in seguito relativamente alla descrizione della Figura 3A.
Inoltre secondo la prima forma di realizzazione, i componenti server 30, 31 hanno la funzione di raccogliere da almeno parte dei nodi di memorizzazione frammenti 40, 41, 42 una pluralit? di porzioni del dato associato al soggetto 7 (oppure 5), quindi la pluralit? delle porzioni raccolte viene inoltrata verso il dispositivo elettronico 8 (oppure 6) o verso l?applicazione software collegata direttamente con i dispositivi server 30 e/o 31.
In base ad una seconda forma di realizzazione dell?invenzione, i componenti server 30, 31 hanno l?ulteriore funzione di ricevere il dato associato al soggetto 7 (oppure 5), effettuare una suddivisione del dato associato al soggetto 7 (oppure 5) in una pluralit? di porzioni del dato, associare un rispettivo identificativo frammento a ciascuna porzione del dato, in aggiunta alla funzione di calcolo e distribuzione, come verr? spiegato pi? in dettaglio in seguito relativamente alla descrizione della Figura 4A.
In particolare, detta suddivisione del dato associato al soggetto 7 (oppure 5) viene effettuata ai componenti server 30, 31 utilizzando algoritmi di dispersione di informazioni (IDA= Information Dispersal Algorithm), come ad esempio l?algoritmo di Michael O. Rabin (si veda il documento ?Efficient dispersal of information for security, load balancing, and fault tolerance?, Journal of the ACM. 36 (2): 335-348, 1989) ed utilizzando tecniche di ?secret sharing? (si veda Wikipedia al link https://en.wikipedia.org/wiki/Secret_sharing).
In particolare, viene utilizzato lo schema di secret sharing di Adi Shamir (si veda il documento ?How to share a secret?, Communications of the ACM, 22 (11): 612?613, 1979) in cui il dato viene suddiviso in una pluralit? di porzioni (chiamate ?shares?) ed in cui ? necessario recuperare un numero minimo di porzioni per poter ricostruire il dato originale.
Inoltre in base alla seconda forma di realizzazione, i componenti server 30, 31 hanno la funzione di raccogliere da almeno parte dei nodi di memorizzazione frammenti 40, 41, 42 una pluralit? di porzioni del dato associato al soggetto 7 (oppure 5), quindi la pluralit? delle porzioni raccolte viene inoltrata verso il dispositivo elettronico 8 (oppure 6) o verso l?applicazione software collegata direttamente con i dispositivi server 30 e/o 31.
Vantaggiosamente, la porzione intermedia 11 del sistema elettronico 1 comprende ulteriormente un nodo di controllo 44 che ha la funzione controllare la creazione e distruzione in tempo reale dei componenti server 30, 31.
In altre parole, i componenti server 30, 31 sono creati e distrutti in tempo reale dal nodo di controllo 44 al fine di esistere solo il momento di elaborazione del dato e successivo instradamento attraverso gli instradatori di messaggi, aumentando cos? ulteriormente la sicurezza totale del sistema rispetto al dato.
La tecnologia abilitante per questa realizzazione di sistema ? basata sul concetto di unikernel (si veda ad esempio Wikipedia al link https://en.wikipedia.org/wiki/Unikernel), in base al quale delle macchine virtuali leggere possono essere create e distrutte in pochi millisecondi.
La porzione esterna 12 del sistema elettronico 1 comprende una pluralit? di nodi di memorizzazione frammenti, in cui per semplicit? in Figura 1 sono mostrati tre nodi di memorizzazione frammenti 40, 41, 42.
I nodi di memorizzazione frammenti 40, 41, 42 hanno la funzione di memorizzare porzioni del dato associato al soggetto 7 (oppure 5) in una pluralit? di memorie distribuite, utilizzando tecnologie eterogenee di memorizzazione, RAM, database ad oggetti, database noSQL.
Inoltre la memorizzazione delle porzioni del dato associato al soggetto 7 pu? essere effettuato in pi? cloud pubblici/privati e diversi.
Gli instradatori di messaggi 20, 21, 22, 23, 24, 25 sono dei componenti software che sono eseguiti su unit? di elaborazione di rispettivi elementi della rete di telecomunicazioni 10, che pu? essere una rete di telecomunicazioni di tipo fissa (per esempio, la rete Internet) oppure di tipo radiomobile, o una combinazione di esse.
Detti elementi di rete comprendono quindi ciascuno un ricetrasmettitore di segnali a media-lunga distanza e una unit? di elaborazione (per esempio, un microprocessore) che esegue i componenti software degli instradatori di messaggi 20, 21, 22, 23, 24, 25.
Gli instradatori di messaggi 20, 21, 22, 23, 24, 25 hanno la funzione di ricevere i messaggi generati dal dispositivo elettronico mobile 8 (o dal dispositivo elettronico fisso 6) e di instradarli opportunamente verso uno o pi? componenti server 30, 31.
Inoltre gli instradatori di messaggi 20, 21, 22, 23, 24, 25 hanno la funzione di ricevere i messaggi generati dai dispositivi server 30, 31 e di instradarli verso i nodi di memorizzazione frammenti 40, 41, 42 oppure verso il dispositivo elettronico mobile 8 (o verso il dispositivo elettronico fisso 6).
Inoltre gli instradatori di messaggi 20, 21, 22, 23, 24, 25 hanno la funzione di ricevere i messaggi generati dai nodi di memorizzazione frammenti 40, 41, 42 e di instradarli verso i componenti server 30, 31.
I nodi di memorizzazione frammenti 40, 41, 42 sono dei dispositivi elettronici (per esempio, dei server di rete) aventi la funzione di memorizzare una o pi? porzioni del dato associato all?utente 7 (oppure 5).
A tale scopo ciascuno dei nodi di memorizzazione frammenti 40, 41, 42 comprende almeno una rispettiva memoria non volatile 40-1, 41-1, 42-1 interna o esterna ad essi (ovvero una banca dati) per memorizzare una parte della pluralit? di porzioni del dato associato al soggetto 7 (oppure 5).
I nodi di memorizzazione frammenti 40, 41, 42 hanno quindi la funzione di ricevere una o pi? porzioni del dato associato al soggetto 7 e/o 5 e di memorizzarle all?interno della almeno una rispettiva memoria 40-1, 41-1, 42-1 ad essi associata, come verr? spiegato pi? in dettaglio in seguito con riferimento alla Figura 3A.
Per questo scopo i nodi di memorizzazione frammenti 40, 41, 42 comprendono quindi ciascuno un ricetrasmettitore di segnali a medialunga distanza ed una unit? di elaborazione (per esempio, un microprocessore).
Preferibilmente, la porzione intermedia 11 del sistema elettronico 1 comprende ulteriormente un mediatore (broker) di messaggi 45 avente la funzione di garantire la consegna dei messaggi scambiati attraverso la rete di telecomunicazioni 10.
Con riferimento alla Figura 2, viene mostrato uno schema 2 della logica di interpretazione di un dato associato al soggetto 7.
Secondo la prima forma di realizzazione dell?invenzione, lo schema 2 viene interamente implementato sul dispositivo elettronico mobile 8 (oppure sul dispositivo elettronico fisso 6), per mezzo di una unit? di elaborazione che esegue un opportuno programma software.
Alternativamente, lo schema 2 viene implementato per mezzo di una applicazione software che comunica direttamente con uno dei componenti server 30, 31.
In base alla seconda forma di realizzazione dell?invenzione, lo schema 2 viene implementato in parte sul dispositivo elettronico mobile 8 (oppure sul dispositivo elettronico fisso 6) ed in parte su uno dei componenti server 30, 31.
Il dato associato al soggetto 7 ? ad esempio il profilo vocale di riferimento del soggetto 7, che ? stato acquisito nella fase di profilazione.
La logica di interpretazione del dato della Figura 2 utilizza seguenti identificativi:
- identificativo utente: ? una stringa alfanumerica che identifica univocamente un soggetto dagli altri soggetti;
- identificativo entit?: ? una stringa alfanumerica che identifica univocamente un tipo di dato associato ad un soggetto (ad esempio, profilo vocale di riferimento, profilo facciale di riferimento, profilo oculare di riferimento, impronta digitale di riferimento), al fine di distinguere un particolare tipo di dato da un altro (ad esempio, per distinguere un profilo vocale di riferimento da un profilo facciale di riferimento);
- identificativo frammento: ? una stringa alfanumerica che identifica univocamente una porzione in cui ? stato suddiviso un dato associato al soggetto 7.
Per esempio, l?identificativo utente ? una stringa alfanumerica ottenuta con un algoritmo di hashing, come ad esempio SHA512.
In particolare, la funzione di hash prende in ingresso una concatenazione di diverse stringhe di dati associati al soggetto 7 (ad esempio, nome, cognome, indirizzo email, password) e genera in uscita l?identificativo utente che ? una stringa alfanumerica esadecimale univoca.
Analogamente, l?identificativo entit? ? una stringa alfanumerica ottenuta con un algoritmo di hashing, come ad esempio SHA512.
In particolare, la funzione di hash prende in ingresso dati binari associati al soggetto 7 (ad esempio dati della sua carta d?identit?, indirizzo email, numero della posizione di previdenza sociale, dati del certificato di laurea) e genera in uscita l?identificativo entit? che ? una stringa alfanumerica esadecimale univoca.
Analogamente, l?identificativo frammento ? una stringa alfanumerica ottenuta con un algoritmo di hashing, come ad esempio SHA512.
In particolare, la funzione di hash prende in ingresso dati binari che rappresentano una particolare porzione (frammento) del dato considerato e genera in uscita l?identificativo frammento che ? una stringa alfanumerica esadecimale univoca.
Con riferimento in particolare alla Figura 2, viene configurato un identificativo utente 50 associato univocamente al soggetto 7, al fine di identificare univocamente il soggetto 7 e distinguerlo dal soggetto 5.
Si suppone che al soggetto 7 siano associati i seguenti tre tipi di dati:
- il primo dato 52 associato al soggetto 7 ? il profilo vocale di riferimento del soggetto 7;
- il secondo dato 55 associato al soggetto 7 ? il profilo facciale di riferimento del soggetto 7;
- il terzo dato 57 associato al soggetto 7 ? una immagine rappresentativa del documento di identit? del soggetto 7.
Vengono inoltre configurati i seguenti tre identificativi di entit? 51-1, 51-2, 51-3:
- un primo identificativo di entit? 51-1 ha la funzione di indicare che il tipo di dato associato al soggetto 7 ? il profilo vocale di riferimento del soggetto 7;
- un secondo identificativo di identit? 51-2 ha la funzione di indicare che il tipo di dato associato al soggetto 7 ? un profilo vocale di riferimento del soggetto 7;
- un terzo identificativo di identit? 51-3, che ha la funzione di indicare che il tipo di dato associato al soggetto 7 ? un documento di identit? del soggetto 7.
Il primo dato 52 (profilo vocale di riferimento del soggetto 7) viene suddiviso in due porzioni 52-1, 52-2.
Analogamente, il secondo dato 55 (profilo facciale di riferimento del soggetto 7) viene suddiviso in tre porzioni 55-1, 55-2; 55-3; il terzo dato 57 (immagine del documento di identit? del soggetto 7) non viene invece suddiviso in porzioni.
Infine viene assegnato un identificativo frammento ad ogni porzione del primo, secondo e terzo dato, in particolare:
- viene assegnato un valore di un identificativo frammento 54-1 che identifica univocamente la prima porzione 52-1 del primo dato 52;
- viene assegnato un valore di un identificativo frammento 54-2 che identifica univocamente la seconda porzione 52-2 del primo dato 52;
- viene assegnato un valore di un identificativo frammento 53-1 che identifica univocamente la prima porzione 55-1 del secondo dato 55;
- viene assegnato un valore di un identificativo frammento 53-2 che identifica univocamente la seconda porzione 55-2 del secondo dato 55; - viene assegnato un valore di un identificativo frammento 53-3 che identifica univocamente la terza porzione 55-3 del secondo dato 55;
- viene assegnato un valore di un identificativo frammento 56 che identifica univocamente il terzo dato 57.
Si osservi che per semplicit? in Figura 2 sono stati considerati dati associati ad un soggetto suddivisi in due o tre porzioni, ma pi? in generale l?invenzione ? applicabile ad un numero di porzioni del dato maggiore o uguale a due.
Secondo l?invenzione, le due porzioni 52-1, 52-2 del primo dato (profilo vocale di riferimento) e i due corrispondenti valori dell?identificativo frammento 54-1, 54-2 delle due porzioni 52-1, 52-2 del primo dato 52 (profilo vocale di riferimento) vengono memorizzate rispettivamente in due diverse memorie selezionate fra le memorie 40-1, 41-1, 42-1 dei tre diversi nodi di memorizzazione frammenti 40, 41, 42, come verr? spiegato pi? in dettaglio in seguito relativamente alla descrizione della Figura 3A.
Analogamente, le tre porzioni 55-1, 55-2, 55-3 del secondo dato (profilo facciale di riferimento) e i tre corrispondenti valori 53-1, 53-2, 53-3 dell?identificativo frammento delle tre porzioni 55-1, 55-2, 55-3 del secondo dato (profilo facciale di riferimento) vengono memorizzate rispettivamente nelle tre diverse memorie 40-1, 41-1, 42-1 dei tre nodi di memorizzazione frammenti 40, 41, 42.
Infine il terzo dato 57 (dati identificativi del documento di identit? del soggetto 7) ed il corrispondente valore 56 dell?identificativo del terzo dato 57 (dati identificativi del documento di identit? del soggetto 7) viene memorizzato in una memoria selezionata fra le tre memorie 40-1, 41-1, 42-1 dei tre nodi di memorizzazione frammenti 40, 41, 42.
Le precedenti considerazioni della Figura 2 relative al soggetto 7 sono applicabili in modo analogo al soggetto 5, pertanto lo schema 2 della logica di interpretazione del dato viene implementato sul dispositivo elettronico fisso 6 o su un dispositivo, viene configurato un altro valore dell?identificativo utente associato al soggetto 5 diverso dal valore dell?identificativo utente 50 associato al soggetto 7, vengono configurati altri valori degli identificativi di entit? diversi dai valori del primo, secondo, terzo identificativo di entit? 51-1, 51-2, 51-3.
Secondo una forma di realizzazione preferita della prima o seconda forma di realizzazione, ciascuno dei nodi di memorizzazione frammenti 40, 41, 42 comprende due o pi? memorie non volatili esterne ad esse (banche dati) per memorizzare due o pi? porzioni diverse del dato associato al soggetto 7 (oppure 5), in cui il numero di porzioni memorizzate nelle memorie associate a ciascuno dei nodi di memorizzazione frammenti 40, 41, 42 ? minore del numero totale delle porzioni in cui ? stato suddiviso il dato associato al soggetto 7 (oppure 5).
Per esempio, la Figura 2 mostra che sono presenti due memorie 40-1, 40-2 collegate con il nodo di memorizzazione frammenti 40 e sono presenti due memorie 41-1, 41-2 collegate con il nodo di memorizzazione frammenti 41: considerando il caso di Figura 2 del secondo dato 55 suddiviso in tre porzioni 55-1, 55-2, 55-3, la memoria 40-1 ? tale da memorizzare la prima porzione 55-1, la memoria 40-2 ? tale da memorizzare la seconda porzione 55-2, la memoria 41-1 ? tale da memorizzare la terza porzione 55-3.
Secondo un?altra forma di realizzazione preferita della prima o seconda forma di realizzazione, viene effettuata una ridondanza della memorizzazione delle porzioni del dato associato al soggetto 7 (oppure 5), ovvero una o pi? porzioni vengono duplicate in una o pi? copie e queste sono memorizzate in due o pi? differenti memorie distribuite della porzione 12 del sistema elettronico 1: in questo modo in caso di guasto di una prima memoria contenente una determina porzione del dato, ? possibile recuperare la stessa porzione del dato da una seconda memoria che quindi funziona come backup della prima memoria guasta, aumentando cos? l?affidabilit? del sistema 1.
Per esempio, considerando nuovamente il caso di Figura 2 del secondo dato 55 suddiviso in tre porzioni 55-1, 55-2, 55-3, la memoria 40-1 ? tale da memorizzare la prima porzione 55-1, la memoria 40-2 ? tale da memorizzare la seconda porzione 55-2, la memoria 41-1 ? tale da memorizzare la terza porzione 55-3 e la memoria 41-2 ? tale da memorizzare la prima porzione 55-1.
In questo esempio viene effettuata una ridondanza della memorizzazione della prima porzione 55-1 che ? memorizzata in due diverse memorie 40-1 e 41-2: pertanto in caso di guasto della memoria 40-1, ? possibile recuperare la prima porzione 55-1 dalla memoria 41-2.
Sar? ora descritto il funzionamento del sistema elettronico 1 durante la prima fase di funzionamento in cui viene effettuata la suddivisione, distribuzione e memorizzazione del dato associato al soggetto 7 secondo la prima forma di realizzazione, facendo anche riferimento alle Figure 2 e 3A.
Per semplicit? si suppone che il dato associato al soggetto 7 sia il profilo vocale di riferimento del soggetto 7, che verr? utilizzato in una successiva fase di verifica in linea dell?identit? digitale del soggetto 7 (quest?ultima non mostrata nella Figura 3A).
Si suppone inoltre che il profilo vocale di riferimento 52 venga suddiviso in due porzioni 52-1, 52-2, come indicato nella parte superiore dello schema di Figura 2.
Inoltre si suppone che il dispositivo elettronico mobile 8 sia uno smartphone e che siano stati configurati il valore dell?identificativo utente 50 che identifica univocamente il soggetto 7 ed il valore del primo identificativo entit? 51-1 che indica che il tipo di dato ? il profilo vocale di riferimento 52 del soggetto 7, in cui detti valori dell?identificativo utente 50 e del primo identificativo entit? 51-1 sono memorizzati in una memoria 8-1 interna allo smartphone 8.
All?istante iniziale t0 l?unit? di elaborazione dello smartphone 8 genera il profilo vocale di riferimento 52 del soggetto 7, in funzione di una traccia audio della voce del soggetto 7 acquisita per mezzo del microfono integrato nello smartphone 8.
In particolare, il profilo vocale di riferimento 52 ? un codice alfanumerico (cio? una stringa di caratteri alfanumerici) generato per mezzo di un algoritmo di hash che riceve in ingresso la traccia audio digitale della voce del soggetto 7 che pronuncia ad alta voce una risposta ad una domanda definita (ovvero nota in anticipo).
Successivamente, l?unit? di elaborazione dello smartphone 8 suddivide il profilo vocale di riferimento 52 in due porzioni 52-1, 52-2, che sono quindi anch?esse composte ciascuno da una stringa di caratteri alfanumerici.
Inoltre l?unit? di elaborazione dello smartphone 8 genera un identificativo frammento associandolo a ciascuna porzione 52-1, 52-2 del profilo vocale di riferimento 52, ovvero:
- un primo identificativo frammento 54-1 viene associato alla prima porzione 52-1 durante una prima fase di funzionamento del sistema elettronico 1, al fine di identificare univocamente la prima porzione 52-1 in una successiva seconda fase in cui viene effettuata la ricostruzione del profilo vocale di riferimento 52 a partire dalle sue porzioni 52-1, 52-2;
- un secondo identificativo frammento 54-2 viene associato alla seconda porzione 52-2 durante la prima fase di funzionamento, al fine di identificare univocamente la seconda porzione 52-2 nella successiva seconda fase di ricostruzione del profilo vocale di riferimento 52, come verr? illustrato pi? in dettaglio relativamente alla descrizione della Figura 3B.
Successivamente l?unit? di elaborazione dello smartphone 8 memorizza nella memoria 8-1 i valori degli identificativi frammenti 54-1, 54-2.
All?istante t1 (successivo a t0) l?unit? di elaborazione dello smartphone 8 genera quindi un messaggio di richiesta memorizzazione 100 che trasporta la prima porzione 52-1 del profilo vocale di riferimento 52 ed il corrispondente valore del primo identificativo frammento 54-1 che identifica univocamente la prima porzione 52-1, e la seconda porzione 52-2 del profilo vocale di riferimento 52 ed il corrispondente valore del secondo identificativo frammento 54-2 che identifica univocamente la seconda porzione 52-2.
Il ricetrasmettitore dello smartphone 8 riceve il messaggio di richiesta memorizzazione 100 e questo viene trasmesso verso il componente server 30 attraverso la rete di telecomunicazioni 10.
Successivamente, l?unit? di elaborazione dello smartphone 8 effettua la cancellazione della prima e seconda porzione 52-1, 52-2 del profilo vocale di riferimento 52; in altre parole, lo smartphone 8 non effettua alcuna memorizzazione della prima e seconda porzione 52-1, 52-2, che vengono cancellate subito dopo averle inviate verso il componente server 30 attraverso la rete di telecomunicazioni 10.
Il messaggio di richiesta memorizzazione 100 viene instradato verso il componente server 30 per mezzo degli instradatori di messaggi 21 e 23 (si veda in Figura 1 il percorso 101 indicato con una linea tratteggiata).
All?istante t3 (successivo a t1) il ricetrasmettitore del dispositivo server sul quale viene eseguito il componente server 30 riceve il messaggio di richiesta memorizzazione 100, il quale viene inoltrato all?unit? di elaborazione che esegue il componente server 30.
L?unit? di elaborazione che esegue il componente server 30 esegue un algoritmo che calcola su quante memorie distribuire le due porzioni 52-1, 52-2 del profilo vocale di riferimento 52 in base a logiche predefinite; per semplicit? si considera che l?unit? di elaborazione determini di distribuire le due porzioni 52-1, 52-2 del profilo vocale di riferimento 52 in due memorie distribuite.
All?istante t7 (successivo a t3) l?unit? di elaborazione che esegue il componente server 30 genera un primo messaggio di distribuzione 105 che trasporta la prima porzione 52-1 del profilo vocale di riferimento 52 ed il corrispondente valore del primo identificativo frammento 54-1 che identifica univocamente la prima porzione 52-1; inoltre l?unit? di elaborazione che esegue il componente server 30 genera un secondo messaggio di distribuzione 110 che trasporta la seconda porzione 52-2 del profilo vocale di riferimento 52 ed il corrispondente valore del secondo identificativo frammento 54-2 che identifica univocamente la seconda porzione 52-2.
Successivamente il ricetrasmettitore del dispositivo server del componente server 30 trasmette verso la rete di telecomunicazioni 10 il primo messaggio di distribuzione 105.
All?istante t8 (successivo a t7) il componente server 30 effettua la cancellazione del primo valore dell?identificativo frammento 54-1 e la cancellazione della prima porzione 52-1 del profilo vocale di riferimento 52.
In altre parole, il dispositivo server che esegue il componente server 30 non effettua alcuna memorizzazione della prima porzione 52-1 del profilo vocale di riferimento n? del valore del rispettivo primo identificativo frammento 54-1, ovvero detti valori vengono cancellati dal componente server 30 subito dopo averli inviati verso il nodo di memorizzazione frammenti 40 attraverso la rete di telecomunicazioni 10.
Per semplicit? si suppone che gli instradatori di messaggi effettuino il seguente instradamento del primo e secondo messaggio di distribuzione 105 e 110:
- il primo messaggio di distribuzione 105 viene ricevuto dall?instradatore di messaggi 23, il quale lo inoltra all?instradatore di messaggi 24, il quale a sua volta lo inoltra verso il nodo di memorizzazione frammenti 40 (si veda in Figura 1 il percorso 105 indicato con una linea tratteggiata);
- il secondo messaggio di distribuzione 110 viene ricevuto dall?instradatore di messaggi 23, il quale lo inoltra all?instradatore di messaggi 24, il quale lo inoltra all?instradatore di messaggi 22, il quale a sua volta lo inoltra verso il nodo di memorizzazione frammenti 41 (si veda in Figura 1 il percorso 110 indicato con una linea tratteggiata).
All?istante t9 (successivo a t7) il ricetrasmettitore del nodo di memorizzazione frammenti 40 riceve il messaggio 105 e lo inoltra alla sua unit? di elaborazione, quindi l?unit? di elaborazione memorizza nella memoria non volatile 40-1 la prima porzione 52-1 del profilo vocale di riferimento 52 ed il corrispondente valore del primo identificativo frammento 54-1.
All?istante t10 (successivo a t8) il ricetrasmettitore del nodo di memorizzazione frammenti 40 trasmette verso il componente server 30 un primo messaggio di notifica 107 indicativo di una notifica della memorizzazione della prima porzione 52-1 del profilo vocale di riferimento 52, quindi il primo messaggio di notifica 107 viene ricevuto dagli instradatori di messaggi 24 e 23 ed inoltrato verso il componente server 30.
All?istante t12 (successivo a t10) il componente server 30 riceve il primo messaggio di notifica 107.
All?istante t20 (successivo a t7) il ricetrasmettitore del dispositivo server del componente server 30 trasmette verso la rete di telecomunicazioni 10 il secondo messaggio di distribuzione 110 che trasporta la seconda porzione 52-2 del profilo vocale di riferimento 52 ed il corrispondente valore del secondo identificativo frammento 54-2.
All?istante t21 (successivo a t20) il componente server 30 effettua la cancellazione del secondo valore dell?identificativo frammento 54-2 e la cancellazione della seconda porzione 52-2 del profilo vocale di riferimento 52.
In altre parole, il dispositivo server che esegue il componente server 30 non effettua alcuna memorizzazione della seconda porzione 52-2 del profilo vocale di riferimento n? del valore del rispettivo secondo identificativo frammento 54-2, ovvero detti valori vengono cancellati dal componente server 30 subito dopo averli inviati verso il nodo di memorizzazione frammenti 41 attraverso la rete di telecomunicazioni 10.
All?istante t23 (successivo a t21) il ricetrasmettitore del nodo di memorizzazione frammenti 41 riceve il secondo messaggio di distribuzione 110 e lo inoltra alla sua unit? di elaborazione, quindi l?unit? di elaborazione memorizza nella memoria non volatile 41-1 la seconda porzione 52-2 del profilo vocale di riferimento 52 ed il corrispondente valore del secondo identificativo frammento 54-2.
All?istante t30 (successivo a t23) il ricetrasmettitore del nodo di memorizzazione frammenti 41 trasmette verso il componente server 30 un secondo messaggio di notifica 115 indicativo di una notifica della memorizzazione della seconda porzione 52-2 del profilo vocale di riferimento 52, quindi il secondo messaggio di notifica 115 viene ricevuto dagli instradatori di messaggi 22, 24 e 23 ed inoltrato verso il componente server 30.
All?istante t32 (successivo a t30) il componente server 30 riceve il secondo messaggio di notifica 115, rileva che sono stati ricevuti i messaggi di notifica associati a tutte le porzioni in cui ? stato suddiviso il dato (ovvero ? stato ricevuto il messaggio di notifica 107 ed il messaggio di notifica 115) e quindi il componente server 30 genera un messaggio di conferma memorizzazione 116 indicativo di una conferma positiva della memorizzazione delle due porzioni 52-1, 52-2.
Successivamente il ricetrasmettitore del dispositivo server che esegue il componente server 30 trasmette verso la rete di telecomunicazioni 10 il messaggio di conferma memorizzazione 116 indirizzato verso lo smartphone, quindi il messaggio di conferma memorizzazione 116 viene ricevuto dagli instradatori di messaggi 23 e 21 ed inoltrato verso lo smartphone 8.
All?istante t33 (successivo a t31) lo smartphone 8 riceve detto messaggio di conferma memorizzazione 116 e quindi l?unit? di elaborazione dello smartphone 8 rileva che la prima e seconda porzione 52-1, 52-2 del profilo vocale di riferimento 52 sono state memorizzate con successo in due memorie distribuite della porzione 12 del sistema elettronico 1.
Si osservi che in Figura 3A ? stato mostrato che il primo messaggio di notifica 107 viene trasmesso prima della trasmissione del secondo messaggio di distribuzione 110, ma in alternativa ? possibile che il secondo messaggio di distribuzione 110 sia trasmesso dal componente server 30 prima che il primo messaggio di notifica 107 sia trasmesso dal nodo di memorizzazione frammenti 40.
Sar? ora descritto il funzionamento del sistema elettronico 1 nella seconda fase di funzionamento in cui viene effettuato il recupero delle porzioni del dato associato al soggetto 7 in base alla prima forma di realizzazione, facendo anche riferimento alle Figure 2 e 3B.
All?istante iniziale t51 l?unit? di elaborazione dello smartphone 8 genera una richiesta di recupero delle porzioni del profilo vocale di riferimento del soggetto 7, per mezzo dei valori degli identificativi frammenti 54-1, 54-2 che sono stati precedentemente memorizzati all?istante t0 nella memoria 8-1 durante la prima fase di frammentazione del profilo vocale di riferimento del soggetto 7.
Il ricetrasmettitore dello smartphone 8 riceve la richiesta di recupero delle porzioni del profilo vocale di riferimento e genera da questo un messaggio di richiesta recupero dato 150 che trasporta i valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2, in cui detto messaggio 150 viene trasmesso verso la rete di telecomunicazioni 10.
Il messaggio di richiesta recupero 150 viene instradato verso il componente server 30 per mezzo degli instradatori di messaggi 21 e 23.
All?istante t53 (successivo a t51) il ricetrasmettitore del dispositivo server sul quale viene eseguito il componente server 30 riceve il messaggio di richiesta recupero dato 150, il quale viene inoltrato all?unit? di elaborazione che esegue il componente server 30.
L?unit? di elaborazione che esegue il componente server 30 genera un messaggio 155 che trasporta i valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2.
Successivamente il ricetrasmettitore del dispositivo server del componente server 30 trasmette verso la rete di telecomunicazioni 10 il messaggio 155, che viene instradato verso il nodo di memorizzazione frammenti 40 per mezzo degli instradatori di messaggi 23, 24.
Inoltre il messaggio 155 viene instradato anche verso il nodo di memorizzazione frammenti 41 per mezzo dell?instradatore di messaggi 22.
All?istante t58 il ricetrasmettitore del nodo di memorizzazione frammenti 40 riceve il messaggio 155 e lo inoltra alla sua unit? di elaborazione, mentre all?istante t71 (successivo a t58) il ricetrasmettitore del nodo di memorizzazione frammenti 41 riceve il messaggio 155 e lo inoltra alla sua unit? di elaborazione.
All?istante t60 l?unit? di elaborazione del nodo di memorizzazione frammenti 40 estrae dal messaggio 155 i valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2, legge dalla memoria 40-1 il valore memorizzato del primo identificativo 54-1, effettua un confronto fra il valore memorizzato del primo identificativo frammento 54-1 ed i valori ricevuti del primo e secondo identificativo frammento 54-1, 54-2, e rileva che il valore ricevuto del primo identificativo frammento 54-1 ? uguale al valore memorizzato del primo identificativo frammento 54-1.
Pertanto all?istante t60 ? stato rilevato che nella memoria 40-1 ? memorizzata una delle due porzioni del profilo vocale di riferimento, ovvero la porzione 52-1 associata al primo identificativo frammento 54-1.
Di conseguenza, all?istante t61 il ricetrasmettitore del nodo di memorizzazione frammenti 40 trasmette verso il componente server 30 un messaggio 157 che trasporta il valore della prima porzione 52-1 del profilo vocale di riferimento 52, insieme al valore del primo identificativo frammento 54-1.
Il messaggio 157 viene instradato verso il componente server 30 per mezzo degli instradatori di messaggi 24 e 23.
Analogamente, all?istante t71 l?unit? di elaborazione del nodo di memorizzazione frammenti 41 estrae dal messaggio 155 i valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2, legge dalla memoria 41-1 il valore memorizzato del secondo identificativo 54-2, effettua un confronto fra il valore memorizzato del secondo identificativo frammento 54-2 ed i valori ricevuti del primo e secondo identificativo frammento 54-1, 54-2, e rileva che il valore ricevuto del secondo identificativo frammento 54-2 ? uguale al valore memorizzato del secondo identificativo frammento 54-2.
Pertanto all?istante t71 ? stato rilevato che nella memoria 41-1 ? memorizzata l?altra delle due porzioni del profilo vocale di riferimento, ovvero la seconda porzione 52-2 associata al secondo identificativo frammento 54-2.
Di conseguenza, all?istante t80 il ricetrasmettitore del nodo di memorizzazione frammenti 41 trasmette verso il componente server 30 un messaggio 158 che trasporta il valore della seconda porzione 52-2 del profilo vocale di riferimento 52, insieme al valore del secondo identificativo frammento 54-2.
Il messaggio 158 viene instradato verso il componente server 30 per mezzo degli instradatori di messaggi 22, 24 e 23.
All?istante t63 il ricetrasmettitore del dispositivo server che esegue il componente server 30 riceve il messaggio 157 e all?istante t82 riceve il messaggio 158, quindi il componente server 30 rileva che sono state ricevute tutte le porzioni 52-1, 52-2 del dato 52 che era stato richiesto, e trasmette verso lo smartphone 8 un messaggio di conferma recupero 166 che trasporta la prima porzione 52-1 e la seconda porzione 52-2 del profilo vocale di riferimento, insieme ai corrispondenti valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2.
Il messaggio 166 viene instradato verso lo smartphone 8 per mezzo degli instradatori di messaggi 23 e 21.
All?istante t84 il ricetrasmettitore dello smartphone 8 riceve il messaggio 166 che trasporta la prima porzione 52-1 e la seconda porzione 52-2 del profilo vocale di riferimento, insieme ai corrispondenti valori del primo identificativo frammento 54-1 e del secondo identificativo frammento 54-2, quindi l?unit? di elaborazione dello smartphone 8 ricostruisce il profilo vocale di riferimento 52 a partire dalla prima porzione ricevuta 52-1 e dalla seconda porzione ricevuta 52-2.
Sar? ora descritto il funzionamento del sistema elettronico 1 durante la prima fase di funzionamento in cui viene effettuata la suddivisione, distribuzione e memorizzazione del dato associato al soggetto 7 in base alla seconda forma di realizzazione, facendo anche riferimento alle Figure 2 e 4A.
La seconda forma di realizzazione di Figura 4A differisce dalla prima forma di realizzazione di Figura 3A per il fatto che la suddivisione del dato associato al soggetto 7 (nell?esempio considerato il suo profilo di riferimento vocale) in due porzioni 52-1, 52-2 e la rispettiva associazione agli identificativi frammenti 54-1, 54-2 viene effettuata sul componente server 30 (invece che sul dispositivo elettronico mobile 8) e per il fatto che la lista degli identificativi frammenti 54-1, 54-1 viene comunicata dal componente server 30 al dispositivo elettronico mobile 8.
In particolare, all?istante t100 i valori dell?identificativo utente 50 e del primo identificativo entit? 51-1 vengono memorizzati in una memoria 8-1 interna allo smartphone 8.
Inoltre l?unit? di elaborazione dello smartphone 8 genera il profilo vocale di riferimento 52 del soggetto 7, in funzione di una traccia audio della voce del soggetto 7 acquisita per mezzo del microfono integrato nello smartphone 8, quindi detto profilo vocale di riferimento 52 viene trasmesso dall?unit? di elaborazione al ricetrasmettitore a media-lunga distanza dello smartphone 8.
All?istante t101 il ricetrasmettitore dello smartphone 8 trasmette verso il componente server 30 un messaggio di richiesta 200 che trasporta il profilo vocale di riferimento 52, insieme al valore del primo identificativo entit? 51-1.
Il messaggio di richiesta 200 viene ricevuto dalla rete di telecomunicazioni 10 e viene instradato verso il componente server 30 per mezzo degli instradatori di messaggi 21 e 23.
All?istante t103 (successivo a t101) il ricetrasmettitore del dispositivo server sul quale viene eseguito il componente server 30 riceve il messaggio di richiesta 200 che trasporta il profilo vocale di riferimento 52 ed il valore del primo identificativo entit? 51-1, quindi il messaggio di richiesta 200 viene inoltrato all?unit? di elaborazione che esegue il componente server 30.
L?unit? di elaborazione estrae dal messaggio 200 il valore del primo identificativo entit? 51-1 ed il profilo vocale di riferimento 52, quindi suddivide il profilo vocale di riferimento 52 in due porzioni 52-1, 52-2, che sono quindi anch?esse composte ciascuno da una stringa di caratteri alfanumerici.
Inoltre l?unit? di elaborazione che esegue il componente server 30 associa un identificativo frammento a ciascuna porzione 52-1, 52-2 del profilo vocale di riferimento 52, ovvero:
- un primo identificativo frammento 54-1 viene associato alla prima porzione 52-1 durante una prima fase di funzionamento, al fine di identificare univocamente la prima porzione 52-1 in una successiva seconda fase in cui viene effettuata la ricostruzione del profilo vocale di riferimento 52 a partire dalle sue porzioni 52-1, 52-2;
- un secondo identificativo frammento 54-2 viene associato alla seconda porzione 52-2 durante la prima fase di funzionamento, al fine di identificare univocamente la seconda porzione 52-2 nella successiva seconda fase di ricostruzione del profilo vocale di riferimento 52, come verr? illustrato pi? in dettaglio relativamente alla descrizione della Figura 4B.
Infine l?unit? di elaborazione che esegue il componente server 30 esegue un algoritmo che calcola di distribuire le due porzioni 52-1, 52-2 del profilo vocale di riferimento 52 in due memorie distribuite.
All?istante t104 (successivo a t103) il ricetrasmettitore del dispositivo server (sul quale viene eseguito il componente server 30) trasmette verso lo smartphone 8 un messaggio di notifica suddivisione 201 che trasporta il primo e secondo valore degli identificativi frammenti 54-1, 54-2.
Il messaggio di notifica suddivisione 201 viene ricevuto dalla rete di telecomunicazioni 10 e viene instradato (istante t105) verso lo smartphone 8 per mezzo degli instradatori di messaggi 23 e 21.
All?istante t106 (successivo a t104) il ricetrasmettitore dello smartphone 8 riceve il messaggio di notifica suddivisione 201, quindi l?unit? di elaborazione dello smartphone 8 memorizza nella memoria interna 8-1 i valori degli identificativi frammenti 54-1, 54-2.
All?istante t107 (successivo a t103) il ricetrasmettitore del dispositivo server del componente server 30 trasmette verso la rete di telecomunicazioni 10 il primo messaggio di distribuzione 105 che trasporta i valori della prima porzione 52-1 del profilo vocale di riferimento ed il rispettivo valore del primo identificativo frammento 54-1; inoltre all?istante t120 (successivo a t107) il ricetrasmettitore del dispositivo server del componente server 30 trasmette verso la rete di telecomunicazioni 10 il secondo messaggio di distribuzione 110 che trasporta i valori della seconda porzione 52-2 del profilo vocale di riferimento ed il rispettivo valore del secondo identificativo frammento 54-2.
E? possibile osservare che all?istante t108 (successivo a t107) il componente server 30 effettua la cancellazione del primo valore dell?identificativo frammento 54-1 e la cancellazione della prima porzione 52-1 del profilo vocale di riferimento 52, ovvero il componente server 30 non effettua alcuna memorizzazione locale del valore del primo identificativo frammento 54-1, n? della prima porzione 52-1 del profilo vocale di riferimento 52, ovvero detti valori vengono cancellati dal componente server 30 subito dopo averli trasmessi verso il nodo di memorizzazione frammenti 40 attraverso la rete di telecomunicazioni 10.
Analogamente, all?istante t121 (successivo a t120) il componente server 30 effettua la cancellazione del secondo valore dell?identificativo frammento 54-2 e la cancellazione della seconda porzione 52-2 del profilo vocale di riferimento 52, ovvero il componente server 30 non effettua alcuna memorizzazione locale del valore del secondo identificativo frammento 54-2, n? della seconda porzione 52-2 del profilo vocale di riferimento 52, ovvero detti valori vengono cancellati dal componente server 30 subito dopo averli trasmessi verso il nodo di memorizzazione frammenti 41 attraverso la rete di telecomunicazioni 10.
Il funzionamento dopo l?istante t108 prosegue analogamente a quanto illustrato in precedenza dopo l?istante t8 di Figura 3A per la prima fase della prima forma di realizzazione ed il funzionamento dopo l?istante t121 prosegue analogamente a quanto illustrato in precedenza dopo l?istante t21 di Figura 3A per la prima fase della prima forma di realizzazione.
Sar? ora descritto il funzionamento del sistema elettronico 1 nella seconda fase di funzionamento in cui viene effettuato il recupero delle porzioni del dato associato al soggetto 7 in base alla seconda forma di realizzazione, facendo anche riferimento alle Figure 2 e 4B.
La seconda forma di realizzazione di Figura 4B differisce dalla prima forma di realizzazione di Figura 4A per il fatto che la ricostruzione del profilo vocale di riferimento 52 viene fatta nel componente server 30, invece che nello smartphone 8.
Pertanto all?istante t163 il componente server 30 riceve il messaggio 157 che trasporta la prima porzione 52-1 del profilo vocale di riferimento ed il primo identificativo frammento 54-1, e all?istante t182 il componente server 30 riceve il messaggio 160 che trasporta la seconda porzione 52-2 del profilo vocale di riferimento ed il secondo identificativo frammento 54-2; successivamente il componente server 30 effettua la ricostruzione del profilo vocale di riferimento 52 prendendo in considerazione la prima e seconda porzione 52-1, 52-2.
All?istante t183 (successivo a t182) il componente server 30 trasmette, verso la rete di telecomunicazioni 10, un messaggio 160 che trasporta il profilo vocale di riferimento ricostruito.
Il messaggio 160 viene inoltrato dal componente server 30 verso lo smartphone 8 per mezzo degli instradatori di messaggi 23 e 21.
All?istante t184 (successivo a t183) lo smartphone 8 ricever il messaggio 160 ed estrae da questo il profilo vocale di riferimento ricostruito.
Secondo una variante della prima o seconda forma di realizzazione, viene utilizzato uno schema di suddivisione a soglia, in cui il numero M di porzioni necessarie per ricostruire il dato originale ? minore del numero N di porzioni in cui ? stato suddiviso il dato:
Lo schema di suddivisione a soglia ? realizzato ad esempio utilizzando tecniche di secret sharing (si veda Wikipedia al link https://en.wikipedia.org/wiki/Secret_sharing), come ad esempio lo schema di Adi Shamir o di George Blakley.
Per esempio, il dato associato ad un soggetto viene suddiviso dieci porzioni, che vengono memorizzate in dieci memorie distribuite come sopra illustrato (oppure in quindi memorie distribuite utilizzando una ridondanza di memorizzazione di cinque porzioni), in cui sono sufficienti sei porzioni (valore di soglia) per poter ricostruire correttamente il dato associato al soggetto. In questo caso il componente server 30 effettua all?istante t82 un conteggio del numero di porzioni diverse che sono state recuperate correttamente dalle memorie condivise e confronta il valore del conteggio con il numero sei: quando il valore del conteggio ? uguale a sei, il componente server 30 invia verso il componente server 30 un messaggio di arresto del recupero delle porzioni (oppure scarta i messaggi in arrivo che contengono le porzioni oltre la sesta), in quanto ? stato raggiunto un numero sufficiente di porzioni dal dato per poterlo ricostruire.
Claims (10)
1. Metodo realizzato mediante almeno un elaboratore elettronico per suddividere, distribuire e memorizzare un dato (52) associato ad un soggetto (7) in una pluralit? di memorie distribuite di una rete di telecomunicazioni, comprendente i passi di:
a) fornire una rete di telecomunicazioni (10) comprendente una pluralit? di nodi di rete con architettura decentralizzata;
b) fornire almeno un componente server (30, 31) collegato alla rete di telecomunicazioni;
c) fornire una pluralit? di nodi di memorizzazione frammenti (40, 41, 42) collegati alla rete di telecomunicazioni, ciascun nodo di memorizzazione frammenti comprendente almeno una rispettiva memoria non volatile (40-1, 40-2, 40-3) configurata per memorizzare almeno parte di una pluralit? di porzioni del dato;
d) memorizzare, in una memoria (8-1) associata ad un dispositivo elettronico (8), un valore di un identificativo utente (50) per identificare univocamente il soggetto (7) e memorizzare almeno un rispettivo valore di un identificativo entit? (51-1, 51-2, 51-3) per identificare un rispettivo tipo di dato associato al soggetto;
e) suddividere, al dispositivo elettronico (8), il dato (52) in una pluralit? di porzioni (52-1, 52-2) ed associare, per ciascuna porzione del dato, un rispettivo identificativo frammento per identificare la rispettiva porzione del dato, generando cos? una pluralit? di identificativi frammenti (54-1, 54-2); f) memorizzare la pluralit? di identificativi frammenti (54-1, 54-2) nella memoria (8-1) del dispositivo elettronico;
g) trasmettere (t1), dal dispositivo elettronico verso la rete di telecomunicazioni (10), un messaggio di richiesta memorizzazione (100) che trasporta la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
h) inoltrare, per mezzo della rete di telecomunicazioni, il messaggio di richiesta memorizzazione (100) verso almeno un componente server (30); i) ricevere (t3) il messaggio di richiesta memorizzazione (100) ad almeno un componente server (30) e determinare un numero di una pluralit? di memorie in cui memorizzare detta pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
j) trasmettere, da almeno un componente server (30) verso la rete di telecomunicazioni, una pluralit? di messaggi di distribuzione (105, 110), in cui ciascuno dei messaggi di distribuzione trasporta almeno una porzione del dato ed il rispettivo identificatore frammento;
k) ricevere (t9, t23), ad almeno due nodi di memorizzazione frammenti (40, 41), almeno un messaggio di distribuzione;
l) memorizzare (t9, t23), per ciascun nodo di memorizzazione, almeno una porzione del dato ed il rispettivo identificatore frammento in almeno una memoria associata al nodo di memorizzazione.
2. Metodo secondo la rivendicazione 1, in cui:
- nel passo c) ciascun nodo di memorizzazione frammenti comprendente almeno due rispettive memorie non volatili (40-1, 40-2) configurate per memorizzare almeno due diverse porzioni del dato;
- il passo i) comprende determinare, al componente server, di memorizzare almeno due diverse porzioni del dato (52-1, 52-2) in almeno due corrispondenti memorie (40-1, 40-2) di un nodo di memorizzazione frammenti (40);
- il passo k) comprende ricevere, a detto nodo di memorizzazione frammenti (40), almeno due messaggi di distribuzione che trasportano le almeno due diverse porzioni del dato (52-1, 52-2) e i rispettivi almeno due identificativi frammenti (54-1, 54-2);
- il passo l) comprende memorizzare, in detto nodo di memorizzazione frammenti (40), le almeno due diverse porzioni del dato (52-1, 52-2) e i rispettivi almeno due identificativi frammenti (54-1, 54-2) in almeno due diverse memorie associate al nodo di memorizzazione.
3. Metodo secondo una qualunque delle rivendicazioni precedenti, comprendente, dopo il passo l), i passi di:
m) trasmettere (t51), dal dispositivo elettronico verso la rete di telecomunicazioni, un messaggio di richiesta recupero (150) che trasporta la pluralit? degli identificativi frammenti;
n) inoltrare (t52), per mezzo della rete di telecomunicazioni, il messaggio di richiesta recupero (150) verso almeno un componente server (30);
o) ricevere (t57) il messaggio di richiesta recupero (150) ad almeno un componente server (30) e trasmettere, verso la rete di telecomunicazioni, almeno un messaggio di richiesta recupero;
p) inoltrare (t59), per mezzo della rete di telecomunicazioni, il messaggio di richiesta recupero (150) verso almeno due nodi di memorizzazione frammenti (40, 41);
q) ricevere (t58, t71) il messaggio di richiesta recupero (150) ad almeno due nodi di memorizzazione frammenti (40, 41);
r) per ciascun nodo di memorizzazione (40), leggere (t60), da almeno una memoria, almeno una porzione del dato ed il rispettivo identificativo frammento e trasmettere (t61, t80), verso la rete di telecomunicazioni, un messaggio (157, 158) che trasporta l?almeno una porzione del dato ed il rispettivo identificativo frammento;
s) inoltrare (t81), per mezzo della rete di telecomunicazioni, detto messaggio (157, 158) verso almeno un componente server (30);
t) ricevere (t63, t82), ad almeno un componente server (30), una pluralit? di messaggi che trasportano almeno una porzione del dato e almeno un rispettivo identificativo frammento;
u) trasmettere (t82), da almeno componente server (30) verso la rete di telecomunicazioni, un messaggio di conferma recupero (166) che trasporta la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
v) inoltrare, per mezzo della rete di telecomunicazioni, il messaggio di conferma recupero verso il dispositivo elettronico;
z) ricevere (t84), al dispositivo elettronico, il messaggio di conferma recupero (166), estrarre da questo la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti, e ricostruire da questo il dato.
4. Metodo secondo la rivendicazione 3, in cui:
- il passo e) comprende suddividere il dato in una pluralit? N di porzioni utilizzando un algoritmo di dispersione di informazioni e tecniche di secret sharing, in particolare l?algoritmo di Michael O. Rabin;
- il passo t) comprende ricevere, al componente server (30), una pluralit? di messaggi che trasportano una rispettiva porzione del dato ed un corrispondente identificativo frammento;
- il passo u) comprende:
? contare un numero M di porzioni diverse ricevute, in cui M ? un valore intero positivo minore di N;
? confrontare il valore M rispetto ad un valore di soglia definito;
? nel caso in cui il valore M sia minore del valore di soglia, continuare a trasmettere, verso la rete di telecomunicazioni, l?almeno un messaggio di richiesta recupero;
? nel caso in cui il valore M sia uguale o maggiore del valore di soglia, trasmettere, verso la rete di telecomunicazioni, un messaggio indicativo di arrestare il recupero delle porzioni del dato.
5. Metodo secondo una qualunque delle rivendicazioni precedenti, in cui il metodo comprende, al posto dei passi e)-i), i passi di:
e1) trasmettere (t101), dal dispositivo elettronico verso la rete di telecomunicazioni (10), un messaggio di richiesta memorizzazione (200) che trasporta il dato (52) ed il valore del corrispondente identificativo entit? (51-1);
f1) inoltrare (t102), per mezzo della rete di telecomunicazioni, il messaggio di richiesta memorizzazione (200) verso un componente server (30);
g1) ricevere (t103) il messaggio di richiesta memorizzazione (200) al componente server, suddividere il dato (52) in una pluralit? di porzioni (52-1, 52-2) ed associare, per ciascuna porzione del dato, un rispettivo identificativo frammento per identificare la rispettiva porzione del dato, generando cos? una pluralit? di identificativi frammenti (54-1, 54-2); h1) determinare, al componente server, un numero di una pluralit? di memorie in cui memorizzare detta pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
i1) trasmettere (t104), verso la rete di telecomunicazioni, un messaggio di notifica suddivisione (201) che trasporta la pluralit? degli identificativi frammenti (54-1, 54-2);
l1) inoltrare (t105), per mezzo della rete di telecomunicazioni, il messaggio di notifica suddivisione verso il dispositivo elettronico; m1) ricevere, al dispositivo elettronico, il messaggio di notifica suddivisione e memorizzare, nella memoria del dispositivo elettronico, la pluralit? degli identificativi frammenti (54-1, 54-2).
6. Metodo secondo la rivendicazione 5, comprende, al posto dei passi t), u), v), z), i passi:
t1) ricevere (t163, t182), al componente server (30), una pluralit? di messaggi che trasportano almeno una porzione del dato e almeno un rispettivo identificativo frammento, ed estrarre da questi una pluralit? di porzioni del dato;
u1) ricostruire (t182) il dato prendendo in considerazione la pluralit? di porzioni del dato estratte;
v1) trasmettere (t183), dal dispositivo sever verso la rete di telecomunicazioni, un messaggio (160) che trasporta il dato ricostruito; z1) inoltrare, per mezzo della rete di telecomunicazioni, detto messaggio verso il dispositivo elettronico e ricevere (t184) detto messaggio al dispositivo elettronico.
7. Supporto di memorizzazione non-transitorio leggibile da un elaboratore elettronico avente un programma comprendente porzioni di codice software atto ad eseguire i passi del metodo secondo le precedenti rivendicazioni, quando detto programma ? eseguito su almeno un elaboratore elettronico.
8. Sistema elettronico (1) per la suddivisione, distribuzione e memorizzazione di un dato associato ad un soggetto in una pluralit? di memorie distribuite di una rete di telecomunicazioni,
il sistema comprendente:
- una rete di telecomunicazioni (10) comprendente una pluralit? di nodi di rete con architettura decentralizzata,
- un dispositivo elettronico (8) collegato alla rete di telecomunicazioni,
- almeno un componente server (30, 31) collegato alla rete di telecomunicazioni,
- una pluralit? di nodi di memorizzazione frammenti (40, 41, 42) collegati alla rete di telecomunicazioni;
in cui ciascun nodo di memorizzazione frammenti comprende almeno una rispettiva memoria non volatile (40-1, 40-2, 40-3) configurata per memorizzare almeno parte di una pluralit? di porzioni del dato,
in cui il dispositivo elettronico comprende una memoria (8-1) configurata per memorizzare:
- un valore di un identificativo utente (50) per identificare univocamente il soggetto (7) e almeno un rispettivo valore di un identificativo entit? (51-1, 51-2, 51-3) per identificare un rispettivo tipo di dato associato al soggetto,
- una pluralit? di identificativi frammenti (54-1, 54-2), in cui ciascun identificativo frammento ? identificativo di una rispettiva porzione del dato; in cui il dispositivo elettronico ? configurato per:
- suddividere il dato (52) in una pluralit? di porzioni (52-1, 52-2) ed associare, per ciascuna porzione del dato, un rispettivo identificativo frammento per identificare la rispettiva porzione del dato, generando cos? una pluralit? di identificativi frammenti (54-1, 54-2);
- trasmettere (t1), verso la rete di telecomunicazioni (10), un messaggio di richiesta memorizzazione (100) che trasporta la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti; in cui ciascun componente server (30, 31) ? configurato per:
- ricevere (t3), dalla rete di telecomunicazioni, il messaggio di richiesta memorizzazione (100) e determinare un numero di una pluralit? di memorie in cui memorizzare detta pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
- trasmettere (t7, t20), verso la rete di telecomunicazioni, una pluralit? di messaggi di distribuzione (105, 110), in cui ciascuno dei messaggi di distribuzione trasporta almeno una porzione del dato ed il rispettivo almeno un identificatore frammento;
in cui ciascun nodo di memorizzazione frammenti (40, 41) ? configurato per:
- ricevere (t9, t23) almeno un messaggio di distribuzione che trasporta almeno una porzione del dato ed il rispettivo almeno un identificatore frammento;
- memorizzare, nell?almeno una memoria ad esso associata, l?almeno una porzione del dato ed il rispettivo almeno un identificatore frammento .
9. Sistema elettronico secondo la rivendicazione 8,
in cui il dispositivo elettronico ? ulteriormente configurato per:
- trasmettere (t51), verso la rete di telecomunicazioni, un messaggio di richiesta recupero (150) che trasporta una pluralit? degli identificativi frammenti;
- ricevere (t84), dalla rete di telecomunicazioni, un messaggio di conferma recupero (166) che trasporta che trasporta la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti, estrarre da questo la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti, e ricostruire da questo il dato;
in cui ciascun componente server ? ulteriormente configurato per:
- ricevere (t57), dalla rete di telecomunicazioni, il messaggio di richiesta recupero (150) e trasmettere, verso la rete di telecomunicazioni, almeno un messaggio di richiesta recupero;
- ricevere (t63, t82), dalla rete di telecomunicazioni, una pluralit? di messaggi che trasportano almeno una porzione del dato e almeno un rispettivo identificativo frammento;
- trasmettere (t82), verso la rete di telecomunicazioni, il messaggio di conferma recupero (166) che trasporta la pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
in cui ciascun nodo di memorizzazione frammenti ? configurato per:
- ricevere (t58, t71) il messaggio di richiesta recupero (150);
- leggere (t60), da almeno una memoria, almeno una porzione del dato ed il rispettivo identificativo frammento e trasmettere (t61, t80), verso la rete di telecomunicazioni, un messaggio (157, 158) che trasporta l?almeno una porzione del dato ed il rispettivo identificativo frammento.
10. Sistema elettronico secondo la rivendicazione 8 o 9,
in cui il dispositivo elettronico ? ulteriormente configurato per:
- trasmettere (t101), verso la rete di telecomunicazioni (10), un messaggio di richiesta memorizzazione (200) che trasporta il dato (52) ed il valore del corrispondente identificativo entit? (51-1);
- ricevere, dalla rete di telecomunicazioni (10), un messaggio di notifica suddivisione che trasporta la pluralit? degli identificativi frammenti (54-1, 54-2);
in cui il componente server ? ulteriormente configurato per:
- ricevere (t103) il messaggio di richiesta memorizzazione (200), suddividere il dato (52) in una pluralit? di porzioni (52-1, 52-2) ed associare, per ciascuna porzione del dato, un rispettivo identificativo frammento per identificare la rispettiva porzione del dato, generando cos? una pluralit? di identificativi frammenti (54-1, 54-2);
- determinare un numero di una pluralit? di memorie in cui memorizzare detta pluralit? di porzioni del dato e la corrispondente pluralit? di identificativi frammenti;
- trasmettere (t104), verso la rete di telecomunicazioni, il messaggio di notifica suddivisione.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT102021000031022A IT202100031022A1 (it) | 2021-12-10 | 2021-12-10 | Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato |
PCT/IB2022/061816 WO2023105403A1 (en) | 2021-12-10 | 2022-12-06 | Method to subdivide, distribute and store data associated with a subject in a plurality of distributed memories of a telecommunications network and related electronic system for the subdivision, distribution and storage of the data |
US18/717,795 US20250030762A1 (en) | 2021-12-10 | 2022-12-06 | Method to subdivide, distribute and store data associated with a subject in a plurality of distributed memories of a telecommunications network and related electronic system for the subdivision, distribution and storage of the data |
EP22835883.4A EP4445556A1 (en) | 2021-12-10 | 2022-12-06 | Method to subdivide, distribute and store data associated with a subject in a plurality of distributed memories of a telecommunications network and related electronic system for the subdivision, distribution and storage of the data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT102021000031022A IT202100031022A1 (it) | 2021-12-10 | 2021-12-10 | Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato |
Publications (1)
Publication Number | Publication Date |
---|---|
IT202100031022A1 true IT202100031022A1 (it) | 2023-06-10 |
Family
ID=80448756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
IT102021000031022A IT202100031022A1 (it) | 2021-12-10 | 2021-12-10 | Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato |
Country Status (4)
Country | Link |
---|---|
US (1) | US20250030762A1 (it) |
EP (1) | EP4445556A1 (it) |
IT (1) | IT202100031022A1 (it) |
WO (1) | WO2023105403A1 (it) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050165972A1 (en) * | 2004-01-27 | 2005-07-28 | Kenichi Miyata | File input/output control device and method for the same |
US20190311148A1 (en) * | 2018-04-10 | 2019-10-10 | Black Gold Coin, Inc. | System and method for secure storage of electronic material |
WO2021101632A1 (en) * | 2019-11-18 | 2021-05-27 | Omnibek Ag | Know your customer (kyc) and anti-money laundering (aml) verification in a multi-decentralized private blockchains network |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0230331D0 (en) * | 2002-12-31 | 2003-02-05 | British Telecomm | Method and apparatus for operating a computer network |
US8566354B2 (en) * | 2010-04-26 | 2013-10-22 | Cleversafe, Inc. | Storage and retrieval of required slices in a dispersed storage network |
US8868825B1 (en) * | 2014-07-02 | 2014-10-21 | Pure Storage, Inc. | Nonrepeating identifiers in an address space of a non-volatile solid-state storage |
US10198589B2 (en) * | 2015-01-03 | 2019-02-05 | Mcafee, Llc | Secure distributed backup for personal device and cloud data |
US10536357B2 (en) * | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
CN106549990A (zh) * | 2015-09-18 | 2017-03-29 | 阿里巴巴集团控股有限公司 | 一种分布式数据的处理方法和系统 |
MX2018011241A (es) * | 2016-03-15 | 2018-11-22 | Datomia Res Labs Ou | Administracion y seguridad de datos del sistema de almacenamiento distribuido. |
US10749958B2 (en) * | 2018-04-24 | 2020-08-18 | Western Digital Technologies, Inc. | Reduced storage of metadata in a distributed encoded storage system |
CN116761208A (zh) * | 2020-03-17 | 2023-09-15 | 华为技术有限公司 | 报文处理方法、装置、设备及存储介质 |
US11755503B2 (en) * | 2020-10-29 | 2023-09-12 | Storj Labs International Sezc | Persisting directory onto remote storage nodes and smart downloader/uploader based on speed of peers |
-
2021
- 2021-12-10 IT IT102021000031022A patent/IT202100031022A1/it unknown
-
2022
- 2022-12-06 US US18/717,795 patent/US20250030762A1/en active Pending
- 2022-12-06 EP EP22835883.4A patent/EP4445556A1/en active Pending
- 2022-12-06 WO PCT/IB2022/061816 patent/WO2023105403A1/en not_active Ceased
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050165972A1 (en) * | 2004-01-27 | 2005-07-28 | Kenichi Miyata | File input/output control device and method for the same |
US20190311148A1 (en) * | 2018-04-10 | 2019-10-10 | Black Gold Coin, Inc. | System and method for secure storage of electronic material |
WO2021101632A1 (en) * | 2019-11-18 | 2021-05-27 | Omnibek Ag | Know your customer (kyc) and anti-money laundering (aml) verification in a multi-decentralized private blockchains network |
Non-Patent Citations (3)
Title |
---|
"efficient dispersion of information for security, load balancing, and fault tolerance", JOURNAL OF THE ACM, vol. 36, no. 2, 1989, pages 335 - 348 |
"How to share a secret", COMMUNICATIONS OF THE ACM, vol. 22, no. 11, 1979, pages 612 - 613 |
MICHAEL O RABIN: "Efficient dispersal of information for security, load balancing, and fault tolerance", JOURNAL OF THE ASSOCIATION FOR COMPUTING MACHINERY, ACM, NEW YORK, NY, US, vol. 36, no. 2, 1 April 1989 (1989-04-01), pages 335 - 348, XP058320360, ISSN: 0004-5411, DOI: 10.1145/62044.62050 * |
Also Published As
Publication number | Publication date |
---|---|
US20250030762A1 (en) | 2025-01-23 |
EP4445556A1 (en) | 2024-10-16 |
WO2023105403A1 (en) | 2023-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11055419B2 (en) | Decentralized data authentication system for creation of integrated lifetime health records | |
Stokkink et al. | Deployment of a blockchain-based self-sovereign identity | |
CN111988203B (zh) | 节点选举方法、装置及存储介质 | |
CN110569251B (zh) | 一种数据处理方法、相关设备及计算机可读存储介质 | |
CN107948143B (zh) | 一种云存储中基于身份的隐私保护完整性检测方法和系统 | |
CN107276762B (zh) | 一种多协议区块链的工作方法及装置 | |
WO2018064154A1 (en) | Device-driven auto-recovery using multiple recovery sources | |
JP2015535970A5 (it) | ||
PT2017171733B (pt) | Sistemas e métodos para fornecer verificação de identidade pessoal multifator com base em cadeias de blocos | |
CN112714196B (zh) | 基于区块链网络的节点管理方法、装置、设备及存储介质 | |
CN107408096A (zh) | 对硬件块的适应性存取控制 | |
CN110597673B (zh) | 存储系统的容灾方法、装置、设备及计算机可读存储介质 | |
WO2017149388A1 (en) | Systems and methods for providing block chain state proofs for prediction market resolution | |
CN110555783A (zh) | 一种基于区块链的电力营销数据保护方法及系统 | |
CN111835526A (zh) | 一种生成匿名凭证的方法及系统 | |
JP2014531091A (ja) | 処理方法、記憶媒体及びクライアントサポートサーバ | |
CN112118239A (zh) | 区块链共识方法及装置、电子设备、存储介质 | |
CN112685769B (zh) | 区块链的数据处理方法、装置及电子设备 | |
CN105138927A (zh) | 隐私数据保护方法及装置 | |
CN114760054A (zh) | 基于数字钱包的密钥管理方法、装置及存储介质 | |
CN110826052A (zh) | 保护服务器密码安全的方法和装置 | |
KR20200118985A (ko) | 블록체인 환경에서의 데이터 관리 방법 및 이를 위한 장치 | |
CN108141367A (zh) | 代码签署服务 | |
CN106686077A (zh) | 一种跨机房数据中心两层代理的网络请求处理系统及方法 | |
IT202100031022A1 (it) | Metodo per suddividere, distribuire e memorizzare un dato associato ad un soggetto in una pluralità di memorie distribuite di una rete di telecomunicazioni e relativo sistema elettronico di suddivisione, distribuzione e memorizzazione del dato |