EP4311157B1 - Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices - Google Patents
Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices Download PDFInfo
- Publication number
- EP4311157B1 EP4311157B1 EP22185737.8A EP22185737A EP4311157B1 EP 4311157 B1 EP4311157 B1 EP 4311157B1 EP 22185737 A EP22185737 A EP 22185737A EP 4311157 B1 EP4311157 B1 EP 4311157B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- nft
- digital asset
- information
- fingerprint
- generating
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
Definitions
- the field of the disclosure is the authentication of digital assets or contents.
- the disclosure relates to a technology for verifying a similarity between digital assets.
- the disclosure can be of interest in any field wherein digital assets represent values, depending e.g. on its uniqueness. This may be the case for instance, for digital images, videos, sound, etc.
- Patent documents CN114359590 A , CN114756627 A and publications Das, Dipanjan, et al. "Understanding security issues in the NFT ecosystem.” Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. 2022 ; and Dobre, Robert Alexandru, et al. "Blockchain-based image copyright protection system using JPEG resistant digital signature.” 2020 IEEE 26th International Symposium for Design and Technology in Electronic Packaging (SIITME). IEEE, 2020 provide teachings relevant to the technical field of the invention.
- a digital asset may be of considerable value, depending on its usage and/or its uniqueness.
- Examples of such digital assets are digital images, videos, sounds, and any digital asset that can be sensed with the appropriate rendering mechanism. Images and sounds are the most common digital assets that can be sensed by humans, but new technologies enable "rendering" of touch, smell and very soon, taste.
- Some digital assets can be considered a work of art, with high market value; other digital assets can represent an extension of a human body, like a weapon or a spaceship or a vehicle in an online game.
- Digital assets can also be made of a digital object and possibly with metadata, for example for object-oriented media, where the sound of a flying bee is rendered from the combination of a digital representation of the sound of the bee and metadata describing the flying path of the bee.
- a person purchasing a digital asset typically receives a certificate comprising information describing e.g. the characteristics of the asset and date of purchase.
- the certificate often takes the form a non-fungible token, hereafter NFT.
- NFT can be logged in a blockchain, creating an unmodifiable trace of the ownership of the NFT.
- a particular aspect of the present disclosure relates to a method for generating an NFT associated with a digital asset. According to such method, an electronic device executes:
- the present disclosure proposes a new and inventive solution for allowing the detection of possible copies (exact or slightly modified copies) of a digital asset.
- a digital asset is e.g. of the kind that can be sensed by a human when rendered by an adapted rendering means. This may be the case for instance for a video, an image, a sound, a touch or a smell.
- the proposed solution relies on the use of transform methods that allows highlighting the main technical characteristics of the digital asset. Indeed, when slight modifications are performed on digital assets, their main technical characteristics remain unchanged. By removing the subtle variations in a digital asset, we can thus expect to be able to detect slightly modified copies.
- the updated information comprises the transformed digital asset.
- the transformation information comprises the transformation method itself or an identification of the transformation method.
- the electronic device executes obtaining information, named fingerprint information, representative of at least one fingerprint method delivering a fingerprint when applied to the transformed digital asset.
- the updated information comprises the fingerprinting information.
- the fingerprint method is e.g. a hash function or a Rabin function.
- the fingerprint information comprises the fingerprint method itself or an identification of the fingerprint method.
- the updated information comprises the fingerprint.
- the obtaining an initial NFT comprises:
- Another aspect of the present disclosure relates to a method for verifying a similarity between digital assets. According to such method, an electronic device executes:
- the obtaining the first NFT comprises:
- the obtaining the second NFT comprises:
- the second NFT can be an NFT with additional information according to the present disclosure or an NFT in the meaning of the state-of-the-art (e.g. metadata such as for identifying the digital asset and eventually for identifying a holder of the digital asset).
- metadata such as for identifying the digital asset and eventually for identifying a holder of the digital asset.
- the verifying the similarity comprises reading the transformed first digital asset from the information in the first NFT.
- the first data is based on the read transformed first digital asset.
- the verifying the similarity comprises applying the transformation method to the first digital asset delivering a transformed first digital asset.
- the first data is based on the delivered transformed first digital asset.
- the result of the verification of the similarity between the digital assets can be trusted even in case the transformed first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- the first data is based on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset.
- the second data is based on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset.
- the fingerprint method is identified by the fingerprint information of the first NFT.
- the comparison is straightforward when relying on the first and second fingerprints, thus reducing again the computational load when performing the verifying of the similarity between the digital assets.
- the verifying the similarity comprises reading the first fingerprint from the information in the first NFT.
- the first data is based on the read first fingerprint.
- the verifying the similarity comprises applying the fingerprint method to the first digital asset delivering the first fingerprint.
- the first data is based on the delivered first fingerprint.
- the verification of the similarity between the digital assets can be performed even in case the fingerprint of the first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for generating an NFT (in any of the different embodiments discussed above), when said program is executed on a computer or a processor.
- Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for verifying a similarity between digital assets (in any of the different embodiments discussed above), when said program is executed on a computer or a processor.
- Another aspect of the present disclosure relates to an electronic device configured for implementing all or part of the steps of the above-mentioned method for generating an NFT (in any of the different embodiments discussed above).
- the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.
- Another aspect of the present disclosure relates to an electronic device configured for implementing all or part of the steps of the above-mentioned method for verifying a similarity between digital assets (in any of the different embodiments discussed above).
- the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.
- FIG. 1 we describe a terminal equipment 110 communicatively connected to a server 100 of an NFT management service provider according to one embodiment of the present disclosure.
- the terminal equipment 110 e.g. a smartphone, a tablet or a personal computer equipped with a wireless communications module, etc.
- the server 100 is communicatively connected to the server 100 through a wired communications link that goes through a core network 150.
- wired communications link is e.g. an xDSL communications link and implements e.g. an internet protocol.
- the communications link between the terminal equipment 110 and the server 100 goes through a wireless communications link, e.g. based on a cellular protocol (e.g. a 3GPP 2G, 3G, 4G or 5G protocol) or on a WiMAX protocol.
- a cellular protocol e.g. a 3GPP 2G, 3G, 4G or 5G protocol
- WiMAX Worldwide Interoperability for Microwave Access
- the server 100 is communicatively connected to a plurality of servers 120a, ..., 120n that implement a blockchain 120. More particularly, the blockchain 120 registers NFT associated with digital assets (e.g. digital images, videos, sounds, touch, smell and any digital asset that can be sensed by a human with the appropriate rendering mechanism). All or part of the NFT registered in the blockchain 120 can be managed by the server 100 of the NFT management service provider.
- digital assets e.g. digital images, videos, sounds, touch, smell and any digital asset that can be sensed by a human with the appropriate rendering mechanism. All or part of the NFT registered in the blockchain 120 can be managed by the server 100 of the NFT management service provider.
- the communications link between the server 100 and the plurality of servers 120a, ..., 120n goes through the core network 150.
- the communications link between the server 100 and the plurality of servers 120a, ..., 120n goes through another communications network (e.g. a wired or a wireless communications network).
- the server 100 implements a first electronic device 100d1 that comprises means allowing all or part of the steps of the method for generating an NFT of Figure 4 to be executed.
- the server 100 implements a second electronic device 100d2 that comprises means allowing all or part of the steps of the method for verifying a similarity between digital assets of Figure 5 to be executed.
- the first electronic device 100d1 comprises:
- the non-volatile memory 203 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by the processor 202 in order to enable implementation of some steps of the method described below (method for generating an NFT) in the various embodiments disclosed in relationship with Figure 4 .
- the aforementioned program code instructions are transferred from the non-volatile memory 203 to the volatile memory 201 so as to be executed by the processor 202.
- the volatile memory 201 likewise includes registers for storing the variables and parameters required for this execution.
- the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.
- the second electronic device 100d2 comprises:
- the non-volatile memory 303 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by the processor 302 in order to enable implementation of some steps of the method described below (method for verifying a similarity between digital assets) in the various embodiments disclosed in relationship with Figure 5 .
- the aforementioned program code instructions are transferred from the non-volatile memory 303 to the volatile memory 301 so as to be executed by the processor 302.
- the volatile memory 301 likewise includes registers for storing the variables and parameters required for this execution.
- the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.
- the first electronic device 100d1 and the second electronic device 100d2 are implemented in the server 100. However, in other embodiments, the first electronic device 100d1 and/or the second electronic device 100d2 are implemented in another entity than the server 100, e.g. in one of the servers 120a, ..., 120n implementing the blockchain 120. In some embodiments, the first electronic device 100d1 and the second electronic device 100d2 are a same electronic device.
- the first electronic device 110d1 obtains an initial NFT.
- Such initial NFT comprises information identifying a digital asset.
- such NFT may comprise additional information as can be found in NFT according to the state of the art, e.g. metadata identifying a holder of the digital asset.
- the step S410 comprises the generation of the initial NFT.
- the first electronic device 110d1 generates the initial NFT that comprises the information identifying the digital asset by execution e.g. of a known technique.
- Such first NFT when generated, may be registered by the first electronic device 110d1 into the blockchain 120.
- the step S410 comprises retrieving the initial NFT from a blockchain 120.
- the initial NFT already exists in the blockchain 120.
- the first electronic device 110d1 retrieves the initial NFT e.g. through a request sent to a server 120a, ..., 120n implementing the blockchain 120.
- the first electronic device 110d1 obtains information, named transformation information, representative of at least one transformation method that delivers a transformed digital asset when applied to the digital asset.
- the transformation information comprises the transformation method itself or an identification of the transformation method.
- such transformation method reduces the amount of information present in the digital asset for having the transformed digital asset representative of at least one technical characteristic of the digital asset.
- the transform methods can comprise e.g. a modification of the luminance, brilliance, exposure, or a reduction in the definition, in a number of pixels, or a sampling of a subset of the image, a transformation into grayscale, in black and white, or a modification of the surfaces in order to keep only the contours.
- well known algorithms like "Edge detection" can be used.
- the result of such transformation is that only important discontinuities remain in the transformed asset. For example, slight modifications of colors will be removed.
- the transform methods can comprise e.g. a reduction in the number of images per second, or reduction of the resolution of images.
- the transform methods can comprise e.g.
- the amount of information e.g. the entropy
- the amount of information removed can be tuned using e.g. a threshold or a removal level.
- the first electronic device 110d1 obtains another information, named fingerprint information, representative of at least one fingerprint method delivering a fingerprint when applied to the transformed digital asset.
- the fingerprint information comprises the fingerprint method itself or an identification of the fingerprint method.
- the fingerprint method implements e.g. a hash function or a Rabin function.
- the use of such fingerprint methods allows a straightforward comparison between fingerprints obtained for different digital assets.
- applying a fingerprint method to the digital asset itself would be useless as a single bit of data that differs between two digital assets would result in different fingerprints.
- the fingerprint methods are preferably applied to the transformed digital asset.
- the considered transform methods reduce the amount of information (e.g. the entropy) contained in a digital asset so that subtle differences are removed and only the main technical characteristics remain. It can thus be expected that transformed digital assets obtained from slightly modified assets may be the same and so do the fingerprints obtained from the transformed digital assets. A similarity between digital assets may thus rely on a comparison of the fingerprints obtained from the corresponding transformed digital assets.
- the step S430 is not implemented and no fingerprint information is obtained by the first electronic device 110d1.
- the first electronic device 110d1 updates the information of the initial NFT delivering an updated NFT associated with the digital asset. More particularly, the updated information comprises the transformation information and the fingerprinting information.
- the updated information comprises the transformed digital asset.
- the updated information comprises the fingerprint of the transformed digital asset.
- the updated information does not comprise the fingerprinting information and thus, in relevant corresponding embodiments, the updated information does not comprise the fingerprint of the transformed digital asset.
- the second electronic device 110d2 obtains a first NFT associated with a first digital asset. More particularly, the first NFT has been generated by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the step S510 comprises the generation of the first NFT by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the second electronic device 110d2 thus implements the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the first NFT, when generated may be stored by the second electronic device 110d2 into the blockchain 120.
- the step S510 comprises retrieving the first NFT from a blockchain 120.
- the first NFT already exists in the blockchain 120 and the second electronic device 110d2 retrieves the first NFT e.g. through a request sent to a server 120a, ..., 120n implementing the blockchain 120.
- the first NFT has been generated by the execution, e.g. by the first electronic device 110d1, of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the second electronic device 110d2 obtains a second NFT associated with a second digital asset.
- the step S520 comprises the generation of the second NFT by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the second electronic device 110d2 thus implements the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the second NFT, when generated may be stored by the second electronic device 110d2 into the blockchain 120.
- the step S520 comprises retrieving the second NFT from a blockchain 120.
- the second NFT already exists in the blockchain 120 and the second electronic device 110d2 retrieves the second NFT e.g. through a request sent to a server 120a, ..., 120n implementing the blockchain 120.
- the second NFT can be an NFT with additional information according to the present disclosure or an NFT in the meaning of the state-of-the-art (e.g. metadata such as for identifying the digital asset and eventually a holder of the digital asset).
- This is different from the first NFT that is an NFT with updated information, as do NFTs generated by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with Figure 4 ).
- the second NFT may be associated with a given digital asset a user of the terminal equipment 110 wants to buy through the services offered by the NFT management service provider.
- the terminal equipment 110 may exchange data (e.g. in the form of requests/responses data frame exchanges through the core network 150) with the server 100.
- the second electronic device 110d2 in the server 100 may parse and search for NFTs in the blockchain 120 in the perspective of checking the similarity of the given digital asset with other digital assets of the same type. In that respect, the second electronic device 110d2 may obtain the first NFT associated with a first digital asset as discussed above.
- the second electronic device 110d2 verifies the similarity of the first digital asset with the second digital asset based on at least one comparison between, on one hand, first data based on an output of a transformation method applied to the first digital asset and, on the other hand, second data based on an output of the transformation method applied to the second digital asset.
- the transformation method is identified by the transformation information of the first NFT.
- all or part of the parameters of the transformation method identified by the transformation information of the first NFT are tuned before application to the second digital asset. This may be useful e.g. when it is suspected that slight modifications of a given kind differentiate the first digital asset and the second digital asset.
- the tuning of some parameters of the transformation method identified by the transformation information of the first NFT may allow retrieving more efficiently the technical characteristics of the second digital asset despite the slight modifications. Such tuning may be e.g. a change in a sampling rate when the digital asset is a sound, or a change in a threshold for deciding the contours of surfaces in an image, etc.
- a metric is estimated based on the first and second data (e.g. the norm of the difference of the first and second data).
- the first digital asset is declared as similar to the second digital asset when the metric is lower than a predetermined threshold. In this case, it can be suspected that the first digital asset is a slightly modified copy of the second digital asset and an alert may be raised by the second electronic device 110d2.
- the second electronic device 110d2 may thus send an alert information to the terminal equipment 110.
- a first digital sound and a second digital sound can be compared by computing the sum of the numerical representation of the first digital sound with the opposite of the numerical representation of the second digital sound (or equivalently by computing the difference between the numerical representation of the first digital sound and the numerical representation of the second digital sound).
- Two identical digital sounds will result in silence (i.e. the numerical representation of the resulting sum (or difference) is zero, whether in the time domain or in the frequency domain).
- the same transformation method applied to two almost identical digital sounds will result in almost silence.
- further processing will allow determining the similarity of the digital sounds, for example by computing a metric based on the number of occurrences where the time domain numerical representation of the sum of the first digital sound with the opposite of the second digital sound (or the time domain numerical representation of the difference between the first digital sound and the second digital sound) is higher than a predetermined threshold.
- the sampling rate of the digital sounds can be reduced, for example from 48 kHz to 12 kHz.
- a similar approach consists in increasing the sampling intervals. Reducing the sampling rate will also remove differences that are not significant.
- the same method as described above is applied on both sounds with lower sampling rates.
- Other additional transformations can be applied, for exampling by capping the values of samples above a certain threshold.
- the transformation method can be based on an algorithm like "Edge detection” as discussed above in relation with Figure 4 .
- the transformation can be "Edge detection”, followed by computing the density of various pixels over a certain area of the pictures.
- the norm of the difference of the first and second densities can be used as a metric for declaring as similar the first digital picture and the second digital picture.
- Figure 6a illustrates the rendering of a first digital picture
- Figure 7a illustrates the rendering of a second digital picture which is a slightly modified copy of the first digital picture.
- contrast and saturation has been changed in the second digital picture compared to that of the first digital picture.
- applying a transformation that corresponds to a modification of the surfaces in order to keep only the contours to the first and second digital pictures e.g. a "Edge detection" transformation
- a direct comparison of the first transformed picture and of the second transformed picture e.g. through a difference between the characteristics (e.g.
- the color) of corresponding pixels in the first and second transformed picture and a comparison with a predetermined threshold shows that the first and second transformed pictures are identical. It can thus be suspected that the first and second digital pictures are similar or, in other words, that the second digital picture is a slight modification of the first digital picture.
- the step S530 comprises reading the transformed first digital asset from the information in the first NFT.
- the first data is based on the read transformed first digital asset.
- the step S530 comprises applying the transformation method to the first digital asset delivering a transformed first digital asset.
- the first data is based on the delivered transformed first digital asset.
- the result of the verification of the similarity between the first and second digital assets can be trusted even in case the transformed first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- the first data is based on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset.
- the second data is based on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset.
- the fingerprint method is identified by the fingerprint information of the first NFT.
- the comparison is straightforward when relying on the first and second fingerprints, thus reducing again the computational load when performing the verifying of the similarity between the digital assets.
- the step S530 comprises reading the first fingerprint from the information in the first NFT.
- the first data is based on the read first fingerprint.
- the step S530 comprises applying the fingerprint method to the first digital asset delivering the first fingerprint.
- the first data is based on the delivered first fingerprint.
- the verification of the similarity between the digital assets can be performed even in case the fingerprint of the first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- the first data is based both on an output of a transformation method applied to the first digital asset (according to any of the embodiments discussed above) and on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset (according to any of the embodiments discussed above).
- the second data is based both on an output of the transformation method applied to the second digital asset (according to any of the embodiments discussed above) and on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset (according to any of the embodiments discussed above).
- the transformation method and the fingerprint method are identified respectively by the transformation information and by the fingerprint information of the first NFT.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
- The field of the disclosure is the authentication of digital assets or contents.
- More specifically, the disclosure relates to a technology for verifying a similarity between digital assets.
- The disclosure can be of interest in any field wherein digital assets represent values, depending e.g. on its uniqueness. This may be the case for instance, for digital images, videos, sound, etc.
- Patent documents
CN114359590 A ,CN114756627 A and publications Das, Dipanjan, et al. "Understanding security issues in the NFT ecosystem." Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. 2022; and Dobre, Robert Alexandru, et al. "Blockchain-based image copyright protection system using JPEG resistant digital signature." 2020 IEEE 26th International Symposium for Design and Technology in Electronic Packaging (SIITME). IEEE, 2020 provide teachings relevant to the technical field of the invention. - A digital asset may be of considerable value, depending on its usage and/or its uniqueness. Examples of such digital assets are digital images, videos, sounds, and any digital asset that can be sensed with the appropriate rendering mechanism. Images and sounds are the most common digital assets that can be sensed by humans, but new technologies enable "rendering" of touch, smell and very soon, taste. Some digital assets can be considered a work of art, with high market value; other digital assets can represent an extension of a human body, like a weapon or a spaceship or a vehicle in an online game.
- Digital assets can also be made of a digital object and possibly with metadata, for example for object-oriented media, where the sound of a flying bee is rendered from the combination of a digital representation of the sound of the bee and metadata describing the flying path of the bee.
- The problem is that digital assets can be easily duplicated while keeping their integrity and pristine state. It is impossible to differentiate the original and the copy. This becomes a major problem when the value of these digital assets depends on their uniqueness. An issue is therefore to be able to demonstrate which digital assets is the original one, who is the original artist or creator, etc.
- In this perspective, a person purchasing a digital asset typically receives a certificate comprising information describing e.g. the characteristics of the asset and date of purchase. The certificate often takes the form a non-fungible token, hereafter NFT. The NFT can be logged in a blockchain, creating an unmodifiable trace of the ownership of the NFT.
- But there could be a problem if a second certificate is issued to another person, which certificate describes the characteristics of an exact digital copy, or a very similar version of the original asset. In theory, it is easy to verify the anteriority by verifying the dates in the blockchain. But it may be that the digital asset has been slightly modified in such a way that the original asset and slightly modified copy are not digitally equal, which means that it is possibly another valid NFT. In the case of an image, both the original and slightly modified copy can look very similar, which would probably create some disappointment to the owner of the original asset and NFT, as well as reduce the value of the asset: in his view, the image is not unique anymore.
- There is thus a need for a method that allows the detection of possible copies (exact or slightly modified copies) of a digital asset.
- A particular aspect of the present disclosure relates to a method for generating an NFT associated with a digital asset. According to such method, an electronic device executes:
- obtaining an initial NFT comprising information identifying the digital asset;
- obtaining information, named transformation information, representative of at least one transformation method delivering a transformed digital asset when applied to the digital asset, the transformation method reducing the amount of information present in the digital asset for having the transformed digital asset representative of at least one technical characteristic of the digital asset; and
- updating the information of the initial NFT delivering the NFT associated with the digital asset, the updated information comprising the transformation information.
- Thus, the present disclosure proposes a new and inventive solution for allowing the detection of possible copies (exact or slightly modified copies) of a digital asset. Such digital asset is e.g. of the kind that can be sensed by a human when rendered by an adapted rendering means. This may be the case for instance for a video, an image, a sound, a touch or a smell.
- More particularly, the proposed solution relies on the use of transform methods that allows highlighting the main technical characteristics of the digital asset. Indeed, when slight modifications are performed on digital assets, their main technical characteristics remain unchanged. By removing the subtle variations in a digital asset, we can thus expect to be able to detect slightly modified copies.
- In some embodiments, the updated information comprises the transformed digital asset.
- In some embodiments, the transformation information comprises the transformation method itself or an identification of the transformation method.
- In some embodiments, the electronic device executes obtaining information, named fingerprint information, representative of at least one fingerprint method delivering a fingerprint when applied to the transformed digital asset. The updated information comprises the fingerprinting information.
- The fingerprint method is e.g. a hash function or a Rabin function.
- In some embodiments, the fingerprint information comprises the fingerprint method itself or an identification of the fingerprint method.
- In some embodiments, the updated information comprises the fingerprint.
- In some embodiments, the obtaining an initial NFT comprises:
- generating the initial NFT; or
- retrieving the initial NFT from a blockchain.
- Another aspect of the present disclosure relates to a method for verifying a similarity between digital assets. According to such method, an electronic device executes:
- obtaining a first NFT associated with a first digital asset and generated by execution of the method for generating an NFT according to any of the embodiments discussed above;
- obtaining a second NFT associated with a second digital asset; and
- verifying the similarity of the first digital asset with the second digital asset based on at least one comparison between, on one hand, first data based on an output of a transformation method applied to the first digital asset and, on the other hand, second data based on an output of the transformation method applied to the second digital asset, the transformation method being identified by the transformation information of the first NFT.
- In some embodiments, the obtaining the first NFT comprises:
- generating the first NFT by execution of the method for generating an NFT according to any of the embodiments discussed above; or
- retrieving, from a blockchain, the first NFT generated by execution of the method for generating an NFT according to any of the embodiments discussed above.
- In some embodiments, the obtaining the second NFT comprises:
- generating the second NFT by execution of the method for generating an NFT according to any of the embodiments discussed above; or
- retrieving, from a blockchain, the second NFT generated by execution of the method for generating an NFT according to any of the embodiments discussed above.
- Thus, the second NFT can be an NFT with additional information according to the present disclosure or an NFT in the meaning of the state-of-the-art (e.g. metadata such as for identifying the digital asset and eventually for identifying a holder of the digital asset).
- In some embodiments wherein the information of the first NFT comprises the transformed first digital asset, the verifying the similarity comprises reading the transformed first digital asset from the information in the first NFT. The first data is based on the read transformed first digital asset.
- Thus, the computational load is reduced when performing the verifying of the similarity between the digital assets.
- In alternative embodiments wherein the information of the first NFT comprises the transformed first digital asset, the verifying the similarity comprises applying the transformation method to the first digital asset delivering a transformed first digital asset. The first data is based on the delivered transformed first digital asset.
- Thus, the result of the verification of the similarity between the digital assets can be trusted even in case the transformed first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- In some embodiments wherein the information of the first NFT comprises the fingerprinting information, the first data is based on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset. The second data is based on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset. The fingerprint method is identified by the fingerprint information of the first NFT.
- Thus, the comparison is straightforward when relying on the first and second fingerprints, thus reducing again the computational load when performing the verifying of the similarity between the digital assets.
- In some embodiments wherein the information of the first NFT comprises a first fingerprint associated with the first digital asset, the verifying the similarity comprises reading the first fingerprint from the information in the first NFT. The first data is based on the read first fingerprint.
- In alternative embodiments wherein the information of the first NFT comprises a first fingerprint associated with the first digital asset, the verifying the similarity comprises applying the fingerprint method to the first digital asset delivering the first fingerprint. The first data is based on the delivered first fingerprint.
- Thus, the verification of the similarity between the digital assets can be performed even in case the fingerprint of the first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for generating an NFT (in any of the different embodiments discussed above), when said program is executed on a computer or a processor.
- Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for verifying a similarity between digital assets (in any of the different embodiments discussed above), when said program is executed on a computer or a processor.
- Another aspect of the present disclosure relates to an electronic device configured for implementing all or part of the steps of the above-mentioned method for generating an NFT (in any of the different embodiments discussed above). Thus, the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.
- Another aspect of the present disclosure relates to an electronic device configured for implementing all or part of the steps of the above-mentioned method for verifying a similarity between digital assets (in any of the different embodiments discussed above). Thus, the features and advantages of this device are the same as those of the corresponding steps of said method. Therefore, they are not detailed any further.
- Other features and advantages of embodiments shall appear from the following description, given by way of indicative and non-exhaustive examples and from the appended drawings, of which:
-
Figure 1 illustrates a terminal equipment communicatively connected to a server of an NFT management service provider according to one embodiment of the present disclosure; -
Figure 2 illustrates an example of the structural blocks of an electronic device allowing all or part of the steps of the method for generating an NFT ofFigure 4 to be executed by the server ofFigure 1 according to one embodiment of the present disclosure; -
Figure 3 illustrates an example of the structural blocks of an electronic device allowing all or part of the steps of the method for verifying a similarity between digital assets ofFigure 5 to be executed by the server ofFigure 1 according to one embodiment of the present disclosure; -
Figure 4 illustrates the steps of a method for generating an NFT according to one embodiment of the present disclosure; -
Figure 5 illustrates the steps of a method for verifying a similarity between digital assets according to one embodiment of the present disclosure; -
Figure 6a illustrates the rendering of a first digital picture; -
Figure 6b illustrates the rendering of the output of a transformation method applied to the first digital picture ofFigure 6a according to one embodiment of the present disclosure; -
Figure 7a illustrates the rendering of a second digital picture; -
Figure 7b illustrates the rendering of the output of the transformation method applied to the second digital picture ofFigure 7a according to one embodiment of the present disclosure. - In all of the Figures of the present document, the same numerical reference signs designate similar elements and steps.
- Referring now to
Figure 1 , we describe aterminal equipment 110 communicatively connected to aserver 100 of an NFT management service provider according to one embodiment of the present disclosure. - More particularly, the terminal equipment 110 (e.g. a smartphone, a tablet or a personal computer equipped with a wireless communications module, etc.) is communicatively connected to the
server 100 through a wired communications link that goes through acore network 150. Such wired communications link is e.g. an xDSL communications link and implements e.g. an internet protocol. - However, in some embodiments, the communications link between the
terminal equipment 110 and theserver 100 goes through a wireless communications link, e.g. based on a cellular protocol (e.g. a 3GPP 2G, 3G, 4G or 5G protocol) or on a WiMAX protocol. - In
Figure 1 , theserver 100 is communicatively connected to a plurality ofservers 120a, ..., 120n that implement ablockchain 120. More particularly, theblockchain 120 registers NFT associated with digital assets (e.g. digital images, videos, sounds, touch, smell and any digital asset that can be sensed by a human with the appropriate rendering mechanism). All or part of the NFT registered in theblockchain 120 can be managed by theserver 100 of the NFT management service provider. - In the present embodiment, the communications link between the
server 100 and the plurality ofservers 120a, ..., 120n goes through thecore network 150. However, in other embodiments, the communications link between theserver 100 and the plurality ofservers 120a, ..., 120n goes through another communications network (e.g. a wired or a wireless communications network). - Back to
Figure 1 , theserver 100 implements a first electronic device 100d1 that comprises means allowing all or part of the steps of the method for generating an NFT ofFigure 4 to be executed. In the same way, theserver 100 implements a second electronic device 100d2 that comprises means allowing all or part of the steps of the method for verifying a similarity between digital assets ofFigure 5 to be executed. - More particularly, referring to
Figure 2 , in order to implement all or part of the steps of the method for generating an NFT in the various embodiments disclosed below in relationship withFigure 4 , in some embodiments the first electronic device 100d1 comprises: - a non-volatile memory 203 (e.g. a read-only memory (ROM), a hard disk, a flash memory, etc.);
- a volatile memory 201 (e.g. a random-access memory or RAM) and a
processor 202. - The
non-volatile memory 203 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by theprocessor 202 in order to enable implementation of some steps of the method described below (method for generating an NFT) in the various embodiments disclosed in relationship withFigure 4 . - Upon initialization, the aforementioned program code instructions are transferred from the
non-volatile memory 203 to thevolatile memory 201 so as to be executed by theprocessor 202. Thevolatile memory 201 likewise includes registers for storing the variables and parameters required for this execution. - The steps of the method for generating an NFT may be implemented equally well:
- by the execution of a set of program code instructions executed by a reprogrammable computing machine such as a PC type apparatus, a DSP (digital signal processor) or a microcontroller. This program code instructions can be stored in a non-transitory computer-readable carrier medium that is detachable (for example a CD-ROM, a DVD-ROM, a USB key) or non-detachable; or
- by a dedicated machine or component, such as an FPGA (Field Programmable Gate Array), an ASIC (Application-Specific Integrated Circuit) or any dedicated hardware component.
- In other words, the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.
- Referring to
Figure 3 , in order to be able to implement all or part of the steps of the method for verifying a similarity between digital assets in the various embodiments disclosed in relationship withFigure 5 , in some embodiments the second electronic device 100d2 comprises: - a non-volatile memory 303 (e.g. a read-only memory (ROM), a hard disk, a flash memory, etc.);
- a volatile memory 301 (e.g. a random-access memory or RAM) and a
processor 202. - The
non-volatile memory 303 is a non-transitory computer-readable carrier medium. It stores executable program code instructions, which are executed by theprocessor 302 in order to enable implementation of some steps of the method described below (method for verifying a similarity between digital assets) in the various embodiments disclosed in relationship withFigure 5 . - Upon initialization, the aforementioned program code instructions are transferred from the
non-volatile memory 303 to thevolatile memory 301 so as to be executed by theprocessor 302. Thevolatile memory 301 likewise includes registers for storing the variables and parameters required for this execution. - The steps of the method for generating an NFT may be implemented equally well:
- by the execution of a set of program code instructions executed by a reprogrammable computing machine such as a PC type apparatus, a DSP (digital signal processor) or a microcontroller. This program code instructions can be stored in a non-transitory computer-readable carrier medium that is detachable (for example a CD-ROM, a DVD-ROM, a USB key) or non-detachable; or
- by a dedicated machine or component, such as an FPGA (Field Programmable Gate Array), an ASIC (Application-Specific Integrated Circuit) or any dedicated hardware component.
- In other words, the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it may also be implemented in hardware form or any form combining a hardware portion and a software portion.
- Back to
Figure 1 , the first electronic device 100d1 and the second electronic device 100d2 are implemented in theserver 100. However, in other embodiments, the first electronic device 100d1 and/or the second electronic device 100d2 are implemented in another entity than theserver 100, e.g. in one of theservers 120a, ..., 120n implementing theblockchain 120. In some embodiments, the first electronic device 100d1 and the second electronic device 100d2 are a same electronic device. - Referring now to
Figure 4 , we describe a method M400 for generating an NFT according to one embodiment of the present disclosure. - More particularly, in a step S410, the first electronic device 110d1 obtains an initial NFT. Such initial NFT comprises information identifying a digital asset. Depending on the considered implementations, such NFT may comprise additional information as can be found in NFT according to the state of the art, e.g. metadata identifying a holder of the digital asset.
- In some embodiments, the step S410 comprises the generation of the initial NFT. In such embodiments, the first electronic device 110d1 generates the initial NFT that comprises the information identifying the digital asset by execution e.g. of a known technique. Such first NFT, when generated, may be registered by the first electronic device 110d1 into the
blockchain 120. - In some embodiments, the step S410 comprises retrieving the initial NFT from a
blockchain 120. In such embodiments, the initial NFT already exists in theblockchain 120. The first electronic device 110d1 retrieves the initial NFT e.g. through a request sent to aserver 120a, ..., 120n implementing theblockchain 120. - Back to
Figure 4 , in a step S420, the first electronic device 110d1 obtains information, named transformation information, representative of at least one transformation method that delivers a transformed digital asset when applied to the digital asset. - Depending on the embodiments, the transformation information comprises the transformation method itself or an identification of the transformation method.
- More particularly, such transformation method reduces the amount of information present in the digital asset for having the transformed digital asset representative of at least one technical characteristic of the digital asset.
- For instance, for a digital asset such as an image, the transform methods can comprise e.g. a modification of the luminance, brilliance, exposure, or a reduction in the definition, in a number of pixels, or a sampling of a subset of the image, a transformation into grayscale, in black and white, or a modification of the surfaces in order to keep only the contours. In this later case, well known algorithms like "Edge detection" can be used. The result of such transformation is that only important discontinuities remain in the transformed asset. For example, slight modifications of colors will be removed. For a video, the transform methods can comprise e.g. a reduction in the number of images per second, or reduction of the resolution of images. For a sound, the transform methods can comprise e.g. changes in the sampling rate or sampling according to frequency bands. Such methods allow reducing the amount of information (e.g. the entropy) contained in a digital asset so that subtle differences are removed and only the main technical characteristics remain. When relevant, the amount of information removed can be tuned using e.g. a threshold or a removal level.
- The use of such transform methods that allows highlighting the main technical characteristics of the digital asset allows detecting in a straightforward way possible copies (exact or slightly modified copies) of the digital asset. Indeed, when slight modifications are performed on digital assets, the main technical characteristics of said assets remain unchanged. By removing the subtle variations in a digital asset, we can thus expect to be able to detect slightly modified copies. This behavior is discussed more deeply below in relation with the method for verifying a similarity between digital assets of
Figure 5 . - Back to
Figure 4 , in a step S430, the first electronic device 110d1 obtains another information, named fingerprint information, representative of at least one fingerprint method delivering a fingerprint when applied to the transformed digital asset. - Depending on the embodiments, the fingerprint information comprises the fingerprint method itself or an identification of the fingerprint method.
- For instance, the fingerprint method implements e.g. a hash function or a Rabin function.
- The use of such fingerprint methods allows a straightforward comparison between fingerprints obtained for different digital assets. However, applying a fingerprint method to the digital asset itself would be useless as a single bit of data that differs between two digital assets would result in different fingerprints. In order to detect slightly modified digital assets, the fingerprint methods are preferably applied to the transformed digital asset. Indeed, as discussed above, the considered transform methods reduce the amount of information (e.g. the entropy) contained in a digital asset so that subtle differences are removed and only the main technical characteristics remain. It can thus be expected that transformed digital assets obtained from slightly modified assets may be the same and so do the fingerprints obtained from the transformed digital assets. A similarity between digital assets may thus rely on a comparison of the fingerprints obtained from the corresponding transformed digital assets.
- However, in some embodiments, the step S430 is not implemented and no fingerprint information is obtained by the first electronic device 110d1.
- Back to
Figure 4 , in a step S440, the first electronic device 110d1 updates the information of the initial NFT delivering an updated NFT associated with the digital asset. More particularly, the updated information comprises the transformation information and the fingerprinting information. - In some embodiments, the updated information comprises the transformed digital asset.
- In some embodiments, the updated information comprises the fingerprint of the transformed digital asset.
- However, in the embodiments discussed above wherein the step S430 is not implemented, the updated information does not comprise the fingerprinting information and thus, in relevant corresponding embodiments, the updated information does not comprise the fingerprint of the transformed digital asset.
- Referring now to
Figure 5 , we describe a method for verifying a similarity between digital assets according to one embodiment of the present disclosure. Some of the steps of such method are further detailed based on the illustrative examples provided inFigures 6a, 6b, 7a and 7b . - More particularly, in a step S510, the second electronic device 110d2 obtains a first NFT associated with a first digital asset. More particularly, the first NFT has been generated by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with
Figure 4 ). - In some embodiments, the step S510 comprises the generation of the first NFT by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with
Figure 4 ). In such embodiments, the second electronic device 110d2 thus implements the method for generating an NFT as discussed above (in any of the embodiments discussed in relation withFigure 4 ). The first NFT, when generated may be stored by the second electronic device 110d2 into theblockchain 120. - In some embodiments, the step S510 comprises retrieving the first NFT from a
blockchain 120. In such embodiments, the first NFT already exists in theblockchain 120 and the second electronic device 110d2 retrieves the first NFT e.g. through a request sent to aserver 120a, ..., 120n implementing theblockchain 120. However, even in such embodiments, the first NFT has been generated by the execution, e.g. by the first electronic device 110d1, of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation withFigure 4 ). - Back to
Figure 5 , in a step S520, the second electronic device 110d2 obtains a second NFT associated with a second digital asset. - In some embodiments, the step S520 comprises the generation of the second NFT by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with
Figure 4 ). In such embodiments also, the second electronic device 110d2 thus implements the method for generating an NFT as discussed above (in any of the embodiments discussed in relation withFigure 4 ). The second NFT, when generated may be stored by the second electronic device 110d2 into theblockchain 120. - In some embodiments, the step S520 comprises retrieving the second NFT from a
blockchain 120. In such embodiments, the second NFT already exists in theblockchain 120 and the second electronic device 110d2 retrieves the second NFT e.g. through a request sent to aserver 120a, ..., 120n implementing theblockchain 120. - Thus, the second NFT can be an NFT with additional information according to the present disclosure or an NFT in the meaning of the state-of-the-art (e.g. metadata such as for identifying the digital asset and eventually a holder of the digital asset). This is different from the first NFT that is an NFT with updated information, as do NFTs generated by execution of the method for generating an NFT as discussed above (in any of the embodiments discussed in relation with
Figure 4 ). For instance, the second NFT may be associated with a given digital asset a user of theterminal equipment 110 wants to buy through the services offered by the NFT management service provider. In that respect, theterminal equipment 110 may exchange data (e.g. in the form of requests/responses data frame exchanges through the core network 150) with theserver 100. Responsive to receiving a request for buying the given digital asset, the second electronic device 110d2 in theserver 100 may parse and search for NFTs in theblockchain 120 in the perspective of checking the similarity of the given digital asset with other digital assets of the same type. In that respect, the second electronic device 110d2 may obtain the first NFT associated with a first digital asset as discussed above. - Back to
Figure 5 , in a step S530, the second electronic device 110d2 verifies the similarity of the first digital asset with the second digital asset based on at least one comparison between, on one hand, first data based on an output of a transformation method applied to the first digital asset and, on the other hand, second data based on an output of the transformation method applied to the second digital asset. The transformation method is identified by the transformation information of the first NFT. - In some embodiments, all or part of the parameters of the transformation method identified by the transformation information of the first NFT are tuned before application to the second digital asset. This may be useful e.g. when it is suspected that slight modifications of a given kind differentiate the first digital asset and the second digital asset. The tuning of some parameters of the transformation method identified by the transformation information of the first NFT may allow retrieving more efficiently the technical characteristics of the second digital asset despite the slight modifications. Such tuning may be e.g. a change in a sampling rate when the digital asset is a sound, or a change in a threshold for deciding the contours of surfaces in an image, etc.
- In some embodiments, a metric is estimated based on the first and second data (e.g. the norm of the difference of the first and second data). The first digital asset is declared as similar to the second digital asset when the metric is lower than a predetermined threshold. In this case, it can be suspected that the first digital asset is a slightly modified copy of the second digital asset and an alert may be raised by the second electronic device 110d2. The second electronic device 110d2 may thus send an alert information to the
terminal equipment 110. - For instance, a first digital sound and a second digital sound can be compared by computing the sum of the numerical representation of the first digital sound with the opposite of the numerical representation of the second digital sound (or equivalently by computing the difference between the numerical representation of the first digital sound and the numerical representation of the second digital sound). Two identical digital sounds will result in silence (i.e. the numerical representation of the resulting sum (or difference) is zero, whether in the time domain or in the frequency domain). The same transformation method applied to two almost identical digital sounds will result in almost silence. In this case, further processing will allow determining the similarity of the digital sounds, for example by computing a metric based on the number of occurrences where the time domain numerical representation of the sum of the first digital sound with the opposite of the second digital sound (or the time domain numerical representation of the difference between the first digital sound and the second digital sound) is higher than a predetermined threshold. In order to save processing time, the sampling rate of the digital sounds can be reduced, for example from 48 kHz to 12 kHz. A similar approach consists in increasing the sampling intervals. Reducing the sampling rate will also remove differences that are not significant. The same method as described above is applied on both sounds with lower sampling rates. Other additional transformations can be applied, for exampling by capping the values of samples above a certain threshold.
- According to another example, for comparing a first digital picture and a second digital picture, the transformation method can be based on an algorithm like "Edge detection" as discussed above in relation with
Figure 4 . However, in the case where the first digital picture and the second digital picture are of different size, the transformation can be "Edge detection", followed by computing the density of various pixels over a certain area of the pictures. The norm of the difference of the first and second densities can be used as a metric for declaring as similar the first digital picture and the second digital picture. - This behavior is for instance illustrated through the examples provided in
Figures 6a, 6b, 7a and 7b . More particularly,Figure 6a illustrates the rendering of a first digital picture andFigure 7a illustrates the rendering of a second digital picture which is a slightly modified copy of the first digital picture. For instance, contrast and saturation has been changed in the second digital picture compared to that of the first digital picture. However, applying a transformation that corresponds to a modification of the surfaces in order to keep only the contours to the first and second digital pictures (e.g. a "Edge detection" transformation) delivers respectively the first transformed picture ofFigure 6b and the second transformed picture ofFigure 7b . A direct comparison of the first transformed picture and of the second transformed picture (e.g. through a difference between the characteristics (e.g. the color) of corresponding pixels in the first and second transformed picture and a comparison with a predetermined threshold) shows that the first and second transformed pictures are identical. It can thus be suspected that the first and second digital pictures are similar or, in other words, that the second digital picture is a slight modification of the first digital picture. - In some embodiments wherein the information of the first NFT comprises the transformed first digital asset, the step S530 comprises reading the transformed first digital asset from the information in the first NFT. The first data is based on the read transformed first digital asset.
- Thus, the computational load is reduced when performing the verifying of the similarity between the digital assets.
- However, in alternative embodiments wherein the information of the first NFT comprises the transformed first digital asset, the step S530 comprises applying the transformation method to the first digital asset delivering a transformed first digital asset. The first data is based on the delivered transformed first digital asset.
- Thus, the result of the verification of the similarity between the first and second digital assets can be trusted even in case the transformed first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- In some embodiments wherein the information of the first NFT comprises the fingerprinting information, the first data is based on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset. The second data is based on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset. The fingerprint method is identified by the fingerprint information of the first NFT.
- Thus, the comparison is straightforward when relying on the first and second fingerprints, thus reducing again the computational load when performing the verifying of the similarity between the digital assets.
- In some embodiments wherein the information of the first NFT comprises a first fingerprint associated with the first digital asset, the step S530 comprises reading the first fingerprint from the information in the first NFT. The first data is based on the read first fingerprint.
- Thus, the computational load is reduced when performing the verifying of the similarity between the digital assets.
- However, in alternative embodiments wherein the information of the first NFT comprises the first fingerprint associated with the first digital asset, the step S530 comprises applying the fingerprint method to the first digital asset delivering the first fingerprint. The first data is based on the delivered first fingerprint.
- Thus, the verification of the similarity between the digital assets can be performed even in case the fingerprint of the first digital asset, when present in the first NFT, has been modified in the first NFT, e.g. by a malicious person.
- In some embodiments, the first data is based both on an output of a transformation method applied to the first digital asset (according to any of the embodiments discussed above) and on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset (according to any of the embodiments discussed above). The second data is based both on an output of the transformation method applied to the second digital asset (according to any of the embodiments discussed above) and on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset (according to any of the embodiments discussed above). The transformation method and the fingerprint method are identified respectively by the transformation information and by the fingerprint information of the first NFT.
Claims (15)
- Method (M400) for generating a non-fungible token, hereafter NFT, associated with a digital asset, wherein an electronic device (100d1) executes:- obtaining (S410) an initial NFT comprising information identifying the digital asset;- obtaining (S420) information, named transformation information, representative of at least one transformation method delivering a transformed digital asset when applied to the digital asset, the transformation method reducing the amount of information present in the digital asset for having the transformed digital asset representative of at least one technical characteristic of the digital asset; and- updating (S440) the information of the initial NFT delivering said NFT associated with the digital asset, the updated information comprising the transformation information.
- Method for generating according to claim 1, wherein said updated information comprises the transformed digital asset.
- Method for generating according to claim 1 or 2, wherein the electronic device executes:- obtaining (S430) information, named fingerprint information, representative of at least one fingerprint method delivering a fingerprint when applied to the transformed digital asset,said updated information comprising the fingerprinting information.
- Method for generating according to claim 3, wherein said updated information comprises the fingerprint.
- Method for generating according to any of the claims 1 to 4, wherein the obtaining an initial NFT comprises:- generating the initial NFT; or- retrieving the initial NFT from a blockchain.
- Method for verifying a similarity between digital assets, wherein an electronic device (100d2) executes:- obtaining (S510) a first non-fungible token, hereafter NFT, associated with a first digital asset and generated by execution of the method for generating an NFT according to any of the claims 1 to 5;- obtaining (S520) a second NFT associated with a second digital asset; and- verifying (S530) the similarity of the first digital asset with the second digital asset based on at least one comparison between, on one hand, first data based on an output of a transformation method applied to the first digital asset and, on the other hand, second data based on an output of the transformation method applied to the second digital asset, the transformation method being identified by the transformation information of the first NFT.
- Method for verifying according to claim 6, wherein the obtaining the second NFT comprises:- generating the second NFT by execution of the method for generating an NFT according to any of the claims 1 to 5; or- retrieving, from a blockchain, the second NFT generated by execution of the method for generating an NFT according to any of the claims 1 to 5.
- Method for verifying according to claim 6 or 7, the first NFT being generated by execution of the method for generating an NFT according to claim 2 or according to any of the claims 3 to 5 in that it depends on claim 2, wherein the verifying the similarity comprises reading the transformed first digital asset from the information in the first NFT, the first data being based on the read transformed first digital asset.
- Method for verifying according to claim 6 or 7, the first NFT being generated by execution of the method for generating an NFT according to claim 2 or according to any of the claims 3 to 5 in that it depends on claim 2, wherein the verifying the similarity comprises applying the transformation method to the first digital asset delivering a transformed first digital asset, the first data being based on the delivered transformed first digital asset.
- Method for verifying according to any of the claims 6 to 9, the first NFT being generated by execution of the method for generating an NFT according to claim 3 or according to any of the claims 4 to 5 in that it depends on claim 3, wherein the first data is based on a first fingerprint delivered by a fingerprint method applied to the output of the transformation method applied to the first digital asset,wherein the second data is based on a second fingerprint delivered by the fingerprint method applied to the output of the transformation method applied to the second digital asset,the fingerprint method being identified by the fingerprint information of the first NFT.
- Method for verifying according to claim 10, the first NFT being generated by execution of the method for generating an NFT according to claim 4 or according to claim 5 in that it depends on claim 4, wherein the verifying the similarity comprises reading the first fingerprint from the information in the first NFT, the first data being based on the read first fingerprint.
- Method for verifying according to claim 6 or 7, the first NFT being generated by execution of the method for generating an NFT according to claim 4 or according to claim 5 in that it depends on claim 4, wherein the verifying the similarity comprises applying the fingerprint method to the first digital asset delivering the first fingerprint, the first data being based on the delivered first fingerprint.
- Computer program product comprising program code instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the method according to any of the claims 1-12.
- Electronic device (100d1) for generating a non-fungible token, hereafter NFT, associated with a digital asset,
wherein said electronic device comprises a processor (202) or a dedicated computing machine configured for:- obtaining (S410) an initial NFT comprising information identifying the digital asset;- obtaining (S420) information, named transformation information, representative of at least one transformation method delivering a transformed digital asset when applied to the digital asset, the transformation method reducing the amount of information present in the digital asset for having the transformed digital asset representative of at least one technical characteristic of the digital asset;- updating (S440) the information of the initial NFT delivering said NFT associated with the digital asset, the updated information comprising the transformation information. - Electronic device (100d2) for verifying a similarity between digital assets,
wherein said electronic device comprises a processor (302) or a dedicated computing machine configured for:- obtaining (S510) a first non-fungible token, hereafter NFT, associated with a first digital asset and generated by execution of the method for generating an NFT according to any of the claims 1 to 5;- obtaining (S520) a second NFT associated with a second digital asset;- verifying (S530) the similarity of the first digital asset with the second digital asset based on at least one comparison between, on one hand, first data based on an output of a transformation method applied to the first digital asset and, on the other hand, second data based on an output of the transformation method applied to the second digital asset, the transformation method being identified by the transformation information of the first NFT.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP22185737.8A EP4311157B1 (en) | 2022-07-19 | 2022-07-19 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
| ES22185737T ES3008472T3 (en) | 2022-07-19 | 2022-07-19 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
| US18/872,926 US20250356368A1 (en) | 2022-07-19 | 2023-07-18 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
| PCT/EP2023/069948 WO2024017903A1 (en) | 2022-07-19 | 2023-07-18 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP22185737.8A EP4311157B1 (en) | 2022-07-19 | 2022-07-19 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| EP4311157A1 EP4311157A1 (en) | 2024-01-24 |
| EP4311157C0 EP4311157C0 (en) | 2024-12-18 |
| EP4311157B1 true EP4311157B1 (en) | 2024-12-18 |
Family
ID=82839356
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP22185737.8A Active EP4311157B1 (en) | 2022-07-19 | 2022-07-19 | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250356368A1 (en) |
| EP (1) | EP4311157B1 (en) |
| ES (1) | ES3008472T3 (en) |
| WO (1) | WO2024017903A1 (en) |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11790096B2 (en) * | 2021-04-12 | 2023-10-17 | Philip Scott Lyren | Tokenizing digital assets with restrictions on a blockchain |
| US20220337392A1 (en) * | 2021-04-17 | 2022-10-20 | Daniel Christopher Schauer | Automatic digital media authenticator |
| EP4342167A4 (en) * | 2021-05-18 | 2025-03-19 | Quinn, Cary Michael | SELF-VERIFYING HIDDEN DIGITAL MEDIA IN OTHER DIGITAL MEDIA |
| KR102411652B1 (en) * | 2021-11-05 | 2022-06-22 | 석인수 | Method for providing real asset authentication service using decentralized identifier and non-fugible token |
| CN114359590B (en) * | 2021-12-06 | 2024-11-01 | 蚂蚁区块链科技(上海)有限公司 | NFT image work infringement detection method, NFT image work infringement detection device and computer storage medium |
| US12388620B2 (en) * | 2021-12-15 | 2025-08-12 | Galileo Group, Inc. | Systems, methods, and devices for generating digital and cryptographic assets by mapping bodies for n-dimensional monitoring using mobile image devices |
| CN114756627B (en) * | 2022-06-10 | 2022-09-30 | 杭州链城数字科技有限公司 | Alliance-chain-based digital asset processing method, system and storage medium |
| CN119497851A (en) * | 2022-06-30 | 2025-02-21 | 谷歌有限责任公司 | Deduplication of non-fungible tokens in search index |
-
2022
- 2022-07-19 EP EP22185737.8A patent/EP4311157B1/en active Active
- 2022-07-19 ES ES22185737T patent/ES3008472T3/en active Active
-
2023
- 2023-07-18 US US18/872,926 patent/US20250356368A1/en active Pending
- 2023-07-18 WO PCT/EP2023/069948 patent/WO2024017903A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2024017903A1 (en) | 2024-01-25 |
| EP4311157C0 (en) | 2024-12-18 |
| US20250356368A1 (en) | 2025-11-20 |
| EP4311157A1 (en) | 2024-01-24 |
| ES3008472T3 (en) | 2025-03-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9177209B2 (en) | Temporal segment based extraction and robust matching of video fingerprints | |
| US9286507B2 (en) | Online identity verification | |
| CN103238159B (en) | System and method for image authentication | |
| KR101627398B1 (en) | System and method for protecting personal contents right using context-based search engine | |
| CN100583750C (en) | Desynchronized fingerprinting method and system for digital multimedia data | |
| KR20160113703A (en) | Using a security feature with a digital image file | |
| US7200231B2 (en) | Information processing system, information processing apparatus, and computer-readable recording medium | |
| GB2464123A (en) | Event-based temporal video fingerprinting | |
| JP2013543178A (en) | Publication fingerprint extraction method, publication fingerprint extraction device, publication identification system using fingerprint, and publication identification method using fingerprint | |
| US12461697B2 (en) | Image processing apparatus performs masking processing to prevent leakage of an image generated by printing process, image processing system, non-transitory computer readable medium storing image processing program, and image processing method | |
| Liu et al. | Vronicle: verifiable provenance for videos from mobile devices | |
| CN110619197A (en) | Digital asset right-confirming registration information processing system and method | |
| CN111901640A (en) | Method and device for protecting copyright of streaming media | |
| Hadmi et al. | A robust and secure perceptual hashing system based on a quantization step analysis | |
| US8269849B2 (en) | Method and system for testing image pipelines | |
| EP4311157A1 (en) | Method for generating an nft associated with a digital asset, method for verifying a similarity between digital assets, corresponding computer program products and devices | |
| CN103986979A (en) | A method and system for copyright protection | |
| JP2012182737A (en) | Secret data leakage preventing system, determining apparatus, secret data leakage preventing method and program | |
| US10262118B2 (en) | Systems and methods for authenticating digital content | |
| Karyakarte et al. | Digital image fraudulence: A curse to forensic odontology | |
| KR100652009B1 (en) | How to identify collusion buyers using finger printing codes | |
| KR100488191B1 (en) | Method for manufacturing contents that have function for dealing cracking and method for processing of that contents for dealing cracking | |
| CN113780036A (en) | Image processing method and system, image and video detection method, electronic device | |
| CN114973091B (en) | Video operation behavior data updating method, device, equipment and storage medium | |
| KR20250177648A (en) | A method for issuing and operating encrypted NFTs using public key-based cryptographic algorithms. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 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: THE APPLICATION HAS BEEN PUBLISHED |
|
| 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 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
| 17P | Request for examination filed |
Effective date: 20240628 |
|
| RBV | Designated contracting states (corrected) |
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 |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06Q 30/06 20230101ALI20240717BHEP Ipc: G06Q 30/018 20230101ALI20240717BHEP Ipc: G06F 21/64 20130101ALI20240717BHEP Ipc: H04L 9/00 20220101AFI20240717BHEP |
|
| INTG | Intention to grant announced |
Effective date: 20240802 |
|
| GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
| AK | Designated contracting states |
Kind code of ref document: B1 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 |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602022008775 Country of ref document: DE |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
| U01 | Request for unitary effect filed |
Effective date: 20250106 |
|
| U07 | Unitary effect registered |
Designated state(s): AT BE BG DE DK EE FI FR IT LT LU LV MT NL PT RO SE SI Effective date: 20250115 |
|
| REG | Reference to a national code |
Ref country code: ES Ref legal event code: FG2A Ref document number: 3008472 Country of ref document: ES Kind code of ref document: T3 Effective date: 20250324 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250318 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250319 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250318 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250418 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| U20 | Renewal fee for the european patent with unitary effect paid |
Year of fee payment: 4 Effective date: 20250620 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: ES Payment date: 20250801 Year of fee payment: 4 |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: L10 Free format text: ST27 STATUS EVENT CODE: U-0-0-L10-L00 (AS PROVIDED BY THE NATIONAL OFFICE) Effective date: 20251029 |
|
| U1N | Appointed representative for the unitary patent procedure changed after the registration of the unitary effect |
Representative=s name: SANTARELLI; FR |
|
| 26N | No opposition filed |
Effective date: 20250919 |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: H13 Free format text: ST27 STATUS EVENT CODE: U-0-0-H10-H13 (AS PROVIDED BY THE NATIONAL OFFICE) Effective date: 20260224 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20250731 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20260618 Year of fee payment: 5 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IE Payment date: 20260619 Year of fee payment: 5 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |
|
| U20 | Renewal fee for the european patent with unitary effect paid |
Year of fee payment: 5 Effective date: 20260618 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20241218 |