EP3803670A1 - A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content - Google Patents

A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content

Info

Publication number
EP3803670A1
EP3803670A1 EP19730283.9A EP19730283A EP3803670A1 EP 3803670 A1 EP3803670 A1 EP 3803670A1 EP 19730283 A EP19730283 A EP 19730283A EP 3803670 A1 EP3803670 A1 EP 3803670A1
Authority
EP
European Patent Office
Prior art keywords
server
digital content
creator
content
software application
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
EP19730283.9A
Other languages
German (de)
French (fr)
Inventor
Nicolas KOZAKIEWICZ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Worldline SA
Original Assignee
Worldline SA
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 SA filed Critical Worldline SA
Publication of EP3803670A1 publication Critical patent/EP3803670A1/en
Pending legal-status Critical Current

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.

Abstract

The present invention relates to a user software application for creating digital content and authenticating the digital content published in a computer network. The software application enables communication with a distributed database server in order to enable the content to be created and to make it possible to determine whether or not the creator exists on the server. To that end, the application is configured to: - create digital content for a creator which is authenticated and signed after creating or determining the existence of a user profile accepted by the server; - register the content on the server by transmitting a first message containing the content thereto, said content being associated with the first hash value and the first signature, and, moreover, publish online only the content of the creator recorded and authenticated by the server; - display to a third-party user the digital content published by the server including, in addition to the content, the hash and the identifier; - and verify the authentication of the published digital content, wherein the software application performs an authentication request by transmitting to the server a second message containing the published digital content, so that the server certifies a similarity comparison between the information from the second message and the stored information of the first message, and authenticate the published digital content.

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é.  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.
DOMAINE TECHNIQUE DE L'INVENTION TECHNICAL FIELD OF THE 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. 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.
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. More specifically, 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.
ARRIERE-PLAN TECHNOLOGIQUE DE L'INVENTION BACKGROUND OF THE 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. 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. In addition, 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. Thus, it is necessary to establish or restore confidence and certainty of digital content published online, ensuring readers that the published content is indeed consistent with the original source content of the author. It is known from the prior art, a centralized control organ attached to certain sites and media, which established a certification to guarantee content. However, this mode of protection is limited in view of the increasing number of people generating digital content and publishing (or by clicking on internet links or by rebroadcasting content) online especially on social networks ("tweeter", " facebook "," linkedin "," forum ", etc.), which exceeds the volume of conventional media. Another limitation is that many silos need to be created to validate content certifications, while nowadays digital content flows very quickly from one medium to another. Thus, it is necessary to expand the confidence and certainty of digital content published online more than that, to prevent in real time the dissemination of false content (or false news) or modified content.
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. He also known from the prior art a method and a system for detecting falsified contents on the websites, as for example described in document EP1139199. 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. When the first hash value is different than the second hash value, 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. However, this detection system does not reliably certify digital content with a single hashed to encrypt the content, or authenticate a file content creator. Moreover, 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.
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é. It also known from the prior art a method and a system for facilitating the identification of segments of a video and audio stream originally captured with the modified segments in the edited final stream, as described for example in US9870508 . This system uses the public block chain network, that is, it maintains the records of all transactions / transfers on the peer-to-peer network. The transactions are time-stamped and grouped together, where each block is identified by its encrypted hash, and each block keeps records of all transactions on the network received since the creation of its previous block. Instead of storing information about all transactions in the block itself, a special data structure called the Merkle tree is used to store the transactions and only the hash of the root of the Merkle tree is stored in the block. 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. It must make several hashes of the content to be able to auto-align the sequences and compare them with the original sequences to detect the modified sequences. Finally, 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.
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. He also known from the prior art a system and method of authentication certificate accredited based on a chain of blocks, as for example described in WO2018008800. 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. When the hash information of the registration certificate corresponding to the hash value of the certificate node is not identical to the hash value information of the hash value as the hash information corresponding to a user's node certificate stored in the same node of the order of the controls, then 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. However, this system is used especially for public key certification in the context of "Bitcoin" type financial transactions. In addition, 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.
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. He also known from the prior art a system and a method for authenticating forgery using blockchain technology, as for example described in US20160283920. 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. Indeed, 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. To confirm at a later time the original file and it has not been altered, the user must then create a second hash file from digital data to then receive a second file hashed and timestamped by the system server . Finally, the user compares the hash files with each other to determine if they are identical or different. However, 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.
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. In this context, it is interesting to propose a solution that makes it possible to overcome certain disadvantages of the prior art by facilitating and improving the recording of digital content by an authorized creator and verifying the authenticity and integrity of the content. digital published in a computer network.
DESCRIPTION GENERALE DE L'INVENTION GENERAL DESCRIPTION OF THE 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 : 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. For this purpose, 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:
- 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 ; - creation of a digital content by a creator, authenticated and signed after creation or existence of a user profile accepted by the server which authorizes by a message to the application; generating a first hash value (HA) from the content and a key and a first signature (SA) calculated on the content and then hashing;
- 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; 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;
- 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é. - 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 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.
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. According to another feature, 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.
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. In another feature, 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.
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. According to another particularity, 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.
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. In another feature, the software application includes means for the creator to indicate the completion or incompletion of creating digital content and allowing temporary non-public backup.
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. In another feature, the software application includes execution means for combining several specific information related to the creator to authenticate the creator of the digital content.
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. According to another particularity, the software application comprises execution means making it possible to chronologically organize the digital contents during the creation of said contents.
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. According to another particularity, 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.
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. According to another particular feature, 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.
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. According to another particularity, 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 .
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. According to another particularity, the pair of signing keys (CA) 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.
Selon une autre particularité, le second message comprend en outre le contenu numérique publié et/ou le numéro d’identifiant (IDNp). In another feature, the second message further comprises the published digital content and / or the ID number (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 ; According to another particularity, 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;
- 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. comparing the similarity between the hash values (HA ; HP) to certify the integrity of the content and / or the identifier numbers (IDNA ; IDNp) to authenticate the digital content published on the computer network.
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. 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.
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: For this purpose, 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:
- 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, - generate messages allowing a user to register ("user register" in English), to create content even if the user is not yet registered,
- 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é, - save the content in its database only when the profile of the creator has been completed or is already stored,
- 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 : - to create an identifier (IDC) specific to each creator; characterized in that it furthermore allows at least one of the following operations:
- 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 : 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:
- 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. - verifying the authenticity of the digital content made available to the public or published on the computer network, after having formulated an authentication request by the software application of a third party user from its digital platform or its digital device . In another feature, 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.
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). According to another particularity, for each creator (a) registered, the server includes in its database a space specifically storing at least one hash key (Cha) and / or a signature key (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. In another feature, 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).
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é. According to another particularity, 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.
Selon une autre particularité, le serveur comprend des algorithmes spécifiques permettant au moins une des actions suivantes : According to another particularity, the server comprises specific algorithms allowing at least one of the following actions:
- 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 ; identifying the identifier number (IDNc) associated with the first message saved in the server from the identifier number (IDNp) associated with the second message transmitted by the user software application;
- 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. comparing the similarity between the hash values (HA ; HP) to guarantee the integrity of the published digital content and / or the identifier numbers (IDNc; IDNp) for authenticating the digital content published on the computer network.
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. According to another particularity, 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.
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é. According to another particularity, 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. This goal is achieved by a system 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 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.
D’autres particularités et avantages de la présente invention sont détaillés dans la description qui suit. Other features and advantages of the present invention are detailed in the description which follows.
DESCRIPTION DES FIGURES ILLUSTRATIVES DESCRIPTION OF ILLUSTRATIVE FIGURES
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 : Other features and advantages of the present invention will appear more clearly on reading the description below, made with reference to the accompanying drawings, in which:
- 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. 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.
- 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. 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.
DESCRIPTION DES MODES DE REALISATION PREFERES DE DESCRIPTION OF THE PREFERRED EMBODIMENTS OF
L'INVENTION THE 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 : Various embodiments of the invention will now be described with reference to FIGS. 1 and 2 of the present application and they concern mainly three groups of objects:
- 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éé ;  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;
- 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 ;  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;
- 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.  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.
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. 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.
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 : 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:
- 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 ; - Creation of a digital content by a creator, authenticated and signed after creation or existence of a user profile accepted by the server that can author the creation of digital content (for example by an approval message) to the user software application;
- 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 ; generating 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;
- 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é. 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 (Hp) and the first hash value (HA) of the content created and stored in the application, and secondly by transmitting to the server (2 ) a second message containing at least the second hash value (Hp) identical to the first hash value (HA), so that the server certifies the authentication of the published digital content.
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é). For example, 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).
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 : 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. 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. In some embodiments, the user's software application (e.g., the creator or author) includes execution means for:
- 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 ; - To prepare the signature of a digital content created by a "serious" creator, in which a first hash (or first condensate or first hash value or HA fingerprint) of the created content, is produced by a hash function of the 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éé ;  then 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;
- 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é.  - finally 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.
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 : 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 . For that, the application includes algorithms allowing:
- 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, producing a second hash (or second condensate or second hash value or Hp imprint) of the clear content and published using the hash function of the application,
- puis la signature est déchiffrée par l’application avec la clé publique CpUb du couple de clés de signature, then the signature is decrypted by the application with the public key C pU b of the pair of signature keys,
- et enfin comparaison de la similitude entre la signature déchiffrée et le second haché calculé.  - and finally comparison of the similarity between the deciphered signature and the calculated second chopping.
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. 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. In some embodiments, 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, for example, in a blockchain network or a secure server with a trusted third party that guarantees the immutability of the information.
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é. In some embodiments, 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.
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éé. In some embodiments, 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. Indeed, several 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.
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. In certain embodiments, as represented for example in FIGS. 1a and 2a, 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.
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. In some embodiments, 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.
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. In some embodiments, 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). In this case, 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.
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). In some embodiments, 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 (and stored in the server) 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. For example, 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. In order to authenticate a content creator, the application offers the creator to fill out several creator-specific information. In some embodiments, the user software application includes execution means for combining a plurality of specific creator-related information to authenticate the creator of the digital content. For example as shown in Figure 2a, 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. In some embodiments, 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. For example, in a non-limiting manner, 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).
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). In some embodiments, the software application includes execution means for chronologically organizing the digital contents during the creation of said contents. Indeed, 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).
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 ». In some embodiments, 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. Indeed, 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 ".
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. In some embodiments, 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.
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: In certain embodiments, as represented for example in FIG. 2a, 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. In a non-limiting way, 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. Thus, when the creator indicates on the application that its content is complete, 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). In some embodiments, 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. From said information of the second message, the server includes specific algorithms allowing at least one of the following actions:
- 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. identifying the first message saved in the server from the identifier number (IDNp) associated with the second message transmitted by the user software application; comparing the similarity between the hash values (HA ; HS) and / or the identifier numbers (IDNc ; IDNp) to authenticate the digital content published on the computer network.
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 : In some embodiments, 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", is widely used in computer software to quickly search data. 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. For example and in a nonlimiting manner, 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:
- créer un contenu numérique ; - create digital content;
- possibilité de modifier un contenu numérique jusqu’à finalisation complète du contenu ;  - possibility to modify a digital content until complete finalization of the content;
- 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 ;  - save digital content by creating a hash value and a specific signature of the software application used by a creator and / or specific to the creator himself;
- créer ou se connecter à un profil d’utilisateur créateur pour s’authentifier ;  - create or connect to a creative user profile to authenticate;
- déclarer un contenu numérique haché et signé à partir d’un profil utilisateur créateur identifié et mémorisé (dans le serveur) ;  - declare a digital content hashed and signed from a creator user profile identified and stored (in the server);
- 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 ;  - deposit a declared digital content (or the final digital content) with its hash value and its signature, immutably (or non-modifiable) in a distributed database server;
- obtenir un numéro d’identifiant (IDNc) spécifique associé au contenu numérique déclaré par le serveur ;  obtain a specific identifier number (IDNc) associated with the digital content declared by the server;
- mise à disposition publique d’un contenu numérique déclaré par le serveur.  - public provision of digital content declared by the server.
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 : Similarly, for example and without limitation, 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:
- visualiser un contenu numérique publié dans un réseau informatique ;- visualize digital content published in a computer network;
- demander une vérification de l’authenticité du contenu publié ; - request a verification of the authenticity of the published content;
- 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 ; - calculate a hash value corresponding to the published digital content to verify the originality of the content; - compare the similarity between the hash values;
- indiquer un contenu publié non conforme au contenu créé lorsque les valeurs de hachage diffèrent ;  - indicate published content that does not conform to the content created when the hash values differ;
- 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é.  - verify the authenticity of the creator of the published digital content (validated by the server, for example by comparing the similarity between the IDNc / IDNp ID numbers) to obtain a message of approval or corruption on the authenticity and the integrity of a published digital content.
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. In some embodiments, the computer platform is a website or a server. In some embodiments, 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.
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). In some embodiments, information exchanges (e.g., digital content, instructions, notifications, updates, etc.) between the software application and the distributed database server are performed on either a secure and encrypted network or on a public network. When 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).
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, 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,
- 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é, - save the content in its database only when the profile of the creator has been completed or is already stored,
- de créer un identifiant (IDC) spécifique à chaque créateur (a). Le serveur permet en outre au moins une des opérations suivantes: - to create an identifier (IDC) specific to each creator (a). The server also allows at least one of the following:
- 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 ; the registration of the creator and / or the content is performed by 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;
- 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 : - 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:
- 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. - verifying the authenticity of the digital content made available to the public or published on the computer network, after having formulated an authentication request by the software application of a third party user from its digital platform or its digital device .
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é. In some embodiments, 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. For example, said content may to be deposited in a chain of blocks network. In some embodiments, 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. In the present invention, 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. .
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. 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.
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. 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. As proof of validity, 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.
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). The term "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).
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. The term "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. .
Une fonction de hachage cryptographique idéale possède les quatre propriétés suivantes : An ideal cryptographic hash function has the following four properties:
• la valeur de hachage d'un message se calcule « très rapidement » ; • the hash value of a message is calculated "very fast";
• il est, par définition, impossible, pour une valeur de hachage donnée, de construire un message ayant cette valeur de hachage ; • By definition, it is impossible for a given hash value to construct a message with this hash value.
• il est, par définition, impossible de modifier un message sans changer sa valeur de hachage ; • it is, by definition, impossible to modify a message without changing its hash value;
• il est, par définition, fortement improbable de trouver deux messages différents ayant la même valeur de hachage • it is, by definition, highly unlikely to find two different messages with the same hash value
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. 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. Example: search for similar sections in DNA sequences. 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.
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. 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.
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. 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.
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. By minor, we mean a person (and / or an autonomous computer module) that has at least a hardware and software architecture to implement the mining process above.
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. In some embodiments, 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. Note that by the term "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.
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). In some embodiments, for each creator (a) validly registered through the user software application (1a, 1b), 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). In a nonlimiting manner, 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 and 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. These keys are specific to each user application creator (and therefore the creator) and stored in the server base, so that the latter can execute in a secure and automated manner the instruction requests received by the user software application (creator or third party ).
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é). In some embodiments, 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. For example and without limitation, 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)) and / or the ID number (IDNp) transmitted by the third party (which is extracted from the second message of the published content).
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. In some embodiments, 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. Indeed, 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. 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. Thus, the server accesses only the digital content of a creator identified and stored in the server.
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). In some embodiments, 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. Thus, 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).
Dans certains modes de réalisation, le serveur comprend des algorithmes spécifiques permettant : In some embodiments, the server includes specific algorithms for:
- 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 ; identifying the identifier number (IDNc) associated with the first message saved in the server from the identifier number (IDNp) associated with the second message transmitted by the user software application;
- 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. compare the similarity between, on the one hand, the hash values (HA , Hs) to guarantee the integrity of the published digital content, and / or the numbers identifier (IDNc ; IDNp) for authenticating digital content published on the computer network.
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...) For example, as shown in FIG. 2b, and in a nonlimiting manner, 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). From the ID number (IDNc) in the database, which is specific to the digital content created and declared by a creator and therefore the first message, 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. 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 ...)
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. In some embodiments, 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. In certain embodiments, as represented for example in FIG. 2b, 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. In some embodiments, 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. In some embodiments, 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.
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. In some embodiments, 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.
Par exemple et de manière non limitative, le serveur informatique (2) réalise au moins une des opérations suivantes : For example and without limitation, the computer server (2) performs at least one of the following operations:
- enregistrer et mémoriser un profil utilisateur créateur dans sa base de données ; - save and store a creative user profile in its database;
- authentifier un créateur de contenu ;  - authenticate a content creator;
- 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 ; storing digital content created (associating a hash and a signature) and declared by the authenticated creator in his database (for example, in a blockchain); memorize the different keys (hashing, signature, encryption, etc.) making it possible to encrypt and decrypt a code associated with the digital content;
identifier le contenu créé à partir d’un numéro d’identifiant associé au contenu publié ;  identify the content created from an ID number associated with the published content;
vérifier l’intégrité du contenu publié ;  verify the integrity of the published content;
comparer les valeurs de hachage du contenu publié et du contenu créé ;  compare the hash values of published content and created content;
vérifier l’authenticité du créateur du contenu publié ;  verify the authenticity of the creator of the published content;
comparer les valeurs de signature du contenu publié et du contenu créé ;  compare the signature values of the published content and the content created;
notifier l’utilisateur tiers de la conformité de l’originalité ou non du contenu publié.  notify the third-party user of the conformity of the originality or not of the published content.
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. 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.
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. It will be readily understood from the present application that the components of the present invention, as generally described and illustrated in the figures, can be arranged and designed in a wide variety of different configurations. Thus, the description of the present invention and the accompanying figures are not intended to limit the scope of the invention but merely represent selected embodiments.
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. Several functional units described in this description have been named "modules" in order to emphasize their independence of execution. For example, a module 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. In addition, the 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.
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. Indeed, 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. Similarly, 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. In addition, by the term 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.
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. The references in the present description to an implementation, 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.
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é. In addition, the disclosed devices, structures, or features may be combined in any suitable manner in one or more embodiments, unless they are incompatible with one another. In the present description, many specific details are provided for illustrative and not limiting, so as to detail precisely the invention. Those skilled in the art will understand, however, that the invention may be realized in the absence of one or more of these specific details or with variations. On other occasions, certain aspects are not detailed so as to avoid obscuring and weighing down the present description, and the person skilled in the art will understand that various and various means may be used and that the invention is not limited. to the only examples described. The present application describes various technical features and advantages with reference to the figures and / or various embodiments. Those skilled in the art will appreciate that the technical features of a given embodiment may in fact be combined with features of another embodiment unless the reverse is explicitly mentioned or it is evident that these characteristics are incompatible or that the combination does not provide a solution to at least one of the technical problems mentioned in this application. In addition, the technical features described in a given embodiment can be isolated from the other features of this mode unless the opposite is explicitly mentioned.
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. It should be obvious to those skilled in the art that the present invention allows embodiments in many other specific forms without departing from the scope of the invention as claimed. Therefore, the present embodiments should be considered by way of illustration, but may be modified in the field defined by the requested protection, and the invention should not be limited to the details given above.

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 : A software application constituting at least one user application intended to be executed on at least one computer platform or a portable computing device to create digital content and to authenticate the digital content published in a computer network, the software application managing memories of which least a computer hardware memory storing a unique pair of signature keys (CA) associated with each application loaded by a creator, this key not accessible 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 carry out in addition the following functionalities:
- 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 ; generating a first hash value (HA) from the content and a key and a first signature (SA) calculated on the content and then hashing;
- 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 : 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 the first signature (SA), and in that it also makes it possible to perform at least one of the following features:
- 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; - creation of a digital content by a creator, authenticated and signed after creation or existence of a user profile accepted by the server which authorizes by a message to the application; - for 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), reception by the application the creator of a specific identifier number (IDN) generated by the server, for example in the form of a QRC code;
- 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é. - viewing by a third party user from the software application on its digital platform or digital device, the digital content published by the server including in addition to the content the hash and the identifier; 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 (Hp) of the 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 hash value (Hp) identical to the first hash value (HA), so that the server certifies the authentication of the published digital content.
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. 2. Software application according to claim 1, characterized in that it 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 linked to the software application of the user and / or the creator.
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. 3. Software application according to claim 1 or 2, characterized in that it comprises execution means configured to create if necessary a creator profile not yet registered, displaying an application to define and assign several specific information related to the creator to register and authenticate the creator of the digital content on the server.
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. 4. Software application according to one of claims 1 to 3, characterized in that the software application comprises execution means for organizing in a chronological manner the digital contents during the creation of said contents.
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.  5. Software application according to one of claims 1 to 4, characterized in that the identifier number generated by the server and received by the application of the user comprises at least one information on the filing date and the creator.
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. 6. User software application according to one of claims 3 to 5, characterized in that the profile creation is performed either by instructions contained in the user software application, or by instructions from the server, after making contact with the server by a new content creator without a profile saved on the server.
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. 7. User software application according to one of claims 1 to 6, characterized in that it comprises means allowing the creator to indicate the completion or incompleteness of the creation of the digital content and allow a temporary non-public backup.
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. 8. User software application according to one of claims 3 to 7, characterized in that it comprises execution means for combining several specific information related to the creator to authenticate the creator of the digital content.
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. 9. User software application according to claim 8, characterized in that the specific information related to the creator comprises, depending on the degree of reliability referred one or more confidential information such as name, address, work, leisure, photo d identity, identity card or fingerprint.
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. 10. User software application according to one of claims 1 to 9, characterized in that 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 number of identifier (IDNc) associated with the digital content created by said creators.
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. 1 1. User software application according to one of claims 1 to 10, characterized in that the pair of signature keys comprises a private key and a public key that are generated simultaneously during the creation of the user profile, and saved so that secured in the application's memories.
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). 12. User software application according to one of claims 1 to 1 1, characterized in that the second message further comprises the published digital content and / or the ID number (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 : 13. User software application according to one of claims 1 to 12, characterized in that the server comprises specific algorithms for at least one of the following actions:
- 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 ; identifying the first message saved in the server from the identifier number (IDN) associated with the second message transmitted by the user software application;
- 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. - to compare the similarity between the identifier numbers (IDNp; IDNc) to certify the integrity of the content and authenticate the digital content published on the computer network.
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 : 14. Computer server comprising a program which, when executed by a computer system, allows at least one of the following actions:
- 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é, - generate messages allowing a user to register, to create content even if the user is not yet registered, - save the content in its database only when the profile of the creator has been completed or is already stored,
- 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 : - to create an identifier (IDC) specific to each creator; characterized in that it further enables the creator and / or content to be recorded by a blockchain network 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 of a computer platform or a computing device according to one of claims 1 to 13, interfacing with the server; and in that it allows at least one of the following operations:
- 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 ; - the generation by the server of a specific identifier number (IDN) 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;
- 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. - verifying the authenticity of the digital content made available to the public or published on the computer network, after having formulated an authentication request by the software application of a third party user from its digital platform or its digital device .
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. 15. Server according to claim 14, characterized in that the distributed database server comprises an algorithm for generating a timestamp ("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 under one Distributed and immutable log file format in one of the immutable blocks of the blockchain.
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). 16. Server according to claim 14 or 15, characterized in that, for each creator (a) registered, the server comprises in its database a space specifically storing a hash key (Cha) and a signature key (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. 17. Server according to one of claims 14 to 16, characterized in that the server comprises algorithms for accessing the block (s) containing the digital content created and declared, the first hash value, the first signature and the ID number, when a creator registers or identifies himself to the server by his specific identifier (IDC).
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é. 18. Server according to one of claims 14 to 17, characterized in that 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.
19. Serveur selon la revendication 18, caractérisée en ce que le serveur comprend des algorithmes spécifiques permettant : 19. Server according to claim 18, characterized in that the server comprises specific algorithms allowing:
- 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 ; identifying the identifier number (IDN) associated with the first message saved in the server from the identification number (IDN) associated with the second message transmitted by the user software application;
- 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. comparing the similarity between, on the one hand, the hash values (HA , Hp) to guarantee the integrity of the published digital content, and on the other hand, the identifier numbers (IDNc ; IDNp) for authenticating the digital content published on the computer network.
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. 20. Server according to one of claims 16 to 19, characterized in that the server comprises algorithms for identifying and authenticating each content creator by at least one of the hash keys, a key of signature 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 (IDN) associated with published digital content for all third-party users.
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 21. Server according to one of claims 14 to 20, characterized in that the technology of the blockchain network is of the "authorized" and "private" type in order firstly to authorize only the validly identified and authenticated creator to be created. and declare digital content, and on the other hand, allow any third-party user to verify the authenticity of digital content
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é. 22. System (10) for verifying and authenticating digital content published in a computer network conforming to the digital content initially created, the system (10) being characterized in that it comprises at least one computer platform or a device computer executing a user software application according to one of claims 1 to 13 communicating and using a computer server according to one of claims 14 to 21, to create digital content for a validly authenticated and identified creator, and make it publicly available on the computer network and to authenticate each published digital content.
EP19730283.9A 2018-06-04 2019-06-03 A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content Pending EP3803670A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1854828A FR3082023B1 (en) 2018-06-04 2018-06-04 A SOFTWARE APPLICATION AND A COMPUTER SERVER TO AUTHENTICATE THE IDENTITY OF A CREATOR OF DIGITAL CONTENT AND THE INTEGRITY OF THE CONTENT OF THE CREATOR PUBLISHED
PCT/EP2019/064352 WO2019233951A1 (en) 2018-06-04 2019-06-03 A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content

Publications (1)

Publication Number Publication Date
EP3803670A1 true EP3803670A1 (en) 2021-04-14

Family

ID=65031230

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19730283.9A Pending EP3803670A1 (en) 2018-06-04 2019-06-03 A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content

Country Status (3)

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

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020010023A1 (en) 2018-07-01 2020-01-09 Madhu Vijayan Systems and methods for implementing blockchain-based content engagement platforms utilizing media wallets
US11582044B2 (en) * 2019-06-17 2023-02-14 Mahboud Zabetian Systems and methods to timestamp and authenticate digital documents using a secure ledger
CN110851798B (en) * 2020-01-15 2020-04-21 支付宝(杭州)信息技术有限公司 Block chain-based audio work authorization method, device and equipment
CN112347456B (en) * 2020-10-28 2023-09-01 达闼机器人股份有限公司 Program verification method and device, platform, user terminal and online service system
CN112685795B (en) * 2020-12-31 2023-09-05 树根互联股份有限公司 Digital certificate creation method, digital certificate verification method and digital certificate system
US11822701B2 (en) * 2021-04-09 2023-11-21 VIQ Solutions Inc. Securing and managing offline digital evidence with a smart data lease system
CN114338174B (en) * 2021-12-30 2023-06-23 李秦豫 Network transmission method
CN114866260B (en) * 2022-07-05 2022-10-28 杭州天谷信息科技有限公司 Chameleon hash distributed identity using method and system

Family Cites Families (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
JP2001282619A (en) 2000-03-30 2001-10-12 Hitachi Ltd Method and device for detecting content alteration and recording medium with recorded processing program thereon
US9553982B2 (en) * 2013-07-06 2017-01-24 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
KR101723405B1 (en) 2016-07-04 2017-04-06 주식회사 코인플러그 Certificate authentication system and method based on block chain
CN107077557B (en) * 2016-12-29 2020-07-31 深圳前海达闼云端智能科技有限公司 Method and device for releasing and verifying software application program
US9870508B1 (en) 2017-06-01 2018-01-16 Unveiled Labs, Inc. Securely authenticating a recording file from initial collection through post-production and distribution

Also Published As

Publication number Publication date
FR3082023B1 (en) 2022-05-27
WO2019233951A1 (en) 2019-12-12
FR3082023A1 (en) 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
EP3803670A1 (en) A software application and a computer server for authenticating the identity of a digital content creator and the integrity of the creator's published content
EP3590223B1 (en) Integrated method and device for storing and sharing data
TWI714843B (en) Methods for access control of contract data in a distributed system with distributed consensus and contract generator and validation server thereof
JP6756817B2 (en) Systems and methods for decentralized title recording and authentication
WO2018145127A1 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
JP2020511017A (en) System and method for implementing blockchain-based digital certificates
FR2930390A1 (en) METHOD FOR SECURE DIFFUSION OF DIGITAL DATA TO AN AUTHORIZED THIRD PARTY
JP2020511018A (en) System and method for generating digital marks
EP3543891B1 (en) A computer implemented method and a system for tracking of certified documents lifecycle and computer programs thereof
EP3241137B1 (en) Method carried out in an identity document and corresponding identity document
WO2013021107A9 (en) Method, server and system for authentication of a person
FR2930391A1 (en) AUTHENTICATION TERMINAL OF A USER.
CN113315745A (en) Data processing method, device, equipment and medium
CN113421100A (en) Article information recording, circulation, authentication initiation and service method, terminal and system
FR2980011A1 (en) METHOD FOR IMPLEMENTING, FROM A TERMINAL, CRYPTOGRAPHIC DATA OF A USER STORED IN A REMOTE DATABASE
EP2954449B1 (en) Digitised handwritten signature authentication
WO2007085726A1 (en) Certification with distributed certification authority
FR3073111A1 (en) METHOD AND DEVICE FOR STORING AND SHARING INTEGRATED DATA
TW201342869A (en) Digital content cloud storage and authentication method
CH719096A1 (en) System and method for providing a durably authenticatable non-fungible token
FR2898423A1 (en) Certified electronic signature generating device e.g. chip card, configuring method for e.g. computer, involves updating certificate to user upon reception of denomination and number by certificate producer so as to be used with device
WO2023083449A1 (en) Establishing communications channels
WO2022208016A1 (en) Method and computer system for decentralised storage and sharing of certified digital files
WO2012131175A1 (en) Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (igcp/pki).

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20201229

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20230406

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230527