WO2019233951A1 - Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié - Google Patents

Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié Download PDF

Info

Publication number
WO2019233951A1
WO2019233951A1 PCT/EP2019/064352 EP2019064352W WO2019233951A1 WO 2019233951 A1 WO2019233951 A1 WO 2019233951A1 EP 2019064352 W EP2019064352 W EP 2019064352W WO 2019233951 A1 WO2019233951 A1 WO 2019233951A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
digital content
creator
content
software application
Prior art date
Application number
PCT/EP2019/064352
Other languages
English (en)
Inventor
Nicolas KOZAKIEWICZ
Original Assignee
Worldline
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 Worldline filed Critical Worldline
Priority to EP19730283.9A priority Critical patent/EP3803670A1/fr
Publication of WO2019233951A1 publication Critical patent/WO2019233951A1/fr

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Definitions

  • a software application and a computer server for authenticating the identity of a digital content creator and the integrity of the published creator's content are provided.
  • the present invention relates to the field of digital content management in a computer network, more generally to security measures for protecting information or exchanges of information on the computer network, for example by authenticating the integrity of the published digital contents. and / or by detecting falsifications made in the digital contents published on websites and / or any other method of digital or physical distribution.
  • the present invention relates to a user software application interfacing with a computer server for recording digital content created by a creator and authenticating only the digital content published in a computer network by a third party user.
  • the present invention also relates to a system for verifying and authenticating digital content published in a computer network conforming to the digital content initially created, in real time and secure, implementing the user software application using the computer server, to verify the authenticity of published digital content and / or to detect possible falsification of the digital content originally created and published by its creator on computer networks.
  • a problem in the digital world concerns the reliability and veracity of information (or digital content or content or transaction) published on websites (or computer networks or online). Indeed, it is very easy to copy a given digital content (such as text, image, video, application, etc.), since it is only a succession of numbers (usually “zero” and of "one") which is duplicable to the identical and to infinity.
  • a given digital content can also be easily modified, either to irreversibly damage the content by making the copy more difficult to repair, or to change the content itself to modify the original message or the author's idea ( or creator).
  • These malicious acts are likely to easily infringe the copyrights of the person's original work or denigrate and damage the reputation or work of a person, an administration or a business.
  • the method consists in producing a first hash value associated with a first information corresponding to the current file names or contents among the plurality of files, and then detecting the falsification by comparing the first hash value with a second hash value of a second piece of information corresponding to the file names or contents at the time of recording and saved in a magnetic disc player with an image marker.
  • a report is provided to the administrator system and a modified message or image marker is displayed on the site to inform users of the tampering of the contents.
  • this detection system does not reliably certify digital content with a single hashed to encrypt the content, or authenticate a file content creator.
  • this system can not be adapted or set up to detect false contents in a distributed and decentralized system, such as for example from blockchain technology ("Blockchain” or “Ledger Distributed Technology”). ), or to trace the changes made to the contents.
  • This system applies a modulo function on the cryptographic hash values and calculates the remaining sequences. Recurring zero remainder values define meta-block boundaries and meta-blocks of hash values aligned between the original video and the edited video. A hash hash is calculated on the meta-blocks to produce so-called self-aligned meta-hashes for the original video and the edited video. Self-aligned meta-hashes are comparable and can be matched to determine if the edited video is an excerpt from the original video. Finally, self-aligned meta-hashes are stored and validated on a blockchain network via smart contracts to provide enduring assurance that the data has not been tampered with, in addition to providing traceability and capabilities. transparent audit. However, this system is limited to the detection of edited audio and video format content.
  • this system uses a public blockchain technology that allows anyone to access and modify digital content, without providing any guarantee as to the reliability of the modified content or its traceability.
  • This system comprises: an accredited certificate authentication request server based on a blockchain which, in response to the request for authentication of a user terminal, transmits personal information, for issuing an accredited certificate ; an accredited certificate management server that makes a command to authenticate the user by determining, on the basis of the personal information for issuing an accredited certificate, the validity of an accredited certificate of the user by transmitting a public key for the trusted certificate of the user to the trusted certificate authentication request server.
  • the system includes a hash processing command for the personal information of the certificate and to process as user identification information; and also a certificate management server hash string for information from Node certificate hash.
  • this hash chain of the certificate management server issues an information forgery notification related to the public key certificate in a tamper verification request terminal consisting of a particular user.
  • this system is used especially for public key certification in the context of "Bitcoin" type financial transactions.
  • this system does not provide an authorized and validly registered identification of the user while ensuring the integrity of its digital content recorded by the user reliably.
  • the system is comprised of an intelligent user device that allows the user to identify themselves before acquiring digital content to apply a hash function and a blockchain network to verify and authenticate the digital content.
  • the user of the system makes a connection via a software application of his intelligent user device, he receives an approval of the logon and he then undertakes to acquire digital data from any source.
  • the user then creates a hash file from the digital data and transmits the hash file to the system's blockchain network to receive a transaction confirmation and / or a system server identifier.
  • this system uses the blockchain for "Bitcoin" type financial transactions, so this system simply allows a user to create a session to acquire digital content and then ensure authenticity content. Thus, this system does not allow an authorized and validly registered identification to be able to deposit certified digital content using the blockchain technology. User authentication to further ensure the integrity of the digital content is therefore unreliable.
  • the present invention aims to overcome certain disadvantages of the prior art by proposing a new user software application to facilitate and ensure verification that a digital content published online is consistent with the digital content initially created by its creator, while securing and making reliable the recording of digital content by its creator, the authentication of the digital content creator and the integrity of the digital content published in the computer network.
  • the present invention relates to a software application constituting at least one user application intended to be executed on at least one computer platform or a portable computing device for creating digital content and authenticating the digital content published in a computer network, the software application managing memories of which at least one memory of the computer hardware storing a unique pair of signature keys (CA) associated with each application loaded by a creator, this non-accessible key from the outside realizing a digital signature (S) of the content and the software application containing instructions that, when executed by a hardware processor, communicate with a distributed database server to enable the creation of the content and the determination of whether or not the creator exists on the server; the software application being characterized in that it is a succession of instruction sequences which, when it is executed on the computer platform or the computing device, makes it possible to perform at least one of the following functionalities:
  • the digital content published by the server comprising in addition to the content the hash (HA) and the identifier (IDNP); verification of the authentication of the published digital content, in which the software application also comprises execution means configured to perform an authentication request, on the one hand, by generating a second hash value (H P ) published content and comparing the similarity between the first (HA) and the second (Hp) hash values, and secondly, by transmitting to the server a second message containing at least the second identical hash value (H P ). to the first (HA) hash, so that the server certifies the authentication of the published digital content.
  • H P second hash value
  • the software application comprises execution means configured to perform calculations, on the one hand, of the first hash value (HA) when the digital content has been created and finalized by the creator, and on the other hand, the signature (SA) from the signature key pair (CA) of the software application memory, which is specific to the digital content and related to the user's software application and / or of the creator.
  • execution means configured to perform calculations, on the one hand, of the first hash value (HA) when the digital content has been created and finalized by the creator, and on the other hand, the signature (SA) from the signature key pair (CA) of the software application memory, which is specific to the digital content and related to the user's software application and / or of the creator.
  • the application includes execution means configured to create if necessary a creator profile not yet registered, by displaying an application for defining and assigning several specific information related to the creator to record and authenticate the creator of the digital content on the server.
  • the profile creation is carried out either by instructions contained in the user software application, or by instructions from the server, after a contact with the server by a new creator of content without profile saved on the server.
  • the software application includes means for the creator to indicate the completion or incompletion of creating digital content and allowing temporary non-public backup.
  • the software application includes execution means for combining several specific information related to the creator to authenticate the creator of the digital content.
  • the software application comprises execution means making it possible to chronologically organize the digital contents during the creation of said contents.
  • the identifier number generated by the server and received by the application of the user includes at least one information on the filing date and the creator.
  • the specific information relating to the creator includes, depending on the degree of reliability sought, one or more confidential information such as name, address, work, leisure, photo ID, identity card or the fingerprint.
  • the creation of a digital content is carried out by several creators, so as to obtain several signatures (SA) associated with each of said creators and a unique identifier number (IDNc) associated with the digital content created by said creators .
  • SA signatures
  • IDNc unique identifier number
  • the pair of signing keys comprises a private key and a public key that are generated simultaneously during the creation of the user profile, and saved securely in the application's memories.
  • the second message further comprises the published digital content and / or the ID number (IDNp).
  • the server includes specific algorithms allowing: identifying the first message saved in the server from the identifier number (IDNp) associated with the second message transmitted by the user software application;
  • HA hash values
  • IDNA identifier numbers
  • the present invention aims to overcome certain disadvantages of the prior art by proposing a new computer server to certify a digital content and its creator and verify the authenticity of the creator of digital content and integrity of digital content published in a computer network.
  • the present invention relates to a computer server comprising a program which when executed by a computer system allows at least one of the following actions:
  • IDC identifier
  • the registration of the creator and / or the content is carried out by a network of blocks of blocks for storing in a memory of a distributed database of the blockchain network, at least a first message comprising digital content created and declared, associated with a first hash value (HA) and a first signature (SA), from a user software application of a computer platform or a computer device according to one of the features of the present invention, interfacing with the server; - the generation by the server of a specific identifier number (IDNc) sent to the creator, after verification by the server of the signature (SA) and the hash value (HA), and secondly, the setting publicly available digital content created and declared on the computer network, only for a creator stored and authenticated on the server in combination with the hash and the identifier number:
  • IDNc specific identifier number
  • the distributed database server includes an algorithm for generating a timestamp of digital content created and declared; the timestamp and the identification number (IDN) resulting from an encryption, by a server-specific encryption key (Ce), of the digital content transmitted by the software application, are stored in the database in a format of "log" file distributed and immutable in one of the immutable blocks of the block chain.
  • IDN identification number
  • Ce server-specific encryption key
  • the server for each creator (a) registered, includes in its database a space specifically storing at least one hash key (Cha) and / or a signature key (Csa).
  • the server includes algorithms for accessing the block (s) containing the digital content created and declared, the first hash value, the first signature and the number identifier, when a creator registers or identifies with the server by its specific identifier (IDC).
  • IDRC specific identifier
  • the server comprises specific algorithms and at least one decryption key (Cs) specific to the server for decrypting the second encrypted message and a second hash value (Hp) associated with the second message of the published digital content.
  • Cs decryption key
  • Hp hash value
  • the server comprises specific algorithms allowing at least one of the following actions:
  • the server comprises algorithms for identifying and authenticating each content creator by at least one of the hash keys, a signature key and / or an identifier number specific to each registered creator, starting from the identifier (IDC) specific to each creator and stored in the database of the server and / or from the ID number (IDNp) associated with the digital content published for all third-party users.
  • IDC identifier
  • IDNp ID number
  • the technology of the blockchain network is of the "authorized”, “private” and publicly accessible type, on the one hand, to allow only the validly identified and authenticated creator to create and declare digital content, and on the other hand, allow any third-party user to verify the authenticity of the digital content It is another object of the present invention to provide an optimized and reliable system for verifying authenticity and integrity that digital content published in a computer network conforms to the digital content originally created by its creator.
  • a system for verifying and authenticating digital content published in a computer network conforming to the digital content initially created comprising at least one computer platform or a computing device executing a user software application according to one of the particularities of the invention, communicating and using a computer server according to one of the features of the invention, to create digital content for a creator validly and previously authenticated and identified, and make it publicly available on the computer network and to authenticate each published digital content.
  • FIGS. 1a and 1b show a system for verifying and authenticating a digital content published according to an embodiment, respectively, of a first part of the system in which a digital content is created and declared by an identified creator and publicly making said digital content, and a second part of the system in which the published content is authenticated by a third party user.
  • FIGS. 2a and 2b schematically represent a system for verifying and authenticating digital content published according to another embodiment, respectively, of a first part of the system in which digital content is created and declared by an identified creator and the public provision of said digital content, and a second part of the system in which the published content is authenticate by a third-party user.
  • FIGS. 1 and 2 of the present application concern mainly three groups of objects:
  • a user software application (1 a, 1 b) enabling a user creator (a) to create digital content, so as to certify the origin and the originality of the digital content created;
  • a computer server (2) capable of communicating with a software application (1a, 1b), for certifying digital content created by an authenticated creator and verifying the authenticity of this digital content published online;
  • a system (10) using a user software application (1a, 1b) and a computer server (2) for verifying and authenticating that digital content published in a computer network conforms to the digital content initially created.
  • the present invention relates to a software application (1a, 1b) constituting at least one user application intended to be executed on at least one computer platform or a portable computing device for creating digital content and authenticating the digital content published in a computer network.
  • the software application is able to manage memories including at least one memory of the computer hardware (software application) memorizing a unique pair of signature keys (CA) associated with each application loaded by a creator, such as a "public" key Cpub and a "private” key Cpri and this "private” key is not accessible from the outside realizes a digital signature (S) of the content.
  • the software application contains instructions that when executed by a hardware processor enable communication with a distributed database server to enable the creation of the content and the determination of existence or not (ie ie an absence or an anomaly of a user profile) of the creator on the server.
  • the software application is a succession of instruction sequences which, when executed on the computer platform or the computer device, makes it possible to perform in addition at least one of the following functionalities:
  • a first hash value (HA) from the created content (for example using a key, preferably a hash key), and a first signature (SA) that can be calculated on the digital content created and the hash generated, then;
  • the declaration of the digital content by the application by transmitting to the server a first message containing the content, associated with the first hash value (HA) and a first signature (SA), and secondly, for setting public provision by the server only, on the computer network of the content of the registered and authenticated creator, after verification by the server of the signature (SA) and the hash value (HA), receipt by the application of the creator of a specific identifier number (IDNc) generated by the server (for example in the form of a QRC code which is two-dimensional barcode); - viewing by a third party user from the software application on its digital platform or digital device, the digital content published by the server comprising in addition to the digital content, a hash (Hp) and an identifier (IDNp); verification of the authentication of the published digital content, in which the software application also comprises execution means configured to perform an authentication request, on the one hand, by generating (or calculating) a second value of hashing (Hp) the published content and comparing the similarity between this second value (H
  • the server performs a similarity comparison between the stored information of the first message (such as the first hash value HA and / or the IDNc identifier number) and the information from the second message (such as the second value of Hp hash and / or IDNp ID number and / or published digital content).
  • the stored information of the first message such as the first hash value HA and / or the IDNc identifier number
  • the information from the second message such as the second value of Hp hash and / or IDNp ID number and / or published digital content.
  • the declaration of digital content created by a signature (SA) and associated with a (unique and authentic) user profile avoids the reappropriation of a profile / user account and make reliable all digital content created and published from this profile declared.
  • SA signature
  • the use of a digital signature also has the advantage of requiring a creator to be "serious" (ie to create and publish only digital content with authentic and reliable information / data), in order to that the reputation or notoriety of the creator (name and image associated with the content it will publish) is not hindered.
  • the user's software application e.g., the creator or author
  • the application makes it possible to sign said hash from a private key Cpri of a pair of signature keys (CA) to obtain a signature (SA) of the content created;
  • the created and signed content is prepared by placing the said content in clear and the signature and / or the hash in any container to be sent to the server by a non-secure or secure channel.
  • the signed content is published by the server to be received by an application of a computer platform or portable (or mobile) computer device of a third party user (or the creator user) to verify and validate the authenticity of the published content .
  • the application includes algorithms allowing:
  • the signature is decrypted by the application with the public key C pU b of the pair of signature keys,
  • This embodiment describes (not only) an operation or a conventional method of signature by asymmetric encryption and a hash function.
  • Other techniques known to those skilled in the art, can be implemented by the application of the present application to achieve a digital signature on a digital content.
  • the final digital content i.e., digital content declared and ready to be published on the internet
  • an immutable and secure environment for example, in a blockchain network or a secure server with a trusted third party that guarantees the immutability of the information.
  • the server certifies the authentication of the published digital content by comparing the at least similarity between the hash values (HA; Hp) and / or the ID number (IDNp) of the published content and the number of the identifier (IDNc) of the created content. In some embodiments, the server may further compare the similarity between the created (original) content and the published content.
  • the creation of a digital content is performed by several creators, so as to obtain several signatures (SA) associated with each of said creators and a unique identifier number (IDNc) associated with the digital content created by said creators.
  • SA signatures
  • IDNc unique identifier number
  • authors can participate in the creation of a digital content for which a signature is associated with each of the authors and a single identifier (IDN) is generated by the server which will be specific to the digital content created.
  • the software application comprises execution means configured to perform calculations, on the one hand, of the first hash value (HA) when the digital content has been created and finalized by the creator, and on the other hand, the signature (SA) from the signature key pair (CA) of the software application's memory, which is specific to the digital content and related to the software application of the user and / or creator. Hashing the created digital content ensures the integrity of that content. Thus, any modification (voluntary or involuntary) of the content occurring after performing a hash function, changes the hash value initially assigned by the function.
  • a comparison of similarity between the hash value initially assigned to the content and the value of hash assigned after content modification can detect and verify any change in digital content and thus provides information on the integrity of digital content.
  • the signature of the digital content created being specific to the software application of the user and / or the creator, makes it possible to authenticate the identity of a content creator.
  • the private key Cpri and the public key Cpub of the signature key pair (CA) are obtained simultaneously by the user profile of the application, in order to create a unique and specific link between the user name profile and the digital content created. Said keys can be saved in a secure manner (in particular for the private key that is not accessible from the outside, while the public key is shared with the server) in the memories of the application.
  • the user creator of the application also has the possibility to save the pair of signature keys since it is generated by the application of the creator (and therefore by the creator himself).
  • the creator takes responsibility for the backup (and secrecy or non-disclosure) of the private key, while the public key is shared with the server.
  • the backup of the signature key pair at the expense of the creator can be performed by the application or by other means of backup known to those skilled in the art.
  • the software application includes execution means configured to create if necessary a creator profile not yet registered, by displaying an application for defining and assigning several specific information related to the creator to record and authenticate the creator of the digital content on the server.
  • Creating an unregistered profile allows a new content creator to register as an authenticated creator so that it can create digital content whose integrity can be verified, including by the system of the present application.
  • the creator registers and / or identifies himself through the application with an identifier (IDC) and a unique password and specific to the creator that can be stored in the server.
  • IDCC identifier
  • the application offers the creator to fill out several creator-specific information.
  • the user software application includes execution means for combining a plurality of specific creator-related information to authenticate the creator of the digital content.
  • the application may include tests to ensure that several specific information related to the creator have been defined and assigned in the profile of each creator, in order to validly identify each creator.
  • the specific information related to the creator includes according to the degree of reliability referred one or more confidential information such as name, address, work, leisure, photo ID, identity card or the fingerprint.
  • the creator during the creation of his profile fulfills several identification parameters through application identification request windows (or boxes) that can be checked and authenticated, for example by reading. and comparing information from the creator's identity card, fingerprint recognition, facial recognition, or any other means and / or data to authenticate the creator's identity (which may be pre-registered in the server).
  • the software application includes execution means for chronologically organizing the digital contents during the creation of said contents.
  • the server can take into account a notion of temporality associated with the digital content created (and / or the user profile) that can be saved in its information register (or database). This makes it possible to know, on the one hand, when a digital content has been created and published, and on the other hand, when said content could be modified to be able to check a write state with respect to a given moment (or a date and / or a time stamp).
  • the identifier number (IDNp) generated by the server and received by the user's application includes at least one information on the filing date and the creator.
  • the generated and published identifier number being unique, it can make it possible to identify information associated with it, such as the date of deposit / publication (for example in a format "hhmmJJMMAAAA” in which "hh” corresponds at one o'clock, “mm” corresponds to one minute, "DD” corresponds to the day, "MM” corresponds to the month and "AA” corresponds to the year) and / or the creator (for example in the format in a format " AUTORNAME “or” NOMAUTEUR "), so as to obtain, for example, an identification in a format” xyzxyzhhmmJJMMAAAAxyzAUTORNAMExyzxyz ".
  • the profiling is performed either by instructions contained in the user software application, or by instructions from the server, after a prior contact with the server by a new content creator without profile saved on the server.
  • the software application comprises means (for example through computer tests) enabling the creator to indicate the completion or incompleteness of the creation of the digital content. and allow a non-public temporary backup on the application's memories.
  • the addition of test allows the application to check and to know if the creator user has finished creating or not the digital content, before certifying and publishing it online.
  • the application can continue the execution of the other instruction sequences (including the calculation of the first hash value and the first signature of the content).
  • the second message transmitted by the application to the server contains at least one second hash value (Hp) and / or the published digital content, and / or the identifier number (IDNp).
  • the third-party user software application is configured to calculate (and / or extract) the second hash value (Hp) associated with the published content. Then, the third-party user software application is configured to transmit to the server the second message comprising at least the second hash value and / or the published content, and / or the identifier number (IDNp) for the server to check and certify the server. authenticity of digital content published online.
  • the server includes specific algorithms allowing at least one of the following actions:
  • the computer server (2) comprises an algorithm for saving at least one hash table grouping the deposited and sorted hashes in ascending order, as well as updating said table.
  • This data structure called “hash table”
  • This hash table can be used to compare and verify published digital content without its sources. For example, a digital content comprising a text of fifteen lines is published by "AUTORNAME", then its content is taken from a site that does not give the sources. In this case, the application can cut one of the fifteen lines, then another hash of each line, and ask the server to identify said hashes and check the published digital content, while ignoring the published ID number of that line. content.
  • the user software application (1 a) provides at least one browser menu "creation and declaration of authentic content" (example, Figure 1a) allowing one or more creative users (a) to achieve least one of the following features:
  • IDNc specific identifier number
  • the user software application (1b) provides at least one browser menu "viewing and authentication of content" (example, Figure 2b) allowing one or more third-party users to achieve at least one of the following features:
  • the computer platform is a website or a server.
  • the portable or mobile computing device is one or more mobile phone, computer, touch pad, etc. and capable of holding or connectable to at least one camera, a playback device, an input device and / or a scanner.
  • the portable computing device may have an internet connection and at least one internet browser.
  • information exchanges e.g., digital content, instructions, notifications, updates, etc.
  • information exchanges e.g., digital content, instructions, notifications, updates, etc.
  • the server receives a message over an encrypted network, it includes additional decryption means for decrypting the encrypted message. While, when the server receives a message on a non-encrypted network, it is able to directly read the message to extract (without module or additional step).
  • the present invention also relates to a computer server (2) comprising a computer program which, when executed by a computer system, allows at least one of the following actions to be performed: generate messages enabling a user to register (or "logger” or “user register” in English), to create digital content even if the user is not yet registered,
  • the server also allows at least one of the following:
  • a blockchain network (3) for storing in a memory of a distributed database of the blockchain network at least a first message comprising a digital content created and declared, associated with a first hash value (HA) and a first signature (SA), from a user software application (1 a, 1 b) of a computer platform or a device computer according to one of the features of the present invention, interfacing with the server;
  • HA hash value
  • SA first signature
  • IDNc a specific identifier number sent to the creator, after verification by the server of the signature (SA) and the hash value (HA), and secondly, the setting publicly available digital content created and declared on the computer network, only for a creator stored and authenticated on the server in combination with the hash and the identifier number:
  • the final digital content (i.e., digital content declared and ready to be published on the internet) is anchored in an immutable and secure environment.
  • said content may to be deposited in a chain of blocks network.
  • a network other than the blockchain network may be used, for example a secure server with a trusted third party that guarantees the immutability of the information.
  • a block chain technology (or system or network or DLT or blockchain) is adapted to provide several advantages in terms of provenance, certification and traceability. .
  • Blockchain (3) is not a typical source system, but rather a distributed type of database (or registry) whose information sent by users and internal links to the database are checked and aggregated at intervals of regular time in blocks and thus forming a chain.
  • This blockchain (3) is capable of storing information securely through cryptographic evidence without the need for a central (trusted) instance.
  • the blockchain (3) therefore stores the information in block form, which is concatenated into a string and stored in a distributed manner.
  • Each block has a reference to the previous block, which allows to cross the entire chain from the last block. Since new blocks can be added at the same time, "ramifications" can appear, and generate several last blocks. Only one string can be valid to guarantee a single last block, and is determined by a consensus protocol.
  • Each block includes several transactions, which are secured with asymmetric cryptography.
  • Each new transaction can be validated by users or minors, which creates a chain of validated transactions.
  • the owner of a current transaction digitally signs a hash value of the new transaction.
  • the hash value uses the current transaction and the cryptographic key of the owner of the new transaction as input. It's important to note that the block chain (3) is devoid of state. The transactions stored in a block are the only existing state.
  • transaction generally refers to all messages exchanged to ensure the consumption of a service.
  • a transaction as for the databases, is either executed in full (successful consumption of the service, with all the related message exchanges), or in failure (no consumption of service).
  • hash refers to the value returned by a hash function (or executable code).
  • a hash function is any function that can be used to map data of arbitrary size to fixed size data. For example, as shown in the figures, "SHA-256" is a function among other functions that can produce a hash, but many algorithms can be used to produce a hash of starting digital data and / or digital content. .
  • An ideal cryptographic hash function has the following four properties:
  • Hash table An example of use is a data structure called "hash table", widely used in computer software to quickly search for data.
  • Hash functions speed up the lookup in a table or database, for example by detecting duplicate records in a large file.
  • They are also useful for cryptography.
  • a cryptographic hash function makes it easy to verify that some input data is mapped to a given hash value, but if the input data is unknown, it is deliberately difficult to reconstruct (or otherwise) it by knowing the hash value stored. This is used to guarantee the integrity of the transmitted data.
  • the creation of a block capable of storing transactions in the blockchain (3) may consist, for example (as in "Bitcoins"), of finding certain nonce values (random or pseudo-random number to be used a only once) so that the hash value for the transactions to be stored starts with a group of zeros.
  • mining This is also referred to as "mining” (Bitcoin); the miner is rewarded with bitcoins for his computation efforts. A new block, if checked by other explorers, is then added to the block chain (3), which serves as storage confirmation for the associated transactions.
  • the distributed database server (2) includes an algorithm for generating a timestamp (or "timestamp” in English), preferably without limitation of the "absolute" time or date of the creation of the content, digital content created and declared.
  • timestamp or timestamp we define a chronological order of transactions and blocks between them.
  • the timestamp and the identifier number (IDN), which can result from an encryption, by a server-specific encryption key (Ce), of the digital content transmitted by the software application, are stored in the database under a a distributed and immutable log file format in one of the immutable blocks of the blockchain.
  • the server (2) comprises in its database a specifically storing space (for example, sus form table ) a hash key (Cha), a signature key (Csa) and / or an encryption key (Cca).
  • the hash key makes it possible to decrypt the hash value associated with the published digital content
  • the signature key makes it possible to calculate (and / or decrypt) the second signature value associated with the published content
  • the encryption key enables to encrypt (or encrypt) the digital content created and declared (for example: by a timestamp and an ID number).
  • the server may further comprise a decryption key, when the received messages are encrypted.
  • the server includes algorithms for identifying and authenticating each content creator by at least one of the hash keys, a signature key, and / or an identifier number specific to each registered creator, from the identifier (IDC) specific to each creator and stored in the database of the server and / or from the ID number (IDNp) associated with the digital content published for all third-party users.
  • the server is configured to access the memory space storing the first hash value, the first signature value and / or the ID number (IDNc) of the digital content created from the profile.
  • user of each creator including the registration or authenticated identification of the creator by its specific identifier (IDC)
  • ID number (IDNp) transmitted by the third party (which is extracted from the second message of the published content).
  • the server includes algorithms for accessing the block (s) containing the created and declared digital content of the network of the blockchain, the first hash value (HA), the first signature (SA) and ID Number (IDN), when a creator registers or identifies with the server by its specific IDC.
  • the server identifies and authenticates each creator by its specific identifier (IDC) (and its account opening password or creator profile), to allow transactions between the user software application of the creator and the server computer.
  • IDC specific identifier
  • This configuration makes it possible to control the certification of the identity of each creator of content and the origin of each digital content deposited on the server.
  • the server accesses only the digital content of a creator identified and stored in the server.
  • the server includes specific algorithms and at least one server specific decryption key (Cs) for decrypting the second encrypted message and the second hash value (Hs) associated with the published digital content.
  • Cs server specific decryption key
  • the server is configured to verify the authenticity and integrity of the published content from the hash values (HA ; Hs) and the ID number (IDNp).
  • the server includes specific algorithms for:
  • the server is configured to search in its database for the stored identifier number (IDNc) similar to and / or corresponding to the identifier number (IDNp) received by the second message (whether or not containing the IDNc ID number).
  • IDNc the stored identifier number
  • the server can identify the first hash value (HA) and the first signature (SA ) available in the server memories and associated with the ID number (IDNc) and thus the original digital content.
  • the server After verification, the server notifies the third-party user application by two types of authentication notifications: either an approval that the published digital content complies with the digital content created and declared and therefore original, when the identifier numbers (INDc; IDNp ) and / or the hash values (HA ; HP) are similar to each other; a denial that the published digital content does not conform to the original digital content, when the identifier numbers (INDc; IDNp) and / or the hash values (HA ; Hs) are not similar to each other. (NK: I do not understand these two signatures ).
  • the server-specific algorithms allow, on the one hand, to validate the integrity of the published digital content when the hash values (HA ; Hp) are similar, and on the other hand, to validate the authenticity of the creator of the published digital content when the signature values (HA ; HP) are similar.
  • the verification of the authentication by comparison of the hash values (HA ; HP) and / or the identification numbers (INDc; IDNp) can be carried out in the form of testing by one or more server algorithms.
  • the blockchain network technology is of the "authorized”, “private” and publicly accessible type to, on the one hand, only allow the validly identified and authenticated creator to create and declare digital content, and on the other hand, allow any third-party user to verify the authenticity of the digital content. This configuration protects the falsification of the created digital content and / or the identity of the content creator.
  • the server may include a separate blockchain network, which authorizes and uses only by creator users to create their profile and digital contents, of a second blockchain network, which allows and is used by third-party users to check the published content online, but these two blockchain networks are interrelated.
  • the validated repositories of digital content in blocks of the blockchain can be realized either by a distributed mining module to automate the validation of the recording of the source content by its creator in the chain. blocks of the platform, either by the content custodian itself. In the latter case, each custodian (or depository creator) is in charge of creating its own content and profile record and the block string verifies that the deposit format is correct, for example by assigning a new record identifier.
  • the computer server (2) performs at least one of the following operations:
  • the present application also relates to a system (10) for verifying and authenticating digital content published in a computer network conforming to the digital content initially created, the system comprising at least one computer platform or a computing device executing a user software application. according to one of the embodiments of the invention, communicating and using a computer server according to one of the embodiments of the invention, to create digital content for a validly authenticated and identified creator, and make it publicly available on the network computer and to authenticate each published digital content.
  • the system (10) of the present invention has the advantage that only "authenticated and declared" creator users (or authors) can benefit from a guarantee of controlled origin proof of the digital content, and its integrity.
  • This system also has the advantage of effectively managing in real time the "e-Reputation" (or online reputation of a person (individual) or entity (brand)) of each content creator, by providing secure and reliable authentication of the identity of each content creator and by preventing the system (or blockchain network) from being polluted by falsified and erroneous contents.
  • modules may be implemented by electronic circuit, such as an integrated circuit for example or by other types of arrangement of components, such as for example semiconductors, logic gates, transistors or other discrete components.
  • Such modules can also be implemented by one or more software application (s) or executable code portion (s) within at least one software environment, for execution by various types of software. processors and this, whatever the language used.
  • An identified module may, for example, include one or more physical or logical blocks of machine instructions that may, for example, be organized into an object, process, or function.
  • routines and instructions of an identified module do not need to be physically located together, but may include disparate instructions stored in different locations that, when functionally and logically joined together, form the module and perform the task. purpose indicated for the module.
  • a module may be a simple executable code instruction, or a plurality of instructions, and may even be distributed among several different code segments or among different programs and stored in several memory blocks.
  • operational data can be identified and illustrated in modules, and can be incorporated into any suitable form and organized into any suitable type of data structure. The operational data may be collected or may be spread over different locations including different finished storage devices, and may exist, at least partially, simply as electronic signals on a system or network.
  • system means here any type of terminal or device arranged to perform the functions described with reference to the modules.
  • the system comprises data processing means for performing these functions described and may therefore include specific circuits performing these functions or generally comprise computer resources for performing the instructions described above.
  • a mode or an alternative embodiment means that a device, or a module, or a structure, or a particular feature described is included in at least one embodiment of the present invention and that the different examples do not necessarily relate to the same embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

La présente invention concerne une application logicielle utilisateur pour créer un contenu numérique et authentifier le contenu numérique publié dans un réseau informatique. L'application logicielle permet de communiquer avec un serveur de base de données distribuées pour permettre la création du contenu et la détermination de l'existence ou non du créateur sur le serveur. Pour cela, l'application est configurée pour - créer un contenu numérique pour un créateur, authentifié et signé après création ou existence d'un profil d'utilisateur acceptée par le serveur; - déclarer le contenu sur le serveur, en lui transmettant un premier message contenant le contenu, associé à la première valeur de hachage et à la première signature, et d'autre part, publier en ligne uniquement le contenu du créateur enregistré et authentifié par le serveur; - visualiser par un utilisateur tiers, le contenu numérique publié par le serveur comprenant en plus du contenu, le hachage et l'identifiant; - et vérification de l'authentification du contenu numérique publié, dans laquelle, l'application logicielle réaliser une requête d'authentification, en transmettant au serveur un second message contenant le contenu numérique publié, afin que le serveur certifie une comparaison de similitude entre les informations provenant du second message et les informations mémorisées du premier message et authentifier le contenu numérique publié.

Description

Une application logicielle et un serveur informatique pour authentifier l’identité d’un créateur de contenu numérique et l’intégrité du contenu du créateur publié.
DOMAINE TECHNIQUE DE L'INVENTION
La présente invention concerne le domaine de la gestion des contenus numériques dans un réseau informatique, plus généralement sur des mesures de sécurité pour protéger des informations ou des échanges d’informations sur le réseau informatique, par exemple en authentifiant l’intégrité des contenus numériques publiés et/ou en détectant des falsifications effectuées dans les contenus numériques publiés sur des sites internet et/ou tout autre méthode de diffusion digitale ou physique.
La présente invention concerne plus particulièrement une application logicielle utilisateur s’interfaçant avec un serveur informatique pour enregistrer un contenu numérique créé par un créateur et authentifier uniquement le contenu numérique publié dans un réseau informatique par un utilisateur tiers. La présente invention concerne également un système de vérification et d’authentification d’un contenu numérique publié dans un réseau informatique conforme au contenu numérique créé initialement, en temps réel et sécurisé, mettant en œuvre l’application logicielle utilisateur en utilisant le serveur informatique, afin de vérifier l’authenticité d’un contenu numérique publié et/ou détecter une éventuelle falsification du contenu numérique initialement créé et publié par son créateur sur des réseaux informatiques.
ARRIERE-PLAN TECHNOLOGIQUE DE L'INVENTION
Un problème dans le monde du numérique concerne la fiabilité et de la véracité d’une information (ou contenu numérique ou contenu ou transaction) publiées sur les sites internet (ou réseaux informatiques ou en ligne). En effet, il est très facile de copier un contenu numérique donné (tel que du texte, image, vidéo, application, etc.), puisqu’il ne s’agit que d’une succession de chiffres (généralement de « zéro » et de « un ») qui est donc duplicable à l’identique et à l’infini. De plus, un contenu numérique donné peut aussi être facilement modifié, soit pour endommager irréversiblement le contenu en rendant la copie plus difficilement réparable, soit pour changer le contenu lui-même pour en modifier le message initial ou l’idée de l’auteur (ou créateur). Ces actes malveillants sont susceptibles de porter atteinte facilement aux droits d’auteur du travail original de la personne ou dénigrer et entacher la réputation ou le travail d’une personne, d’une administration ou d’une entreprise. Ainsi, il nécessaire d’établir ou rétablir la confiance et la certitude d’un contenu numérique publié en ligne, en garantissant aux lecteurs que le contenu publié est bien réellement conforme au contenu source original de l’auteur. II est connu de l’art antérieur, un organe de contrôle centralisé rattaché à certains sites et médias, qui établis une certification pour garantir un contenu. Cependant, ce mode de protection est limité au vu de la quantité en hausse de personne générant du contenu numérique et publiant (ou en cliquant sur des liens internet ou en rediffusant un contenu) en ligne notamment sur les réseaux sociaux (« tweeter », « facebook », « linkedin », « forum », etc.), qui dépasse en volume les flux de média classiques. Par ailleurs, une autre limite est que de nombreux silos doivent être crée pour valider les certifications des contenus, alors que de nos jours, les contenus numériques circulent très rapidement d'un média à un autre. Ainsi, il est nécessaire d’élargir la confiance et la certitude d’un contenu numérique publié en ligne plus que cela, afin de prévenir en temps réel la diffusion de faux contenus (ou fausses nouvelles) ou contenus modifiés.
Il également connu de l’art antérieur une méthode et un système de détection de contenus falsifiés sur les sites internet, comme par exemple décrit dans le document EP1139199. La méthode consiste à la production d’une première valeur de hachage associée à une première information correspondante aux noms ou aux contenus de fichier actuel parmi la pluralité de fichiers, puis la détection de la falsification en comparant la première valeur de hachage à une seconde valeur de hachage d’une seconde information correspondante aux noms ou aux contenus de fichier au moment de l’enregistrement et sauvegardé dans un lecteur de disque magnétique avec un marqueur d’image. Lorsque la première valeur de hachage est différente de la seconde valeur de hachage, un rapport est fourni au système administrateur et un message modifié ou le marqueur d’image s’affiche sur le site pour informer les utilisateurs de la falsification des contenus. Cependant, ce système de détection ne permet pas de certifier de façon fiable un contenu numérique avec une seule empreinte hachée pour crypter le contenu, ni d’authentifier un créateur de contenu de fichier. De plus, ce système ne peut être adapté ou mis en place pour détecter les faux contenus dans un système distribué et décentralisé, tel que par exemple à partir de la technologie de chaîne de bloc (« Blockchain » ou « Ledger Distributed Technology » en anglais), ni pour tracer les modifications faites sur les contenus.
Il également connu de l’art antérieur une méthode et un système pour faciliter l’identification de segments d’un flux vidéo et audio capturés à l’origine avec les segments modifiés dans le flux final édité, comme décrit par exemple dans le document US9870508. Ce système utilise le réseau de chaîne de bloc public, c'est-à-dire qu’il maintient les enregistrements de toutes les transactions/transferts sur le réseau peer-to-peer. Les transactions sont horodatées et regroupées en bloc où chaque bloc est identifié par son hachage crypté et chaque bloc conserve les enregistrements de toutes les transactions sur le réseau reçues depuis la création de son bloc précédent. Au lieu de stocker les informations sur toutes les transactions dans le bloc lui-même, une structure de données spéciale appelée arborescence Merkle est utilisée pour stocker les transactions et seul le hachage de la racine de l'arborescence Merkle est stocké dans le bloc. Ce système applique une fonction modulo sur les valeurs de hachage cryptographique et calcule les séquences restantes. Les valeurs de reste zéro récurrentes définissent des limites de méta-blocs et des méta-blocs de valeurs de hachage alignés entre la vidéo d'origine et la vidéo éditée. Un hachage des hachages est calculé sur les méta-blocs pour produire des méta-hachés dits auto-alignés pour la vidéo originale et la vidéo éditée. Les méta-hachages auto-alignés sont comparables et peuvent être mis en correspondance pour déterminer si la vidéo éditée est un extrait de la vidéo originale. Enfin, les méta-hachages auto-alignés sont stockés et validés sur un réseau de chaîne de blocs via des contrats intelligents pour fournir une assurance immuable que les données n'ont pas été altérées, en plus de fournir une traçabilité et des capacités d'audit transparentes. Cependant, ce système est limité à la détection de contenu de format audio et vidéo édité. Il doit réaliser plusieurs hachages du contenu pour pouvoir auto-aligner les séquences et les comparer avec les séquences originales pour détecter les séquences modifiées. Enfin, ce système utilise une technologie de chaîne de bloc public qui autorise toute personne à accéder et à modifier le contenu numérique, sans fournir de garantie sur la fiabilité du contenu modifié ni sur sa traçabilité.
Il également connu de l’art antérieur un système et procédé d'authentification de certificat accrédité basé sur une chaîne de blocs, comme par exemple décrit dans le document WO2018008800. Ce système comprend : un serveur de requête d'authentification de certificat accrédité basé sur une chaîne de blocs qui, en réponse à la requête d'accréditation d’un terminal utilisateur, transmet des informations personnelles, pour l'émission d'un certificat accrédité ; un serveur de gestion de certificat accrédité qui effectue une commande pour authentifier l'utilisateur par détermination, sur la base des informations personnelles pour l'émission d'un certificat accrédité, de la validité d'un certificat accrédité de l'utilisateur en transmettant une clé publique pour le certificat accrédité de l'utilisateur au serveur de requête d'authentification de certificat accrédité. Le système comprend une commande de traitement de hachage pour les informations personnelles du certificat et traiter en tant qu’information d’identification de l’utilisateur ; et également une chaîne de hachage du serveur gestion de certificats pour des informations de hachage de certificat de nœud. Lorsque l'information de hachage du certificat d'enregistrement correspondant à la valeur de hachage du nœud de certificat n'est pas identique à l'information de hachage de la valeur de hachage comme information de hachage correspondant au certificat de nœud d'un utilisateur particulier stocké dans le même nœud de l'ordre des contrôles, alors cette chaîne de hachage du serveur de gestion de certificats délivre une notification de falsification d’information liée au certificat de clé publique dans un terminal de demande de vérification de falsification constitué d'un utilisateur particulier. Cependant, ce système est utilisé particulièrement pour la certification de clé publique dans le cadre des transactions financières de type « Bitcoin ». De plus, ce système ne permet pas de fournir une identification autorisée et valablement enregistrée de l’utilisateur tout en garantissant l’intégrité de son contenu numérique enregistré par l’utilisateur de façon fiable.
Il également connu de l’art antérieur un système et une méthode pour authentifier une falsification en utilisant la technologie de chaîne de blocs, comme par exemple décrit dans le document US20160283920. Le système est composé d’un dispositif intelligent utilisateur permettant à l’utilisateur de s’identifier avant d’acquérir un contenu numérique pour lui appliquer une fonction de hachage et d’un réseau de chaîne de blocs pour vérifier et authentifier le contenu numérique. En effet, l'utilisateur du système effectue une connexion via une application logicielle de son dispositif intelligent utilisateur, il reçoit une approbation de l'ouverture de session et il s'engage alors à acquérir des données numériques provenant de n'importe quelle source. L'utilisateur crée ensuite un fichier de hachage à partir des données numériques, puis transmet le fichier de hachage au réseau de chaîne de blocs du système pour recevoir une confirmation de transaction et/ou un identifiant du serveur du système. Pour confirmer à un moment ultérieur le fichier original et qu’il n’a pas été altéré, l'utilisateur doit alors créer un deuxième fichier de hachage à partir de données numériques pour recevoir alors un second fichier haché et horodaté par le serveur du système. Enfin, l'utilisateur compare les fichiers de hachage entre eux pour déterminer s’ils sont identiques ou différents. Cependant, ce système utilise la chaîne de blocs dans le cadre des transactions financières de type « Bitcoin », de ce fait ce système permet simplement à un utilisateur de créer une session pour acquérir des contenus numériques, puis de s’assurer de l’authenticité du contenu. Ainsi, ce système ne permet pas une identification autorisée et valablement enregistrée pour pouvoir déposer des contenus numériques certifiés à l’aide de la technologie la chaîne de blocs. L’authentification de l’utilisateur pour assurer en plus l’intégrité du contenu numérique n’est donc pas fiable.
Dans ce contexte, il est intéressant de proposer une solution permettant de pallier certains inconvénients de l’art antérieur en facilitant et améliorant l’enregistrement d’un contenu numérique par un créateur autorisé et la vérification de l’authenticité et l’intégrité du contenu numérique publié dans un réseau informatique.
DESCRIPTION GENERALE DE L'INVENTION
La présente invention a pour but de pallier certains inconvénients de l'art antérieur en proposant une nouvelle application logicielle utilisateur permettant de faciliter et garantir la vérification qu’un contenu numérique publié en ligne est conforme au contenu numérique initialement créé par son créateur, tout en sécurisant et fiabilisant l’enregistrement d’un contenu numérique par son créateur, l’authentification du créateur de contenu numérique et l’intégrité du contenu numérique publié dans le réseau informatique. A cet effet, la présente invention concerne une application logicielle constituant au moins une application utilisateur destinée à être exécutée sur au moins une plateforme informatique ou un dispositif informatique portable pour créer un contenu numérique et authentifier le contenu numérique publié dans un réseau informatique, l’application logicielle gérant des mémoires dont au moins une mémoire du matériel informatique mémorisant un couple de clés de signature (CA) unique associée à chaque application chargée par un créateur, cette clé non accessible de l’extérieur réalisant une signature (S) numérique du contenu et l’application logicielle contenant les instructions qui lors de leur exécution par un processeur du matériel informatique permettent de communiquer avec un serveur de base de données distribuées pour permettre la création du contenu et la détermination de l’existence ou non du créateur sur le serveur; l’application logicielle étant caractérisée en ce qu’elle est une succession de séquence d’instruction qui lors de son exécution sur la plateforme informatique ou le dispositif informatique, permet de réaliser en plus au moins une des fonctionnalités suivantes :
- création d’un contenu numérique par un créateur, authentifié et signé après création ou existence d’un profil d’utilisateur acceptée par le serveur qui autorise par un message à l’application ; - la génération d’une première valeur de hachage (HA) à partir du contenu et d’une clé et d’une première signature (SA) calculée sur le contenu et le hachage, puis ;
- la déclaration du contenu numérique par l’application en transmettant au serveur un premier message contenant le contenu, associé à la première valeur de hachage (HA) et à une première signature (SA), et d’autre part, pour une mise à disposition publique par le serveur uniquement, sur le réseau informatique du contenu du créateur enregistré et authentifié, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), réception par l’application du créateur d’un numéro d’identifiant (IDNc) spécifique généré par le serveur, par exemple sous forme d’un code QRC;
- la visualisation par un utilisateur tiers à partir de l’application logicielle sur sa plateforme numérique ou son dispositif numérique, du contenu numérique publié par le serveur comprenant en plus du contenu le hachage (HA) et l’identifiant (IDNP) ; - vérification de l’authentification du contenu numérique publié, dans laquelle, l’application logicielle comprend également des moyens d’exécution configurés pour réaliser une requête d’authentification, d’une part, en générant une seconde valeur de hachage (HP) du contenu publié et en comparant la similitude entre la première (HA) et la seconde (Hp) valeurs de hachage, et d’autre part, en transmettant au serveur un second message contenant au moins la seconde valeur (HP) de hachage identique à la première (HA) de hachage, afin que le serveur certifie l’authentification du contenu numérique publié.
Selon une autre particularité, l’application logicielle comprend des moyens d’exécution configurés pour réaliser des calculs, d’une part, de la première valeur de hachage (HA) lorsque le contenu numérique a été créé et finalisé par le créateur, et d’autre part, de la signature (SA) à partir du couple de clés de signature (CA) de la mémoire de l’application logicielle, qui est spécifique du contenu numérique et liée à l’application logicielle de l’utilisateur et/ou du créateur.
Selon une autre particularité, l’application comprend des moyens d’exécution configurés pour créer si nécessaire un profil créateur non encore enregistré, en affichant une application permettant de définir et attribuer plusieurs informations spécifiques liées au créateur pour enregistrer et authentifier le créateur du contenu numérique sur le serveur.
Selon une autre particularité, la création de profil s’effectue soit par des instructions contenues dans l’application logicielle utilisateur, soit par des instructions provenant du serveur, après une prise de contact avec le serveur par un nouveau créateur de contenu sans profil enregistré sur le serveur.
Selon une autre particularité, l’application logicielle comprend des moyens permettant au créateur d’indiquer l’achèvement ou l’inachèvement de la création du contenu numérique et permettre une sauvegarde temporaire non publique.
Selon une autre particularité, l’application logicielle comprend des moyens d’exécution permettant de combiner plusieurs informations spécifiques liées au créateur pour authentifier le créateur du contenu numérique.
Selon une autre particularité, l’application logicielle comprend des moyens d’exécution permettant d’organiser de façon chronologique les contenus numériques lors de la création desdits contenus.
Selon une autre particularité, le numéro d’identifiant généré par le serveur et reçu par l’application de l’utilisateur comprend au moins une information sur la date de dépôt et du créateur.
Selon une autre particularité, les informations spécifiques liées au créateur comprennent selon le degré de fiabilité visé une ou plusieurs informations confidentielles telles que le nom, l’adresse, le travail, les loisirs, la photo d’identité, la carte d’identité ou l’empreinte digitale.
Selon une autre particularité, la création d’un contenu numérique est réalisée par plusieurs créateurs, de sorte à obtenir plusieurs signatures (SA) associées à chacun desdits créateurs et un unique numéro d’identifiant (IDNc) associé au contenu numérique créé par lesdits créateurs.
Selon une autre particularité, le couple de clés de signature (CA) comprend une clé privée et une clé publique qui sont générées simultanément lors de la création du profil d’utilisateur, et sauvegardées de façon sécurisées dans les mémoires de l’application.
Selon une autre particularité, le second message comprend en outre le contenu numérique publié et/ou le numéro d’identifiant (IDNp).
Selon une autre particularité, le serveur comprend des algorithmes spécifiques permettant : - d’identifier le premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDNp) associé au second message transmis par l’application logicielle utilisateur ;
- de comparer la similitude entre les valeurs de hachage (HA ; HP) pour certifier l’intégrité du contenu et/ou les numéros d’identifiant (IDNA ; IDNp) pour authentifier le contenu numérique publié sur le réseau informatique.
La présente invention a pour but de pallier certains inconvénients de l'art antérieur en proposant un nouveau serveur informatique permettant de certifier un contenu numérique et son créateur et de vérifier l’authenticité du créateur de contenu numérique et l’intégrité du contenu numérique publié dans un réseau informatique.
A cet effet, la présente invention concerne un serveur informatique comprenant un programme qui lors de son exécution par un système informatique permet au moins de réaliser une des actions suivantes:
- générer des messages permettant à un utilisateur de s’enregistrer (« user register » en anglais), de créer un contenu même si l’utilisateur n’est pas encore inscrit,
- d’enregistrer le contenu dans sa base de données uniquement lorsque le profil du créateur a été complété ou est déjà mémorisé,
- de créer un identifiant (IDC) spécifique à chaque créateur ; caractérisé en ce qu’il permet en outre au moins une des opérations suivantes :
- l’enregistrement du créateur et/ou du contenu s’effectue par un réseau de chaîne de blocs pour mémoriser dans une mémoire d’une base de données distribuées du réseau de chaîne de blocs, au moins un premier message comprenant un contenu numérique créé et déclaré, associé à une première valeur de hachage (HA) et à une première signature (SA), à partir d’une application logicielle utilisateur d’une plateforme informatique ou d’un dispositif informatique selon une des particularités de la présente invention, s’interfaçant avec le serveur ; - la génération par le serveur d’un numéro d’identifiant (IDNc) spécifique envoyé au créateur, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), et d’autre part, la mise à disposition publique du contenu numérique crée et déclaré sur le réseau informatique, uniquement pour un créateur mémorisé et authentifié sur le serveur en association avec le hachage et le numéro d’identifiant :
- vérification de l’authenticité du contenu numérique mis à disposition publique ou publié sur le réseau informatique, après formulation d’une requête d’authentification par l’application logicielle d’un utilisateur tiers à partir de sa plateforme numérique ou de son dispositif numérique. Selon une autre particularité, le serveur de base de données distribuée comprend un algorithme pour générer un horodatage (« timestamp ») du contenu numérique créé et déclaré ; le timestamp et le numéro d’identifiant (IDN) résultant d’un chiffrement, par une clé de chiffrement (Ce) spécifique du serveur, du contenu numérique transmis par l’application logicielle, sont mémorisés dans la base de données sous un format de fichier « log » distribués et immuables dans un des blocs immuables de la chaîne de blocs.
Selon une autre particularité, pour chaque créateur (a) enregistré, le serveur comprend dans sa base de données un espace mémorisant spécifiquement au moins une clé de hachage (Cha) et/ou une clé de signature (Csa).
Selon une autre particularité, le serveur comprend des algorithmes permettant d’accéder au(x) bloc(s) contenant le contenu numérique créé et déclaré, la première valeur de hachage, la première signature et le numéro d’identifiant, lorsqu’un créateur s’enregistre ou s’identifie au serveur par son identifiant (IDC) spécifique.
Selon une autre particularité, le serveur comprend des algorithmes spécifiques et au moins une clé de déchiffrement (Cs) spécifique du serveur permettant de déchiffrer le second message encrypté et une seconde valeur de hachage (Hp) associée au second message du contenu numérique publié.
Selon une autre particularité, le serveur comprend des algorithmes spécifiques permettant au moins une des actions suivantes :
- d’identifier le numéro d’identifiant (IDNc) associé au premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDNp) associé au second message transmis par l’application logicielle utilisateur ;
- de comparer la similitude entre les valeurs de hachage (HA ; HP) pour garantir l’intégrité du contenu numérique publié et/oules numéros d’identifiant (IDNc ; IDNp) pour authentifier le contenu numérique publié sur le réseau informatique.
Selon une autre particularité, le serveur comprend des algorithmes permettant d’identifier et authentifier chaque créateur de contenu par au moins une des clés de hachage, une clé de signature et/ou un numéro d’identifiant spécifiques à chaque créateur enregistré, à partir de l’identifiant (IDC) spécifique à chaque créateur et mémorisé dans la base de données du serveur et/ou à partir du numéro d’identifiant (IDNp) associé au contenu numérique publié pour tous utilisateurs tiers.
Selon une autre particularité, la technologie du réseau de chaîne de blocs est de type « autorisé », « privé » et accessible publiquement pour, d’une part, autoriser seulement le créateur valablement identifié et authentifié à créer et déclarer du contenu numérique, et d’autre part, autoriser tout utilisateur tiers à vérifier l’authenticité du contenu numérique La présente invention a également pour autre objet de proposer un système optimisé et fiable pour vérifier de l’authenticité et de l’intégrité qu’un contenu numérique publié dans un réseau informatique est conforme au contenu numérique créé initialement par son créateur. Ce but est atteint par un système de vérification et d’authentification d’un contenu numérique publié dans un réseau informatique conforme au contenu numérique créé initialement, le système comprenant au moins une plateforme informatique ou un dispositif informatique exécutant une application logicielle utilisateur selon une des particularités de l’invention, communicant et utilisant un serveur informatique selon une des particularités de l’invention, pour créer un contenu numérique pour un créateur valablement et préalablement authentifié et identifié, et le mettre à disposition publique sur le réseau informatique et pour authentifier chaque contenu numérique publié.
D’autres particularités et avantages de la présente invention sont détaillés dans la description qui suit.
DESCRIPTION DES FIGURES ILLUSTRATIVES
D'autres particularités et avantages de la présente invention apparaîtront plus clairement à la lecture de la description ci-après, faite en référence aux dessins annexés, dans lesquels :
- les figures 1a et 1 b représentent un système de vérification et d’authentification d’un contenu numérique publié selon un mode de réalisation, respectivement, d’une première partie du système dans lequel un contenu numérique est créé et déclaré par un créateur identifié et la mise à disposition publique dudit contenu numérique, et d’une seconde partie du système dans lequel le contenu publié est authentifier par un utilisateur tiers.
- les figures 2a et 2b représentent schématiquement un système de vérification et d’authentification d’un contenu numérique publié selon un autre mode de réalisation, respectivement, d’une première partie du système dans lequel un contenu numérique est créé et déclaré par un créateur identifié et la mise à disposition publique dudit contenu numérique, et d’une seconde partie du système dans lequel le contenu publié est authentifier par un utilisateur tiers.
DESCRIPTION DES MODES DE REALISATION PREFERES DE
L'INVENTION
Divers modes de réalisation de l’invention vont maintenant être décrits en référence aux figures 1 et 2 de la présente demande et ils concernent principalement trois groupes d’objets :
- une application logicielle utilisateur (1 a, 1 b) permettant à un utilisateur créateur (a) de créer un contenu numérique, de façon à certifier la provenance et l’originalité du contenu numérique créé ;
- un serveur informatique (2) apte à communiquer avec une application logicielle (1a, 1 b), pour certifier un contenu numérique créé par un créateur authentifié et vérifier l’authenticité de ce contenu numérique publié en ligne ;
- un système (10) utilisant une application logicielle utilisateur (1 a, 1 b) et un serveur informatique (2) pour vérifier et authentifier qu’un contenu numérique publié dans un réseau informatique est conforme au contenu numérique créé initialement.
La présente invention concerne une application logicielle (1a, 1 b) constituant au moins une application utilisateur destinée à être exécutée sur au moins une plateforme informatique ou un dispositif informatique portable pour créer un contenu numérique et authentifier le contenu numérique publié dans un réseau informatique.
L’application logicielle est apte à gérer des mémoires dont au moins une mémoire du matériel informatique (de l’application logicielle) mémorisant un couple de clés de signature (CA) unique associée à chaque application chargée par un créateur, tel qu’une clé « publique » Cpub et une clé « privée » Cpri et cette clé « privée » est non accessible de l’extérieur réalise une signature (S) numérique du contenu. L’application logicielle contient des instructions qui lors de leur exécution par un processeur du matériel informatique permettent de communiquer avec un serveur de base de données distribuée pour permettre la création du contenu et la détermination de l’existence ou non (c'est-à-dire une absence ou une anomalie d’un profil utilisateur) du créateur sur le serveur. L’application logicielle est une succession de séquences d’instruction qui lors de son exécution sur la plateforme informatique ou le dispositif informatique, permet de réaliser en plus au moins une des fonctionnalités suivantes :
- création d’un contenu numérique par un créateur, authentifié et signé après création ou existence d’un profil d’utilisateur acceptée par le serveur qui peut autoriser la création de contenu numérique (par exemple par un message d’approbation) à l’application logicielle utilisateur ;
- génération d’une première valeur de hachage (HA) à partir du contenu créé (par exemple à l’aide d’une clé, de préférence une clé de hachage), et d’une première signature (SA) qui peut être calculée sur le contenu numérique créé et le hachage généré, puis ;
- la déclaration du contenu numérique par l’application en transmettant au serveur un premier message contenant le contenu, associé à la première valeur de hachage (HA) et à une première signature (SA), et d’autre part, pour une mise à disposition publique par le serveur uniquement, sur le réseau informatique du contenu du créateur enregistré et authentifié, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), réception par l’application du créateur d’un numéro d’identifiant (IDNc) spécifique généré par le serveur (par exemple sous forme d’un code QRC qui est code-barres en deux dimensions) ; - la visualisation par un utilisateur tiers à partir de l’application logicielle sur sa plateforme numérique ou son dispositif numérique, du contenu numérique publié par le serveur comprenant en plus du contenu numérique, un hachage (Hp) et un identifiant (IDNp) ; - vérification de l’authentification du contenu numérique publié, dans laquelle, l’application logicielle comprend également des moyens d’exécution configurés pour réaliser une requête d’authentification, d’une part, en générant (ou en calculant) une seconde valeur de hachage (Hp) du contenu publié et en comparant la similitude entre cette seconde valeur (Hp) et la première valeur de hachage (HA) du contenu créé et mémorisé dans l’application, et d’autre part, en transmettant au serveur (2) un second message contenant au moins la seconde valeur (Hp) de hachage identique à la première valeur (HA) de hachage, afin que le serveur certifie l’authentification du contenu numérique publié.
Par exemple, le serveur réalise une comparaison de similitude entre les informations mémorisées du premier message (telles que la première valeur de hachage HA et/ou le numéro d’identifiant IDNc) et les informations provenant du second message (telles que la seconde valeur de hachage Hp et/ou le numéro d’identifiant IDNp et/ou le contenu numérique publié).
La déclaration du contenu numérique créé par une signature (SA) et associée à un (unique et authentique) profil utilisateur permet d’éviter la réappropriation d’un profil/compte utilisateur et rendre fiable tous contenus numériques créés et publiées à partir de ce profil déclaré. L’utilisation d’une signature numérique présente également l’avantage d’imposer à un créateur d’être « sérieux » (c’est à dire à créer et publier uniquement des contenus numériques avec des informations/données authentiques et fiables), afin que la réputation ou la notoriété du créateur (nom et image associés au contenu qu’il publiera) ne soit pas entravée. Dans certains modes de réalisation, l’application logicielle de l’utilisateur (par exemple, le créateur ou l’auteur) comprend des moyens d’exécution permettant :
- de préparer la signature d’un contenu numérique créé par un créateur « sérieux », dans lequel un premier haché (ou premier condensât ou première valeur de hachage ou empreinte HA) du contenu créé, est produit par une fonction de hachage de l’application ;
- puis l’application permet de signer ledit haché à partir d’une clé privée Cpri d’un couple de clés de signature (CA) pour obtenir une signature (SA) du contenu créé ;
- enfin le contenu créé et signé est préparé en plaçant ledit contenu en clair et la signature et/ou le haché dans un conteneur quelconque pour être envoyé au serveur par un canal non sécurisé ou sécurisé.
Le contenu signé est publié par le serveur pour être réceptionné par une application d’une plateforme informatique ou dispositif informatique portable (ou mobile ) d’un utilisateur tiers (ou de l’utilisateur créateur) pour vérifier et valider l’authenticité du contenu publié. Pour cela, l’application comprend des algorithmes permettant :
- de produire un second haché (ou second condensât ou seconde valeur de hachage ou empreinte Hp) du contenu clair et publié en utilisant la fonction de hachage de l’application,
- puis la signature est déchiffrée par l’application avec la clé publique CpUb du couple de clés de signature,
- et enfin comparaison de la similitude entre la signature déchiffrée et le second haché calculé.
Ce mode de réalisation décrit (non-limitativement) un fonctionnement ou une méthode classique de signature par un chiffrement asymétrique et une fonction de hachage. D’autres techniques, connues de l’homme du métier, peuvent être mises en œuvre par l’application de la présente demande pour réaliser une signature numérique sur un contenu numérique. Dans certains modes de réalisation, le contenu numérique final (c'est-à-dire le contenu numérique déclaré et prêt à être publié sur internet) est ancré dans un environnement immuable et sécurisé, par exemple, dans un réseau de chaîne de blocs ou un serveur sécurisé avec un Tiers de confiance qui garantit l’immuabilité des informations.
Dans certains modes de réalisation, le serveur certifie l’authentification du contenu numérique publié en comparant la similitude au moins entre les valeurs de hachage (HA ; Hp) et/ou le numéro d’identifiant (IDNp) du contenu publié et le numéro d’identifiant (IDNc) du contenu créé. Dans certains modes de réalisation, le serveur peut en outre, comparer la similitude entre le contenu créé (original) et le contenu publié.
Dans certains modes de réalisation, la création d’un contenu numérique est réalisée par plusieurs créateurs, de sorte à obtenir plusieurs signatures (SA) associées à chacun desdits créateurs et un unique numéro d’identifiant (IDNc) associé au contenu numérique créé par lesdits créateurs. En effet, plusieurs auteurs peuvent participer à la création d’un contenu numérique pour lesquels une signature est associée à chacun des auteurs et un seul et même identifiant (IDN) est généré par le serveur qui sera spécifique au contenu numérique créé.
Dans certains modes de réalisation, comme représentés par exemple sur les figures 1 a et 2a, l’application logicielle comprend des moyens d’exécution configurés pour réaliser des calculs, d’une part, de la première valeur de hachage (HA) lorsque le contenu numérique a été créé et finalisé par le créateur, et d’autre part, de la signature (SA) à partir du couple de clés de signature (CA) de la mémoire de l’application logicielle, qui est spécifique du contenu numérique et liée à l’application logicielle de l’utilisateur et/ou du créateur. Le hachage du contenu numérique créé permet d’assurer l’intégrité dudit contenu. Ainsi, toute modification (volontaire ou involontaire) du contenu survenant après avoir réalisé une fonction de hachage, change la valeur de hachage attribuée initialement par la fonction. Une comparaison de similitude entre la valeur de hachage attribuée initialement au contenu et la valeur de hachage attribuée après modification du contenu, peut permettre de détecter et vérifier tout changement du contenu numérique et renseigne donc sur l’intégrité du contenu numérique. La signature du contenu numérique créé, étant spécifique à l’application logicielle de l’utilisateur et/ou du créateur, elle permet d’authentifier l’identité d’un créateur de contenu.
Dans certains modes de réalisation, la clé privée Cpri et la clé publique Cpub du couple de clés de signature (CA) sont obtenues simultanément par le profil utilisateur de l’application, afin de créer un lien unique et spécifique entre le nom d’utilisateur du profil et le contenu numérique créé. Lesdites clés peuvent être sauvegardées de façon sécurisées (notamment pour la clé privée qui n’est pas accessible par l’extérieur, alors que la clé publique est partagée au serveur) dans les mémoires de l’application.
Dans certains modes de réalisation, l’utilisateur créateur de l’application a la possibilité également de sauvegarder le couple de clés de signature puisqu’il est généré par l’application du créateur (et donc par le créateur lui- même). Dans ce cas, le créateur prend à sa charge la responsabilité de la sauvegarde (et de la mise au secret ou de la non divulgation) de la clé privée, alors que la clé publique est partagée avec le serveur. La sauvegarde du couple de clés de signature à la charge du créateur, peut être réalisée par l’application ou par d’autres moyens de sauvegarde connus de l’homme du métier.
Dans certains modes de réalisation, l’application logicielle comprend des moyens d’exécution configurés pour créer si nécessaire un profil créateur non encore enregistré, en affichant une application permettant de définir et attribuer plusieurs informations spécifiques liées au créateur pour enregistrer et authentifier le créateur du contenu numérique sur le serveur. La création d’un profil non enregistré (et mémorisé dans le serveur) permet à un nouveau créateur de contenu de pouvoir s’enregistrer en tant que créateur authentifié afin qu’il puisse créer des contenus numériques dont l’intégrité peut être vérifiée, notamment par le système de la présente demande. Par exemple, le créateur s’enregistre et/ou s’identifie à travers l’application avec un identifiant (IDC) et un mot de passe unique et spécifique au créateur qui pourront être mémorisés dans le serveur. Afin d’authentifier un créateur de contenu, l’application propose au créateur de remplir plusieurs informations spécifiques au créateur. Dans certains modes de réalisation, l’application logicielle utilisateur comprend des moyens d’exécution permettant de combiner plusieurs informations spécifiques liées au créateur pour authentifier le créateur du contenu numérique. Par exemple comme représenté sur la figure 2a, l’application peut comprendre des tests permettant de s’assurer que plusieurs informations spécifiques liées au créateur ont bien été définies et attribuées dans le profil de chaque créateur, afin de pouvoir identifier valablement chaque créateur. Dans certains modes de réalisation, les informations spécifiques liées au créateur comprennent selon le degré de fiabilité visé une ou plusieurs informations confidentielles telles que le nom, l’adresse, le travail, les loisirs, la photo d’identité, la carte d’identité ou l’empreinte digitale. Par exemple de manière non limitative, le créateur lors de la création de son profil rempli plusieurs paramètres d’identification à travers des fenêtres (ou cases) de requête d’identification de l’application qui peuvent être vérifié et authentifier par exemple par la lecture et la comparaison des informations provenant de la carte d’identité du créateur, la reconnaissance d’empreinte digitale, la reconnaissance faciale ou tout autres moyens et/ou données permettant d’authentifier l’identité du créateur (pouvant être pré- enregistré dans le serveur).
Dans certains modes de réalisation, l’application logicielle comprend des moyens d’exécution permettant d’organiser de façon chronologique les contenus numériques lors de la création desdits contenus. En effet, le serveur peut tenir compte d’une notion de temporalité associée au contenu numérique créé (et/ou du profil utilisateur) pouvant être sauvegardé dans son registre d’information (ou base de données). Ceci permet de savoir, d’une part, quand un contenu numérique a été créé et publié, et d’autre part, quand ledit contenu a pu être modifié pour pouvoir vérifier un état d’écriture par rapport à un moment donné (ou une date et/ou un horodatage).
Dans certains modes de réalisation, le numéro d’identifiant (IDNp) généré par le serveur et reçu par l’application de l’utilisateur comprend au moins une information sur la date de dépôt et du créateur. En effet, le numéro d’identifiant généré et publié étant unique, il peut permettre d’identifier des informations qui lui sont associées, telles que la date de dépôt/publication (par exemple sous un format « hhmmJJMMAAAA » dans lequel « hh » correspond à une heure, « mm » correspond à une minute, « JJ » correspond au jour, « MM » correspond au mois et « AA » correspond à l’année) et/ou du créateur (par exemple sous le format sous un format « AUTORNAME » ou « NOMAUTEUR » ), de sorte à obtenir, par exemple, une identification sous un format « xyzxyzhhmmJJMMAAAAxyzAUTORNAMExyzxyz ».
Dans certains modes de réalisation, la création de profil s’effectue soit par des instructions contenues dans l’application logicielle utilisateur, soit par des instructions provenant du serveur, après une prise de contact au préalable avec le serveur par un nouveau créateur de contenu sans profil enregistré sur le serveur.
Dans certains modes de réalisation, comme représentés par exemple sur la figure 2a, l’application logicielle comprend des moyens (par exemple à travers des tests informatiques) permettant au créateur d’indiquer l’achèvement ou l’inachèvement de la création du contenu numérique et permettre une sauvegarde temporaire non publique sur les mémoires de l’application. De manière non limitative, l’ajout de test permet à l’application de vérifier et de savoir si l’utilisateur créateur a fini de créer ou non le contenu numérique, avant de le certifier et le publier en ligne. Ainsi, lorsque que le créateur indique sur l’application que son contenu est terminé, l’application peut poursuivre l’exécution des autres séquences d’instructions (notamment le calcul de la première valeur de hachage et de la première signature du contenu). Dans certains modes de réalisation, le second message transmis par l’application au serveur, contient au moins une seconde valeur de hachage (Hp) et/ou le contenu numérique publié, et/ou le numéro d’identifiant (IDNp). L’application logicielle utilisateur tiers est configurée pour calculer (et/ou extraire) la seconde valeur de hachage (Hp) associé au contenu publié. Puis, l’application logicielle utilisateur tiers est configurée transmettre au serveur le second message comprenant au moins la seconde valeur de hachage et/ou le contenu publié, et/ou le numéro d’identifiant (IDNp) pour que le serveur vérifie et certifie l’authenticité du contenu numérique publié en ligne. A partir desdites informations du second message, le serveur comprend des algorithmes spécifiques permettant au moins une des actions suivantes:
- d’identifier le premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDNp) associé au second message transmis par l’application logicielle utilisateur ; - de comparer la similitude entre les valeurs de hachage (HA ; HS) et/ou les numéros d’identifiant (IDNc ; IDNp) pour authentifier le contenu numérique publié sur le réseau informatique.
Dans certains modes de réalisation, le serveur (2) informatique comprend un algorithme permettant de sauvegarder au moins une table de hachage regroupant les hachés déposés et triés par ordre croissant, ainsi que de mettre à jour ladite table. Cette structure de données, dite « table de hachage », est largement utilisée dans les logiciels informatiques pour rechercher rapidement des données. Cette table de hachage peut être utilisée pour comparer et vérifier un contenu numérique publié sans ses sources. Par exemple, un contenu numérique comprenant un texte de quinze lignes est publié par « AUTORNAME », puis son contenu est repris sur un site qui ne donne pas les sources. Dans ce cas, l’application peut réaliser un haché des quinze lignes, puis un autre haché de chaque ligne, et demander au serveur d’identifier lesdits hachés et vérifier le contenu numérique publié, tout en ignorant le numéro d’identifiant publié de ce contenu. Par exemple et de manière non limitative, l’application logicielle utilisateur (1 a) fournit au moins un menu navigateur « création et déclaration de contenu authentique » (exemple, figure 1a) permettant à un ou plusieurs utilisateurs créateurs (a) de réaliser au moins une des fonctionnalités suivantes :
- créer un contenu numérique ;
- possibilité de modifier un contenu numérique jusqu’à finalisation complète du contenu ;
- enregistrer un contenu numérique en créant une valeur de hachage et une signature spécifique de l’application logicielle utilisée par un créateur et/ou spécifique au créateur lui-même ;
- créer ou se connecter à un profil d’utilisateur créateur pour s’authentifier ;
- déclarer un contenu numérique haché et signé à partir d’un profil utilisateur créateur identifié et mémorisé (dans le serveur) ;
- déposer un contenu numérique déclaré (ou le contenu numérique final) avec sa valeur de hachage et sa signature, de façon immuable (ou non modifiable) dans un serveur de base de données distribuée ;
- obtenir un numéro d’identifiant (IDNc) spécifique associé au contenu numérique déclaré par le serveur ;
- mise à disposition publique d’un contenu numérique déclaré par le serveur.
De même, par exemple et de manière non limitative, l’application logicielle utilisateur (1 b) fournit au moins un menu navigateur « visualisation et authentification de contenu » (exemple, figure 2b) permettant à un ou plusieurs utilisateurs tiers de réaliser au moins une des fonctionnalités suivantes :
- visualiser un contenu numérique publié dans un réseau informatique ;
- demander une vérification de l’authenticité du contenu publié ;
- calculer une valeur de hachage correspondant au contenu numérique publié pour pouvoir vérifier l’originalité du contenu ; - comparer la similitude entre les valeurs de hachage ;
- indiquer un contenu publié non conforme au contenu créé lorsque les valeurs de hachage diffèrent ;
- vérifier l’authenticité sur le créateur du contenu numérique publié (validé par le serveur, par exemple en comparant la similitude entre les numéros d’identifiant IDNc/IDNp) pour obtenir un message d’approbation ou de corruption sur l’authenticité et l’intégrité d’un contenu numérique publié.
Dans certains modes de réalisation, la plateforme informatique est un site internet ou un serveur. Dans certains modes de réalisation, le dispositif informatique portable ou mobile est un ou plusieurs téléphone portable, ordinateur, une tablette tactile, etc. et pouvant contenir ou connectable à au moins une caméra, un dispositif de lecture, un périphérique d’entrée et/ou un scanneur. Le dispositif informatique portable peut avoir une connexion à internet et au moins un navigateur internet.
Dans certains modes de réalisation, les échanges d’informations (par exemple de contenu numérique, des instructions, des notifications, des mises à jour, etc.) entre l’application logicielle et le serveur de base de données distribuée sont réalisés soit sur un réseau sécurisé et crypté ou sur un réseau public. Lorsque le serveur reçoit un message sur un réseau crypté, il comprend un moyen de décryptage supplémentaire pour décrypter le message crypté. Alors que, lorsque le serveur reçoit un message sur un réseau non-crypté, il est capable de lire directement le message à extraire (sans module ou étape supplémentaire).
La présente invention concerne également un serveur informatique (2) comprenant un programme d’ordinateur qui lors de son exécution par un système informatique permet au moins de réaliser une des actions suivantes: - générer des messages permettant à un utilisateur de s’enregistrer (ou « logger » ou « user register » en anglais), de créer un contenu numérique même si l’utilisateur n’est pas encore inscrit,
- d’enregistrer le contenu dans sa base de données uniquement lorsque le profil du créateur a été complété ou est déjà mémorisé,
- de créer un identifiant (IDC) spécifique à chaque créateur (a). Le serveur permet en outre au moins une des opérations suivantes:
- l’enregistrement du créateur et/ou du contenu s’effectue par un réseau de chaîne de blocs (3) pour mémoriser dans une mémoire d’une base de données distribuées du réseau de chaîne de blocs, au moins un premier message comprenant un contenu numérique créé et déclaré, associé à une première valeur de hachage (HA) et à une première signature (SA), à partir d’une application logicielle utilisateur (1 a, 1 b) d’une plateforme informatique ou d’un dispositif informatique selon une des particularités de la présente invention, s’interfaçant avec le serveur ;
- la génération par le serveur d’un numéro d’identifiant (IDNc) spécifique envoyé au créateur, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), et d’autre part, la mise à disposition publique du contenu numérique crée et déclaré sur le réseau informatique, uniquement pour un créateur mémorisé et authentifié sur le serveur en association avec le hachage et le numéro d’identifiant :
- vérification de l’authenticité du contenu numérique mis à disposition publique ou publié sur le réseau informatique, après formulation d’une requête d’authentification par l’application logicielle d’un utilisateur tiers à partir de sa plateforme numérique ou de son dispositif numérique.
Dans certains modes de réalisation, le contenu numérique final (c'est- à-dire le contenu numérique déclaré et prêt à être publié sur internet) est ancré dans un environnement immuable et sécurisé. Par exemple, ledit contenu peut être déposé dans un réseau de chaîne de blocs. Dans certains modes de réalisation, un réseau autre que le réseau de chaîne de blocs peut être utilisé, par exemple un serveur sécurisé avec un Tiers de confiance qui garantit l’immuabilité des informations. Dans la présente invention, une technologie (ou système ou réseau) de chaîne de blocs (ou « Distributed Ledger Technology » DLT ou « blockchain » en anglais) est adaptée afin d’offrir plusieurs avantages en termes de provenance, de certification et de traçabilité.
La chaîne de blocs (3) n’est pas un système de provenance classique, mais plutôt un type de base de données (ou registre) distribuée dont les informations envoyées par les utilisateurs et les liens internes à la base sont vérifiés et regroupés à intervalles de temps réguliers en blocs et formant ainsi une chaîne. Cette chaîne de blocs (3) est capable de stocker des informations de manière sécurisée par le biais de preuves cryptographiques, sans avoir besoin d’une instance centrale (de confiance). La chaîne de blocs (3) stocke donc les informations sous forme de blocs, qui sont concaténés en une chaîne et stockés de manière distribuée. Chaque bloc possède une référence au bloc précédent, ce qui permet de traverser l’intégralité de la chaîne depuis le dernier bloc. Étant donné que de nouveaux blocs peuvent être ajoutés en même temps, des « ramifications » peuvent apparaître, et engendrer plusieurs derniers blocs. Une seule chaîne peut être valide pour garantir un dernier bloc unique, et est déterminée par un protocole de consensus.
Chaque bloc comprend plusieurs transactions, qui sont sécurisées avec une cryptographie asymétrique. Chaque nouvelle transaction peut être validée par des utilisateurs ou des mineurs, ce qui crée ainsi une chaîne de transactions validées. En guise de preuve de validité, le propriétaire d’une transaction en cours signe numériquement une valeur de hachage de la nouvelle transaction. La valeur de hachage utilise la transaction actuelle et la clé cryptographique du propriétaire de la nouvelle transaction comme entrée. Il est important de noter que la chaîne de blocs (3) est dépourvue d’état. Les transactions stockées dans un bloc sont le seul état existant.
Le terme « transaction » désigne généralement tous les messages échangés pour assurer la consommation d’un service. Une transaction, comme pour les bases de données, est soit exécutée en entier (consommation réussie du service, avec tous les échanges de messages connexes), soit en échec (aucune consommation de service).
Le terme « hachage » (ou « hash » en anglais) désigne la valeur renvoyée par une fonction de hachage (ou un code exécutable). Une fonction de hachage est n’importe quelle fonction qui peut être utilisée pour mapper des données de taille arbitraire par rapport à des données de taille fixe. Par exemple, comme représenté sur les figures, « SHA-256 » est une fonction parmi d’autres fonctions qui peut produire un hachage, mais de nombreux algorithmes peuvent être utilisés pour produire un hachage de données numériques de départ et / ou de contenu numérique.
Une fonction de hachage cryptographique idéale possède les quatre propriétés suivantes :
• la valeur de hachage d'un message se calcule « très rapidement » ;
• il est, par définition, impossible, pour une valeur de hachage donnée, de construire un message ayant cette valeur de hachage ;
• il est, par définition, impossible de modifier un message sans changer sa valeur de hachage ;
• il est, par définition, fortement improbable de trouver deux messages différents ayant la même valeur de hachage
Un exemple d’utilisation est une structure de données appelée « table de hachage », largement utilisée dans les logiciels informatiques pour rechercher rapidement des données. Les fonctions de hachage accélèrent la recherche dans une table ou une base de données, par exemple en détectant les enregistrements en double dans un fichier de grande taille. Exemple : recherche de tronçons similaires dans des séquences ADN. Elles sont également utiles pour la cryptographie. Une fonction de hachage cryptographique permet de vérifier facilement que certaines données d’entrée sont mappées par rapport à une valeur de hachage donnée, mais si les données d’entrée sont inconnues, il est délibérément difficile de les reconstruire (ou autre) en connaissant la valeur de hachage stockée. Celle-ci est utilisée pour garantir l’intégrité des données transmises.
La création d’un bloc capable de stocker des transactions dans la chaîne de blocs (3) peut consister, par exemple (comme dans les « Bitcoins »), à trouver certaines valeurs nonce (nombre aléatoire ou pseudo-aléatoire destiné à être utilisé une seule fois) de sorte que la valeur de hachage pour les transactions à stocker commence par un groupe de zéros.
Cela est également désigné par « minage » (Bitcoin); le mineur est récompensé avec des bitcoins pour ses efforts de calcul. Un nouveau bloc, s’il est vérifié par d’autres explorateurs, est ensuite ajouté à la chaîne à blocs (3), qui sert de confirmation de stockage pour les transactions associées.
Par mineur, on entend une personne (et/ou d’un module informatique autonome) qui dispose d'au moins d’une architecture matérielle et logicielle pour mettre en œuvre le procédé de minage ci-dessus.
Dans certains modes de réalisation, le serveur (2) de base de données distribuée comprend un algorithme pour générer un horodatage (ou « timestamp » en anglais), de préférence sans limitation d’heure ou date « absolue » de la création du contenu, du contenu numérique créé et déclaré. On notera que par le terme « horodatage ou timestamp », on définit un ordre chronologique des transactions et des blocs entre eux. Le timestamp et le numéro d’identifiant (IDN), pouvant résulter d’un chiffrement, par une clé de chiffrement (Ce) spécifique du serveur, du contenu numérique transmis par l’application logicielle, sont mémorisés dans la base de données sous un format de fichier « log » distribué et immuable dans un des blocs immuables de la chaîne de blocs.
Dans certains modes de réalisation, pour chaque créateur (a) valablement enregistré à travers l’application logicielle utilisateur (1a, 1 b), le serveur (2) comprend dans sa base de données un espace mémorisant spécifiquement (par exemple sus forme de table) une clé de hachage (Cha), une clé de signature (Csa) et/ou une clé de chiffrement (Cca). De manière non limitative, la clé de hachage permet de déchiffrer la valeur de hachage associée au contenu numérique publié, la clé de signature permet de calculer (et/ou déchiffrer) la seconde valeur de signature associée au contenu publié et la clé de chiffrement permet de chiffrer (ou crypter) le contenu numérique créé et déclaré (par exemple : par un timestamp et un numéro d’identifiant). Le serveur peut comprendre en outre une clé de déchiffrement, lorsque les messages reçus sont encryptés. Ces clés sont spécifiques à chaque application utilisateur créateur (et donc du créateur) et mémorisées dans la base du serveur, afin que ce dernier puisse exécuter de manière sécurisée et automatisée les requêtes d’instructions reçues par l’application logicielle utilisateur (créateur ou tiers).
Dans certains modes de réalisation, le serveur comprend des algorithmes permettant d’identifier et authentifier chaque créateur de contenu par au moins une des clés de hachage, une clé de signature et/ou un numéro d’identifiant spécifiques à chaque créateur enregistré, à partir de l’identifiant (IDC) spécifique à chaque créateur et mémorisé dans la base de données du serveur et/ou à partir du numéro d’identifiant (IDNp) associé au contenu numérique publié pour tous utilisateurs tiers. Par exemple et de manière non limitative, le serveur est configuré pour accéder à l’espace mémoire stockant la première valeur de hachage, la première valeur de signature et/ou le numéro d’identifiant (IDNc) du contenu numérique créé à partir du profil utilisateur de chaque créateur (notamment par l’enregistrement ou l’identification authentifié du créateur par son identifiant (IDC) spécifique) et/ou le numéro d’identifiant (IDNp) transmis par le tiers (qui est extraite du second message du contenu publié).
Dans certains modes de réalisation, le serveur comprend des algorithmes permettant d’accéder au(x) bloc(s) contenant le contenu numérique créé et déclaré du réseau de la chaîne de blocs, la première valeur de hachage (HA), la première signature (SA) et le numéro d’identifiant (IDN), lorsqu’un créateur s’enregistre ou s’identifie au serveur par son identifiant (IDC) spécifique. En effet, le serveur identifie et authentifie chaque créateur par son identifiant (IDC) spécifique (et son mot de passe d’ouverture du compte ou profil créateur), afin d’autoriser les transactions entre l’application logicielle utilisateur du créateur et le serveur informatique. Cette configuration permet de contrôler la certification de l’identité de chaque créateur de contenu et la provenance de chaque contenu numérique déposé sur le serveur. Ainsi, le serveur accède seulement au contenu numérique d’un créateur identifié et mémorisé dans le serveur.
Dans certains modes de réalisation, le serveur comprend des algorithmes spécifiques et au moins une clé de déchiffrement (Cs) spécifique du serveur permettant de déchiffrer le second message encrypté et la seconde valeur de hachage (Hs) associée au contenu numérique publié. Ainsi, le serveur est configuré pour vérifier l’authenticité et l’intégrité du contenu publié à partir des valeurs de hachage (HA ; Hs) et du numéro d’identifiant (IDNp).
Dans certains modes de réalisation, le serveur comprend des algorithmes spécifiques permettant :
- d’identifier le numéro d’identifiant (IDNc) associé au premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDNp) associé au second message transmis par l’application logicielle utilisateur ;
- de comparer la similitude entre, d’une part, les valeurs de hachage (HA ; Hs) pour garantir l’intégrité du contenu numérique publié, et/ou les numéros d’identifiant (IDNc ; IDNp) pour authentifier le contenu numérique publié sur le réseau informatique.
Par exemple comme représenté sur la figure 2b, et de manière non limitative, le serveur est configuré pour chercher dans sa base de données le numéro d’identifiant (IDNc) mémorisé similaire et/ou correspondant au numéro d’identifiant (IDNp) reçu par le second message (contenant ou non le numéro d’identifiant IDNc). A partir du numéro d’identifiant (IDNc) dans la base, qui est spécifique au contenu numérique créé et déclaré par un créateur et donc du premier message, le serveur peut identifier la première valeur de hachage (HA) et la première signature (SA) disponibles dans les mémoires du serveur et associées au numéro d’identifiant (IDNc) et donc au contenu numérique original. Après vérification, le serveur notifie l’application utilisateur tiers par deux types de notifications d’authentification : soit une approbation que le contenu numérique publié est conforme au contenu numérique créé et déclaré et donc original, lorsque les numéros d’identifiant (INDc ; IDNp) et/ou les valeurs de hachage (HA ; HP) sont similaires entre elles ; soit une infirmation que le contenu numérique publié n’est pas conforme au contenu numérique original, lorsque les numéros d’identifiant (INDc ; IDNp) et/ou les valeurs de hachage (HA ; Hs) ne sont pas similaires entre elles. (NK : je ne comprends pas ces deux signatures...)
Dans certains modes de réalisation, les algorithmes spécifiques du serveur permettent, d’une part, de valider l’intégrité du contenu numérique publié lorsque les valeurs de hachages (HA ; Hp) sont similaires, et d’autre part, de valider l’authenticité du créateur du contenu numérique publié lorsque les valeurs de signatures (HA ; HP) sont similaires. Dans certains modes de réalisation, comme représenté par exemple sur la figure 2b, la vérification de l’authentification par comparaison des valeurs de hachage (HA ; HP) et/ou des numéros d’identifiant (INDc ; IDNp) peut être réalisée sous forme de tests par un ou plusieurs algorithmes du serveur. Dans certains modes de réalisation, la technologie du réseau de chaîne de blocs est de type « autorisé », « privé » et accessible publiquement pour, d’une part, autoriser seulement le créateur valablement identifié et authentifié à créer et déclarer du contenu numérique, et d’autre part, autoriser tout utilisateur tiers à vérifier l’authenticité du contenu numérique. Cette configuration permet de protéger la falsification du contenu numérique créé et/ou de l’identité du créateur de contenu. Dans certains modes de réalisation, le serveur peut comprendre un réseau de chaîne de blocs distinct, qui autorise et utilisé uniquement par des utilisateurs créateurs pour créer leur profil et leurs contenus numériques, d’un second réseau de chaîne de blocs, qui autorise et est utilisé par des utilisateurs tiers pour vérifier le contenu publié en ligne, mais ces deux réseaux de chaîne de blocs sont liés entre eux.
Dans certains modes de réalisation, les dépôts validés de contenus numériques dans les blocs de la chaîne de blocs peuvent être réalisés, soit par un module de minage distribué permettant d’automatiser la validation de l’enregistrement du contenu source par son créateur dans la chaîne de blocs de la plateforme, soit par le dépositaire de contenu lui-même. Dans ce dernier cas, chaque dépositaire (ou créateur dépositaire) est en charge de créer son propre enregistrement de contenu et de profil et la chaîne de bloc vérifie que le format de dépôt est correct en attribuant par exemple un nouvel identifiant d’enregistrement.
Par exemple et de manière non limitative, le serveur informatique (2) réalise au moins une des opérations suivantes :
- enregistrer et mémoriser un profil utilisateur créateur dans sa base de données ;
- authentifier un créateur de contenu ;
- mémoriser un contenu numérique créé (associant un hachage et une signature) et déclaré par le créateur authentifié dans sa base de données (par exemple, dans une chaîne de blocs) ; mémoriser les différents clés (hachage, signature, cryptage etc.) permettant de chiffrer et déchiffrer un code associé au contenu numérique ;
identifier le contenu créé à partir d’un numéro d’identifiant associé au contenu publié ;
vérifier l’intégrité du contenu publié ;
comparer les valeurs de hachage du contenu publié et du contenu créé ;
vérifier l’authenticité du créateur du contenu publié ;
comparer les valeurs de signature du contenu publié et du contenu créé ;
notifier l’utilisateur tiers de la conformité de l’originalité ou non du contenu publié.
La présente demande concerne également un système (10) de vérification et d’authentification d’un contenu numérique publié dans un réseau informatique conforme au contenu numérique créé initialement, le système comprenant au moins une plateforme informatique ou un dispositif informatique exécutant une application logicielle utilisateur selon un des modes de réalisation de l’invention, communicant et utilisant un serveur informatique selon un des modes de réalisation de l’invention, pour créer un contenu numérique pour un créateur valablement authentifié et identifié, et le mettre à disposition publique sur le réseau informatique et pour authentifier chaque contenu numérique publié. Le système (10) de la présente invention présente comme avantage que seuls les utilisateurs créateurs (ou auteurs) « authentifiés et déclarés » puissent bénéficier d’une garantie de preuve d’origine contrôlée du contenu numérique, et de son intégrité. Ce système présente également comme avantage de gérer efficacement et en temps réel la « e-Reputation » (ou la réputation en ligne sur internet d’une personne physique (particulier) ou morale (entreprise) ou d’une entité (marque)) de chaque créateur de contenu, en assurant authentification sécurisée et fiable de l’identité de chaque créateur de contenu et en évitant que le système (ou le réseau de chaîne de blocs) soit pollué par des contenus falsifiés et erronés.
On comprendra aisément à la lecture de la présente demande que les composants de la présente invention, comme généralement décrits et illustrés dans les figures, peuvent être arrangés et conçus selon une grande variété de configurations différentes. Ainsi, la description de la présente invention et les figures afférentes ne sont pas prévues pour limiter la portée de l'invention mais représentent simplement des modes de réalisation choisis.
Plusieurs unités fonctionnelles décrites dans la présente description ont été nommées « modules », afin de souligner leur indépendance d'exécution. Par exemple, un module peut être mis en œuvre par circuit électronique, tel qu’un circuit intégré par exemple ou par d’autre types d’arrangement de composants, tels que par exemple des semi-conducteurs, des portes logiques, des transistors ou d'autres composants discrets. De tels modules peuvent également être mis en œuvre par une ou plusieurs application(s) logicielle(s) ou portion(s) de code exécutable(s) au sein d’au moins un environnement logiciel, pour l'exécution par divers types de processeurs et ce, quel que soit le langage utilisé. Un module identifié peut, par exemple, comporter un ou plusieurs blocs physiques ou logiques d’instructions machine qui peuvent, par exemple, être organisés en objet, procédé, ou fonction. De plus, les routines et instructions d'un module identifié n'ont pas besoin d'être physiquement localisés ensemble, mais peuvent comporter des instructions disparates stockées dans différents endroits qui, une fois réunis fonctionnellement et logiquement ensemble, forment le module et réalisent le but indiqué pour le module.
En effet, un module peut être une instruction simple de code exécutable, ou une pluralité d'instructions, et peut même être distribué parmi plusieurs différents segments de code ou parmi différents programmes et stocké dans plusieurs blocs de mémoires. De même, des données opérationnelles peuvent être identifiées et illustrées dans des modules, et peuvent être incorporées sous n'importe quelle forme appropriée et être organisées dans n'importe quel type approprié de structure de données. Les données opérationnelles peuvent être rassemblées ou peuvent être réparties sur différents endroits incluant différents dispositifs de stockage finis, et peuvent exister, au moins partiellement, simplement en tant que signaux électroniques sur un système ou un réseau. De plus, par le terme système, on entend ici tout type de terminal ou dispositif agencé pour effectuer les fonctions décrites en référence aux modules. Le système comporte des moyens de traitement de données permettant de réaliser ces fonctions décrites et pourra donc comporter des circuits spécifiques réalisant ces fonctions ou comporter, d’une manière générale, des ressources informatiques permettant d’exécuter les instructions décrites précédemment.
Les références dans la présente description à une implémentation, un mode ou une variante de réalisation signifie qu'un dispositif, ou un module, ou une structure, ou une caractéristique particulière décrite est inclus dans au moins un mode de réalisation de la présente invention et que les différents exemples ne se rapportent pas forcément au même mode de réalisation.
En outre, les dispositifs, les structures, ou les caractéristiques décrites peuvent être combinés de n'importe quelle façon appropriée dans un ou plusieurs mode(s) de réalisation, à moins qu’ils ne soient incompatibles entre eux. Dans la présente description, de nombreux détails spécifiques sont fournis à titre illustratif et nullement limitatif, de façon à détailler précisément l’invention. L’homme de métier comprendra cependant que l'invention peut être réalisée en l’absence d’un ou plusieurs de ces détails spécifiques ou avec des variantes. A d’autres occasions, certains aspects ne sont pas détaillés de façon à éviter d’obscurcir et alourdir la présente description et l’homme de métier comprendra que des moyens divers et variés pourront être utilisés et que l’invention n’est pas limitée aux seuls exemples décrits. La présente demande décrit diverses caractéristiques techniques et avantages en référence aux figures et/ou à divers modes de réalisation. L’homme de métier comprendra que les caractéristiques techniques d’un mode de réalisation donné peuvent en fait être combinées avec des caractéristiques d’un autre mode de réalisation à moins que l’inverse ne soit explicitement mentionné ou qu’il ne soit évident que ces caractéristiques sont incompatibles ou que la combinaison ne fournisse pas une solution à au moins un des problèmes techniques mentionnés dans la présente demande. De plus, les caractéristiques techniques décrites dans un mode de réalisation donné peuvent être isolées des autres caractéristiques de ce mode à moins que l’inverse ne soit explicitement mentionné.
Il doit être évident pour les personnes versées dans l'art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration, mais peuvent être modifiés dans le domaine défini par la protection demandée, et l'invention ne doit pas être limitée aux détails donnés ci-dessus.

Claims

REVENDICATIONS
1. Application logicielle constituant au moins une application utilisateur destinée à être exécutée sur au moins une plateforme informatique ou un dispositif informatique portable pour créer un contenu numérique et authentifier le contenu numérique publié dans un réseau informatique, l’application logicielle gérant des mémoires dont au moins une mémoire du matériel informatique mémorisant un couple de clés de signature (CA) unique associée à chaque application chargée par un créateur, cette clé non accessible de l’extérieur réalisant une signature (S) numérique du contenu et l’application logicielle contenant des instructions qui lors de leur exécution par un processeur du matériel informatique permettent de communiquer avec un serveur de base de données distribuées pour permettre la création du contenu et la détermination de l’existence ou non du créateur sur le serveur; l’application logicielle étant caractérisée en ce qu’elle est une succession de séquence d’instruction qui lors de son exécution sur la plateforme informatique ou le dispositif informatique, permet de réaliser en plus les fonctionnalités suivantes :
- la génération d’une première valeur de hachage (HA) à partir du contenu et d’une clé et d’une première signature (SA) calculée sur le contenu et le hachage, puis ;
- la déclaration du contenu numérique par l’application en transmettant au serveur un premier message contenant le contenu, associé à la première valeur de hachage (HA) et à la première signature (SA), et en ce qu’elle permet en outre de réaliser au moins une des fonctionnalités suivantes :
- création d’un contenu numérique par un créateur, authentifié et signé après création ou existence d’un profil d’utilisateur acceptée par le serveur qui autorise par un message à l’application ; - pour une mise à disposition publique par le serveur uniquement, sur le réseau informatique du contenu du créateur enregistré et authentifié, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), réception par l’application du créateur d’un numéro d’identifiant (IDN) spécifique généré par le serveur, par exemple sous forme d’un code QRC;
- la visualisation par un utilisateur tiers à partir de l’application logicielle sur sa plateforme numérique ou son dispositif numérique, du contenu numérique publié par le serveur comprenant en plus du contenu le hachage et l’identifiant ; - vérification de l’authentification du contenu numérique publié, dans laquelle, l’application logicielle comprend également des moyens d’exécution configurés pour réaliser une requête d’authentification, d’une part, en générant une seconde valeur de hachage (Hp) du contenu publié et en comparant la similitude entre la première (HA) et la seconde (Hp) valeurs de hachage, et d’autre part, en transmettant au serveur un second message contenant au moins la seconde valeur (Hp) de hachage identique à la première valeur (HA) de hachage, afin que le serveur certifie l’authentification du contenu numérique publié.
2. Application logicielle selon la revendication 1 , caractérisée en ce qu’elle comprend des moyens d’exécution configurés pour réaliser des calculs, d’une part, de la première valeur de hachage (HA) lorsque le contenu numérique a été créé et finalisé par le créateur, et d’autre part, de la signature (SA) à partir du couple de clés de signature (CA) de la mémoire de l’application logicielle, qui est spécifique du contenu numérique et liée à l’application logicielle de l’utilisateur et/ou du créateur.
3. Application logicielle selon la revendication 1 ou 2, caractérisée en ce qu’elle comprend des moyens d’exécution configurés pour créer si nécessaire un profil créateur non encore enregistré, en affichant une application permettant de définir et attribuer plusieurs informations spécifiques liées au créateur pour enregistrer et authentifier le créateur du contenu numérique sur le serveur.
4. Application logicielle selon une des revendications 1 à 3, caractérisée en ce que l’application logicielle comprend des moyens d’exécution permettant d’organiser de façon chronologique les contenus numériques lors de la création desdits contenus.
5. Application logicielle selon une des revendications 1 à 4, caractérisée en ce que le numéro d’identifiant généré par le serveur et reçu par l’application de l’utilisateur comprend au moins une information sur la date de dépôt et du créateur.
6. Application logicielle utilisateur selon une des revendications 3 à 5, caractérisée en ce que la création de profil s’effectue soit par des instructions contenues dans l’application logicielle utilisateur, soit par des instructions provenant du serveur, après une prise de contact avec le serveur par un nouveau créateur de contenu sans profil enregistré sur le serveur.
7. Application logicielle utilisateur selon une des revendications 1 à 6, caractérisée en ce qu’elle comprend des moyens permettant au créateur d’indiquer l’achèvement ou l’inachèvement de la création du contenu numérique et permettre une sauvegarde temporaire non publique.
8. Application logicielle utilisateur selon unes des revendications 3 à 7, caractérisée en ce qu’elle comprend des moyens d’exécution permettant de combiner plusieurs informations spécifiques liées au créateur pour authentifier le créateur du contenu numérique.
9. Application logicielle utilisateur selon la revendication 8, caractérisée en ce que les informations spécifiques liées au créateur comprennent selon le degré de fiabilité visé une ou plusieurs informations confidentielles telles que le nom, l’adresse, le travail, les loisirs, la photo d’identité, la carte d’identité ou l’empreinte digitale.
10. Application logicielle utilisateur selon une des revendications 1 à 9, caractérisée en ce que la création d’un contenu numérique est réalisée par plusieurs créateurs, de sorte à obtenir plusieurs signatures (SA) associées à chacun desdits créateurs et un unique numéro d’identifiant (IDNc) associé au contenu numérique créé par lesdits créateurs.
1 1 .Application logicielle utilisateur selon une des revendications 1 à 10, caractérisée en ce que le couple de clés de signature comprend une clé privée et une clé publique qui sont générées simultanément lors de la création du profil d’utilisateur, et sauvegardées de façon sécurisées dans les mémoires de l’application.
12. Application logicielle utilisateur selon une des revendications 1 à 1 1 , caractérisée en ce que le second message comprend en outre le contenu numérique publié et/ou le numéro d’identifiant (IDNp).
13. Application logicielle utilisateur selon une des revendications 1 à 12, caractérisée en ce que le serveur comprend des algorithmes spécifiques permettant au moins une des actions suivantes :
- d’identifier le premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDN) associé au second message transmis par l’application logicielle utilisateur ;
- de comparer la similitude entre les numéros d’identifiant (IDNp ; IDNc) pour certifier l’intégrité du contenu et authentifier le contenu numérique publié sur le réseau informatique.
14. Serveur informatique comprenant un programme qui lors de son exécution par un système informatique permet au moins de réaliser une des actions suivantes :
- générer des messages permettant à un utilisateur de s’enregistrer, de créer un contenu même si l’utilisateur n’est pas encore inscrit, - d’enregistrer le contenu dans sa base de données uniquement lorsque le profil du créateur a été complété ou est déjà mémorisé,
- de créer un identifiant (IDC) spécifique à chaque créateur ; caractérisé en ce qu’il permet en outre l’enregistrement du créateur et/ou du contenu s’effectue par un réseau de chaîne de blocs pour mémoriser dans une mémoire d’une base de données distribuées du réseau de chaîne de blocs, au moins un premier message comprenant un contenu numérique créé et déclaré, associé à une première valeur de hachage (HA) et à une première signature (SA), à partir d’une application logicielle utilisateur d’une plateforme informatique ou d’un dispositif informatique selon une des revendication 1 à 13, s’interfaçant avec le serveur ; et en ce qu’il permet au moins une des opérations suivantes :
- la génération par le serveur d’un numéro d’identifiant (IDN) spécifique envoyé au créateur, après vérification par le serveur de la signature (SA) et de la valeur de hachage (HA), et d’autre part, la mise à disposition publique du contenu numérique crée et déclaré sur le réseau informatique, uniquement pour un créateur mémorisé et authentifié sur le serveur en association avec le hachage et le numéro d’identifiant ;
- vérification de l’authenticité du contenu numérique mis à disposition publique ou publié sur le réseau informatique, après formulation d’une requête d’authentification par l’application logicielle d’un utilisateur tiers à partir de sa plateforme numérique ou de son dispositif numérique.
15. Serveur selon la revendication 14, caractérisé en ce que le serveur de base de données distribuée comprend un algorithme pour générer un horodatage (« timestamp ») du contenu numérique créé et déclaré ; le timestamp et le numéro d’identifiant (IDN) résultant d’un chiffrement, par une clé de chiffrement (Ce) spécifique du serveur, du contenu numérique transmis par l’application logicielle, sont mémorisés dans la base de données sous un format de fichier « log » distribués et immuables dans un des blocs immuables de la chaîne de blocs.
16. Serveur selon la revendication 14 ou 15, caractérisé en ce que, pour chaque créateur (a) enregistré, le serveur comprend dans sa base de données un espace mémorisant spécifiquement une clé de hachage (Cha) et une clé de signature (Csa).
17. Serveur selon une des revendication 14 à 16, caractérisé en ce que le serveur comprend des algorithmes permettant d’accéder au(x) bloc(s) contenant le contenu numérique créé et déclaré, la première valeur de hachage, la première signature et le numéro d’identifiant, lorsqu’un créateur s’enregistre ou s’identifie au serveur par son identifiant (IDC) spécifique.
18. Serveur selon une des revendications 14 à 17, caractérisée en ce que le serveur comprend des algorithmes spécifiques et au moins une clé de déchiffrement (Cs) spécifique du serveur permettant de déchiffrer le second message encrypté et une seconde valeur de hachage (Hp) associée au second message du contenu numérique publié.
19. Serveur selon la revendication 18, caractérisée en ce que le serveur comprend des algorithmes spécifiques permettant :
- d’identifier le numéro d’identifiant (IDN) associé au premier message sauvegardé dans le serveur à partir du numéro d’identifiant (IDN) associé au second message transmis par l’application logicielle utilisateur ;
- de comparer la similitude entre, d’une part, les valeurs de hachage (HA ; Hp) pour garantir l’intégrité du contenu numérique publié, et d’autre part, les numéros d’identifiant (IDNc ; IDNp) pour authentifier le contenu numérique publié sur le réseau informatique.
20. Serveur selon une des revendications 16 à 19, caractérisée en ce que le serveur comprend des algorithmes permettant d’identifier et authentifier chaque créateur de contenu par au moins une des clé de hachage, une clé de signature et/ou un numéro d’identifiant spécifiques à chaque créateur enregistré, à partir de l’identifiant (IDC) spécifique à chaque créateur et mémorisé dans la base de données du serveur et/ou à partir du numéro d’identifiant (IDN) associé au contenu numérique publié pour tous utilisateurs tiers.
21. Serveur selon un des revendications 14 à 20, caractérisée en ce que la technologie du réseau de chaîne de blocs est de type « autorisé » et « privé » pour, d’une part, autoriser seulement le créateur valablement identifié et authentifié à créer et déclarer du contenu numérique, et d’autre part, autoriser tout utilisateur tiers à vérifier l’authenticité du contenu numérique
22. Système (10) de vérification et d’authentification d’un contenu numérique publié dans un réseau informatique conforme au contenu numérique créé initialement, le système (10) étant caractérisé en ce qu’il comprend au moins une plateforme informatique ou un dispositif informatique exécutant une application logicielle utilisateur selon une des revendications 1 à 13 communicant et utilisant un serveur informatique selon une des revendications 14 à 21 , pour créer un contenu numérique pour un créateur valablement authentifié et identifié, et le mettre à disposition publique sur le réseau informatique et pour authentifier chaque contenu numérique publié.
PCT/EP2019/064352 2018-06-04 2019-06-03 Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié WO2019233951A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP19730283.9A EP3803670A1 (fr) 2018-06-04 2019-06-03 Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1854828A FR3082023B1 (fr) 2018-06-04 2018-06-04 Une application logicielle et un serveur informatique pour authentifier l’identite d’un createur de contenu numerique et l’integrite du contenu du createur publie
FR1854828 2018-06-04

Publications (1)

Publication Number Publication Date
WO2019233951A1 true WO2019233951A1 (fr) 2019-12-12

Family

ID=65031230

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2019/064352 WO2019233951A1 (fr) 2018-06-04 2019-06-03 Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié

Country Status (3)

Country Link
EP (1) EP3803670A1 (fr)
FR (1) FR3082023B1 (fr)
WO (1) WO2019233951A1 (fr)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625780A (zh) * 2020-01-15 2020-09-04 支付宝(杭州)信息技术有限公司 一种基于区块链的音频作品授权方法、装置及设备
CN112347456A (zh) * 2020-10-28 2021-02-09 达闼机器人有限公司 程序验证方法和装置、平台和用户终端及在线服务***
CN112685795A (zh) * 2020-12-31 2021-04-20 树根互联技术有限公司 数字存证创建方法、数字存证验证方法和数字存证***
CN114338174A (zh) * 2021-12-30 2022-04-12 李秦豫 一种网络传输方法
CN114866260A (zh) * 2022-07-05 2022-08-05 杭州天谷信息科技有限公司 一种变色龙哈希分布式身份使用方法和***
US20220327239A1 (en) * 2021-04-09 2022-10-13 VIQ Solutions Inc. Securing and managing offline digital evidence with a smart data lease system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020010023A1 (fr) 2018-07-01 2020-01-09 Madhu Vijayan Systèmes et procédés permettant de mettre en œuvre des plateformes d'engagement de contenu à base de chaîne de blocs à l'aide de portefeuilles multimédia
US11582044B2 (en) * 2019-06-17 2023-02-14 Mahboud Zabetian Systems and methods to timestamp and authenticate digital documents using a secure ledger

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638446A (en) * 1995-08-28 1997-06-10 Bell Communications Research, Inc. Method for the secure distribution of electronic files in a distributed environment
EP1139199A2 (fr) 2000-03-30 2001-10-04 Hitachi, Ltd. Détection des modifications non autorisées de données sur un réseau
US20160283920A1 (en) 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
US20160371509A1 (en) * 2013-07-06 2016-12-22 Newvoicemedia, Ltd. System and methods for tamper proof interaction recording and timestamping
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
WO2018008800A1 (fr) 2016-07-04 2018-01-11 (주)코인플러그 Système d'authentification de certificat accrédité basé sur une chaîne de blocs, et procédé d'authentification de certificat accrédité basé sur une chaîne de blocs, utilisant ce système
US9870508B1 (en) 2017-06-01 2018-01-16 Unveiled Labs, Inc. Securely authenticating a recording file from initial collection through post-production and distribution

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638446A (en) * 1995-08-28 1997-06-10 Bell Communications Research, Inc. Method for the secure distribution of electronic files in a distributed environment
EP1139199A2 (fr) 2000-03-30 2001-10-04 Hitachi, Ltd. Détection des modifications non autorisées de données sur un réseau
US20160371509A1 (en) * 2013-07-06 2016-12-22 Newvoicemedia, Ltd. System and methods for tamper proof interaction recording and timestamping
US20160283920A1 (en) 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
WO2018008800A1 (fr) 2016-07-04 2018-01-11 (주)코인플러그 Système d'authentification de certificat accrédité basé sur une chaîne de blocs, et procédé d'authentification de certificat accrédité basé sur une chaîne de blocs, utilisant ce système
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
US9870508B1 (en) 2017-06-01 2018-01-16 Unveiled Labs, Inc. Securely authenticating a recording file from initial collection through post-production and distribution

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625780A (zh) * 2020-01-15 2020-09-04 支付宝(杭州)信息技术有限公司 一种基于区块链的音频作品授权方法、装置及设备
CN111625780B (zh) * 2020-01-15 2023-04-18 支付宝(杭州)信息技术有限公司 一种基于区块链的音频作品授权方法、装置及设备
CN112347456A (zh) * 2020-10-28 2021-02-09 达闼机器人有限公司 程序验证方法和装置、平台和用户终端及在线服务***
CN112347456B (zh) * 2020-10-28 2023-09-01 达闼机器人股份有限公司 程序验证方法和装置、平台和用户终端及在线服务***
CN112685795A (zh) * 2020-12-31 2021-04-20 树根互联技术有限公司 数字存证创建方法、数字存证验证方法和数字存证***
CN112685795B (zh) * 2020-12-31 2023-09-05 树根互联股份有限公司 数字存证创建方法、数字存证验证方法和数字存证***
US20220327239A1 (en) * 2021-04-09 2022-10-13 VIQ Solutions Inc. Securing and managing offline digital evidence with a smart data lease system
US11822701B2 (en) * 2021-04-09 2023-11-21 VIQ Solutions Inc. Securing and managing offline digital evidence with a smart data lease system
CN114338174A (zh) * 2021-12-30 2022-04-12 李秦豫 一种网络传输方法
CN114338174B (zh) * 2021-12-30 2023-06-23 李秦豫 一种网络传输方法
CN114866260A (zh) * 2022-07-05 2022-08-05 杭州天谷信息科技有限公司 一种变色龙哈希分布式身份使用方法和***
CN114866260B (zh) * 2022-07-05 2022-10-28 杭州天谷信息科技有限公司 一种变色龙哈希分布式身份使用方法和***

Also Published As

Publication number Publication date
EP3803670A1 (fr) 2021-04-14
FR3082023B1 (fr) 2022-05-27
FR3082023A1 (fr) 2019-12-06

Similar Documents

Publication Publication Date Title
US11799668B2 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
WO2019233951A1 (fr) Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié
EP3590223B1 (fr) Procédé et dispositif pour mémoriser et partager des données intégrés
TWI714843B (zh) 用於具有分散式共識之分散式系統中之契約資料之存取控制方法及其契約產生器及驗證伺服器
JP6756817B2 (ja) 非集中型のタイトル記録および認証のためのシステムならびに方法
WO2018145127A1 (fr) Procédés et systèmes de vérification d'une identification électronique avec stockage d'enregistrements de certification sur une chaîne latérale
JP2020511017A (ja) ブロックチェーンベースのデジタル証明書を実装するためのシステム及び方法
JP2020511018A (ja) デジタル・マークを生成するためのシステム及び方法
FR2930390A1 (fr) Procede de diffusion securisee de donnees numeriques vers un tiers autorise.
EP3543891B1 (fr) Procédé mis en oeuvre par ordinateur et système de suivi du cycle de vie de documents certifiés et ses programmes informatiques
CA2969495C (fr) Procede mis en oeuvre dans un document d'identite et document d'identite associe
EP2619941A1 (fr) Procede, serveur et systeme d'authentification d'une personne
FR2930391A1 (fr) Terminal d'authentification d'un utilisateur.
CN113421100A (zh) 物品信息记录、流转、鉴别发起及服务方法、终端和***
FR2980011A1 (fr) Procede de mise en oeuvre, a partir d'un terminal, de donnees cryptographiques d'un utilisateur stockee dans une base de donnees distante
EP2954449B1 (fr) Authentification de signature manuscrite numérisée
WO2007085726A1 (fr) Certification avec autorite de certification distribuee
FR3073111A1 (fr) Procede et dispositif pour memoriser et partager des donnees integres
USRE49968E1 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
US20240171393A1 (en) Method to validate ownership and authentication of a digital asset
TW201342869A (zh) 數位內容雲存儲與存證方法
CH719096A1 (fr) Système et procédé pour fournir un jeton non-fongible durablement authentifiable
FR2898423A1 (fr) Procede securise de configuration d'un dispositif de generation de signature electronique.
WO2023083449A1 (fr) Établissement de canaux de communication
WO2022208016A1 (fr) Procédé et système informatique de stockage decentralisé et de partage de fichiers numériques certifiés

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19730283

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019730283

Country of ref document: EP

Effective date: 20210111