IT202100017276A1 - Method and system for certifying the correspondence of a digital document to a previously received version - Google Patents

Method and system for certifying the correspondence of a digital document to a previously received version Download PDF

Info

Publication number
IT202100017276A1
IT202100017276A1 IT102021000017276A IT202100017276A IT202100017276A1 IT 202100017276 A1 IT202100017276 A1 IT 202100017276A1 IT 102021000017276 A IT102021000017276 A IT 102021000017276A IT 202100017276 A IT202100017276 A IT 202100017276A IT 202100017276 A1 IT202100017276 A1 IT 202100017276A1
Authority
IT
Italy
Prior art keywords
document
server
request
blockchain
certified
Prior art date
Application number
IT102021000017276A
Other languages
Italian (it)
Inventor
Paolo Osvaldo Agnelli
Original Assignee
Alab Tech S R L
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alab Tech S R L filed Critical Alab Tech S R L
Priority to IT102021000017276A priority Critical patent/IT202100017276A1/en
Publication of IT202100017276A1 publication Critical patent/IT202100017276A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Description

DESCRIZIONE DI INVENZIONE INDUSTRIALE DESCRIPTION OF INDUSTRIAL INVENTION

CAMPO TECNICO TECHNICAL FIELD

La presente invenzione riguarda un metodo e sistema per certificare la corrispondenza di un documento digitale a una versione precedentemente ricevuta dal sistema stesso. The present invention relates to a method and system for certifying the correspondence of a digital document to a version previously received by the system itself.

RETROSPETTIVA TECNICA TECHNICAL RETROSPECTIVE

La sempre pi? ampia diffusione di tecniche e servizi digitali e la sostituzione dei documenti cartacei con analoghi documenti digitali ha posto il problema della certificazione di un documento digitale, cio? della sua corrispondenza a un documento precedentemente scambiato tra due o pi? parti. Prendiamo come esempio la sottoscrizione di un contratto di lavoro o di un qualsiasi altro impegno tra due o pi? soggetti o, pi? in generale, tra due o pi? parti. Nel mondo reale, tradizionalmente, ci si rivolge a un?entit? terza super partes, per esempio un Notaio, che apponga una certificazione e conservi una copia ufficiale e ?certificata? di tale documento. La copia potr? anche essere (in certi casi ? obbligatorio per legge) iscritta in un registro pubblico. Nel mondo digitale ci sono strumenti simili, ad esempio in Italia per avere una data certa si utilizza la PEC o in caso di specifici documenti si pu? apporre la firma digitale per firmare un documento digitale e renderlo non modificabile. The increasingly wide diffusion of digital techniques and services and the replacement of paper documents with analogous digital documents has raised the problem of the certification of a digital document, ie? of his correspondence to a document previously exchanged between two or more? set off. Let's take as an example the signing of an employment contract or any other commitment between two or more subjects or, more? in general, between two or more? set off. In the real world, traditionally, one addresses an? entity? impartial third party, for example a Notary, who affixes a certification and keeps an official and ?certified? of that document. The copy can also be (in some cases it is required by law) registered in a public register. In the digital world there are similar tools, for example in Italy to have a certain date you use the PEC or in the case of specific documents you can digitally sign to sign a digital document and make it non-editable.

Il contesto sociale ha permeato la nostra vita di strumenti informatici. Un numero sempre maggiore di transazioni ? nativamente digitale o lo diventa successivamente con la ?dematerializzazione?. The social context has permeated our lives with IT tools. An increasing number of transactions ? natively digital or becomes digital later with ?dematerialization?.

Esistono strumenti che, ove richiesto dalla norma, permettono l?archiviazione sostitutiva, dove il documento cartaceo non ha pi? valore, perch? totalmente sostituito, ad esempio, in Italia, le fatture. There are tools which, where required by the standard, allow for substitute archiving, where the paper document no longer has value, why? totally replaced, for example, in Italy, invoices.

Ogni pezzo d?informazione, che sia una email, una fotografia, un contratto o altro ? la scomposizione di un file, un insieme di numeri generato o archiviato su un sistema informatico. I file che rappresentano i sorgenti delle informazioni sono normalmente memorizzati negli archivi digitali di aziende o di singole persone. Tali file per loro natura sono modificabili; si pu? prendere un?immagine da un file e con programmi di photo editing si possono alterare. Quindi ? possibile, partendo da un file, modificarne in modo artificioso il contenuto e renderlo di fatto non distinguibile dall?originale, pensiamo per esempio ai fotomontaggi. Every piece of information, whether it's an email, a photograph, a contract or anything else ? the decomposition of a file, a set of numbers generated or stored on a computer system. The files that represent the sources of information are usually stored in the digital archives of companies or individuals. By their nature, these files are modifiable; can you? take an image from a file and with photo editing programs you can alter them. So ? It is possible, starting from a file, to modify its content in an artificial way and make it in fact indistinguishable from the original, think for example of photomontages.

A titolo d?esempio, se prendessimo il documento che attesti la partecipazione a un corso obbligatorio di formazione sulla sicurezza sul lavoro e lo editassimo con un programma di editing fotografico, alterandone il nominativo, saremmo in grado di produrre vari attestati senza che l?Ente richiedente possa verificarne l?autenticit?, salvo la richiesta di conferma all?Ente che ha erogato la formazione. By way of example, if we took the document certifying participation in a mandatory training course on occupational safety and edited it with a photo editing program, altering the name, we would be able to produce various certificates without the Institution applicant can verify its authenticity, except for the request for confirmation from the organization that provided the training.

Una possibilit? per certificare i documenti digitali ? offerta dalla recente diffusione della tecnologia delle Blockchain che permette la conservazione, in modo sicuro e non modificabile, di documenti digitali. La Blockchain ? un protocollo di comunicazione, che identifica una tecnologia basata sulla logica del database distribuito (un database in cui i dati non sono memorizzati su un solo server ma su pi? server collegati tra loro, chiamati nodi). A possibility? to certify digital documents ? offered by the recent spread of Blockchain technology that allows digital documents to be stored in a secure and non-editable way. The Blockchain? a communication protocol, which identifies a technology based on the logic of the distributed database (a database in which the data is not stored on a single server but on several servers connected to each other, called nodes).

Una Blockchain ? una base di dati costituita da blocchi transazioni correlate da un marcatore temporale (timestamp). Ogni blocco include l?hash (una funzione algoritmica informatica non invertibile che mappa una stringa di lunghezza arbitraria in una stringa di lunghezza predefinita) del blocco precedente, collegando i blocchi insieme. I blocchi collegati formano una catena, con ogni blocco addizionale che rinforza quelli precedenti. A Blockchain? a database made up of transaction blocks correlated by a timestamp. Each block includes the hash (a non-invertible computer algorithmic function that maps an arbitrary length string to a predefined length string) of the previous block, linking the blocks together. Connected blocks form a chain, with each additional block reinforcing the previous ones.

Una Blockchain costituisce di fatto un registro pubblico e condiviso, costituito da una serie di nodi ed ? organizzata per aggiornarsi automaticamente su ciascuno dei nodi che partecipano al network. Ogni operazione effettuata deve essere confermata automaticamente da tutti i singoli nodi attraverso software di crittografia, che verificano un pacchetto di dati definiti a chiave privata o seme, che viene utilizzato per firmare le transazioni, garantendo l?identit? digitale di chi le ha autorizzate. A Blockchain is in fact a public and shared register, made up of a series of nodes and ? organized to update automatically on each of the nodes participating in the network. Each operation carried out must be automatically confirmed by all the individual nodes through encryption software, which verify a packet of data defined as a private key or seed, which is used to sign the transactions, guaranteeing the identity of those who authorized them.

Il Ledger ? una sorta di ?Libro Mastro?, ovvero la base fondamentale della contabilit?. Con i Distributed Ledgers Technology (DLT) si entra nell?ambito dei Database Distribuiti, ovvero di Ledgers (Libri Mastro) che possono essere aggiornati, gestiti, controllati e coordinati non pi? solo a livello centrale, ma in modo distribuito, da parte di tutti gli attori. I Distributed Ledgers vengono aggiornati solo dopo aver ottenuto il consenso e ogni nodo viene aggiornato con l?ultima versione di ogni singola operazione di ciascun partecipante. Ogni operazione rimane poi in modo indelebile e immutabile su ogni singolo nodo. The Ledger ? a sort of ?ledger?, i.e. the fundamental basis of accounting. With Distributed Ledgers Technology (DLT) you enter the sphere of Distributed Databases, or Ledgers (ledgers) that can be updated, managed, controlled and coordinated no longer? only at a central level, but in a distributed way, by all the actors. The Distributed Ledgers are updated only after obtaining consent and each node is updated with the latest version of every single operation of each participant. Each operation then remains indelibly and immutably on each individual node.

Una delle caratteristiche pi? importanti della Blockchain ? la sicurezza. La marca temporale impedisce anche che l?operazione, una volta eseguita, venga alterata o annullata. One of the most important of the Blockchain ? the security. The timestamp also prevents the operation, once performed, from being altered or undone.

Il funzionamento di una Blockchain non ? garantito da un ente centrale, ma ogni singola transazione ? validata dall?interazione di tutti i nodi. La marca temporale consente di associare una data e un?ora certe e legalmente valide ad un documento informatico. In altre parole la marca temporale e l?hash consentono di definire una validazione temporale del documento che pu? essere opponibile a terzi. How does a Blockchain work? guaranteed by a central body, but every single transaction? validated by the interaction of all nodes. The timestamp allows you to associate a certain and legally valid date and time with an IT document. In other words, the timestamp and the hash allow you to define a temporal validation of the document that can be enforceable against third parties.

Inoltre la validazione temporale elettronica rilasciata in uno stato membro dell'UE ? riconosciuta in tutti gli stati membri. Questo permette che la registrazione di un documento sulla Blockchain costituisca un elemento di certezza degli estremi temporali dello stesso e dell?integrit? del suo contenuto, con la possibilit?, perci?, di essere opponibile verso terzi. Furthermore, the electronic time stamp issued in an EU member state? recognized in all member states. This allows the registration of a document on the Blockchain to constitute an element of certainty of the temporal extremes of the same and of the integrity of its content, with the possibility, therefore, of being enforceable against third parties.

In breve, i vantaggi offerti dalla Blockchain si possono riassumere nelle seguenti caratteristiche: In short, the advantages offered by the Blockchain can be summarized in the following characteristics:

- Affidabilit?; - Reliability;

- Riservatezza; - Confidentiality;

- Solidit?; - Solidity?;

- Irrevocabilit?. - Irrevocability.

Uno svantaggio dell?utilizzo della tecnologia Blockchain per scopi individuali di certificazione e conservazione per future dimostrazioni di autenticit? di un documento digitale ? costituito dalla complessit? per il singolo utente di accedere e utilizzare tale tecnologia, anche a causa del fatto che, per il momento, i costi di realizzazione e manutenzione sono piuttosto elevati. One downside of using Blockchain technology for individual certification and preservation purposes for future proof of authenticity? of a digital document? made up of the complexity for the individual user to access and use this technology, also due to the fact that, at the moment, the construction and maintenance costs are quite high.

Lo scopo della presente invenzione ? quello di fornire una tecnologia che superi, almeno in parte, gli svantaggi dei sistemi attualmente disponibili. The purpose of the present invention ? that of providing a technology that overcomes, at least in part, the disadvantages of currently available systems.

SOMMARIO DELL?INVENZIONE SUMMARY OF THE INVENTION

A questo risultato si ? pervenuti, in conformit? della presente invenzione, attraverso la realizzazione di un metodo per certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, da parte di un server raggiungibile telematicamente da una pluralit? di utenti registrati, il server avente accesso ad almeno un registro privato e ad almeno una Blockchain, il metodo comprendente i passi di: il server ricevere una richiesta di certificazione di almeno un documento digitale da parte di un utente registrato, la richiesta comprendente: l?almeno un documento digitale in un formato selezionato tra una pluralit? di formati predeterminati; una lista di uno o pi? nominativi a cui dovr? essere comunicata la certificazione, ogni nominativo essendo associato a un indirizzo telematico; calcolare da parte del server un codice univoco rappresentativo dell?almeno un documento digitale ricevuto; il server accedere all?almeno un registro privato, per verificare se il codice univoco calcolato ? stato precedentemente registrato nell?almeno un registro privato; a seguito dell?esito positivo della verifica, inviare da parte del server all?utente registrato che ha inviato la richiesta e a ognuno dei nominativi presenti nella lista allegata alla richiesta, una comunicazione in cui si attesta la corrispondenza dell?almeno un documento digitale a un documento precedentemente certificato; a seguito dell?esito negativo, registrare da parte del server su una o pi? Blockchain il codice univoco e aggiungere sull?ameno un registro privato un record contenente il codice univoco, gli estremi identificativi dell?una o pi? Blockchain, la data di registrazione sull?uno o pi? Blockchain e, opzionalmente, la lista dei nominativi allegata alla richiesta ricevuta; il server inviare agli indirizzi associati ai nominativi della lista allegata alla richiesta una comunicazione telematica contente la conferma della certificazione e il documento certificato. La richiesta di certificazione pu? essere per esempio inviata per mezzo di una email. Il documento da certificare po' essere costituito da uno o pi? allegati alla richiesta (per esempio inviata per email) o essere costituito dalla richiesta stessa (per esempio il contenuto di un?email). Opzionalmente il metodo pu? comprendere il passo di iscrivere i nominativi della lista in un elenco di utenti registrati per futura consultazione da parte del server. In una realizzazione preferita della presente invenzione, il codice univoco ? ottenuto mediante una funzione hash. Il passo di verificare se il codice univoco calcolato ? stato precedentemente registrato, pu? comprendere una verifica direttamente sull?una o pi? Blockchain da parte del server. Yes to this result? received, in compliance of the present invention, through the realization of a method for certifying digital documents and verifying the correspondence between a received document and a previously certified document, by a server reachable telematically from a plurality of registered users, the server having access to at least one private registry and at least one Blockchain, the method including the steps of: the server receiving a request for certification of at least one digital document from a registered user, the request including: the Is it at least a digital document in a format selected from a plurality? of predetermined formats; a list of one or more names to which it should? the certification be communicated, each name being associated with an electronic address; calculate by the server a unique code representative of the at least one digital document received; the server access to? At least one private register, to verify if the unique code calculated ? been previously registered in at least one private register; following the positive outcome of the verification, the server sends to the registered user who sent the request and to each of the names on the list attached to the request, a communication certifying the correspondence of at least one digital document to a previously certified document; following the negative outcome, register by the server on one or more? Blockchain the unique code and add a record containing the unique code, the identification details of one or more Blockchain, the date of registration on one or more Blockchain and, optionally, the list of names attached to the request received; the server will send an electronic communication containing the certification confirmation and the certified document to the addresses associated with the names on the list attached to the request. The certification request can be sent, for example, by email. Can the document to be certified be made up of one or more? attached to the request (for example sent by email) or consist of the request itself (for example the content of an email). Optionally the method pu? understand the step of registering the names of the list in a list of registered users for future consultation by the server. In a preferred embodiment of the present invention, the unique code ? obtained using a hash function. The step to verify if the unique code calculated ? been previously registered, pu? include a check directly on? one or more? Blockchain by server.

In un secondo aspetto della presente invenzione si realizzano inoltre un programma per computer, un applicativo software o un prodotto programma che implementino il metodo suddetto, quando vengono eseguiti su un computer, un telefono o qualsiasi apparecchio dotato di capacit? di elaborazione dati. In a second aspect of the present invention there is also provided a computer program, a software application or a program product which implements the above method, when executed on a computer, a telephone or any apparatus having the ability to of data processing.

In un ulteriore aspetto della presente invenzione, si realizza un sistema distribuito comprendente uno a pi? componenti atti a implementare un metodo per certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, come sopra descritto. In a further aspect of the present invention, a distributed system comprising one to more? components suitable for implementing a method for certifying digital documents and verifying the correspondence between a received document and a previously certified document, as described above.

Grazie alla presente invenzione ? possibile realizzare un sistema flessibile e di facile utilizzo che permetta a un utente privato o una societ? o un?industria di sfruttare l?affidabilit? e la solidit? della tecnologia Blockchain senza doversi preoccupare di gestire direttamente l?accesso e la consultazione. L?utente deve semplicemente inviare un messaggio (per esempio un messaggio di posta elettronica o email) che pu? contenere uno o pi? documenti da certificare e opzionalmente una lista di destinatari e il Servizio provvede a creare un codice univoco, a conservarlo nei proprio registri, registrarlo in una o pi? Blockchain e successivamente, a richiesta di un qualsiasi utente registrato, effettuare le verifiche necessarie a stabilire se un documento (o l?email stessa) corrisponda o meno a uno precedentemente registrato e certificato. Thanks to the present invention ? Is it possible to create a flexible and easy-to-use system that allows a private user or a company? or an? industry to exploit the? reliability? and the solidity? of Blockchain technology without having to worry about directly managing access and consultation. The user simply has to send a message (for example an e-mail or email) that can? contain one or more documents to be certified and optionally a list of recipients and the Service creates a unique code, keeps it in its registers, registers it in one or more Blockchain and subsequently, at the request of any registered user, carry out the checks necessary to establish whether or not a document (or the email itself) corresponds to a previously registered and certified one.

Il server decodifica i documenti (allegati o l?email stessa), per esempio mediante una tecnologia crittografica, estraendone un codice univoco, e.g. un codice hash, che ? riconducibile con assoluta sicurezza al documento (o file) registrato. L'informazione di questa identit? digitale unica generata, viene distribuita su una o pi? Blockchain, per garantire che la stessa, non verr? mai perduta n? modificata. Il sistema secondo la presente invenzione pu? assolvere la funzione di dimostrare verso i terzi, la data certa dell'invio, e l'integrit? del contenuto originario dei file. Inoltre il servizio garantisce la massima riservatezza in quanto non archivia il contenuto del file, n? pu? prenderne visione. The server decrypts the documents (attachments or the email itself), for example using cryptographic technology, extracting a unique code, e.g. a hash code, that ? traceable with absolute certainty to the recorded document (or file). The information of this identity? unique digital generated, is distributed on one or more? Blockchain, to ensure that the same, will not come never lost n? modified. The system according to the present invention can fulfill the function of demonstrating to third parties, the certain date of sending, and the integrity of the original contents of the files. Furthermore, the service guarantees maximum confidentiality as it does not store the contents of the file, nor? can? take a look at it.

Un altro vantaggio derivante dalla presente invenzione ? quello di permettere, almeno parzialmente, lo sfruttamento di componenti esistenti e di limitare l?esigenza di investimenti in infrastrutture dedicate. Another advantage deriving from the present invention ? that of allowing, at least partially, the exploitation of existing components and limiting the need for investments in dedicated infrastructures.

Il metodo, secondo una realizzazione della presente invenzione si basa sulla combinazione tra firma digitale e marca temporale (timestamp): la prima garantisce che mittente e destinatario di un qualsiasi tipo di messaggio (ad esempio la transazione nel mondo dei pagamenti) siano identificati in modo certo, il secondo permette che un insieme di messaggi, validato con la marca temporale da parte di un nodo scelto casualmente da un robusto modello matematico, venga comunicato e scritto nel registro di tutti gli altri nodi della rete e reso irreversibile. The method, according to an embodiment of the present invention is based on the combination of digital signature and timestamp: the first guarantees that the sender and recipient of any type of message (for example the transaction in the world of payments) are identified in a of course, the second allows a set of messages, validated with the timestamp by a node chosen randomly from a robust mathematical model, to be communicated and written in the register of all the other nodes in the network and made irreversible.

BREVE DESCRIZIONE DELLE FIGURE BRIEF DESCRIPTION OF THE FIGURES

Questi e ulteriori vantaggi, scopi e caratteristiche della presente invenzione saranno meglio compresi facendo riferimento alla descrizione che segue e ai disegni allegati, relativi a esempi di realizzazione aventi carattere esemplificativo, da non intendersi in senso limitativo, nei quali: These and further advantages, objects and characteristics of the present invention will be better understood by referring to the following description and to the attached drawings, relating to embodiments having an exemplifying nature, not to be understood in a limiting sense, in which:

- la Figura 1 rappresenta l?architettura generale di un sistema secondo una realizzazione preferita della presente invenzione; - Figure 1 represents the general architecture of a system according to a preferred embodiment of the present invention;

- la Figura 2 mostra schematicamente un computer generico utilizzato nel sistema secondo una realizzazione preferita della presente invenzione; Figure 2 schematically shows a generic computer used in the system according to a preferred embodiment of the present invention;

- la Figura 3 rappresenta schematicamente lo schema logico di un sistema secondo una realizzazione preferita della presente invenzione; - la Figura 4 rappresenta schematicamente i passi di un metodo secondo una realizzazione preferita della presente invenzione. - Figure 3 schematically represents the logical diagram of a system according to a preferred embodiment of the present invention; - Figure 4 schematically represents the steps of a method according to a preferred embodiment of the present invention.

DESCRIZIONE DETTAGLIATA DI REALIZZAZIONI DELL?INVENZIONE La presente invenzione realizza un servizio e offre un accesso e una gestione semplificati di certificazione digitale, utilizzando la tecnologia blockchain per garantirne l?affidabilit?, ma sollevando l?utilizzatore (persona fisica individuale o persona giuridica, per esempio societ? privata, industria o ente) da tutti gli oneri di accesso e gestione a una Blockchain. Nel seguito della presente descrizione ci riferiremo al servizio, all?accesso e alla gestione sopra citata come al ?Servizio?. DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION The present invention provides a service and offers simplified access and management of digital certification, using the blockchain technology to ensure its reliability, but relieving the user (individual natural person or legal entity, for example private company, industry or institution) from all the costs of accessing and managing a Blockchain. In the continuation of this description we will refer to the service, access and management mentioned above as the ?Service?.

La Figura 1 mostra schematicamente un sistema secondo una realizzazione preferita della presente invenzione: il sistema comprende un server 101 raggiungibile da parte di un utente 103 per mezzo di una rete (e.g. INTERNET, rete telefonica mobile). Il server 101 ? collegato e controlla un database 103 e ha accesso a una o pi? Blockchain 107. Tutti i collegamenti avvengono per mezzo di una rete di telecomunicazioni (e.g. INTERNET, rete telefonica mobile, reti interne, per esempio LAN per l?accesso ai database). La comunicazione tra l?utente 103 (che, secondo una realizzazione preferita della presente invenzione, deve preferibilmente essere registrato al servizio), pu? avvenire con qualsiasi modalit?, anche se nella realizzazione preferita discussa di seguito ? previsto che avvenga per mezzo di un?email, inviata all?indirizzo del gestore del Servizio; coloro esperti nella arte tecnica, comprenderanno che tale comunicazione pu? essere realizzata con una qualsiasi delle modalit? di scambio di messaggi e documenti digitali attualmente disponibili o che si realizzeranno in futuro (solo per fare qualche esempio: messaggi SMS; messaggi whatsapp, o qualsiasi altro tipo di vettore di informazioni, come per esempio una fotografia scattata da uno smartphone). La caratteristica comune di queste modalit? di comunicazione ? quella di permettere l?invio di un documento digitale (per esempio in formato .pdf o word) e la possibilit? di indicare una lista di destinatari (rappresentati in figura come 109) che riceveranno i risultati della certificazione effettuata dal gestore del Servizio. Figure 1 schematically shows a system according to a preferred embodiment of the present invention: the system comprises a server 101 reachable by a user 103 by means of a network (e.g. INTERNET, mobile telephone network). The 101 server? connected and controls a database 103 and has access to one or more? Blockchain 107. All connections take place via a telecommunications network (e.g. INTERNET, mobile telephone network, internal networks, for example LAN for database access). The communication between the user 103 (which, according to a preferred embodiment of the present invention, must preferably be registered to the service), can? take place in any way, even if in the preferred embodiment discussed below ? provided that it takes place by means of an email, sent to the address of the manager of the Service; those skilled in the technical art will understand that such communication can be made with any of the modalities? exchange of messages and digital documents currently available or that will take place in the future (just to name a few: SMS messages; whatsapp messages, or any other type of information carrier, such as a photograph taken by a smartphone). The common feature of these modes? of communication ? that of allowing the sending of a digital document (for example in format .pdf or word) and the possibility? to indicate a list of recipients (represented in the figure as 109) who will receive the results of the certification carried out by the Service manager.

Alla ricezione di una comunicazione (per esempio un?email) contenente la richiesta da parte dell?utente 103, un documento da certificare una possibile lista di destinatari, il Server 101 estrae il documento (possono anche essere pi? di uno, ma per comodit? ci riferiamo a il caso di un solo documento) calcola un codice univoco (per esempio un codice numerico Hash, si veda i dettagli forniti pi? avanti) che identifichi in modo esclusivo il documento allegato alla comunicazione. Il server 101 verifica che tale codice univoco non sia gi? registrato nel proprio registro sul database 105. Se questo non ? il caso, cio? se il documento ? ricevuto per la prima volta da parte del Gestore del Servizio, il server 101 registra, per utilizzi futuri, il codice univoco nel database 105, associandolo a un set di informazioni, comprendenti per esempio il mittente, i destinatari, data e ora. Tale codice univoco, per esempio il codice hash, viene inoltre inviato per la registrazione a una o pi? Blockchain, in modo da poter garantire l?immutabilit? e poter dimostrare la corrispondenza di tale codice al documento a esso associato. Il fatto di utilizzare pi? di una Blockchain, pur non essendo un requisito assoluto del Servizio, fornisce ulteriori garanzie di stabilit? e di affidabilit?. Essendo una Blockchain un insieme di nodi non posseduti dal medesimo proprietario connessi fra di loro, pu? succedere che i creatori di una specifica Blockchain non la supportino pi? e questa continui a funzionare senza alcun tipo di intervento. Questo per? comporta che tecnologicamente queste Blockchain possano presentare malfunzionamenti dovuti all?evoluzione dei sistemi operativi di base su cui poggiano. Da qui il fatto che il servizio secondo una realizzazione preferita della presente invenzione, al fine di ovviare a questo problema, prevede la registrazione contemporanea su pi? Blockchain. Upon receipt of a communication (for example an email) containing the request from the user 103, a document to be certified and a possible list of recipients, Server 101 extracts the document (they can also be more than one, but for convenience ? we are referring to the case of a single document) calculates a unique code (for example a numerical Hash code, see details provided below) which uniquely identifies the document attached to the communication. Server 101 verifies that this unique code is not already? registered in its register on database 105. If this is not ? the case, what? if the document ? received for the first time by the Service Manager, the server 101 records, for future use, the univocal code in the database 105, associating it with a set of information, including for example the sender, recipients, date and time. This unique code, for example the hash code, is also sent for registration to one or more Blockchain, in order to guarantee the immutability and be able to demonstrate the correspondence of this code to the document associated with it. The fact of using pi? of a Blockchain, while not an absolute requirement of the Service, does it provide further guarantees of stability? and reliability. Since a Blockchain is a set of nodes not owned by the same owner connected to each other, can it? Does it happen that the creators of a specific Blockchain no longer support it? and this continues to work without any kind of intervention. This for? implies that technologically these Blockchains may present malfunctions due to the evolution of the basic operating systems on which they are based. Hence the fact that the service according to a preferred embodiment of the present invention, in order to overcome this problem, provides for the simultaneous registration on several? Blockchains.

Se invece il codice univoco viene reperito all?interno del registro sul database 105 (questo significa che lo stesso documento era stato precedentemente ?certificato? attraverso questo stesso Servizio dall?utente autore della richiesta o da altri), il server 101 invia un messaggio all?utente 103, autore della richiesta e a tutti i destinatari indicati nella richiesta stessa, confermando che il documento corrisponde a quello precedentemente registrato, indicando la data e gli estremi identificativi della registrazione. Eventualmente pu? essere previsto un controllo sui dati registrati sulla Blockchain (o sulla pluralit? di Blockchain), ma non ? strettamente necessario per il funzionamento del sistema che pu? anche basarsi sul proprio registro interno, tenendo la registrazione pubblica su Blockchain come eventuale mezzo di conferma, in caso di contestazioni. If instead the univocal code is found in the register on database 105 (this means that the same document had previously been ?certified? through this same Service by the user authoring the request or by others), the server 101 sends a message to ?user 103, author of the request and to all the recipients indicated in the request itself, confirming that the document corresponds to the one previously registered, indicating the date and identification details of the registration. Possibly can? be expected to check the data recorded on the Blockchain (or on the plurality of Blockchains), but it is not? strictly necessary for the functioning of the system that pu? also rely on its own internal register, keeping the public registration on the Blockchain as a possible means of confirmation, in case of disputes.

Come accennato, secondo una realizzazione preferita della presente invenzione, il codice univoco viene creato, per esempio per mezzo della tecnica hash. L'algoritmo di hash elabora qualunque mole di bit (in informatica si dice che elabora dati "grezzi"). Si tratta di una famiglia di algoritmi che soddisfa questi requisiti: As mentioned, according to a preferred embodiment of the present invention, the unique code is created, for example by means of the hash technique. The hash algorithm processes any amount of bits (in computer science it is said to process "raw" data). It is a family of algorithms that satisfies these requirements:

- L'algoritmo restituisce una stringa di numeri e lettere a partire da un qualsiasi flusso di bit di qualsiasi dimensione (pu? essere un file ma anche una stringa). L'output ? detto digest. - The algorithm returns a string of numbers and letters starting from any bit stream of any size (it can be a file but also a string). The output ? called digest.

- L'algoritmo non ? invertibile, ossia non ? possibile ricostruire il documento originale a partire dalla stringa che viene restituita in output ovvero ? una funzione unidirezionale, quest'ultima caratteristica non ? indispensabile se si usano gli hash per controllare gli errori nei trasferimenti dei dati, dove le eventuali funzioni di encripting (secretazione) possono venir svolte in altre aree del protocollo. - The algorithm is not? invertible, that is not ? Is it possible to reconstruct the original document starting from the string that is returned in output or ? a unidirectional function, this last characteristic is not ? indispensable if hashes are used to check errors in data transfers, where any encrypting (secretion) functions can be performed in other areas of the protocol.

Quindi da un qualsiasi file o documento (per esempio un documento in formato .pdf) ? possibile estrarre in modo univoco un digest, cio? una sequenza di dati che rappresenta in modo univoco il documento stesso. L?alterazione anche di un solo bit del documento ne fa cambiare la sequenza univoca di dati. So from any file or document (for example a document in .pdf format)? is it possible to unambiguously extract a digest, the cio? a sequence of data that uniquely represents the document itself. Altering even one bit of the document changes its unique data sequence.

Il Servizio secondo una realizzazione preferita della presente invenzione ? finalizzato alla memorizzazione sulla Blockchain (sistema sicuro e non modificabile) del digest calcolato in base al file che contiene il documento, cio? la fonte digitale del documento stesso. ? evidente che l?algoritmo utilizzato per calcolare il codice hash debba essere sempre lo stesso per poter verificare la corrispondenza. Il Servizio pu? essere utilizzato per archiviare in modo irrevocabile il digest di un file, potendolo in un secondo momento, verificare. The Service according to a preferred embodiment of the present invention ? aimed at storing on the Blockchain (secure and unchangeable system) the digest calculated on the basis of the file containing the document, i.e. the digital source of the document itself. ? it is clear that the algorithm used to calculate the hash code must always be the same in order to verify the correspondence. The Service can be used to irrevocably archive the digest of a file, being able to verify it later.

Riprendendo l?esempio del corso per la Sicurezza sul Lavoro, citato in precedenza, il digest del file contenente l?attestato della partecipazione al corso di formazione obbligatorio sulla sicurezza sul lavoro, inviato al Servizio verrebbe archiviato in modo immutabile sulla Blockchain (o su una pluralit? di Blockchain) e l?Ente ricevente il file, potrebbe semplicemente, interrogando il Servizio, verificare l?autenticit? dello stesso. Taking up the example of the occupational safety course, mentioned above, the digest of the file containing the certificate of participation in the compulsory occupational safety training course, sent to the Service, would be archived immutably on the Blockchain (or on a plurality of Blockchain) and the Entity receiving the file could simply, by querying the Service, verify the authenticity of the same.

Il Servizio non ha bisogno di memorizzare una copia del file (documento), ma solo la sua impronta digitale (digest). The Service does not need to store a copy of the file (document), but only its fingerprint (digest).

La Figura 2 rappresenta un computer generico utilizzato nel sistema secondo la forma di realizzazione preferita della presente invenzione. Tale descrizione generica comprende qualsiasi apparecchiatura dotata di capacit? elaborative, pur con diversi livelli di sofisticatezza e di funzionalit? (e.g. computer, terminali mobili, tablet, smartphone, server, router di rete, proxy server). Il computer 250 ? composto da diverse unit? che sono connesse in parallelo a un bus di sistema 253. In dettaglio, uno o pi? microprocessori 256 controllano le operazioni del computer; una memoria RAM 259 ? utilizzata direttamente come memoria di lavoro dai microprocessori 256, mentre una memoria ROM 262 contiene il codice base per le attivit? di caricamento iniziale del sistema (bootstrap). Diverse unit? periferiche sono connesse a un bus locale 265 per mezzo di interfacce adeguate. In particolare tali unit? periferiche possono comprendere una memoria di massa costituita da harddisk 271 e un lettore per schede di memoria, chiavette USB, dischi CD-ROM e/o dischi ottici (e.g. DVD o BlueRay) 274. Inoltre il computer 250 pu? comprendere dispositivi di input 277 (e.g. tastiera, mouse, track point, webcam) e di output 280 (e.g. schermo, stampante). Una scheda di rete (Network Interface Card) 283 ? utilizzata per connettere il computer 250 a una rete. Un?unit? ponte 286 costituisce l?interfaccia tra il bus di sistema 253 e il bus locale 265. Ogni microprocessore 256 e l?unit? ponte 256 possono operare come ?master agent? e richiedere l?accesso esclusivo al bus di sistema 253 per trasmettere informazioni. Un arbitro 289 gestisce le richieste di accesso al bus di sistema 253, evitando conflitti tra i richiedenti. Considerazioni simili si applicano a sistemi leggermente diversi o basati su diverse configurazioni di rete. Altre componenti oltre a quelle descritte possono essere presenti in casi specifici e per implementazioni particolari. Figure 2 represents a generic computer used in the system according to the preferred embodiment of the present invention. Does this generic description include any equipment having the capability? processing, albeit with different levels of sophistication and functionality? (e.g. computers, mobile terminals, tablets, smartphones, servers, network routers, proxy servers). The 250 computer? composed of several units? which are connected in parallel to a system bus 253. In detail, one or more? microprocessors 256 control computer operations; a RAM memory 259 ? used directly as working memory by the microprocessors 256, while a ROM memory 262 contains the base code for the activities? initial system boot (bootstrap). different units? peripherals are connected to a local bus 265 by means of suitable interfaces. In particular, these units peripherals can include a mass memory consisting of hard disks 271 and a reader for memory cards, USB keys, CD-ROM disks and/or optical disks (e.g. DVD or BlueRay) 274. Furthermore, the computer 250 can include input devices 277 (e.g. keyboard, mouse, track point, webcam) and output devices 280 (e.g. screen, printer). A Network Interface Card 283 ? used to connect the 250 computer to a network. A unit bridge 286 constitutes the interface between the system bus 253 and the local bus 265. Each microprocessor 256 and the unit? bridge 256 can operate as ?master agent? and requesting exclusive access to system bus 253 to transmit information. An arbiter 289 manages the access requests to the system bus 253, avoiding conflicts between the requesting parties. Similar considerations apply to systems that are slightly different or based on different network configurations. Other components in addition to those described may be present in specific cases and for particular implementations.

Come illustrato in Figura 3, si pu? rappresentare il Servizio come la combinazione di due componenti logici principali: As illustrated in Figure 3, you can represent the Service as the combination of two main logical components:

1- Connettore 301; componente che acquisisce dai sistemi informativi i file da certificare (server email, ftp server, webservice, etc.); 1- 301 connector; component that acquires the files to be certified from the information systems (email server, ftp server, webservice, etc.);

2- servizio di certificazione 303 che, acquisisce dal file il digest e le informazioni di contorno e le inserisce nella Blockchain. 2- 303 certification service which acquires the digest and outline information from the file and inserts them into the Blockchain.

Un altro vantaggio in termini di sicurezza e affidabilit? ? che il Servizio non ha necessit? di trasferire dati sensibili a sistemi esterni ma solo digest; in questo modo, non memorizzando i documenti certificati, non si pu? ledere la privacy e l?eventuale segretezza dei documenti oggetto del procedimento, rispettando cos? le severe normative di legge. Another advantage in terms of safety and reliability? ? that the Service has no need? to transfer sensitive data to external systems but only digests; in this way, not storing the certified documents, you can't? harm the privacy and any secrecy of the documents involved in the proceedings, thus respecting strict legal regulations.

Il Servizio garantisce che le transazioni siano certificabili e non modificabili, in rispetto dell?ecosistema digitale che permea sempre di pi? la vita di tutti i giorni. Il Servizio, secondo la presente invenzione, utilizzando la Blockchain, fornisce la certezza di questa non immutabilit?. I campi di utilizzo sono svariati come ormai noto in molti settori. The Service guarantees that transactions are certifiable and cannot be changed, in compliance with the digital ecosystem that increasingly permeates everyday life. The Service, according to the present invention, using the Blockchain, provides the certainty of this non-immutability. The fields of use are varied as is now known in many sectors.

In ogni circostanza in cui fosse necessario certificare che una informazione pervenuta o generata sia immutabile nel tempo, il Servizio trova la sua applicabilit?. In every circumstance in which it is necessary to certify that an information received or generated is immutable over time, the Service finds its applicability.

Possono essere sviluppati connettori ai sistemi informativi di riferimento per acquisire i digest da rendere immutabili. Connectors to the reference information systems can be developed to acquire the digests to be made immutable.

Solo per fare alcuni esempi, il Servizio pu? essere applicato ad esempio, alle letture dei contatori nell?ambito utilities, alle transazioni in ambito bancario, alla raccolta di dati in ambito IoT, etc. Just to name a few, the Service can? be applied, for example, to meter readings in the utilities sector, to transactions in the banking sector, to data collection in the IoT sector, etc.

Il modello di business potrebbe prevedere il pagamento per ogni digest certificato (inserito/verificato) attraverso il Servizio. Il modello di business potrebbe essere esteso alla tipologia di canale utilizzato es. email, API, etc. e/o in relazione all?accessibilit? al digest per periodi diversi (24 mesi, etc.). The business model may include payment for each certified digest (entered/verified) through the Service. The business model could be extended to the type of channel used e.g. emails, APIs, etc. and/or in relation to? accessibility? per digest for different periods (24 months, etc.).

La verifica nel database 105 dell?esistenza e della certificazione di un file precedentemente certificato con il Servizio, pu? avvenire solo attraverso il Servizio stesso. The verification in the database 105 of the existence and certification of a file previously certified with the Service, can occur only through the Service itself.

BLOCKCHAIN BLOCKCHAIN

Come brevemente accennato sopra, la tecnologia Blockchain offre le seguenti caratteristiche: As briefly mentioned above, Blockchain technology offers the following features:

Affidabilit?: la Blockchain ? affidabile. Non essendo governata dal centro, ma dando a tutti i partecipanti diretti una parte di controllo dell?intera catena, la Blockchain diventa un sistema meno centralizzato, meno governabile, ed allo stesso tempo molto pi? sicuro e affidabile, ad esempio da attacchi di malintenzionati. Se infatti soltanto uno dei nodi della catena subisce un attacco e si danneggia, tutti gli altri nodi del database distribuito continueranno comunque ad essere attivi ed operativi, saldando la catena e non perdendo in questo modo informazioni importanti. Reliability: Is the Blockchain? reliable. Not being governed from the center, but giving all the direct participants a part of the control of the entire chain, the Blockchain becomes a less centralized, less controllable system, and at the same time much more? safe and reliable, for example from malicious attacks. In fact, if only one of the nodes in the chain suffers an attack and is damaged, all the other nodes in the distributed database will still continue to be active and operational, sealing the chain and thus not losing important information.

Trasparenza: le transazioni effettuate attraverso la Blockchain sono visibili a tutti i partecipanti, garantendo cos? trasparenza nelle operazioni. Transparency: transactions made through the Blockchain are visible to all participants, thus ensuring transparency in operations.

Convenienza: effettuare transazioni attraverso la Blockchain ? conveniente per tutti i partecipanti, in quanto vengono meno interlocutori di terze parti, necessari in tutte le transazioni convenzionali che avvengono tra due o pi? parti (ovvero le banche ed altri enti simili). Convenience: Transacting Through the Blockchain? convenient for all participants, as there are fewer third-party interlocutors, necessary in all conventional transactions that take place between two or more? parties (i.e. banks and other similar entities).

Solidit?: le informazioni gi? inserite nella Blockchain non possono essere modificate in alcun modo. In questo modo le informazioni contenute nella Blockchain sono tutte pi? solide ed attendibili, proprio per il fatto che non si possono alterare e quindi restano cos? come sono state inserite la prima volta. Solidity?: the information already? inserted in the Blockchain cannot be modified in any way. In this way the information contained in the Blockchain are all more? solid and reliable, precisely because they cannot be altered and therefore remain cos? as they were first entered.

Irrevocabilit?: con la Blockchain ? possibile effettuare transazioni irrevocabili, e allo stesso tempo pi? facilmente tracciabili. In questo modo si garantisce che le transazioni siano definitive, senza alcuna possibilit? di essere modificate o annullate. Irrevocability: with the Blockchain? Is it possible to make irrevocable transactions, and at the same time more? easily traceable. This ensures that transactions are final, with no chance to be modified or cancelled.

Secondo alcune leggi vigenti sull'utilizzo di tecnologie basate sui registri distribuiti (si veda per esempio, per gli Stati dell?Unione Europea, l?art. 41 del Regolamento UE n.910/2014) oggi ? riconosciuto che alla validazione temporale elettronica deve essere riconosciuta la validazione giuridica e l?ammissibilit? come prova in giudizio. According to some laws in force on the use of technologies based on distributed registers (see for example, for the Member States of the European Union, Article 41 of EU Regulation n.910/2014) today ? recognized that the legal validation and admissibility must be recognized to the electronic time stamp as evidence in court.

La validazione temporale elettronica rilasciata in uno stato membro dell'UE ? riconosciuta in tutti gli stati membri. Questo permette che la registrazione di un documento sulla Blockchain costituisca un elemento di certezza degli estremi temporali dello stesso, e dell?integrit? del suo contenuto, con la possibilit?, perci?, di essere opponibile verso i terzi. The electronic time stamp issued in an EU member state? recognized in all member states. This allows the registration of a document on the Blockchain to constitute an element of certainty of the temporal extremes of the same, and of the integrity of its content, with the possibility, therefore, of being opposable towards third parties.

Il diagramma di Figura 4 mostra schematicamente la sequenza di passi del metodo (o processo) secondo una forma di realizzazione preferita della presente invenzione. Il metodo ? volto a certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, da parte di un server (si veda 101 in Figura 1) raggiungibile telematicamente da una pluralit? di utenti registrati (un utente che effettua la richiesta ? rappresentato con 103 in Figura 1). Definiamo l?insieme di questo metodo come il Servizio. Il server pertanto dovr? avere accesso a un registro privato, salvato per esempio su un database (si veda per esempio il database 105 di Figura 1) e a una o pi? Blockchain (rappresentate con 107 in Figura 1). Il processo comincia al passo 401, in cui il server attende di ricevere una nuova richiesta. Un utente registrato (rappresentato con il riquadro 103 in Figura 1), invia al server 101 una richiesta di certificazione di almeno un documento digitale (passo 403); tale richiesta comprende: l?almeno un documento digitale in un formato selezionato tra una pluralit? di formati predeterminati e una lista di uno o pi? nominativi a cui dovr? essere comunicata la certificazione, ogni nominativo essendo associato a un indirizzo telematico (109 in Figura 1). In una realizzazione preferita della presente invenzione, la richiesta ? inviata per mezzo di un?email, ma qualsiasi altro mezzo di comunicazione adatto a essere ricevuto, interpretato ed elaborato da un server pu? andare ugualmente bene (tanto per fare qualche esempio, potrebbe essere un form compilato su un sito web, un messaggio SMS, un messaggio Whatsapp, una foto acquisita con dispositivo digitale (e.g. uno smartphone)). Anche il documento pu? assumere diverse forme e formati (e.g. documento .pdf, documento Word, foto, file sonoro e numerosi altri che coloro esperti del ramo possono immaginare); addirittura non ? necessario che un documento vero e proprio sia allegato, in tal caso pu? essere la richiesta stessa, per esempio, seguendo il caso precedentemente citato, l?email e il suo contenuto verbale. In una possibile realizzazione della presente invenzione, si pu? prevedere che, in mancanza di un allegato vero e proprio, il server consideri il contenuto stesso dell?email come documento da registrare. The diagram of Figure 4 schematically shows the sequence of steps of the method (or process) according to a preferred embodiment of the present invention. The method ? aimed at certifying digital documents and verifying the correspondence between a received document and a previously certified document, by a server (see 101 in Figure 1) reachable electronically from a plurality of registered users (a user making the request is represented with 103 in Figure 1). We define the set of this method as the Service. The server must therefore? have access to a private register, saved for example on a database (see for example the database 105 of Figure 1) and to one or more? Blockchain (represented with 107 in Figure 1). The process begins at step 401, where the server waits to receive a new request. A registered user (represented by box 103 in Figure 1) sends server 101 a request for certification of at least one digital document (step 403); this request includes: l?at least one digital document in a format selected from a plurality? of predetermined formats and a list of one or more? names to which it should? the certification can be communicated, each name being associated with an electronic address (109 in Figure 1). In a preferred embodiment of the present invention, the request is sent by means of an email, but any other means of communication capable of being received, interpreted and processed by a server can go equally well (just to name a few, it could be a form filled out on a website, an SMS message, a Whatsapp message, a photo captured with a digital device (e.g. a smartphone)). Even the document can? assume different forms and formats (e.g. .pdf document, Word document, photo, sound file and numerous others that those skilled in the art can imagine); even not? it is necessary that a real document is attached, in this case pu? be the request itself, for example, following the case previously mentioned, the email and its verbal content. In a possible embodiment of the present invention, one can provide that, in the absence of an actual attachment, the server considers the content of the e-mail itself as a document to be recorded.

A questo punto il server (passo 405) calcola un codice univoco rappresentativo dell?almeno un documento digitale ricevuto (come detto, il documento pu? anche essere la comunicazione della richiesta stessa). Tale codice, in una rappresentazione preferita della presente invenzione, ? ottenuto mediante una funzione hash che, come noto, genera un codice univocamente associato al documento di partenza. Il codice cos? generato viene utilizzato dal server per verificare che non esista gi? un codice identico nei propri registri; se cos? fosse significherebbe che in precedenza lo stesso documento era stato oggetto di registrazione (una sorta di ?notarizzazione?) attraverso il Servizio. Il server 101 quindi accede all?almeno un registro privato, per verificare se il codice univoco calcolato ? stato precedentemente registrato nell?almeno un registro privato (passo 407). In caso affermativo (nel caso cio? che il documento sia stato precedentemente ?notarizzato? dal Servizio), il server invia a chi ha fatto la richiesta e a ognuno dei nominativi presenti nella lista allegata alla richiesta, una comunicazione in cui si attesta la corrispondenza dell?almeno un documento digitale a un documento precedentemente certificato (passo 409). Il contenuto di tale conferma pu? assumere diverse forme, ma in generale pu? includere per esempio il nominativo di chi ha fatto la registrazione, la data in cui ? stata effettuata (il cosiddetto timestamp) e il documento stesso. Se invece il codice non trova riscontro (quindi si tratta di un nuovo documento), il server 101 registra su una o pi? Blockchain il codice univoco e aggiunge sul registro privato (105) un record contenente il codice univoco, gli estremi identificativi dell?una o pi? Blockchain, la data di registrazione sulle Blockchain e la lista dei nominativi allegata alla richiesta ricevuta (passo 411). Il server quindi (passo 413) invia, agli indirizzi associati ai nominativi della lista allegata alla richiesta, una comunicazione telematica contente la conferma della certificazione e il documento certificato. In una possibile realizzazione del metodo secondo la presente invenzione, i nominativi vengono iscritti nella lista degli utenti registrati: in questo modo potranno in futuro interrogare il server per verificare la corrispondenza di un documento a quello effettivamente registrato (questo passo, pure opzionale, ? mostrato in Figura 4 con il riferimento 415). In una possibile realizzazione della presente invenzione, si potrebbe prevedere una verifica da parte del server direttamente sulla Blockchain (o sulla pluralit? di Blockchain) della correttezza del codice univoco, ma tale controllo non ? essenziale o per lo meno non ? strettamente necessario eseguirlo ogni volta; potrebbe anche essere una funzione eseguita a richiesta dell?utente. At this point the server (step 405) calculates a unique code representative of the at least one digital document received (as said, the document can also be the communication of the request itself). This code, in a preferred representation of the present invention, is obtained through a hash function which, as known, generates a code uniquely associated with the starting document. The code what? generated is used by the server to verify that it does not already exist? an identical code in its own records; if what? if it were, it would mean that the same document had previously been subject to registration (a sort of ?notarization?) through the Service. The server 101 then accesses the at least one private register, to check whether the unique code calculated ? been previously registered in the at least one private registry (step 407). In the affirmative case (that is, in the event that the document has been previously ?notarized? by the Service), the server sends to whoever made the request and to each of the names present in the list attached to the request, a communication certifying the correspondence of the is at least one digital document to a previously certified document (step 409). The content of this confirmation may take different forms, but in general pu? include, for example, the name of the person who registered, the date on which ? been made (the so-called timestamp) and the document itself. If, on the other hand, the code is not matched (therefore it is a matter of a new document), the server 101 registers on one or more? Blockchain the unique code and adds on the private register (105) a record containing the unique code, the identification details of one or more Blockchain, the date of registration on the Blockchain and the list of names attached to the request received (step 411). The server then (step 413) sends, to the addresses associated with the names of the list attached to the request, a telematic communication containing the confirmation of the certification and the certified document. In a possible embodiment of the method according to the present invention, the names are entered in the list of registered users: in this way they will be able to query the server in the future to verify that a document corresponds to the one actually registered (this step, also optional, is shown in Figure 4 with the reference 415). In a possible embodiment of the present invention, a check by the server directly on the Blockchain (or on the plurality of Blockchains) of the correctness of the unique code could be envisaged, but this check is not? essential or at least not ? strictly necessary to run it every time; it could also be a function performed at the request of the user.

Un?altra possibile realizzazione alternativa (non rappresentata in Figura 4) prevede che, in caso il codice univoco calcolato per il documento ricevuto con la richiesta (oppure per l?email stessa, nel caso di nessun documento in allegato) non corrisponda a nessun codice precedentemente registrato, il server possa rispondere al richiedente soltanto con la segnalazione di ?non corrispondenza?, senza cio? registrare il nuovo documento: tale modifica prevede per? che la richiesta specifichi in qualche modo (per esempio con una parola chiave predeterminata o un flag predefinito), che il servizio richiesto ? proprio quello di verifica e non di registrazione/notarizzazione di un nuovo documento. Con il metodo rappresentato in Figura 4, secondo una realizzazione preferita della presente invenzione, la risposta del server potr? essere solo una delle due seguenti: 1) conferma che il documento inviato era stato precedentemente ?notarizzato? attraverso il sistema (quindi il codice univoco estratto dal documento ? gi? presente nel Registro e su una o pi? Blockchain); oppure 2) conferma di nuova ?notarizzazione? del documento inviato, ricordando che il documento pu? anche essere costituito dalla comunicazione (e.g. email) stessa. Another possible alternative embodiment (not shown in Figure 4) provides that, if the unique code calculated for the document received with the request (or for the email itself, in the case of no attached document) does not correspond to any code previously registered, the server can respond to the requestor only with the signaling of ?non-correspondence?, without cio? register the new document: does this change provide for? that the request specifies in some way (for example with a predetermined keyword or a predefined flag), that the requested service ? precisely that of verification and not of registration / notarization of a new document. With the method represented in Figure 4, according to a preferred embodiment of the present invention, the response of the server can be only one of the following two: 1) confirmation that the sent document had previously been ?notarized? through the system (therefore the unique code extracted from the document is already present in the Registry and on one or more Blockchains); or 2) confirmation of a new ?notarisation? of the document sent, remembering that the document can? also consist of the communication (e.g. email) itself.

Con il sistema e il metodo della presente invenzione si pu? realizzare un servizio flessibile e di facile utilizzo (Servizio) che permetta a un utente privato o una societ? o un?industria di sfruttare l?affidabilit? e la solidit? della tecnologia Blockchain senza doversi preoccupare di gestire direttamente i complessi processi di integrazione e uso di una Blockchain. With the system and the method of the present invention it is possible create a flexible and easy-to-use service (Service) that allows a private user or a company? or an? industry to exploit the? reliability? and the solidity? of Blockchain technology without having to worry about directly managing the complex processes of integrating and using a Blockchain.

L?utente deve solamente inviare una richiesta, per esempio per mezzo di un messaggio di posta elettronica attraverso un qualunque sistema di posta elettronica che pu? contenere uno o pi? documenti da certificare e opzionalmente una lista di destinatari e il Servizio provveder? a creare una serie di informazioni univoche (es. hash, etc.), e a conservarle nei propri registri, oltre a registrarlo in una o pi? Blockchain e successivamente, a richiesta di un qualsiasi utente registrato, effettuare le verifiche necessarie a stabilire se un documento digitale (o l?email stessa) corrisponda o meno ad uno precedentemente registrato e ?notarizzato?. The user only has to send a request, for example by means of an e-mail message through any e-mail system that can contain one or more documents to be certified and optionally a list of recipients and the Service will provide? to create a series of unique information (e.g. hashes, etc.), and to keep them in their registers, as well as register it in one or more? Blockchain and subsequently, at the request of any registered user, carry out the necessary checks to establish whether or not a digital document (or the email itself) corresponds to one previously registered and ?notarized?.

Il Servizio pu? richiedere le realizzazioni di componenti software da innestare all?interno di applicativi esistenti (es. sistemi di messaggistica istantanea, fotocamere, etc.) al fine di ?notarizzare? con semplicit? delle informazioni digitali. Ad esempio una fotografia scattata attraverso uno smartphone con a bordo l?applicativo potr? inviare il file contenete l?immagine alle Blockchain unitamente a informazioni ulteriori quali, per esempio, la posizione GPS per poi ricevere un certificato da apporre all?immagine stessa rendendola unica (il principio degli NFT ? Non Fungibile Token). The Service can request the creation of software components to be plugged into existing applications (eg instant messaging systems, cameras, etc.) in order to ?notarize? with simplicity? of digital information. For example, a photograph taken using a smartphone with the application on board can send the file containing the image to the Blockchain together with additional information such as, for example, the GPS position to then receive a certificate to be affixed to the image itself, making it unique (the NFT principle? Non Fungible Token).

In pratica i particolari di esecuzione possono comunque variare in maniera equivalente per ci? che attiene ai singoli elementi costruttivi descritti e illustrati senza per questo uscire dall?idea di soluzione adottata e perci? restando nei limiti della tutela conferita dal presente brevetto. Un esperto tecnico del ramo pu? apportare alla soluzione sopra descritta molte modifiche al fine di soddisfare requisiti locali o specifici. In particolare, dovrebbe essere chiaro che, pur avendo fornito dettagli implementativi riferiti a una o pi? forme di realizzazione preferite, possano essere applicate omissioni, sostituzioni o variazioni di alcune caratteristiche specifiche o di alcuni passi del metodo descritto a seguito di esigenze di progettazione o di realizzazione. In practice, the details of execution can still vary in an equivalent way for what? which pertains to the individual constructive elements described and illustrated without thereby abandoning the idea of the solution adopted and therefore? remaining within the limits of the protection conferred by this patent. A technical expert in the branch can make many changes to the solution described above in order to meet local or specific requirements. In particular, it should be clear that, despite having provided implementation details referring to one or more? preferred embodiments, omissions, substitutions or variations of some specific characteristics or of some steps of the method described may be applied following design or manufacturing requirements.

A titolo d?esempio le strutture hardware possono assumere sembianze diverse o comprendere diversi moduli; con il termine computer si ricomprende qualsiasi apparato (e.g. telefoni, palmari) dotato di una capacit? elaborativa per l?esecuzione di programmi software o di parti di essi. I programmi possono essere strutturati in maniera diversa o essere implementati in qualsiasi forma. Allo stesso modo le memorie possono assumere molteplici forme realizzative o essere sostituite da entit? equivalenti (non necessariamente costituite da supporti tangibili). I programmi possono assumere qualsiasi forma adatta a eseguire le relative funzioni e possono essere scritti in qualsiasi linguaggio di programmazione o presentati in forma di software, firmware o microcode, sia in codice oggetto che in codice sorgente. I programmi stessi possono essere immagazzinati su qualsiasi tipo di supporto purch? sia leggibile da computer; a titolo di esempio i supporti possono essere: dischi fissi, dischi rimovibili (e.g. CD-ROM, DVD o Blue Ray Disc), schede di memoria, chiavette USB, connessioni wireless, reti, onde di telecomunicazione; i supporti possono essere per esempio di tipo elettronico, magnetico, ottico, elettromagnetico, meccanico, a infrarossi o semiconduttori. In ogni caso la soluzione secondo la presente invenzione si presta a essere implementata per mezzo di software, di hardware (anche integrato in chip o materiali semiconduttori) oppure una combinazione di hardware e software. By way of example, the hardware structures can take on different appearances or include different modules; the term computer includes any device (e.g. telephones, PDAs) equipped with a capacity? processing for the execution of software programs or parts of them. Programs can be structured differently or implemented in any form. In the same way, memories can take on multiple embodiments or be replaced by different entities. equivalent (not necessarily made up of tangible supports). Programs can take any form suitable to perform their functions and can be written in any programming language or presented in the form of software, firmware or microcode, whether in object code or source code. The programs themselves can be stored on any type of support as long as they are is readable by computer; by way of example, the supports can be: hard disks, removable disks (e.g. CD-ROM, DVD or Blue Ray Disc), memory cards, USB sticks, wireless connections, networks, telecommunications waves; the supports can be for example of the electronic, magnetic, optical, electromagnetic, mechanical, infrared or semiconductor type. In any case, the solution according to the present invention lends itself to being implemented by means of software, hardware (also integrated in chips or semiconductor materials) or a combination of hardware and software.

Claims (10)

RIVENDICAZIONI 1. Metodo per certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, da parte di un server raggiungibile telematicamente da una pluralit? di utenti registrati, il server avente accesso ad almeno un registro privato e ad almeno una Blockchain, il metodo comprendente i passi di:1. Method for certifying digital documents and verifying the correspondence between a received document and a previously certified document, by a server reachable telematically from a plurality of of registered users, the server having access to at least one private registry and at least one Blockchain, the method including the steps of: - il server ricevere una richiesta di certificazione di almeno un documento digitale da parte di un utente registrato, la richiesta comprendente: l?almeno un documento digitale in un formato selezionato tra una pluralit? di formati predeterminati; una lista di uno o pi? nominativi a cui dovr? essere comunicata la certificazione, ogni nominativo essendo associato a un indirizzo telematico;- the server receive a request for certification of at least one digital document from a registered user, the request including: the at least one digital document in a format selected from a plurality? of predetermined formats; a list of one or more names to which it should? the certification be communicated, each name being associated with an electronic address; - calcolare da parte del server un codice univoco rappresentativo dell?almeno un documento digitale ricevuto;- calculate by the server a unique code representative of at least one digital document received; - il server accedere all?almeno un registro privato, per verificare se il codice univoco calcolato ? stato precedentemente registrato nell?almeno un registro privato;- the server access at least one private register, to check if the unique code calculated ? been previously registered in at least one private register; - a seguito dell?esito positivo della verifica, inviare da parte del server all?utente registrato che ha inviato la richiesta e a ognuno dei nominativi presenti nella lista allegata alla richiesta, una comunicazione in cui si attesta la corrispondenza dell?almeno un documento digitale a un documento precedentemente certificato;- following the positive outcome of the verification, the server sends to the registered user who sent the request and to each of the names on the list attached to the request, a communication certifying the correspondence of at least one digital document to a previously certified document; - a seguito dell?esito negativo, registrare da parte del server su una o pi? dell?almeno una Blockchain il codice univoco e aggiungere sull?almeno un registro privato un record contenente il codice univoco, gli estremi identificativi dell?una o pi? Blockchain e la data di registrazione sull?una o pi? Blockchain;- following the negative outcome, register by the server on one or more? of at least one Blockchain the unique code and add on at least one private register a record containing the unique code, the identification details of one or more Blockchain and the date of registration on one or more Blockchains; - il server inviare agli indirizzi associati ai nominativi della lista allegata alla richiesta una comunicazione telematica contente la conferma della certificazione e il documento certificato.- the server sends an electronic communication containing the certification confirmation and the certified document to the addresses associated with the names on the list attached to the request. 2. Metodo secondo la rivendicazione 1, in cui la richiesta di certificazione ? inviata per mezzo di una email.2. Method according to claim 1, wherein the certification request ? sent by email. 3. Metodo secondo la rivendicazione 2, in cui il documento da certificare ? l?email stessa.3. Method according to claim 2, wherein the document to be certified ? the email itself. 4. Metodo secondo la rivendicazione 2, in cui il documento da certificare ? costituito da un allegato all?email.4. Method according to claim 2, wherein the document to be certified ? consisting of an attachment to the email. 5. Metodo secondo una delle rivendicazioni comprendente il passo di:5. Method according to one of the claims comprising the step of: - iscrivere i nominativi della lista in un elenco di utenti registrati per futura consultazione da parte del server.- enter the names of the list in a list of registered users for future consultation by the server. 6. Metodo secondo una delle rivendicazioni precedenti, in cui il codice univoco ? ottenuto mediante una funzione hash. 6. Method according to one of the preceding claims, wherein the unique code ? obtained using a hash function. 7. Metodo secondo una delle rivendicazioni precedenti, in cui il passo di verificare se il codice univoco calcolato ? stato precedentemente registrato, comprende una verifica sull?una o pi? blockchain.7. Method according to one of the preceding claims, wherein the step of verifying whether the unique code calculated is ? been previously registered, includes a check on? one or more? blockchain. 8. Metodo secondo una delle rivendicazioni precedenti, in cui il record da registrare sull?almeno un registro privato contiene la lista dei nominativi allegata alla richiesta ricevuta.8. Method according to one of the preceding claims, wherein the record to be registered in the at least one private register contains the list of names attached to the request received. 9. Un programma per elaboratore per l?implementazione di un metodo per certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, secondo una delle rivendicazioni precedenti, quando il programma ? eseguito su un sistema di elaborazione dati.9. A computer program for implementing a method for certifying digital documents and verifying the correspondence between a received document and a previously certified document, according to one of the preceding claims, when the program ? performed on a data processing system. 10. Un sistema distribuito comprendente uno a pi? componenti atti a implementare un metodo per certificare documenti digitali e verificare la corrispondenza tra un documento ricevuto e un documento precedentemente certificato, secondo una delle rivendicazioni da 1 a 8. 10. A distributed system comprising one to more? components suitable for implementing a method for certifying digital documents and verifying the correspondence between a received document and a previously certified document, according to one of claims 1 to 8.
IT102021000017276A 2021-06-30 2021-06-30 Method and system for certifying the correspondence of a digital document to a previously received version IT202100017276A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
IT102021000017276A IT202100017276A1 (en) 2021-06-30 2021-06-30 Method and system for certifying the correspondence of a digital document to a previously received version

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT102021000017276A IT202100017276A1 (en) 2021-06-30 2021-06-30 Method and system for certifying the correspondence of a digital document to a previously received version

Publications (1)

Publication Number Publication Date
IT202100017276A1 true IT202100017276A1 (en) 2022-12-30

Family

ID=77910915

Family Applications (1)

Application Number Title Priority Date Filing Date
IT102021000017276A IT202100017276A1 (en) 2021-06-30 2021-06-30 Method and system for certifying the correspondence of a digital document to a previously received version

Country Status (1)

Country Link
IT (1) IT202100017276A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2471072A (en) * 2009-06-12 2010-12-22 Provenance Information Assurance Ltd Electronic document verification system
WO2018224724A1 (en) * 2017-06-09 2018-12-13 Nokia Technologies Oy Electronic documents certification
US20190044727A1 (en) * 2016-02-08 2019-02-07 Guy Scott A system and method for document information authenticity verification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2471072A (en) * 2009-06-12 2010-12-22 Provenance Information Assurance Ltd Electronic document verification system
US20190044727A1 (en) * 2016-02-08 2019-02-07 Guy Scott A system and method for document information authenticity verification
WO2018224724A1 (en) * 2017-06-09 2018-12-13 Nokia Technologies Oy Electronic documents certification

Similar Documents

Publication Publication Date Title
TWI778953B (en) A method and system for securing computer software using a distributed hash table and a blockchain
US11176226B2 (en) Secure messaging service with digital rights management using blockchain technology
JP6943356B2 (en) Blockchain-based document management method using UTXO-based protocol and document management server using this {METHOD FOR MANAGING DOCUMENT ON BASIS OF BLOCKCHAIN BY USING UTXO-BASED PROTOCOL, AND DOCUMENT MANAGEN
KR102051288B1 (en) Methods and systems for verifying the integrity of digital assets using distributed hash tables and peer-to-peer distributed ledgers
CN109727134B (en) Picture copyright trading method and device
JP2023065633A (en) Computer-implemented methods and systems for validating tokens for blockchain-based cryptocurrencies
JP2021519531A (en) Document access to the blockchain network
US10936552B2 (en) Performing bilateral negotiations on a blockchain
CN114651248A (en) Random node selection for licensed blockchains
US11526955B2 (en) Protocol-based system and method for establishing a multi-party contract
Harran et al. A method for verifying integrity & authenticating digital media
CN114128214A (en) Security layer for configuring block chains
CN112241919A (en) Multi-domain blockchain network with data flow control
CA3181478A1 (en) Method, apparatus, and computer-readable medium for confederated rights and hierarchical key management
CN112562812A (en) Medical record management method and device based on block chain technology
CN116583833A (en) Self-auditing blockchain
KR20150064822A (en) System for management of electronic documents
JP2023511886A (en) Conflict-free version control
CN111383109B (en) Picture copyright trading method and device
CN111797426A (en) Distrust notification service
IT202100017276A1 (en) Method and system for certifying the correspondence of a digital document to a previously received version
US20230179424A1 (en) Compressible blockchains
CN111191271B (en) Computer-implemented method, system and storage medium
Sahoo et al. Blockchain-Based Medical Report Management and Distribution System
CN117043772A (en) Block chain data separation