Method and system for genuine nft printing
By embedding a unique authentication code in the NFT printing request and combining it with blockchain verification, the problem of verifying the owner of the NFT printed copy is solved, and the authenticity and legality of the printed copy are confirmed.
Patent Information
- Application Number
- CN202310149303.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2022-02-22
- Filing Date
- 2023-02-15
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2043-02-15
AI Technical Summary
Existing technologies cannot effectively verify whether printed copies of NFTs were made by the original owner, and lack mechanisms to prevent unauthorized copying.
By receiving printing requests, accessing the blockchain to identify the owner, generating and transmitting printing jobs, embedding a unique authentication code in the content only when authorized by the owner, and combining image processing and blockchain verification to confirm the authenticity of the printed copies.
It enables the verification of the authenticity of printed NFT copies and prevents unauthorized copying, ensuring that only the legitimate owner can obtain printed copies with a unique authentication code.
Smart Images

Figure CN116645091B_ABST
Abstract
Description
BACKGROUND
[0001] A non-fungible token (NFT) is a unique set of data stored on a distributed digital ledger. NFTs can hold any form of digital content, such as drawings, animations, videos, photographs, and other digital artwork, as well as text, music, video, documents such as event tickets, and other original creator works. Because NFTs are unique and non-fungible, NFTs allow the creator of digital content to designate one and only one copy of a work as the “original.” By storing each NFT on a distributed digital ledger (i.e., a blockchain) along with the identification of the owner of the NFT, the ownership of each NFT is a verifiable public record.
[0002] Currently, unless a file includes technical countermeasures that prevent printing and copying, anyone can print a copy of a digital content file. However, such countermeasures are undesirable in the field of NFT technology because they would even prevent a purchaser of an NFT from printing a work for viewing and display. Thus, NFT files typically do not have digital rights management countermeasures for preventing copying of files off the blockchain.
[0003] The ownership of a physical artwork is easily verifiable because the owner possesses the physical work. However, there is currently no simple way to verify whether a person who possesses a printed copy of an artwork is the owner of the NFT for that work because there is no difference between a copy printed from an NFT file and a copy printed from another digital file that is not associated with an NFT.
[0004] This document describes methods and systems that are intended to address the above problems. SUMMARY
[0005] In various aspects, the disclosure describes a method, a system configured to perform the method, and a computer program product configured to cause a processor to implement a method of generating a secure printed copy of content associated with an NFT. The system includes a processor and a computer-readable medium containing programming instructions configured to instruct the processor to implement the method. The method includes receiving a print request from a requesting entity, where the print request includes a request to print digital content associated with an NFT on a substrate or as a three-dimensional (3D) object. The method also includes accessing a distributed digital ledger associated with the NFT to identify a current owner of the NFT. The method includes generating a print job that includes a set of instructions for printing the digital content associated with the NFT. If the current owner of the NFT is the requesting entity, the set of instructions will include an instruction to print a unique authentication code along with the digital content; otherwise, the set of instructions will not include a command to print a unique authentication code. The method then includes transmitting the print job to a print engine of a printing device to print the digital content.
[0006] Optionally, the method can further include transmitting the unique authentication code and the identifier for the NFT or digital content to a distributed digital ledger for storage in a block.
[0007] In any of the above embodiments, when transmitting the unique authentication code and the identifier to the distributed digital ledger, the method can be limited to doing so only after the printing device has printed the digital content.
[0008] In various embodiments, the printing device can print the unique identification code along with the digital content. If the printing device is a two-dimensional printing machine, it can print both the unique identification code and the digital content on a substrate. Alternatively, if the printing device is a three-dimensional printing device, the print job can include instructions for printing the digital content as a three-dimensional object and for printing the authentication code on a surface of the three-dimensional object or embedding the authentication code within the three-dimensional object.
[0009] In any of the above embodiments, when printing the unique identification code, the system can print a machine identification code that includes a serial number of the printing device and a time at which the printing device printed the digital content.
[0010] In any of the above embodiments, after the digital content is printed, the method can further include receiving an image of the printed content and a certificate associated with an entity that provided the image, processing the image to extract the unique authentication code from the image, and accessing the distributed digital ledger to (a) identify the NFT associated with the unique authentication code, and (b) identify a current owner of the NFT. The method can then include outputting an indication that the printed content is an authenticated copy only if the current owner of the NFT matches the entity associated with the certificate; otherwise, the system will not output an indication that the printed content is an authenticated copy.
[0011] In any of the above embodiments, after the digital content is printed on the substrate, the system can: receive an image of the printed content; process the image to extract the unique authentication code and the printed content from the image; access the distributed digital ledger to identify the NFT associated with the unique authentication code and the content of the NFT associated with the unique identification code; and compare the content of the digital image to the content of the NFT. Then, only if (a) the authentication code from the image matches the authentication code associated with the NFT in the distributed digital ledger, and (b) the printed content matches the content of the NFT associated with the unique identification code, the system can output an indication that the printed content is an authenticated copy; otherwise, the system can not output an indication that the printed content is an authenticated copy. Also optionally, in these embodiments, after the digital content is printed, the system can: receive a certificate associated with an entity that provided the image; access the distributed digital ledger to identify the current owner of the NFT associated with the unique authentication code; and only if the current owner of the NFT matches the entity associated with the certificate, output an indication that the printed content is an authenticated copy. Otherwise, the system will not output an indication that the printed content is an authenticated copy.
[0012] In any of the above embodiments, the system can also include a printing device. The processor and the computer-readable medium can be components of the printing device, or they can be components of a computing device that is in communication with the printing device.
[0013] In any of the above embodiments, to generate the print job, the system can extract some or all of the data of the digital content from the NFT, and use the extracted data to generate a print system object that represents the digital content and includes instructions for rendering the digital content on a printing device.
[0014] In any of the above embodiments, to generate the print job, the system can: (a) extract an address of a server from the NFT; (b) query the server for the digital content; and (c) upon receiving the digital content from the server, generate a print system object that represents the digital content and includes instructions for rendering the digital content on a printing device.
[0015] In any of the above embodiments, in response to the NFT containing a rule that requires payment of a royalty or fee for printing an authenticated copy of the digital content, the system can wait until the system has received confirmation of payment of the royalty or fee before transmitting the print job to the printing device.
[0016] In any of the above embodiments, to print the unique authentication code, the system can encode the unique combination of characters into a microdot pattern on the substrate, or into a pantograph mark, a related mark, a watermark, a barcode, a QR code, or a matrix code. BRIEF DESCRIPTION OF DRAWINGS
[0017] Figure 1 A process known in the prior art for creating and transferring ownership of a non-fungible token (NFT) is shown.
[0018] Figure 2 A system that can be used to print an authenticated copy of digital content associated with a NFT is shown.
[0019] Figure 3 A process for printing an authenticated copy of a NFT work, creating a print record, and then authenticating the printed copy is shown.
[0020] Figure 4 Exemplary components of a computing device that can implement various embodiments described in this document are shown. DETAILED DESCRIPTION
[0021] As used herein, the singular forms “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art. The term “comprising” (or “comprises”), as used in this document, means “including” (or “includes”), but not limited to. The term “exemplary” is used in this document to mean “serving as an example, instance, or illustration,” and not to imply that a particular example is preferred or required as superior to other examples. As used herein, the term “consisting of’ means “including and limited to.”
[0022] In this document, when terms such as “first” and “second” are used to modify an element, such usage is simply intended to distinguish one element from another without necessarily requiring an ordinal sequence, unless specifically stated otherwise. The term “about” when used in connection with a numerical value is intended to include values that are close to but not exactly the number. For example, in some embodiments, the term “about” can include values that are + / - 10% of the value.
[0023] Additional terminology related to the present disclosure will be defined at the end of the “DETAILED DESCRIPTION” section herein.
[0024] As noted above, a non-fungible token (NFT) is a unique set of data stored in a distributed digital ledger. The data included in an NFT can be any original creator work, including but not limited to digital artwork such as graphic art, photographs, three-dimensional (3D) models, GIFs or videos, in-game items, and other digital assets purchased for use in a video game or other virtual platform, or unique documents such as event tickets, contracts, and other legal documents. Each NFT is stored on a public, distributed digital ledger (i.e., a blockchain) and includes an identification of the owner of the NFT. At the time of writing of this disclosure, most NFTs are part of the Ethereum blockchain, but the present disclosure is not limited to that particular platform.
[0025] Figure 1 A process known in the prior art for creating and transferring ownership of an NFT is shown. At 101, an artist, photographer, writer, or other creator creates a digital work, such as an artwork; a collection of photographs or drawings; a book, article, or poem; an original creator work; or another document or object as described above. The digital work will be stored in one or more digital files that are accessible and processable by a computer application, such as a word processor, photo or publishing application, browser, or another application, for display, printing, or other use on a computing device.
[0026] At 102, the creator mints the NFT for the work for a blockchain platform, such as an Ethereum platform, an EOS platform, a Solana platform, or a Binance Smart Chain platform. To mint the NFT, the creator must first create a digital wallet that is compatible with the token standard of the blockchain platform of the NFT (or designate an existing digital wallet). The creator must also have a user account on an NFT exchange, which is an online marketplace where buyers and sellers can exchange digital items, or another NFT minting service. NFT exchanges commonly used at the time of writing this disclosure include the known OpenSea, Rarible, Mintable, and MakersPlace. NFT minting services that do not necessarily also operate an online marketplace include the known CXIP. This document can generally refer to NFT exchanges and other NFT minting services as “NFT platforms.” The user interface of an NFT platform will include a workflow that the creator (or a representative of the creator) must follow in order to mint the NFT for the work. For example, the workflow can require the creator to upload a digital content file (or multiple files) of the work to the marketplace. Alternatively, the workflow can allow the creator to specify an address of a server that hosts the digital content. The exchange can also require the creator to associate a name and / or description with the content, and the workflow can provide the user with an opportunity to associate one or more characteristics or attributes with the file (such as a password or other alphanumeric characteristic, and / or unlockable content that can only be viewed by a purchaser). Once the information submission process is complete, the exchange will require the creator to sign a message in their digital wallet. When the digital signature is provided, the NFT is created and associated with the digital wallet of the creator, as the creator is the owner of the NFT at the time of its creation. At this point, the NFT platform can write the NFT to the blockchain; alternatively, the NFT platform can hold the NFT and write it to the blockchain along with a transaction record after the NFT is sold, which will be described in more detail below.
[0027] Once the NFT is created, at 103, the creator can list the NFT for sale on the marketplace by identifying terms of sale (such as an auction with a minimum bid, a fixed price), or other terms (such as a requirement that the creator receive royalties if the NFT is resold to another entity in the future).
[0028] After the NFT is listed on the online marketplace, at 111, the buyer can view the associated artwork on the exchange and at 112, the buyer can submit an offer to the exchange to purchase the NFT. At 121, the exchange and / or the creator review the offer and determine whether to accept the offer. For example, if the terms specify a fixed price sale term, and if the buyer’s offer is the first offer to meet the terms, the exchange or the creator can accept the buyer’s offer at 121. However, if the terms include an auction, the exchange and / or the creator can review all offers received during the time period of the auction and select the offer that includes the highest bid from all offers that meet the sale terms.
[0029] Upon accepting the offer, the exchange will require the buyer to sign a message in the buyer’s digital wallet. At 122, by removing the association of the NFT with the creator’s digital wallet, associating the link of the public key of the buyer’s digital wallet with the NFT, and sending a transaction record to the applicable blockchain platform, the exchange transfers ownership of the NFT to the buyer. If the NFT has not already been written to the blockchain platform, the exchange can also write the NFT to the blockchain platform at this time as part of step 122.
[0030] At 123, the blockchain platform bundles the transaction record with one or more other records into a block. When grouping transaction records into a block, the system can select a group of records that have a total size within a target size range. The platform can apply any other rule set to determine which records are grouped into a block, such as rules that prioritize certain types of records over other types of records, or rules that group records that have one or more common attributes.
[0031] At 124, the blockchain platform validates the transaction and / or validates the block, and after these validations, adds the block to the permanent, distributed digital ledger of the platform. To validate the transaction, which is a process that the system can perform before or after adding the transaction to the block, the system can also check the transaction against various rules. The rules can be saved on a centralized server, while in more distributed systems, all nodes that store any part of the blockchain will have a copy of all the rules. For example, a rule can require the system to review the existing blockchain and confirm that the seller is the current owner of the NFT. To validate the block, the system can use any of a variety of methods to create a proof-of-work for the block, such as by adding a nonce (random number) to the block data and then hashing the block data. If the hash fails to meet the requirements of the proof-of-work, the nonce is changed and a new hash is generated. When the system has successfully created a proof-of-work for a valid block, it sends the solution (proof-of-work) to all nodes of the system.
[0032] Figure 2A system that can be used to print an authenticated copy of digital content associated with an NFT is shown. After an entity creates or acquires an NFT for an NFT artwork or other digital content, the entity can use a system that includes a computing device 201 and a printing device 202 to print an authenticated copy of the content. The computing device 201 can be integrated within the printing device 202, or the devices can be separate devices that are able to communicate messages and with each other via a direct communication link, such as a communication link using Bluetooth or another near field or short range communication protocol, or via an indirect link through one or more other devices and / or a communication network 208, such as a Wi-Fi network, a local area network, a cellular communication network, and / or the Internet. The computing device 201, the printing device 202, or both can be devices located in a user’s home, in an office environment, or in a print kiosk arrangement, such as can be found in a retail store, a hotel, an airport, or other public place.
[0033] The printing device 202 will then perform a print job to print the digital content as a tangible printed object 210. For example, if the printing device is configured to print a two-dimensional (2D) image on a substrate, the object can be a document of any number of pages, a photograph or group of photographs, or a completed object such as a book or booklet, or a substrate that is a surface of a three-dimensional (3D) object if the printing device is a direct-to-object printer. If the printing device 202 is a 3D printer, it will print the object 210 as a multi-layered build material that the device extrudes onto a print bed. After the printing device 202 has printed the digital content to produce the printed object 210, a second computing device 203 that contains a camera can be used to verify that the document was printed by the owner of the NFT using the process described below. When a unique identification code such as an authentication code is printed (as will be described below), a 2D printer can print the code on either side of the substrate or object surface. A 3D printer can print the code on the surface of the object, or it can embed the code within the object using data embedding printing processes such as those described in U.S. Patents 9,919,477 and 10,926,471, each of which is assigned to Levine et al.
[0034] The system will include any number of servers 205a...205n, which collectively store a distributed digital ledger, such as the Ethereum blockchain. Each server 205a...205n will be a node for storing all or a portion of the blockchain, and elements of the blockchain will be replicated to each of the nodes. Each server can be any electronic device containing computer-readable memory capable of storing data and a communication device capable of transmitting and receiving data to and from other devices. The first computing device 201, the second computing device 203, and / or the printing device 202 can communicate with the blockchain platform's servers 205a...205n via one or more communication networks 208. Optionally, any or both of the computing devices 201, 203, and / or the printing device 202 can function as nodes of the blockchain platform.
[0035] Figure 3 Shown is a system such as Figure 2 The system shown) can generate and print a certified copy of the content associated with the NFT. Figure 3 Also shown is how the system can verify that the printed copy is in the possession of the owner of the NFT. At 301, a computing device will receive a print request from a requesting entity. The print request will include a request to print digital content associated with the NFT on a substrate. The print request will include an identifier for the NFT and an identifier for the requesting entity. The identifier of the requesting entity can be part of the request, or the application can require the user to submit authentication credentials. Alternatively, the application can have the device identify the requesting entity separately, such as by accessing an identifier of a user who has logged into the device. Again referring to Figure 2 , the computing device can be the printing device 202 or a separate computing device 201 in communication with the printing device 202. Either way, the receiving device will run an application (either from its memory or from a server via a browser or other thin client application) that performs the NFT verification and printing steps described below.
[0036] return Figure 3At 302, the computing device will check the blockchain to verify that the entity requesting the print job is the current owner of the NFT. The system can use any now known or to be known blockchain authentication process to accomplish this. For example, the system can use an authentication framework such as: Instant Karma Pubic Key Encryption (PKI) proposed by Matsumoto and Reischuk in 2017; a privacy-aware blockchain-based PKI (PB-PKI) proposed by Axon and Goldsmith in 2017; Primechain-API proposed by Nagpal in 2018, or other authentication frameworks.
[0037] The system will then generate a print job that includes a set of instructions for printing the digital content associated with the NFT on the substrate. If the system cannot confirm that the requesting entity is the current owner of the NFT (302: No), at 311 the system will generate a print job without any instructions to print a unique authentication code on the substrate. At 312, the computer will transmit the print job to the printing device 202, which can then execute the print job and print the content without a unique authentication code.
[0038] However, when (and only when) the current owner of the NFT is the requesting entity (302: Yes), the system will generate a print job at 321 with instructions to print a unique authentication code on the substrate along with the digital content. To generate the unique authentication code, the system can use any suitable code generation process. For example, the system can generate a machine identification code (MIC), which is a digital watermark that encodes a unique combination of characters, such as a combination of numbers and / or letters, into a pattern that is imperceptible to the naked eye but not unobtrusive, such as a pattern of tiny dots (often referred to as microdots) interspersed across some or all of the printed area. Methods of generating MICs include those developed by Xerox Corporation and are known in the art. The MIC will contain the serial number of the printing device as well as the date and time the document was printed. With this combination of information, each MIC will be unique because a printing press can only print one document at any given time. Other unobtrusive codes can be employed in various embodiments, such as a pantograph mark, a relational mark, other types of watermarks, or more visible marks such as barcodes, QR codes, and matrix codes. In addition, other pieces of information or combinations of information can be encoded into the code, including the date and time of the user’s print request, an identification number for each print or print job, the creator of the NFT, the current owner of the NFT, or the entity operating the NFT print system.
[0039] To generate elements of a print job that includes instructions for a printing device to print the digital content, if the NFT contains content data, the system can extract that data from the NFT and use it to generate a queueable print system object that represents the digital content and includes instructions for a printing device to render the digital content on a substrate. If the NFT does not include content data, but instead includes an address of a server or an identifier of a blockchain that stores the content, the system can extract that address or identifier from the NFT, query the server or blockchain for the digital content, and upon receiving the digital content from the server or blockchain, generate a queueable print system object that represents the digital content and includes instructions that indicate that a printing device can be used to render the digital content on a substrate.
[0040] Optionally, before or after generating the print job, at 322, the system can require the requesting entity to submit a payment indicia for the print job before it will transmit and / or execute the print job. For example, if the printing device is part of a commercial print kiosk, print shop, or another system that requires a user to pay a fee to print a document, the system can require the requesting entity to provide credit card account information, debit card account information, other payment account information, or a payment confirmation from a digital wallet before the system will allow the printing device to print the document. Additionally, if the NFT includes rules that require a royalty to be paid to a content creator, their agent, or another entity, such as a publisher for printing an authenticated copy, the system can require the user to provide a payment confirmation, such as those described above, before it will allow the user to print a copy containing the identification code.
[0041] After the computing device generates a print job with instructions to print a unique authentication code at 321, and optionally only after confirming payment at 322, at 323, the computing device transmits the print job to the printing device 202, which can then execute the print job and print the content and code on a substrate. Additionally, at 324, the computing device transmits the unique authentication code and the identifier for the NFT or digital content to a blockchain for storage in a block. For example, at 331, the blockchain platform can use processes and rules such as those described above in the discussion of Figure 1 at 333, the blockchain platform will validate the transaction and / or validate the block, and upon these validations, add the block to the platform’s permanent, distributed digital ledger. Exemplary methods of validation are also described above. In some embodiments, the computing device can transmit the authentication code and identifier to the blockchain before the printing device prints the content. In other embodiments, such as in embodiments that use MIC codes, the computing device can only do so after the printing device has already printed the digital content.
[0042] After the digital content is printed on the substrate, at 341, the computing device 203 with a camera and / or scanner can capture a digital image of the substrate. The device or another device will receive the digital image (at 341) and a security certificate of the entity providing the image (at 343). The security certificate can be a private key, a password, a biometric identifier, an address of a known trusted sender, or any other indicia that enables the system to identify or verify the entity providing the image. The security certificate can be received with the digital image, or it can be received earlier in the process, such as at any time during a session in which the entity is verified at the beginning of the session. The digital image and security certificate can be received at the same time or in separate steps. For example, an entity logging into an electronic device using a security certificate can use the camera, scanner, or other imaging device of the electronic device to capture the digital image. Alternatively, the entity can provide the security certificate before or after uploading the digital image from a separate source.
[0043] At 342, the processor of the device will process the image to extract the unique authentication code from the image using any suitable image processing method. For example, if the image includes a MIC code, the system can identify the pattern of dots in the matrix and use a known MIC decoding process to decode the pattern of dots to produce the code.
[0044] At 344, the system will access the distributed digital ledger to identify the NFT associated with the unique authentication code and also identify the current owner of the NFT. If the entity is the current owner of the NFT (345: YES), at 348, the system can generate and output an authentication message that includes an indication that the image of the substrate is an authenticated copy. Optionally, at 346, the system can also analyze the content of the image and it can compare the content of the image to the content of the NFT associated with the unique identification code to determine if the content of the image matches the content of the NFT. If the system is unable to verify that the requesting entity is the current owner of the NFT (345: NO) or that the content of the received image matches the content of the NFT associated with the code (346: NO), the system will not authenticate the copy and the system will not output an authentication message but can output an indication that the copy is not authenticated at 347.
[0045] Optionally, the system can receive only the digital image at 341, without receiving the security certificate. At 342, the processor of the device will process the image to extract a unique authentication code from the image using any suitable image processing method. The system will use the unique authentication code to query the blockchain to determine whether the unique authentication code matches a previously printed authenticated print. When (and only when) the authentication code extracted from the print matches the authentication code stored in the blockchain ledger, the system will provide an authentication message that includes an indication that the image of the substrate is an authenticated copy. If the system is unable to verify that the authentication code extracted from the digital image matches the information stored in the blockchain ledger, the system will not output an authentication message.
[0046] Figure 4 An example of internal hardware that can be included in any electronic component of the system, such as in a printing device, in a computing device used by a creator to create digital content and / or NFTs, or in a computing device used by a buyer of an NFT to access and print the associated digital content of the NFT, is depicted. One or more conductive buses 400 serve as information highways that interconnect other illustrated components of the hardware. A processor 405 is a central processing device of the system, configured to perform the computations and logical operations required to execute programmed instructions. As used in this document and claims, the terms “processor” and “processing device” can refer to a single processor or any number of processors in a group collectively performing a set of operations, such as a central processing unit (CPU), a graphics processing unit (GPU), a remote server, or a combination of these. Read-only memory (ROM), random access memory (RAM), flash memory, hard drives, and other devices capable of storing electronic data constitute examples of memory devices 425. The memory devices can include a single device or a collection of devices on which data and / or instructions are stored.
[0047] An optional display interface 430 can allow information from the bus 400 to be displayed in visual, graphical, or alphanumeric format on a display device 435. An audio interface and audio output, such as a speaker, can also be provided. Various communication devices 440, such as a wireless antenna, a radio frequency identification (RFID) tag, and / or a short-range or near-field communication transceiver, can be used to communicate with external devices, each of which can optionally be communicatively connected to other components of the device via one or more communication systems. The communication devices 440 can be configured to communicatively connect to a communication network, such as the Internet, a local area network, or a cellular telephone data network.
[0048] The hardware can also include a user interface sensor 445 that allows data to be received from an input device 450, such as a keyboard, mouse, joystick, touchscreen, touchpad, remote control, pointing device, and / or microphone. The digital image frame can also be received from an imaging device 420, such as a camera or scanner, that can capture video and / or still images. The system can also include a printing device 470 for printing a copy of the NFT artwork or other digital content.
[0049] Accordingly, in a first aspect, the present disclosure describes a method, a system configured to perform the method, and a computer program product configured to cause a processor to implement a method of generating a secure printed copy of content associated with an NFT. The system includes a processor and a computer readable medium containing programming instructions configured to instruct the processor to implement the method. The method includes receiving a print request from a requesting entity, where the print request includes a request to print digital content associated with an NFT on a substrate or as a 3D object. The method also includes accessing a distributed digital ledger associated with the NFT to identify a current owner of the NFT. The method includes generating a print job that includes a set of instructions for printing the digital content associated with the NFT on a substrate. If the current owner of the NFT is the requesting entity, the set of instructions will include an instruction to print a unique authentication code on the substrate or as a 3D object along with the digital content; otherwise, the set of instructions will not include a command to print the unique authentication code on the substrate. The method will then include transmitting the print job to a print engine of a printing device to print the digital content on the substrate.
[0050] Optionally, the method can also include transmitting the unique authentication code and an identifier for the NFT or digital content to the distributed digital ledger for storage in a block.
[0051] In any of the above embodiments, when transmitting the unique authentication code and the identifier to the distributed digital ledger, the method can be limited to doing so only after the printing device has printed the digital content.
[0052] In any of the above embodiments, when printing the unique identification code, the system can print a machine identification code that includes a serial number of the printing device and a time at which the printing device printed the digital content.
[0053] In any of the above embodiments, after the digital content is printed, the method can further include: receiving an image of the printed content on the substrate or 3D object and a certificate associated with the entity that provided the image; processing the image to extract a unique authentication code from the image; and accessing the distributed digital ledger to (a) identify the NFT associated with the unique authentication code and (b) identify the current owner of the NFT. The method can then include outputting an indication that the image of the substrate is an authenticated copy only if the current owner of the NFT matches the entity associated with the certificate; otherwise, the system will not output an indication that the image of the substrate is an authenticated copy.
[0054] In any of the above embodiments, after the digital content is printed, the system can: receive an image of the substrate; process the image to extract a unique authentication code and the printed content from the image; access the distributed digital ledger to identify the NFT associated with the unique authentication code and the content of the NFT associated with the unique identification code; and compare the content of the digital image to the content of the NFT. The system can then output an indication that the image reflects an authenticated copy only if (a) the authentication code from the image matches the authentication code associated with the NFT in the distributed digital ledger and (b) the printed content matches the content of the NFT associated with the unique identification code; otherwise, the system can not output an indication that the image reflects an authenticated copy. Also optionally, in these embodiments, after the digital content is printed, the system can: receive a certificate associated with the entity that provided the image; access the distributed digital ledger to identify the current owner of the NFT associated with the unique authentication code; and output an indication that the digital image of the substrate is an authenticated copy only if the current owner of the NFT matches the entity associated with the certificate, and otherwise not output an indication that the image of the substrate is an authenticated copy.
[0055] In any of the above embodiments, the system can further include a printing device. The processor and computer-readable medium can be components of the printing device, or components of a computing device in communication with the printing device.
[0056] In any of the above embodiments, to generate the print job, the system can extract some or all of the data of the digital content from the NFT and use the extracted data to generate a print system object that represents the digital content and includes instructions for rendering the digital content on a printing device.
[0057] In any of the above embodiments, to generate the print job, the system can: (a) extract the address of the NFT from the server; (b) query the server for the digital content; and (c) upon receiving the digital content from the server, generate a print system object that represents the digital content and includes instructions for rendering the digital content on the printing device.
[0058] In any of the above embodiments, in response to the NFT containing a rule that requires payment of a royalty or fee for printing an authenticated copy of the digital content, the system can wait until the system has received confirmation of payment of the royalty or fee before transmitting the print job to the printing device.
[0059] In any of the above embodiments, to print the unique authentication code, the system can encode the unique combination of characters into a microdot pattern on the substrate, or into a pantograph mark, a related mark, a watermark, a barcode, a QR code, or a matrix code.
[0060] Any of the optional features described above in relation to the first aspect can also be included in the second or third aspects described below.
[0061] In a second aspect, the disclosure describes a method, a system configured to perform the method, and a computer program product configured to cause a processor to implement a method of verifying whether a printed copy of content is an authorized copy. The method includes, by the processor: (a) receiving a digital image of a substrate or 3D object that includes a unique authentication code and other printed content; (b) receiving a certificate of an entity that provided the digital image; and (c) processing the digital image to extract the unique authentication code from the digital image. The method further includes accessing a distributed digital ledger to identify a non-fungible token associated with the NFT associated with the unique authentication code, and to identify a current owner of the NFT. The method further includes outputting an indication that the digital image reflects an authenticated copy only if the current owner of the NFT matches the entity associated with the certificate; otherwise, the method will not output an indication that the digital image reflects an authenticated copy. Optionally, the digital image can include other printed content; and if so, the method can further include: (w) processing the digital image to extract the other printed content from the digital image; (x) accessing the distributed digital ledger to identify content of the NFT associated with the unique identification code; (y) comparing the content of the digital image to the content of the NFT; (z) outputting an indication that the image reflects an authenticated copy only if the content of the digital image also matches the content of the NFT; otherwise, not outputting an indication that the image reflects an authenticated copy.
[0062] Terms relevant to the present disclosure include:
[0063] An “electronic device” or “computing device” refers to a device or system that includes a processor and a memory. Each device can have its own processor and / or memory, or the processor and / or memory can be shared with other devices, as in a virtual machine or container arrangement. The memory will contain or receive programming instructions that, when executed by the processor, cause the electronic device to perform one or more operations according to the programming instructions. Examples of electronic devices include personal computers, servers, mainframes, virtual machines, containers, gaming systems, televisions, digital home assistants, and mobile electronic devices such as smartphones, fitness tracking devices, wearable virtual reality devices, Internet-connected wearables such as smart watches and smart glasses, personal digital assistants, cameras, tablet computers, laptop computers, media players, and the like. Electronic devices can also include appliances and other devices that can communicate in an Internet of Things arrangement, such as smart thermostats, refrigerators, connected light bulbs, and other devices. Electronic devices can also include components of vehicles, such as dashboard entertainment and navigation systems and onboard vehicle diagnostic and operating systems. In a client-server arrangement, the client device and the server are electronic devices, where the server contains instructions and / or data that the client device accesses via one or more communication links in one or more communication networks. In a virtual machine arrangement, the server can be an electronic device, and each virtual machine or container can also be considered an electronic device. In the discussion above, a client device, server device, virtual machine, or container can be referred to simply as a “device” for brevity. Figure 4 Additional elements that can be included in an electronic device are discussed above in the context of
[0064] The terms “processor” and “processing device” refer to a hardware component of an electronic device that is configured to execute programming instructions. Unless specifically stated otherwise, the singular terms “processor” and “processing device” are intended to include both single processing device implementations and implementations in which multiple processing devices together or collectively execute a process.
[0065] The terms “memory,” “memory device,” “computer-readable medium,” “data store,” “data storage facility,” and the like each refer to a non-transitory device on which computer-readable data, programming instructions, or both are stored. Unless specifically stated otherwise, the terms “memory,” “memory device,” “computer-readable medium,” “data store,” “data storage facility,” and the like are intended to include both single device implementations, implementations in which multiple memory devices together or collectively store a data set or instruction set, and individual sectors within such devices. A computer program product is a memory device on which programming instructions are stored.
[0066] In this document, the terms “communication link” and “communication path” mean a wired or wireless path via which a first device sends and / or receives communication signals to one or more other devices. A device is “communicatively connected” if it is capable of sending and / or receiving data via a communication link. “Electronic communication” refers to the transmission of data between two or more electronic devices via one or more signals, whether through wired or wireless means, and whether directly or through one or more intermediate devices.
[0067] In this document, the terms “printer” and “printing device” refer to a machine having hardware capable of reading a digital document file and using information and associated print instructions from the file to print a physical document on a substrate. Components of a printing device typically include a print engine, which includes printing hardware, such as a print head, which can include components such as a print cartridge containing ink, toner, or another printing material, and a document feed system configured to pass a substrate through the printing device so that the print head can print characters and / or images on the substrate. In some embodiments, a printing device can have additional capabilities, such as scanning or faxing, and thus can be a multifunction device. A printing device can also include a processor and a memory device containing programming instructions and / or storing data. In embodiments in which 3D objects are printed, a printing device can be a 3D printer, which can use a digital model to successively place layers of build material on a substrate in a configuration that produces a 3D object.
[0068] In this document, the term “match” when referring to a comparison of two items means that the two items correspond to each other in a discernible way. For example, at least a threshold percentage of the content of each item can be identical, or in the case of words or tagged images, the match can be semantic similarity.
[0069] In this document, the term “print job” refers to any set of instructions or process that, when executed, will cause a printing device to print digital content from one or more digital content files onto a substrate.
[0070] The above-mentioned features and functions, as well as alternatives, can be combined into many other different systems or applications. Various alternatives, modifications, variations or improvements can be made by those skilled in the art without departing from the scope of the disclosed embodiments, which are also intended to cover any and all such alternatives, modifications, variations or improvements.
Claims
1. A system for generating a secure printed copy of content associated with a non-fungible token (NFT), the system comprising: processor; and A computer-readable medium containing programming instructions configured to instruct the processor to: receiving a print request from a requesting entity, wherein the print request includes a request to print digital content associated with the NFT, accessing a distributed digital ledger associated with said NFT to identify the current owner of said NFT, generating a print job, the print job comprising a set of instructions for printing the digital content associated with the NFT, wherein: If the current owner of the NFT is the requesting entity, the instruction set will include instructions to print a unique authentication code along with the digital content, Otherwise the instruction set will not include instructions for printing the unique authentication code, and The print job is transmitted to a print engine of a printing device to print the digital content.
2. The system of claim 1 , further comprising additional programming instructions configured to, when the current owner of the NFT is the requesting entity, instruct the processor to: The unique authentication code and an identifier for the NFT or the digital content are transmitted to the distributed digital ledger for storage in a block.
3. The system of claim 2, wherein the additional programming instructions configured to instruct the processor to transmit the unique authentication code and the identifier to the distributed digital ledger further comprise instructions for doing so only after the printing device has printed the digital content.
4. The system of claim 1, wherein the instructions for printing the unique authentication code include instructions for printing a machine identification code, the machine identification code including a serial number of the printing device and a time when the printing device printed the digital content.
5. The system of claim 1 , further comprising additional programming instructions configured to, after the digital content is printed, instruct the processor to: receiving an image of printed digital content and a credential associated with an entity providing the image; processing the image to extract a unique authentication code from the image; Access the distributed digital ledger to: identifying the NFT associated with the unique authentication code, and Identifying the current owner of the NFT; as well as An indication that the printed digital content is a certified copy is output only when the current owner of the NFT matches the entity associated with the certificate, otherwise no indication that the printed digital content is a certified copy is output.
6. The system of claim 1 , further comprising additional programming instructions configured to instruct the processor, after the digital content is printed on a substrate: receiving an image of printed digital content; processing the image to extract the unique authentication code and the printed digital content from the image; accessing the distributed digital ledger to identify the NFT associated with a unique authentication code of a previously printed authenticated copy and content of the NFT associated with the unique authentication code; comparing the digital content of the image to the content of the NFT; as well as An indication that the printed digital content is a certified copy is output only when (a) the unique authentication code from the image matches the unique authentication code associated with the NFT in the distributed digital ledger and (b) the printed digital content matches the content of the NFT associated with the unique authentication code; otherwise, no indication that the printed digital content is a certified copy is output.
7. The system of claim 6, further comprising additional programming instructions configured to instruct the processor, after the digital content is printed: receiving a credential associated with an entity providing the image; accessing the distributed digital ledger to identify the current owner of the NFT associated with the unique authentication code; as well as The indication that the printed digital content is a certified copy is output only when the current owner of the NFT matches the entity associated with the certificate, otherwise the indication that the printed digital content is a certified copy is not output.
8. The system according to claim 1, further comprising: the printing device, and wherein the processor and the computer-readable medium are components of one or more of: the printing device, or A computing device in communication with the printing device.
9. The system of claim 1 , wherein: The printing device includes a three-dimensional printer; and The set of instructions for printing the digital content associated with the NFT includes instructions for: printing the digital content as a three-dimensional object, and If the instruction set includes instructions for printing the unique authentication code, the unique authentication code is printed on the surface of the three-dimensional object or embedded in the three-dimensional object.
10. A system according to claim 1, wherein the instructions for generating the printing job include instructions for extracting some or all of the data of the digital content from the NFT and using the data to generate a queueable printing system object, the queueable printing system object representing the digital content and including instructions for rendering the digital content on the printing device.
11. The system of claim 1 , wherein the instructions for generating the print job include instructions for: The address of the server that extracts the NFT; querying the server for the digital content; and Upon receiving the digital content from the server, a printing system object is generated, the printing system object representing the digital content and including instructions for rendering the digital content on the printing device.
12. A system according to claim 1, further comprising instructions for performing the following operations: in response to the NFT containing a rule requiring payment of royalties or fees for printing a certified copy of the digital content, waiting until the system has received confirmation of payment of the royalties or fees before transmitting the print job to the printing device.
13. The system of claim 1, wherein the instructions for printing the unique authentication code include instructions for encoding a unique combination of characters into a microdot pattern on a substrate.
14. The system of claim 1, wherein the instructions for printing the unique authentication code include instructions for encoding a unique combination of characters into a pantograph mark, a correlation mark, a watermark, a barcode, a QR code, or a matrix code.
15. A printing device, comprising: processor; Printing engine; and A computer-readable medium containing programming instructions configured to instruct the processor to: receiving a print request from a requesting entity, wherein the print request includes a request to print digital content associated with the NFT, accessing a distributed digital ledger associated with said NFT to identify the current owner of said NFT, In response to determining that the current owner of the NFT is the requesting entity, generating a print job, the print job including a set of instructions for causing the print engine to print the digital content associated with the NFT and a unique authentication code, and The digital content having a unique authentication code is printed using the printing engine.
16. The printing device of claim 15 , further comprising additional programming instructions configured to, in response to determining that the current owner of the NFT is the requesting entity, instruct the processor to: The unique authentication code and an identifier for the NFT or the digital content are transmitted to the distributed digital ledger for storage in a block.
17. The printing device of claim 16, wherein the additional programming instructions configured to instruct the processor to transmit the unique authentication code and the identifier to the distributed digital ledger further comprise instructions to do so only after the printing device has printed the digital content.
18. The printing device of claim 15, wherein the instructions for printing the unique authentication code include instructions for printing a machine identification code, the machine identification code including a serial number of the printing device and a time when the printing device printed the digital content.
19. A printing device according to claim 15, wherein the instructions for generating the printing job include instructions for extracting the digital content from the NFT and using the digital content to generate a printing system object, the printing system object representing the digital content and including instructions for rendering the digital content on the printing device.
20. The printing device of claim 15, wherein the instructions for generating the print job include instructions for: The address of the server that extracts the NFT; querying the server for the digital content; and Upon receiving the digital content from the server, a printing system object is generated, the printing system object representing the digital content and including instructions for rendering the digital content on the printing device.
21. A printing device according to claim 15, wherein the printing device further comprises instructions for performing the following operations: in response to the NFT containing a rule requiring payment of royalties or fees for printing a certified copy of the digital content, waiting until the printing device has received confirmation of payment of the royalties or fees before using the printing engine to print the digital content with the unique authentication code.
22. The printing apparatus of claim 15, wherein the instructions for printing the unique authentication code include instructions for encoding a unique combination of characters into a microdot pattern, a pantograph mark, a correlation mark, a watermark, a barcode, a QR code, or a matrix code.
23. The printing apparatus according to claim 15, wherein: The printing device comprises a three-dimensional printer; and The set of instructions for printing the digital content associated with the NFT includes instructions for: printing the digital content as a three-dimensional object, and The unique authentication code is printed on the surface of the three-dimensional object or embedded in the three-dimensional object.
24. A method of generating a secure printed copy of content associated with a non-fungible token (NFT), the method comprising, by a processor: receiving a print request from a requesting entity, wherein the print request includes a request to print digital content associated with the NFT; Accessing a distributed digital ledger associated with the NFT to identify the current owner of the NFT; generating a print job, the print job comprising a set of instructions for printing the digital content associated with the NFT, wherein: If the current owner of the NFT is the requesting entity, the instructions will include instructions to print a unique authentication code with the digital content, otherwise the instructions will not include instructions to print the unique authentication code, and The print job is transmitted to a print engine to print the digital content.
25. A computer program product for generating a secure printed copy of content associated with a non-fungible token (NFT), the computer program product comprising non-transitory memory and programming instructions configured to cause a processor to: receiving a print request from a requesting entity, wherein the print request includes a request to print digital content associated with the NFT; Accessing a distributed digital ledger associated with the NFT to identify the current owner of the NFT; generating a print job, the print job comprising a set of instructions for printing the digital content associated with the NFT, wherein: If the current owner of the NFT is the requesting entity, the instruction set will include instructions to print a unique authentication code with the digital content, otherwise the instruction set will not include instructions to print the unique authentication code, and The print job is transmitted to a print engine to print the digital content.
Citation Information
Patent Citations
Embedding a database in a physical object
US10926471B2
Embedding a database in a physical object
US9919477B2
Copyright protection based on hidden copyright information
CN110832480A
Receiving apparatus, print system, and mobile telephone
US20050151881A1