IT202100019976A1 - COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS - Google Patents

COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS Download PDF

Info

Publication number
IT202100019976A1
IT202100019976A1 IT102021000019976A IT202100019976A IT202100019976A1 IT 202100019976 A1 IT202100019976 A1 IT 202100019976A1 IT 102021000019976 A IT102021000019976 A IT 102021000019976A IT 202100019976 A IT202100019976 A IT 202100019976A IT 202100019976 A1 IT202100019976 A1 IT 202100019976A1
Authority
IT
Italy
Prior art keywords
output
image
transaction
library
hash
Prior art date
Application number
IT102021000019976A
Other languages
Italian (it)
Inventor
Michele Mastrogiovanni
Alessandro Ranaldi
Giuseppe Morlino
Original Assignee
Stonize Srl
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 Stonize Srl filed Critical Stonize Srl
Priority to IT102021000019976A priority Critical patent/IT202100019976A1/en
Publication of IT202100019976A1 publication Critical patent/IT202100019976A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Accounting & Taxation (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Security & Cryptography (AREA)
  • Primary Health Care (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Hardware Redundancy (AREA)
  • Circuits Of Receivers In General (AREA)

Description

Descrizione di Brevetto per Invenzione Industriale avente per titolo: ?METODO IMPLEMENTATO MEDIANTE COMPUTER PER LA CREAZIONE E L?UTILIZZO DI OUTPUT DIGITALI AFFIDABILI?. Description of Patent for Industrial Invention entitled: ?COMPUTER IMPLEMENTED METHOD FOR CREATING AND USING RELIABLE DIGITAL OUTPUTS?.

DESCRIZIONE DESCRIPTION

La presente invenzione si riferisce ad un metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili. The present invention relates to a computer-implemented method for creating and using reliable digital outputs.

In generale, con riferimento alla generazione e gestione di documenti digitali, ? sempre pi? sentita la necessit? di realizzare nuove tecnologie che consentano la creazione di output affidabili, ad esempio di un documento PDF che rappresenta un contratto, che siano il risultato di una computazione affidabile di un input, ad esempio i dati di un contratto. In general, with reference to the generation and management of digital documents, ? more and more felt the need? to implement new technologies that allow the creation of reliable outputs, for example a PDF document representing a contract, which are the result of a reliable computation of an input, for example the data of a contract.

A tal proposito, ? noto e diffuso l?impiego di Smart Contracts o contratti intelligenti, ovvero di contratti automatici basati su Blockchain. About that, ? The use of Smart Contracts or intelligent contracts, i.e. automatic contracts based on Blockchain, is known and widespread.

Gli Smart Contracts possono essere definiti genericamente come protocolli informatici che facilitano, verificano, o fanno rispettare, la negoziazione o l'esecuzione di un contratto. Solitamente gli Smart Contracts sono provvisti di un?interfaccia utente e sono in grado di simulare la logica delle clausole contrattuali. Smart Contracts can be broadly defined as computer protocols that facilitate, verify, or enforce the negotiation or performance of a contract. Smart Contracts usually have a user interface and are able to simulate the logic of contractual clauses.

Tuttavia, l?utilizzo di Smart Contracts presenta dei limiti non trascurabili. However, the use of Smart Contracts has non-negligible limitations.

Infatti, la struttura rigida e la quantit? di informazioni gestite non ne consentono un utilizzo flessibile, capace di adattarsi a differenti applicazioni. In fact, the rigid structure and the quantity? of information managed do not allow for a flexible use, capable of adapting to different applications.

Il compito principale della presente invenzione ? quello di ideare un metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili che consenta di verificare tutti i passaggi della computazione, oltre a quali sono le parti che hanno eseguito i calcoli ed eventualmente gli audit. The main task of the present invention ? to devise a computer-implemented method for creating and using reliable digital outputs that allows verifying all the steps of the computation, as well as which parties have performed the calculations and possibly the audits.

Altro scopo della presente invenzione ? quello di ideare un metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili che consenta di avere la certezza che da un determinato input si possa ottenere uno e un unico output, dando gli strumenti per replicare in modo robusto la computazione. Another purpose of the present invention? that of devising a computer-implemented method for the creation and use of reliable digital outputs which makes it possible to have the certainty that one and only one output can be obtained from a given input, giving the tools to robustly replicate the computation.

Ad esempio, con riferimento all?applicazione ad un contratto digitale, il metodo secondo l?invenzione deve garantire che, partendo da un template di contratto e dai relativi dati, il contratto finale risultante sia uno e uno solo, ovvero che non sia possibile produrre un output diverso. For example, with reference to the application to a digital contract, the method according to the invention must ensure that, starting from a contract template and the related data, the resulting final contract is one and only one, i.e. that it is not possible to produce a different output.

Pertanto, il metodo implementato mediante computer secondo l?invenzione consente di automatizzare la generare robusta di contratti avendo la certezza che non vi siano errori/manomissioni. Therefore, the method implemented by computer according to the invention allows to automate the robust generation of contracts having the certainty that there are no errors/tampering.

Gli scopi sopra esposti sono raggiunti dal presente metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili secondo la combinazione di caratteristiche descritte nella rivendicazione 1. Altre caratteristiche e vantaggi della presente invenzione risulteranno maggiormente evidenti dalla descrizione di una forma di esecuzione preferita, ma non esclusiva, di un metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili, illustrata a titolo indicativo, ma non limitativo, nelle unite tavole di disegni in cui: The above objects are achieved by the present computer-implemented method for creating and using reliable digital outputs according to the combination of features described in claim 1. Other features and advantages of the present invention will become more apparent from the description of a preferred embodiment , but not exclusive, of a method implemented by computer for the creation and use of reliable digital outputs, illustrated by way of example, but not limiting, in the attached tables of drawings in which:

la figura 1 ? uno schema generale del metodo implementato mediante computer secondo il trovato. figure 1 ? a general scheme of the method implemented by computer according to the invention.

Il metodo implementato mediante computer secondo l?invenzione realizza una Trusted Computing Pipeline, cio? un framework per offrire e utilizzare output affidabili (ad esempio un documento PDF che rappresenta un contratto) che sono il risultato di una computazione affidabile di un input (ad esempio i dati di un contratto). The method implemented by computer according to the invention realizes a Trusted Computing Pipeline, that is? a framework for offering and using reliable outputs (e.g. a PDF document representing a contract) that are the result of reliable computation of an input (e.g. contract data).

Ad esempio, output che sono garantiti per essere gli unici che possono essere prodotti applicando una determinata procedura agli input. For example, outputs that are guaranteed to be the only ones that can be produced by applying a certain procedure to the inputs.

La attendibilit? deriva dalla possibilit? di verificare tutti i passaggi della computazione (ovvero replicando la computazione, che pu? quindi essere considerata immutabile) e quali sono le parti che hanno eseguito i calcoli ed eventualmente gli audit. The reliability? comes from the possibility to verify all the steps of the computation (ie by replicating the computation, which can therefore be considered immutable) and which are the parts that have performed the calculations and possibly the audits.

Il metodo implementato mediante computer comprende una prima fase di pubblicazione di immagini container (container image) notarizzate su di una libreria di immagini notarizzate NIL (Notarised Image Library). The computer-implemented method comprises a first step of publishing notarized container images on a NIL (Notarized Image Library) notarized image library.

In particolare, con la dicitura ?immagine container? si intende un pacchetto software leggero, standalone ed eseguibile che include tutto il necessario per eseguire un'applicazione: codice, runtime, tools di sistema, librerie di sistema e impostazioni. In particular, with the wording ?container image? means a lightweight, standalone, executable software package that includes everything needed to run an application: code, runtime, system tools, system libraries, and settings.

La prima fase di pubblicazione ? eseguita da un publisher P, che ? un soggetto che notarizza le immagini e le rende disponibili tramite una libreria di immagini notarizzate NIL. The first phase of publication ? performed by a publisher P, which ? a person who notarizes images and makes them available via a NIL notarized image library.

In particolare, per ?notarizzazione? si intende il processo di calcolo dell?hash di un asset e di scrittura dell?hash ottenuto su di una blockchain ottenendo un Transaction Address (TA), dove: un asset ? un qualsiasi file (ad esempio un documento PDF o un documento xml contenente dati); per hash si intende il valore restituito da una funzione hash; per Transaction Address (TA) si intende un indirizzo di una transazione blockchain. In particular, for ?notarization? means the process of calculating the hash of an asset and writing the hash obtained on a blockchain obtaining a Transaction Address (TA), where: an asset ? any file (for example a PDF document or an xml document containing data); by hash we mean the value returned by a hash function; for Transaction Address (TA) we mean an address of a blockchain transaction.

Nello specifico, tale fase di pubblicazione comprende almeno i seguenti passi: Specifically, this publication phase includes at least the following steps:

- un passo 1 di push di un?immagine container su di un registro immagini IR (Image Registry); - a step 1 of pushing a container image to an IR image registry (Image Registry);

- un passo 2 di ottenimento di un URL di tale immagine container; - un passo 3 di notarizzazione dell?immagine container e del relativo URL mediante transazione su una blockchain B; - a step 2 of obtaining a URL of that container image; - a step 3 of notarization of the container image and its URL by transaction on a blockchain B;

- un passo 4 di ottenimento del Transaction Address TA relativo alla transazione sulla blockchain B. - a step 4 of obtaining the Transaction Address TA relating to the transaction on blockchain B.

Infine, tale fase di pubblicazione comprende un passo 5 di pubblicazione dell?URL e del Transaction Address sulla libreria di immagini notarizzate NIL (Notarised Image Library). Finally, this publication step comprises a step 5 of publication of the URL and of the Transaction Address on the NIL (Notarised Image Library) notarized image library.

Il metodo implementato mediante computer comprende, inoltre, una seconda fase di audit sulle immagini notarizzate, comprendente la riacquisizione delle immagini e il rendere disponibili tali immagini attraverso una libreria di immagini verificate ANIL (Audited Notarised Image Library). The computer-implemented method also includes a second step of auditing the notarized images, including reacquiring the images and making those images available through an Audited Notarised Image Library (ANIL).

La fase di audit ? eseguita da un image auditor IA. The audit phase? performed by an AI image auditor.

Nello specifico, tale fase di audit comprende almeno i seguenti passi: Specifically, this audit phase includes at least the following steps:

- un passo 6 di recupero di un URL e di un Transaction Address TA di un?immagine dalla libreria di immagini notarizzate NIL; - a step 6 of retrieving a URL and a Transaction Address TA of an image from the library of NIL notarized images;

- un passo 7 di recupero dell?immagine dal registro immagini IR e di computazione dell?hash dell?immagine e del relativo URL; - a 7 step of retrieving the image from the IR image registry and calculating the hash of the image and its URL;

- un passo 8 di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address TA. - a step 8 for verifying the correspondence between the calculated hash and the hash present in the Transaction Address TA.

Se l?hash corrisponde, la fase di audit comprende un passo 9 di esecuzione di un processo di audit per verificare se l?immagine container fa esattamente (ed esclusivamente) quello che la relativa descrizione dice. Il metodo continua solamente se il passo 9 di audit ? eseguito con successo. Successivamente, la fase di audit comprende: If the hash matches, the audit step includes a step 9 of running an audit process to check if the container image does exactly (and exclusively) what its description says. Does the method continue only if audit step 9 ? performed successfully. Subsequently, the audit phase includes:

- un passo 10 di notarizzazione dell?immagine container e del relativo URL mediante transazione sulla blockchain B; - a step 10 of notarization of the container image and the relative URL by means of a transaction on blockchain B;

- un passo 11 di ottenimento del Transaction Address TA relativo alla transazione sulla blockchain B. - a step 11 of obtaining the Transaction Address TA relating to the transaction on blockchain B.

Infine, la fase di audit comprende un passo 12 di pubblicazione dell?URL e del Transaction Address TA dell?immagine sulla libreria di immagini verificate ANIL (Audited Notarised Image Library). Finally, the audit phase includes a step 12 of publishing the URL and the Transaction Address TA of the image on the verified image library ANIL (Audited Notarised Image Library).

Il metodo implementato mediante computer comprende, inoltre, una fase di esecuzione delle immagini verificate, comprendente l?esecuzione di immagini verificate con un determinato input, l?autenticazione dell'output ottenuto e la pubblicazione dell?output ottenuto e controllato in una libreria di computazione attendibile TCL (Trusted Computation Library). The computer-implemented method also comprises a step of executing verified images, comprising executing verified images with a given input, authenticating the obtained output, and publishing the obtained and controlled output in a computational library trusted TCL (Trusted Computation Library).

Tale fase di esecuzione delle immagini verificate ? effettuata da un soggetto esecutore E. Such run-time images verified ? carried out by an executor E.

In particolare, la fase di esecuzione delle immagini verificate comprende almeno i seguenti passi: In particular, the execution phase of the verified images includes at least the following steps:

- un passo 13 di recupero di un URL e di un Transaction Address TA di un?immagine dalla libreria di immagini verificate ANIL (Audited Notarised Image Library); - a step 13 of retrieving a URL and a Transaction Address TA of an image from the library of verified images ANIL (Audited Notarised Image Library);

- un passo 14 di recupero dell?immagine dal registro immagini IR e di computazione dell?hash dell?immagine e del relativo URL; - a 14 step of retrieving the image from the IR image registry and calculating the hash of the image and its URL;

- un passo 15 di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address TA. - a step 15 for verifying the correspondence between the calculated hash and the hash present in the Transaction Address TA.

Se l?hash corrisponde, la fase di esecuzione delle immagini verificate comprende inoltre i seguenti passi: If the hash matches, the verified images run phase also includes the following steps:

- un passo 16 di ricezione di dati di input; - a step 16 of receiving input data;

- un passo 17 di esecuzione dell?immagine sui dati di input per l?ottenimento di un output; - a step 17 of executing the image on the input data to obtain an output;

- un passo 18 di notarizzazione dell?output ottenuto mediante transazione su una blockchain B; - a notarization step 18 of the output obtained by transaction on a blockchain B;

- un passo 19 di ottenimento del Transaction Address TA relativo alla transazione sulla blockchain B. - a step 19 of obtaining the Transaction Address TA relating to the transaction on blockchain B.

Infine, la fase di esecuzione delle immagini verificate comprende un passo 20 di pubblicazione dell?URL dell?input, dell?immagine e dell?output e della relativa Transaction Address TA sulla libreria di computazione attendibile TCL (Trusted Computation Library). Finally, the execution phase of the verified images comprises a step 20 of publishing the URL of the input, of the image and of the output and of the relative Transaction Address TA on the trusted computation library TCL (Trusted Computation Library).

Il metodo implementato mediante computer secondo l?invenzione comprende, inoltre, una fase di autenticazione degli output, comprendente l?esecuzione dell'audit di computazioni attendibili, autenticazione degli output ottenuti e la pubblicazione degli output attendibili tramite una libreria di output attendibile TOL (Trusted Output Library). The computer-implemented method according to the invention further comprises an output authentication step, comprising performing the audit of trusted computations, authenticating the obtained outputs, and publishing the trusted outputs via a trusted output library TOL (Trusted Output Library).

Tale fase ? eseguita da un computation auditor CA. This phase? performed by a CA computation auditor.

In particolare, la fase di autenticazione degli output comprende almeno i seguenti passi: In particular, the output authentication phase includes at least the following steps:

- un passo 21 di recupero di una computazione dalla libreria di computazione attendibile TCL (Trusted Computation Library); - a step 21 of retrieving a computation from the trusted computation library TCL (Trusted Computation Library);

- un passo 22 di ricezione di dati di input; - an input data reception step 22;

- un passo 23 di recupero dell?immagine dal registro immagini IR; - un passo 24 di recupero dell?output; - a step 23 of retrieving the image from the IR image log; - an output recovery step 24;

- un passo 25 di esecuzione dell?immagine sui dati di input per l?ottenimento di un output e di computazione dell?hash dell?output ottenuto; - a step 25 of executing the image on the input data to obtain an output and computing the hash of the obtained output;

- un passo 26 di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address TA; - a step 26 for verifying the correspondence between the calculated hash and the hash present in the Transaction Address TA;

Se l?hash corrisponde, la fase di autenticazione degli output comprende inoltre i seguenti passi: If the hash matches, the output authentication step also includes the following steps:

- un passo 27 di notarizzazione dell?output ottenuto mediante transazione su una blockchain B; - a notarization step 27 of the output obtained by transaction on a blockchain B;

- un passo 28 di ottenimento del Transaction Address TA relativo alla transazione sulla blockchain B. - a step 28 of obtaining the Transaction Address TA relating to the transaction on blockchain B.

Infine, la fase di autenticazione degli output comprende un passo 29 di pubblicazione dell?URL e del Transaction Address TA dell?output sulla libreria di output attendibile TOL (Trusted Output Library). Finally, the authentication phase of the outputs comprises a step 29 of publication of the URL and of the Transaction Address TA of the output on the trusted output library TOL (Trusted Output Library).

Infine, il metodo implementato mediante computer secondo l?invenzione comprende una fase di utilizzo dell?output. Finally, the method implemented by computer according to the invention comprises a phase of using the output.

Nello specifico, il consumatore finale C ? in grado di utilizzare l'output contenuto nella libreria di output attendibile TOL (Trusted Output Library). In particolare, tale fase di utilizzo dell?output comprende almeno i seguenti passi: Specifically, the final consumer C ? able to use the output contained in the Trusted Output Library (TOL). In particular, this phase of using the output includes at least the following steps:

- un passo 30 di recupero di una URL e del Transaction Address TA dalla libreria di output attendibile TOL (Trusted Output Library); - un passo 31 di recupero di un output e di computazione dell?hash dell?output recuperato; - a step 30 of recovery of a URL and of the Transaction Address TA from the trusted output library TOL (Trusted Output Library); - a step 31 of recovering an output and computing the hash of the recovered output;

- un passo 32 di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address TA; - a step 32 for verifying the correspondence between the calculated hash and the hash present in the Transaction Address TA;

- infine, un passo 33 di utilizzo dell?output. - finally, a step 33 of using the output.

A titolo esemplificativo, ? riportata di seguito un possibile caso d?uso concreto del metodo implementato mediante computer secondo l?invenzione. As an example, ? reported below is a possible concrete use case of the method implemented by computer according to the invention.

Si precisa che tale caso d?uso ? introdotto con il fine di meglio chiarire i passi e gli attori coinvolti nell?utilizzo del metodo secondo l?invenzione. It is specified that this case of? use ? introduced with the aim of better clarifying the steps and the actors involved in using the method according to the invention.

Non si escludono, tuttavia, differenti applicazioni volte a consentire la creazione di output affidabili di un documento che siano il risultato di una computazione affidabile di un input. However, different applications aimed at allowing the creation of reliable outputs of a document that are the result of a reliable computation of an input are not excluded.

Con riferimento a tale possibile caso d?uso concreto sono coinvolti i seguenti attori: With reference to this possible concrete use case, the following actors are involved:

- un operatore telefonico che propone a suoi potenziali clienti, interessati a ottenere i suoi servizi, un contratto corposo (ad esempio di 130 pagine); - a telephone operator who proposes to his potential customers, interested in obtaining his services, a full-bodied contract (for example, 130 pages);

- una societ? a difesa dei consumatori (e il suo studio legale) che si ? preoccupata di fare un audit del contratto per verificare eventuali frodi o difformit? rispetto a quanto comunicato nella campagna pubblicitaria e ha riassunto in una comoda scheda sintetica i servizi offerti dall?operatore telefonico; - a company? in defense of consumers (and his law firm) that yes? Worried about doing an audit of the contract to check for any fraud or discrepancies? compared to what was communicated in the advertising campaign and summarized the services offered by the telephone operator in a handy summary sheet;

- un cliente che desidera valutare il passaggio all?operatore telefonico sulla base della sola scheda sintetica prodotta dalla societ? a difesa dei consumatori e, in caso accetti le condizioni riassunte, desidera che il contratto perfezionato con i suoi dati personali sia proprio quello di cui la societ? a difesa dei consumatori ha fatto l?audit. - a customer who wishes to evaluate the switch to the telephone operator on the basis of the single summary sheet produced by the company? in defense of consumers and, if you accept the conditions summarized, do you want the contract concluded with your personal data to be exactly the one for which the company? in defense of consumers did the audit.

In questo scenario l?operatore telefonico opera come publisher P. In this scenario, the telephone operator acts as a P publisher.

L?operatore telefonico crea un software che contiene al suo interno il modello del contratto, prende in input i dati personali del cliente e produce in output il contratto finale da sottoscrivere. The telephone operator creates software that contains the contract model, takes the customer's personal data as input and produces the final contract to be signed as an output.

L?operatore telefonico effettua quindi i passi 1, 2, 3, 4 sopra descritti per l?ottenimento del Transaction Address dell?URL dell?immagine container il cui hash ? stato notarizzato sulla blockchain. The telephone operator then performs steps 1, 2, 3, 4 described above to obtain the Transaction Address of the URL of the container image whose hash ? been notarized on the blockchain.

La societ? a difesa dei consumatori, una volta ottenuto l?URL dell?immagine container (eventualmente il sorgente del software stesso), e il Transaction Address, verifica che la copia del software in suo possesso sia quella pubblicata (passi 6, 7, 8) ed esegue un audit software e legale, verificando che il software produca in effetti un contratto aggiungendo gli input al modello di contratto senza modificarlo, e che il contratto non contenga truffe/difformit? (passo 9). The company in defense of consumers, once you have obtained the URL of the container image (possibly the source of the software itself), and the Transaction Address, verify that the copy of the software in your possession is the published one (steps 6, 7, 8) and performs a software and legal audit, verifying that the software does in fact produce a contract by adding the inputs to the contract template without changing it, and that the contract does not contain cheating/non-conformances? (step 9).

Pertanto, con riferimento al presente scenario la societ? a difesa dei consumatori opera come image auditor IA Therefore, with reference to the present scenario, the company? in defense of consumers he works as an AI image auditor

Al termine del processo di audit, la societ? a difesa dei consumatori si occupa di notarizzare lo stesso URL dell?immagine container prodotta dall?operatore telefonico e di ottenere il suo Transaction Address (passi 10, 11), che pubblicher? infine nella libreria di immagini verificate (passo 12). Il cliente, che in quanto socio della societ? a difesa dei consumatori si fida del suo operato, convinto dallo schema sintetico proposto per il contratto dell?operatore telefonico, decide di sottoscrivere il contratto. At the end of the audit process, the company? in defense of consumers, it takes care of notarizing the same URL of the container image produced by the telephone operator and obtaining its Transaction Address (steps 10, 11), which it will publish? finally in the verified images library (step 12). The customer, who as a member of the company? in defense of consumers he trusts his work, convinced by the summary scheme proposed for the telephone operator's contract, he decides to sign the contract.

Il cliente invia i dati all?operatore telefonico e riceve un contratto prodotto dall?operatore telefonico stesso utilizzando l?immagine container a cui sono stati dati in input i dati forniti dal cliente. The customer sends the data to the telephone operator and receives a contract produced by the telephone operator using the container image to which the data provided by the customer has been given as input.

Il cliente, prima di apporre la firma sul contratto, senza la necessit? di leggere tutto il contratto (di 130 pagine), pu? verificare che non contenga sorprese: ottenendo dalla Transaction Address della libreria di immagini verificate l?immagine container, replicando la procedura di creazione del contratto a partire dei suoi stessi dati e verificando che l?hash del contratto che ha prodotto corrisponda all?hash del contratto fornito dall?operatore telefonico (passi 13, 14, 15, 16, 17). The customer, before signing the contract, without the need? to read the whole contract (of 130 pages), pu? verify that it does not contain any surprises: by obtaining the Transaction Address of the image library, verify the container image, replicating the contract creation procedure starting from its own data and verifying that the hash of the contract it produced corresponds to the hash of the contract provided by the telephone operator (steps 13, 14, 15, 16, 17).

In caso affermativo il cliente procede con la firma digitale del contratto, con la certezza che tale contratto non contiene sorprese e che non differisce da quello che ? stato oggetto di audit da parte della societ? a tutela dei consumatori. If so, the customer proceeds with the digital signature of the contract, with the certainty that this contract contains no surprises and that it does not differ from the one that been audited by the company? to protect consumers.

Si ? in pratica constatato come il trovato descritto raggiunga gli scopi proposti. Yes ? in practice it has been observed that the described invention achieves the intended aim and objects.

In particolare, il metodo implementato mediante computer secondo l?invenzione consente di verificare tutti i passaggi della computazione, oltre a quali sono le parti che hanno eseguito i calcoli ed eventualmente gli audit. Il particolare, il metodo secondo l?invenzione consente di avere la certezza che da un determinato input si possa ottenere uno e un unico output, dando gli strumenti per replicare in modo robusto la computazione. In particular, the method implemented by computer according to the invention makes it possible to verify all the steps of the computation, as well as which parts have performed the calculations and possibly the audits. The particular, the method according to the invention allows to have the certainty that from a given input one and only one output can be obtained, giving the tools to robustly replicate the computation.

Claims (6)

RIVENDICAZIONI 1) Metodo implementato mediante computer per la creazione e l?utilizzo di output digitali affidabili caratterizzato dal fatto che comprende:1) Computer-implemented method of creating and using reliable digital outputs characterized by the fact that it includes: - una fase (1, 2, 3, 4, 5) di pubblicazione di immagini container notarizzate in di una libreria di immagini notarizzate (NIL);- a step (1, 2, 3, 4, 5) of publishing notarized container images in a notarized image library (NIL); - una fase (6, 7, 8, 9, 10, 11, 12) di audit su dette immagini notarizzate, comprendente la riacquisizione di dette immagini notarizzate e la pubblicazione di dette immagini verificate in una libreria di immagini verificate (ANIL);- a phase (6, 7, 8, 9, 10, 11, 12) of auditing said notarized images, comprising the reacquisition of said notarized images and the publication of said verified images in a library of verified images (ANIL); - una fase (13, 14, 15, 16, 17, 18, 19, 20) di esecuzione di dette immagini verificate, comprendente l?esecuzione di immagini verificate con un determinato input, l?autenticazione dell'output ottenuto e la pubblicazione di detto output ottenuto e verificato in una libreria di computazione attendibile (TCL);- a phase (13, 14, 15, 16, 17, 18, 19, 20) of execution of said verified images, comprising the execution of verified images with a specific input, the authentication of the obtained output and the publication of said output obtained and verified in a trusted computation library (TCL); - una fase (21, 22, 23, 24, 25, 26, 27, 28, 29) di autenticazione degli output, comprendente l?esecuzione dell'audit di computazioni attendibili, l?autenticazione degli output ottenuti e la pubblicazione degli output attendibili tramite una libreria di output attendibile (TOL);- a phase (21, 22, 23, 24, 25, 26, 27, 28, 29) of authentication of the outputs, including the execution of the audit of trusted computations, the authentication of the obtained outputs and the publication of the trusted outputs via a trusted output library (TOL); - una fase (30, 31, 32, 33) di utilizzo dell?output contenuto in detta libreria di output attendibile (TOL) da parte di un consumatore finale (C).- a phase (30, 31, 32, 33) of use of the output contained in said reliable output library (TOL) by a final consumer (C). 2) Metodo implementato mediante computer secondo la rivendicazione 1, caratterizzato dal fatto che detta fase (1, 2, 3, 4, 5) di pubblicazione di immagini container notarizzate comprende almeno i seguenti passi:2) Method implemented by computer according to claim 1, characterized in that said phase (1, 2, 3, 4, 5) of publication of notarized container images comprises at least the following steps: - un passo (1) di push di un?immagini container su di un registro immagini (IR);- a step (1) of pushing a container image to an image register (IR); - un passo (2) di ottenimento di un URL di detta immagine container; - un passo (3) di notarizzazione dell?immagine container e del relativo URL mediante una transazione su una blockchain (B);- a step (2) of obtaining a URL of said container image; - a step (3) of notarization of the container image and its URL through a transaction on a blockchain (B); - un passo (4) di ottenimento del Transaction Address TA relativo alla transazione su detta blockchain (B);- a step (4) of obtaining the Transaction Address TA relating to the transaction on said blockchain (B); - un passo (5) di pubblicazione di detto URL e di detto Transaction Address su detta libreria di immagini notarizzate (NIL).- a step (5) of publishing said URL and said Transaction Address on said library of notarized images (NIL). 3) Metodo implementato mediante computer secondo una o pi? delle rivendicazioni precedenti, caratterizzato dal fatto che detta fase (6, 7, 8, 9, 10, 11, 12) di audit sulle immagini notarizzate comprende almeno i seguenti passi:3) Method implemented by computer according to one or more? of the preceding claims, characterized in that said audit phase (6, 7, 8, 9, 10, 11, 12) on the notarized images comprises at least the following steps: - un passo (6) di recupero di un URL e di un Transaction Address di un?immagine detta libreria di immagini notarizzate (NIL);- a step (6) of retrieving a URL and a Transaction Address of an image called library of notarized images (NIL); - un passo (7) di recupero di detta immagine container dal registro immagini (IR) e di computazione dell?hash dell?immagine e del relativo URL;- a step (7) of retrieving said container image from the image register (IR) and of calculating the hash of the image and of the related URL; - un passo (8) di verifica della corrispondenza tra detto hash calcolato e l?hash presente nel Transaction Address;- a step (8) for verifying the correspondence between said calculated hash and the hash present in the Transaction Address; - se l?hash corrisponde, un passo (9) di esecuzione di un processo di audit per verificare se detta immagine container fa esattamente (ed esclusivamente) quello che la relativa descrizione dice; - if the hash matches, a step (9) of running an audit process to verify if said container image does exactly (and exclusively) what its description says; - se detto passo (9) di audit ? eseguito con successo, un passo (10) di notarizzazione dell?immagine container e del relativo URL mediante transazione su detta blockchain (B);- if said audit step (9) ? successfully performed, a step (10) of notarization of the container image and of the relative URL by means of a transaction on said blockchain (B); - un passo (11) di ottenimento del Transaction Address relativo a detta transazione sulla blockchain B;- a step (11) for obtaining the Transaction Address relating to said transaction on blockchain B; - un passo (12) di pubblicazione dell?URL e del Transaction Address dell?immagine su detta libreria di immagini verificate (ANIL).- a step (12) of publishing the URL and the Transaction Address of the image on said library of verified images (ANIL). 4) Metodo implementato mediante computer secondo una o pi? delle rivendicazioni precedenti, caratterizzato dal fatto che detta fase (13, 14, 15, 16, 17, 18, 19, 20) di esecuzione delle immagini verificate comprende almeno i seguenti passi:4) Method implemented by computer according to one or more? of the preceding claims, characterized in that said phase (13, 14, 15, 16, 17, 18, 19, 20) of execution of the verified images comprises at least the following steps: - un passo (13) di recupero di un URL e di un Transaction Address di un?immagine verificata dalla libreria di immagini verificate (ANIL); - un passo (14) di recupero di detta immagine container dal registro immagini (IR) e di computazione dell?hash dell?immagine container e del relativo URL;- a step (13) of retrieving a URL and a Transaction Address of an image verified by the library of verified images (ANIL); - a step (14) of retrieving said container image from the image register (IR) and of calculating the hash of the container image and of the relative URL; - un passo (15) di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address;- a step (15) for verifying the correspondence between the calculated hash and the hash present in the Transaction Address; - se l?hash corrisponde, un passo (16) di ricezione di dati di input;- if the hash matches, a step (16) of receiving input data; - un passo (17) di esecuzione dell?immagine sui dati di input per l?ottenimento di un output;- a step (17) of executing the image on the input data to obtain an output; - un passo (18) di notarizzazione dell?output ottenuto mediante transazione su detta blockchain (B);- a notarization step (18) of the output obtained by transaction on said blockchain (B); - un passo (19) di ottenimento del Transaction Address relativo a detta transazione sulla blockchain (B);- a step (19) for obtaining the Transaction Address relating to said transaction on the blockchain (B); - un passo (20) di pubblicazione dell?URL dell?input, dell?immagine e dell?output e della relativa Transaction Address su detta libreria di computazione attendibile (TCL).- a step (20) of publishing the URL of the input, of the image and of the output and of the relative Transaction Address on said trusted computation library (TCL). 5) Metodo implementato mediante computer secondo una o pi? delle rivendicazioni precedenti, caratterizzato dal fatto che detta fase (21, 22, 23, 24, 25, 26, 27, 28, 29) di autenticazione degli output comprende almeno i seguenti passi:5) Method implemented by computer according to one or more? of the preceding claims, characterized in that said output authentication step (21, 22, 23, 24, 25, 26, 27, 28, 29) comprises at least the following steps: - un passo (21) di recupero di una computazione dalla libreria di computazione attendibile (TCL);- a step (21) of retrieving a computation from the trusted computation library (TCL); - un passo (22) di ricezione di dati di input;- a step (22) of receiving input data; - un passo (23) di recupero di detta immagine container da detto registro immagini (IR);- a step (23) of retrieving said container image from said image register (IR); - un passo (24) di recupero dell?output;- an output recovery step (24); - un passo (25) di esecuzione dell?immagine container sui dati di input per l?ottenimento di un output e di computazione dell?hash dell?output ottenuto;- a step (25) of execution of the container image on the input data to obtain an output and computation of the hash of the obtained output; - un passo (26) di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address;- a step (26) for verifying the correspondence between the calculated hash and the hash present in the Transaction Address; - se l?hash corrisponde, un passo (27) di notarizzazione dell?output ottenuto mediante transazione su detta blockchain (B);- if the hash matches, a notarization step (27) of the output obtained by transaction on said blockchain (B); - un passo (28) di ottenimento del Transaction Address relativo a detta transazione sulla blockchain (B);- a step (28) for obtaining the Transaction Address relating to said transaction on the blockchain (B); - un passo (29) di pubblicazione dell?URL e del Transaction Address TA dell?output su detta libreria di output attendibile (TOL).- a step (29) of publishing the URL and the Transaction Address TA of the output on said trusted output library (TOL). 6) Metodo implementato mediante computer secondo una o pi? delle rivendicazioni precedenti, caratterizzato dal fatto che detta fase (30, 31, 32, 33) di utilizzo dell?output comprende almeno i seguenti passi:6) Method implemented by computer according to one or more? of the preceding claims, characterized in that said phase (30, 31, 32, 33) of using the output comprises at least the following steps: - un passo (30) di recupero di una URL e del Transaction Address da detta libreria di output attendibile (TOL);- a step (30) of recovery of a URL and of the Transaction Address from said trusted output library (TOL); - un passo (31) di recupero di un output e di computazione dell?hash dell?output recuperato;- a step (31) of recovering an output and computing the hash of the recovered output; - un passo (32) di verifica della corrispondenza tra l?hash calcolato e l?hash presente nel Transaction Address;- a step (32) for verifying the correspondence between the calculated hash and the hash present in the Transaction Address; - un passo (33) di utilizzo dell?output. - a step (33) of using the output.
IT102021000019976A 2021-07-27 2021-07-27 COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS IT202100019976A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
IT102021000019976A IT202100019976A1 (en) 2021-07-27 2021-07-27 COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT102021000019976A IT202100019976A1 (en) 2021-07-27 2021-07-27 COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS

Publications (1)

Publication Number Publication Date
IT202100019976A1 true IT202100019976A1 (en) 2023-01-27

Family

ID=78649554

Family Applications (1)

Application Number Title Priority Date Filing Date
IT102021000019976A IT202100019976A1 (en) 2021-07-27 2021-07-27 COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS

Country Status (1)

Country Link
IT (1) IT202100019976A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170300872A1 (en) * 2016-04-18 2017-10-19 R3 Ltd. System and method for managing transactions in dynamic digital documents
US20190305957A1 (en) * 2018-04-02 2019-10-03 Ca, Inc. Execution smart contracts configured to establish trustworthiness of code before execution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170300872A1 (en) * 2016-04-18 2017-10-19 R3 Ltd. System and method for managing transactions in dynamic digital documents
US20190305957A1 (en) * 2018-04-02 2019-10-03 Ca, Inc. Execution smart contracts configured to establish trustworthiness of code before execution

Similar Documents

Publication Publication Date Title
US20230410215A1 (en) Cryptographic method and system for secure extraction of data from a blockchain
EP3676778B1 (en) Constraints on inputs of an unlocking transaction in a blockchain
KR102502247B1 (en) Safe and Traceable Manufacturing Parts
KR20200079503A (en) System for protecting validation keys from change and validating proof of accuracy
CN108764911B (en) Transaction method and system for internet points
CN109447636A (en) A kind of assets transfer method and device
Sakız et al. Blockchain technology and its impact on the global economy
Hardjono et al. Empowering artists, songwriters & musicians in a data cooperative through blockchains and smart contracts
Nousias et al. A process-aware approach for blockchain-based verification of academic qualifications
CN109472680A (en) A kind of accounting processing method and system
IT202100019976A1 (en) COMPUTER IMPLEMENTED METHOD OF CREATING AND USING RELIABLE DIGITAL OUTPUTS
Pelaitis et al. Developing a universal, decentralized and immutable Erasmus credit transfer system on blockchain
JP6547342B2 (en) Distributed processing controller
JP6067596B2 (en) Pairing arithmetic device, multi-pairing arithmetic device, program
Demirel et al. Developing smart contracts for financial payments as innovation
WO2020145964A1 (en) Secure transactions
CN116452158B (en) Method, device, equipment and medium for managing index of random extraction of suppliers
Liu et al. T ransforming A utomatically B PMN Models to S mart Contracts with Nested Trade Transactions (TABS+)
US20230222458A1 (en) Computation of an amount of crypto currency tokens for use in creation and/or annulment procedure
CN111242603B (en) Riding settlement method and device based on blockchain
Mohapatra et al. A Smart Contract-Based Framework for Value Addition in Retail Market
Steinkopf Analysis and Implementation of Verifiable Computation Techniques for Energy Blockchain Applications
Aguilar et al. Multi-grained performance estimation for MPSoC compilers: work-in-progress
Sharma et al. A Blockchain Approach for Securing Certification Management System
Yigit et al. Improving Supply Chain Management Processes Using Smart Contracts in the Ethereum Network Written in Solidity