WO2023229067A1 - Did-based nft transaction system - Google Patents

Did-based nft transaction system Download PDF

Info

Publication number
WO2023229067A1
WO2023229067A1 PCT/KR2022/007484 KR2022007484W WO2023229067A1 WO 2023229067 A1 WO2023229067 A1 WO 2023229067A1 KR 2022007484 W KR2022007484 W KR 2022007484W WO 2023229067 A1 WO2023229067 A1 WO 2023229067A1
Authority
WO
WIPO (PCT)
Prior art keywords
nft
user node
blockchain
node
original data
Prior art date
Application number
PCT/KR2022/007484
Other languages
French (fr)
Korean (ko)
Inventor
이정륜
윤태연
Original Assignee
주식회사 블록체인기술연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 블록체인기술연구소 filed Critical 주식회사 블록체인기술연구소
Publication of WO2023229067A1 publication Critical patent/WO2023229067A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present invention relates to a DID-based NFT transaction system. More specifically, by using DID, a distributed identifier that can prove user identity, and IDH (Identity Data Hub), a DID-based decentralized storage, DID-based NFT can improve the security of original data preservation. It is about the NFT trading system.
  • DID a distributed identifier that can prove user identity
  • IDH Identity Data Hub
  • Blockchain refers to a data distribution processing technology that distributes and stores all data subject to management by all users participating in the network. It is also called 'Distributed Ledger Technology (DLT)' or 'Public Transaction Ledger' in that the ledger containing transaction information is not held by the transaction subject or a specific institution, but is shared by all network participants.
  • DLT distributed Ledger Technology
  • Blockchain is a name given to a chain of blocks containing transaction information. This blockchain is a technology to prevent hacking such as forgery and falsification of transaction details. It sends transaction details to all users participating in the transaction and compares them for each transaction to prevent data forgery.
  • Blockchain has decentralization as its core concept, moving away from the existing financial system in which all transactions are secured and managed by financial institutions and oriented toward P2P (Peer to Peer) transactions.
  • P2P refers to a communication network that connects personal computers without a server or client, and each connected computer acts as a server and client and shares information.
  • a digital trust relationship is formed through multiple nodes sharing and verifying the same data. This environment makes it possible to implement smart contracts that can conveniently conclude and modify contracts through P2P without an intermediary.
  • NFT Non-Fungible Token
  • NFTs are registered as digital assets on the blockchain through the act of issuing (minting) NFTs.
  • NFTs registered on the blockchain can have various attribute values (Id, description, image, url, attribute, etc.) that describe the digital asset.
  • the most important NFT original storage is indicated by URL, and by searching the URL, you can search the digital assets located in the storage.
  • NFT can prove the integrity, uniqueness, and ownership of data through blockchain-based technology, but it cannot guarantee the original preservation of large amounts of data.
  • NFT records the owner information and issuance information of a digital file and the URL of the storage where the original data is stored on the blockchain, and the original data is not stored in the NFT. Because of these characteristics, the original data can be a target for hacking.
  • NFT itself is impossible to hack because it uses blockchain technology, but there is a risk that hacking of the server where the original data is stored is possible at any time, and a solution to complement this is needed.
  • the technical problem that the present invention seeks to solve is to provide a DID-based NFT transaction system that can improve security from hacking, etc. for large amounts of original data of NFT.
  • Another technical problem that the present invention aims to solve is to preserve the original data of the NFT using IDH (Identity Data Hub), a decentralized storage, while verifying the owner of the NFT through an electronic contract (Verifiable Credential) containing an electronic signature. It provides a DID-based NFT transaction system that can provide legitimacy, authenticity, and legal effect to NFT transactions by proving them.
  • IDH Identity Data Hub
  • Verifiable Credential an electronic contract
  • the DID-based NFT transaction system to solve the above problem is a DID-based NFT transaction system including a first user node, a second user node, a blockchain node, and an IDH server.
  • a first user node that purchases the NFT and stores the original data in the first hub instance regarding the first user node of the IDH server
  • a second user node that wishes to purchase the NFT from the first user node
  • the NFT Comprising a blockchain node that generates a block in which metadata is recorded, and an IDH server that communicates with the first user node and stores the original data in the first hub instance, and when trading for the NFT
  • the first user node shares the original data through the IDH server
  • the second user node downloads the original data through the IDH server and stores it in a second hub instance related to the second user node
  • the blockchain node uses a contract to change the NFT owner item and url value of the global state of the blockchain from the first user node to the second user
  • the IDH server may control storage and access to the original data using the DID of each user node.
  • the blockchain node transfers the owner information and URL value of the metadata recorded in the block using a contract during the NFT transaction from the first user node to the second user node. , and the hash value of the original data does not change.
  • the first user node may generate a DID-based verifiable credential to include the transaction process of the NFT and transmit it to the second user node.
  • the verifiable credential may include an electronic signature of the first user node and an electronic signature of the second user node.
  • the original data of NFT can be preserved and security from hacking, etc. can be strengthened.
  • Figure 1 is a diagram showing a distributed processing system using blockchain to which the technical idea according to the present invention can be applied.
  • Figures 2 and 3 are block diagrams showing the connection of blocks used in a blockchain system.
  • Figure 4 is a diagram showing an example of NFT metadata proving that the first user is the owner of the NFT.
  • Figure 5 is a block diagram showing the configuration and operation procedures of a DID-based NFT transaction system according to an embodiment of the present invention.
  • Figure 6 is a diagram showing an example of metadata of an NFT proving that the owner item and url value of the NFT have changed from the first user to the second user.
  • Figure 7 is a configuration diagram of a node computing device according to an embodiment of the present invention.
  • Figure 1 is a diagram showing a distributed processing system using blockchain to which the technical idea according to the present invention can be applied.
  • a distributed processing system using blockchain is a distributed network system consisting of a plurality of nodes (110 to 170).
  • the nodes 110 to 170 constituting the distributed network 100 may be electronic devices with computing capabilities, such as computers, mobile terminals, and dedicated electronic devices.
  • the distributed network 100 can store and reference information commonly known to all participating nodes within a connected bundle of blocks called a blockchain.
  • the nodes 110 to 170 are capable of communicating with each other and can be divided into full nodes, which are responsible for storing, managing, and disseminating the blockchain, and light nodes, which can simply participate in transactions. .
  • a node When a node is mentioned without further explanation in this specification, it often refers to a full node that participates in the decentralized network 100 and performs the operation of creating, storing, or verifying the blockchain, but is not limited to this. .
  • Each block connected to the blockchain contains transaction details, that is, transactions, within a certain period of time.
  • the nodes can manage transactions by creating, storing, or verifying blockchains according to their respective roles.
  • the transaction may represent various types of transactions.
  • the transaction may correspond to a financial transaction to indicate the ownership status of virtual currency and its changes.
  • the transaction may correspond to a physical transaction to indicate the ownership status of an item and its changes.
  • the transaction may correspond to an information sharing process to represent the recording, storage, and transfer of information. Nodes that perform transactions in the distributed network 100 may have a private key and public key pair with a cryptographic relationship.
  • Figures 2 and 3 are block diagrams showing the connection of blocks used in a blockchain system.
  • the blockchain 200 is a type of distributed database of one or more sequentially connected blocks 210, 220, and 230.
  • the blockchain 200 is used to store and manage users' transaction details within the blockchain system, and each node participating in the network of the blockchain system creates a block and connects it to the blockchain 200.
  • a limited number of blocks 210, 220, and 230 are shown in Figure 2, the number of blocks that can be included in the blockchain is not limited thereto.
  • Each block included in the blockchain 200 may be configured to include a block header 211 and a block body 213.
  • the block header 211 may include the hash value of the previous block 220 to indicate the connection relationship between each block. In the process of verifying whether the blockchain 200 is valid, the connection relationship within the block header 211 is used.
  • the block body 213 may include data stored and managed in the block 210, for example, a transaction list or a transaction chain.
  • the block header 211 may include a hash 2112 of the previous block, a hash 2113 of the current block, and a nonce 2114. Additionally, the block header 211 may include a root 2115 indicating the header of the transaction list within the block.
  • the blockchain 200 may include one or more connected blocks.
  • the one or more blocks are connected based on the hash value in the block header 211.
  • the hash value 2112 of the previous block included in the block header 211 is a hash value for the previous block 220 and is the same as the current hash 2213 included in the previous block 220.
  • the one or more blocks are chained by the hash value of the previous block in each block header. Nodes participating in the decentralized network 100 verify the validity of blocks based on the hash value of the previous block included in the one or more blocks, so that a single malicious node cannot forge or alter the contents of an already created block. The action is impossible.
  • the block body 213 may include a transaction list 2131.
  • the transaction list 2131 is a list of blockchain-based transactions.
  • the transaction list 2131 may include records of financial transactions made in the blockchain-based financial system.
  • the transaction list 2131 may be expressed in the form of a tree.
  • the amount sent by user A to user B is recorded in the form of a list, and the storage length in the block is the length of the transaction included in the current block. It can be increased or decreased based on the number.
  • the block 210 may include other information 2116 other than the information included in the block header 211 and the block body 213.
  • Nodes participating in the decentralized network 100 have the same blockchain, and the same transaction is stored in the block. Blocks containing the transaction list are shared across the network, so all participants can verify them.
  • the original data of NFT can be preserved using a DID (distributed identifier) that can prove the identity of the user node and IDH (Identity Data Hub), a DID-based decentralized storage.
  • IDH proposed in the present invention is a DID-based access control storage that stores NFT original data in the logical storage (hub instance) of each user node rather than the central server, and when a transaction is established, the url value included in the NFT metadata You can perform transactions for NFTs by changing the url value of another owner.
  • NFT is a term that refers to a cryptocurrency in which it is impossible to replace one token with another. It is a technology that proves and protects the ownership of digital assets using blockchain technology that cannot be manipulated in the middle. In other words, by recording owner information about digital files (pictures, music, etc.) as NFTs on the blockchain network, it is possible to permanently prove who owns the original data of the digital file. This can give ownership and scarcity to the digital file itself, unlike digital assets that can be copied infinitely and are therefore worthless.
  • NFT original data refers to the digital work itself, and metadata includes descriptions and information about the content, such as the genre and title of the digital work and the address where the digital data is stored.
  • the original data is stored in an external storage medium rather than a blockchain network, and the external storage medium is IDH in the present invention.
  • NFT metadata defines an NFT as a digital asset and includes details about the name of the digital file or the composition of the file.
  • metadata for a video NFT may include the length of the video and the images that make up the individual frames
  • metadata for a profile picture (PFP) or digital art NFT may include a specific creation that defines how rare the NFT is. Can contain properties.
  • the first user node and the second user node know each other's DID, and that the information of the first user node and the information of the second user node are each registered in the IDH.
  • the metadata of the NFT is recorded on the blockchain, and at this time, the metadata includes the hash value of the NFT original data, the url value where the original data is stored, and owner items.
  • the url value is a value linked to the IDH of the NFT owner, and in this specification, the value described in “huburl” is defined as the url value (see Figure 4).
  • the expression "huburl” can be expressed in any other way as long as it refers to the url value.
  • Figure 4 shows an example of NFT metadata that proves that the first user is the owner of the NFT.
  • DID refers to a unique identifier that can prove your identity by CRUD (Create, Read, Update, Delete) information that can identify an individual without a central agency.
  • DID is a key value that serves as a pointer to the DID document of a blockchain transaction.
  • DID is an identifier generated based on the user's public key.
  • a DID document refers to a set of documents required for an individual to authenticate himself and prove his association with a DID.
  • the object of DID's CRUD performance is the DID document, which refers to the information required for verification when using the DID service, and the data set contains properties such as public key and authentication method.
  • DID and DID document The relationship between DID and DID document is to search DID in the blockchain and create DID document based on transaction contents, and the method of reading DID document based on DID may be different for each blockchain.
  • the DID-based NFT transaction system operates through an organic relationship between the first user node 310, the second user node 320, the blockchain node 400, and the IDH server 500. do.
  • Figure 5 is a block diagram showing the configuration and operation procedures of a DID-based NFT transaction system according to an embodiment of the present invention.
  • Figure 6 is a diagram showing an example of NFT metadata proving that the owner of the NFT has changed from the first user to the second user.
  • the DID-based NFT transaction system may include a first user node 310, a second user node 320, a blockchain node 400, and an IDH server 500.
  • the operating method for the DID-based NFT transaction system according to the present invention may be an algorithm implemented through an application.
  • the first user node 310 may be a terminal device that purchases NFT, stores the original data in its hub instance, and sells the NFT to other users.
  • the first user node 310 may be implemented as a computer capable of accessing a remote server or terminal through a network.
  • the computer may include, for example, a laptop equipped with a navigation system and a web browser, a desktop, a laptop, etc.
  • the first user node 310 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.
  • PCS personal communication system
  • GSM global system for mobile communications
  • PDC personal digital cellular
  • PHS Personal Handyphone System
  • PDA Personal Digital Assistant
  • IMT International Mobile Telecommunication
  • CDMA Code Division Multiple Access
  • W-CDMA Wide-Code Division Multiple Access
  • Wibro Wireless Broadband Internet
  • the second user node 320 is a terminal device that wishes to purchase NFT from the first user node 310, and like the first user node 310, it will be implemented as a computer that can access a remote server or terminal through a network. You can.
  • the second user node 320 may include, for example, a laptop equipped with a navigation system or a web browser, a desktop, or a laptop.
  • the second user node 320 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.
  • PCS personal communication system
  • GSM global system for mobile communications
  • PDC personal digital cellular
  • PHS Personal Handyphone System
  • PDA Personal Digital Assistant
  • IMT International Mobile Telecommunication
  • CDMA Code Division Multiple Access
  • W-CDMA Wide-Code Division Multiple Access
  • Wibro Wireless Broadband Internet
  • the blockchain node 400 is a node that generates a block in which NFT metadata is recorded and may be any node in the blockchain network.
  • the owner information and url value of the NFT metadata recorded in the block can be changed from the first user node 310 to the second user node 320 through a contract during an NFT transaction, and the original data The hash value of should not be changed.
  • the IDH server 500 communicates with the first user node 310 and stores the original data of the NFT in the first hub instance of the first user node 310.
  • the hub instance corresponds to logical storage linked to the IDH server 500
  • the first user node 310 corresponds to the node that purchased the NFT.
  • the IDH server 500 can control storage and access to the original data of the NFT using the DID of each user node.
  • the original data of the NFT is stored in the hub instance of the first user node 310.
  • the original data of the NFT can be accessed using the DID only by the first user node 310 and the original data of the NFT can be shared with other user nodes.
  • the first user node 310 can share the original data through the IDH server 500, and the second user node 320 can share the original data shared through the IDH server 500. Save it in your second hub instance.
  • the first user node 310 shares the NFT original data stored in the first hub instance through the IDH server 500
  • the second user node 320 shares the NFT original data stored through the IDH server 500.
  • the data is downloaded and stored in its second hub instance, and the second user node 320 provides its DID value and the huburl value, which is the location of the NFT original data stored in the second hub instance, through the IDH server 500. 1 Delivered to the user node 310.
  • the first user node 310 cannot directly transmit NFT original data to the second user node 320, and the IDH server The second user node 320 can store the NFT original data in its second hub instance by sharing it through 500.
  • the first user node 310 cannot know the huburl value and the DID value, which are the storage locations of the NFT original data, in relation to the second user node 320, and thus the security regarding the storage of the NFT original data is strengthened. do.
  • the blockchain node 400 uses a contract to transfer the NFT owner item and URL value of the global state of the blockchain from the first user node 310 to the second user node 320. ), and the NFT is transferred from the first user node 310 to the second user node 320.
  • Figure 6 shows an example of NFT metadata proving that the owner item and url value of the NFT have changed from the first user to the second user.
  • the first user node 310 generates a DID-based verifiable credential to include the above processes and transmits it to the second user node 320, and generates the verifiable credential. It can be proven that the owner of the original data of the NFT has changed from the first user node 310 to the second user node 320.
  • This verifiable credential corresponds to an electronic contract, and can give legality, legitimacy, and legal effect to the contract through the electronic signature of the first user node 310 and the second user node 320.
  • a Claim is a description of a subject and is expressed as a subject-characteristic-information relationship.
  • Credential is a certificate issued by an issuer and is a set of one or more claims made for one subject.
  • Verifiable Credential is a set of data that includes metadata such as information on whether the issued Credential has been changed, issuer information, and electronic signature.
  • Figure 7 is a configuration diagram of a node computing device according to an embodiment of the present invention.
  • the computing device 1000 of the node includes a processor 1100 and a memory 1200, and the processor 1100 includes one or more cores, a graphics processing unit, and/or other components and signals. It may include a connection passage (for example, a bus, etc.) for transmitting and receiving.
  • a connection passage for example, a bus, etc.
  • the processor 1100 executes one or more instructions stored in the memory 1200, thereby executing the operation of the DID-based NFT transaction system described in relation to FIGS. 4 to 6.
  • the processor 1100 collects information about data upload/download occurring in one or more nodes by executing one or more instructions stored in memory, records the collected information in a block, and executes the information recorded in the block. Based on the information, relevant information is provided for at least one node.
  • the processor 1100 may further include RAM (Random Access Memory) and ROM (Read-Only Memory) that temporarily and/or permanently store internally processed signals (or data). . Additionally, the processor 1100 may be implemented in the form of a system on chip (SoC) including at least one of a graphics processing unit, RAM, and ROM.
  • SoC system on chip
  • the memory 1200 may store programs (one or more instructions) for processing and controlling the processor 1100. Programs stored in the memory 1200 may be divided into a plurality of modules according to their functions.
  • the operations of the system described in relation to embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof.
  • the software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
  • the components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer.
  • Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc.
  • Functional aspects may be implemented as algorithms running on one or more processors.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention comprises: a first user node that purchases an NFT and stores original data in a first hub instance of an IDH server, which is related to the first user node; a second user node that wants to purchase the NFT from the first user node; a blockchain node that generates a block having recorded therein metadata of the NFT; and the IDH server that communicates with the first user node to store the original data in the first hub instance, wherein, when trading the NFT, the first user node shares the original data via the IDH server, the second user node downloads the original data via the IDH server and stores the downloaded data in a second hub instance related to the second user node, and the blockchain node changes, by using a contract, an NFT owner item and URL value of a global state of a blockchain from the first user node to the second user node.

Description

DID 기반의 NFT 거래 시스템DID-based NFT transaction system
본 발명은 DID 기반의 NFT 거래 시스템에 관한 것이다. 더욱 상세하게는, 사용자 신원을 증명할 수 있는 분산 식별자인 DID와 DID 기반의 탈중앙화된 저장소인 IDH(Identity Data Hub)를 이용하여, NFT의 원본 데이터 보존에 대한 보안성을 향상시킬 수 있는 DID 기반의 NFT 거래 시스템에 관한 것이다.The present invention relates to a DID-based NFT transaction system. More specifically, by using DID, a distributed identifier that can prove user identity, and IDH (Identity Data Hub), a DID-based decentralized storage, DID-based NFT can improve the security of original data preservation. It is about the NFT trading system.
블록체인(Block Chain)은 네트워크에 참여하는 모든 사용자가 관리 대상이 되는 모든 데이터를 분산하여 저장하는 데이터 분산처리기술을 의미한다. 거래 정보가 담긴 원장을 거래 주체나 특정 기관에서 보유하는 것이 아니라 네트워크 참여자 모두가 나누어 가지는 기술이라는 점에서 '분산원장기술(DLT:Distributed Ledger Technology)' 또는 '공공거래장부'라고도 한다. 블록체인은 거래 내용이 담긴 블록(Block)을 사슬처럼 연결(chain)한 것이라 하여 붙여진 명칭이다. 이러한 블록체인은 거래 내용의 위변조와 같은 해킹을 막기 위한 기술이며, 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용한다. Blockchain refers to a data distribution processing technology that distributes and stores all data subject to management by all users participating in the network. It is also called 'Distributed Ledger Technology (DLT)' or 'Public Transaction Ledger' in that the ledger containing transaction information is not held by the transaction subject or a specific institution, but is shared by all network participants. Blockchain is a name given to a chain of blocks containing transaction information. This blockchain is a technology to prevent hacking such as forgery and falsification of transaction details. It sends transaction details to all users participating in the transaction and compares them for each transaction to prevent data forgery.
블록체인은 금융기관에서 모든 거래를 담보하고 관리하는 기존의 금융 시스템에서 벗어나 P2P(Peer to Peer;개인 대 개인) 거래를 지향하는, 탈중앙화를 핵심 개념으로 한다. P2P란 서버나 클라이언트 없이 개인 컴퓨터 사이를 연결하는 통신망을 말하며, 연결된 각각의 컴퓨터가 서버이자 클라이언트 역할을 하며 정보를 공유하는 방식이다. 다수의 노드가 같은 데이터를 공유하고 검증하는 방식을 통해 디지털 상에 신뢰관계를 형성하게 된다. 이러한 환경은 중개자 없이 P2P로 편리하게 계약을 체결하고 수정할 수 있는 스마트 컨트랙트를 실현 가능하게 한다.Blockchain has decentralization as its core concept, moving away from the existing financial system in which all transactions are secured and managed by financial institutions and oriented toward P2P (Peer to Peer) transactions. P2P refers to a communication network that connects personal computers without a server or client, and each connected computer acts as a server and client and shares information. A digital trust relationship is formed through multiple nodes sharing and verifying the same data. This environment makes it possible to implement smart contracts that can conveniently conclude and modify contracts through P2P without an intermediary.
기존 금융 시스템에서는 금융회사들이 중앙 서버에 거래 기록을 보관해 온 반면, P2P 방식을 기반으로 하는 블록체인에서는 거래 정보를 블록에 담아 차례대로 연결하고 이를 모든 참여자가 공유한다.In the existing financial system, financial companies have stored transaction records on a central server, whereas in a blockchain based on the P2P method, transaction information is stored in blocks, linked in turn, and shared by all participants.
특히, 최근에는 디지털 자산의 중요성이 커지면서 블록체인 기반의 NFT(Non-Fungible Token) 거래가 활성화되고 있다. NFT란 대체불가능한 토큰이란 뜻으로, 위/변조가 불가능한 블록체인 기술을 적용해 디지털 자산의 유일성을 증명해주는 디지털 증표이다. 디지털 자산의 종류는 부동산, 지재권, 디지털 아트, 생체 데이터 등이 있을 수 있으며, NFT로 유일성을 증명할 수 있는 범위는 무궁무진하다.In particular, recently, as the importance of digital assets has grown, blockchain-based NFT (Non-Fungible Token) transactions have become active. NFT means non-fungible token, and is a digital certificate that proves the uniqueness of a digital asset by applying blockchain technology that cannot be forged or altered. Types of digital assets may include real estate, intellectual property rights, digital art, biometric data, etc., and the scope for proving uniqueness with NFT is endless.
NFT는 NFT 발행(minting) 행위를 통해 블록체인에 디지털 자산으로 등록된다. 블록체인에 등록된 NFT는 디지털 자산을 설명하는 여러가지 속성값(Id, description, image, url, attribute 등)을 가질 수 있다. 가장 중요한 NFT의 원본 저장소는 url로 표기되며, 해당 url을 조회하면 저장소에 위치한 디지털 자산을 조회할 수 있다.NFTs are registered as digital assets on the blockchain through the act of issuing (minting) NFTs. NFTs registered on the blockchain can have various attribute values (Id, description, image, url, attribute, etc.) that describe the digital asset. The most important NFT original storage is indicated by URL, and by searching the URL, you can search the digital assets located in the storage.
그러나, NFT는 블록체인 기반 기술을 통해 데이터의 무결성, 유일성, 소유권을 증명할 수 있으나, 대용량 데이터의 원본 보존 여부는 보장할 수 없다. NFT는 디지털 파일의 소유자 정보와 발행 정보 및 원본 데이터가 저장된 저장소의 url을 블록체인에 기록한 것으로서, 원본 데이터가 NFT에 저장된 것이 아니다. 이러한 특징 때문에 원본 데이터는 해킹의 표적이 될 수 있다. However, NFT can prove the integrity, uniqueness, and ownership of data through blockchain-based technology, but it cannot guarantee the original preservation of large amounts of data. NFT records the owner information and issuance information of a digital file and the URL of the storage where the original data is stored on the blockchain, and the original data is not stored in the NFT. Because of these characteristics, the original data can be a target for hacking.
NFT 자체는 블록체인 기술이 적용돼 있어서 해킹이 불가능하지만, 원본 데이터가 저장된 서버의 해킹은 언제든 가능하다는 위험성이 있으며 이를 보완할 수 있는 해결책이 필요하다.NFT itself is impossible to hack because it uses blockchain technology, but there is a risk that hacking of the server where the original data is stored is possible at any time, and a solution to complement this is needed.
본 발명이 해결하고자 하는 기술적 과제는, NFT의 대용량 원본 데이터에 대해서 해킹 등으로부터 보안성을 향상시킬 수 있는 DID 기반의 NFT 거래 시스템을 제공하는 것이다. The technical problem that the present invention seeks to solve is to provide a DID-based NFT transaction system that can improve security from hacking, etc. for large amounts of original data of NFT.
본 발명이 해결하고자 하는 다른 기술적 과제는, 탈중앙화된 저장소인 IDH(Identity Data Hub)를 이용하여 NFT의 원본 데이터를 보존하면서, 전자서명이 포함된 전자 계약서(Verifiable Credential)에 의해 NFT의 소유자를 증명함으로써 NFT 거래의 적법성, 정통성, 법적 효력을 부여할 수 있는 DID 기반의 NFT 거래 시스템을 제공하는 것이다. Another technical problem that the present invention aims to solve is to preserve the original data of the NFT using IDH (Identity Data Hub), a decentralized storage, while verifying the owner of the NFT through an electronic contract (Verifiable Credential) containing an electronic signature. It provides a DID-based NFT transaction system that can provide legitimacy, authenticity, and legal effect to NFT transactions by proving them.
다만, 본 발명이 해결하고자 하는 기술적 과제들은 상기 과제들로 한정되는 것이 아니며, 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있다.However, the technical problems to be solved by the present invention are not limited to the above problems, and may be expanded in various ways without departing from the technical spirit and scope of the present invention.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 DID 기반의 NFT 거래 시스템은, 제1 사용자 노드, 제2 사용자 노드, 블록체인 노드, 및 IDH 서버를 포함하는 DID 기반의 NFT 거래 시스템에 있어서, NFT를 구매하여 원본 데이터를 상기 IDH 서버의 상기 제1 사용자 노드에 관한 제1 허브 인스턴스에 저장하는 제1 사용자 노드, 상기 제1 사용자 노드로부터 상기 NFT를 구매하고자 하는 제2 사용자 노드, 상기 NFT의 메타데이터가 기록된 블록을 생성하는 블록체인 노드, 및 상기 제1 사용자 노드와 통신하여 상기 제1 허브 인스턴스에 상기 원본 데이터를 저장하는 IDH 서버를 포함하고, 상기 NFT에 대한 거래 시에, 상기 제1 사용자 노드는 상기 원본 데이터를 상기 IDH 서버를 통해 공유하고, 상기 제2 사용자 노드는 상기 원본 데이터를 상기 IDH 서버를 통해 다운로드 하여 상기 제2 사용자 노드에 관한 제2 허브 인스턴스에 저장하고, 상기 블록체인 노드는 컨트랙트를 이용하여 블록체인의 글로벌 스테이트(global state)의 NFT 소유자 항목 및 url 값을 상기 제1 사용자 노드에서 상기 제2 사용자 노드로 변경하고, 상기 제1 사용자 노드는 상기 NFT를 상기 제2 사용자 노드로 전송한다.The DID-based NFT transaction system according to an embodiment of the present invention to solve the above problem is a DID-based NFT transaction system including a first user node, a second user node, a blockchain node, and an IDH server. , a first user node that purchases the NFT and stores the original data in the first hub instance regarding the first user node of the IDH server, a second user node that wishes to purchase the NFT from the first user node, and the NFT Comprising a blockchain node that generates a block in which metadata is recorded, and an IDH server that communicates with the first user node and stores the original data in the first hub instance, and when trading for the NFT, The first user node shares the original data through the IDH server, the second user node downloads the original data through the IDH server and stores it in a second hub instance related to the second user node, The blockchain node uses a contract to change the NFT owner item and url value of the global state of the blockchain from the first user node to the second user node, and the first user node transfers the NFT to the second user node. Transmit to the second user node.
본 발명에 따른 몇몇 실시예에서, 상기 IDH 서버는, 각 사용자 노드의 DID를 이용하여 상기 원본 데이터에 대한 저장 및 접근을 제어할 수 있다. In some embodiments according to the present invention, the IDH server may control storage and access to the original data using the DID of each user node.
본 발명에 따른 몇몇 실시예에서, 상기 블록체인 노드는, 상기 NFT 거래 시에 컨트랙트를 이용하여 상기 블록에 기록된 상기 메타데이터의 소유자 정보 및 url 값을 상기 제1 사용자 노드에서 상기 제2 사용자 노드로 변경하고, 상기 원본 데이터의 해시 값은 변경하지 않는다. In some embodiments according to the present invention, the blockchain node transfers the owner information and URL value of the metadata recorded in the block using a contract during the NFT transaction from the first user node to the second user node. , and the hash value of the original data does not change.
본 발명에 따른 몇몇 실시예에서, 상기 제1 사용자 노드는 상기 NFT의 거래 과정을 포함하도록 DID 기반의 검증가능한 자격증명(Verifiable Credential)을 생성하여 상기 제2 사용자 노드로 전달할 수 있다. In some embodiments according to the present invention, the first user node may generate a DID-based verifiable credential to include the transaction process of the NFT and transmit it to the second user node.
본 발명에 따른 몇몇 실시예에서, 상기 검증가능한 자격증명(Verifiable Credential)은 상기 제1 사용자 노드의 전자서명과 상기 제2 사용자 노드의 전자서명을 포함할 수 있다. In some embodiments according to the present invention, the verifiable credential may include an electronic signature of the first user node and an electronic signature of the second user node.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
본 발명에 따르면, DID 기반의 탈중앙화된 저장소에 NFT의 원본 데이터를 저장함으로써 NFT의 원본 데이터를 보존하고, 해킹 등으로부터 보안성을 강화할 수 있다. According to the present invention, by storing the original data of NFT in a DID-based decentralized storage, the original data of NFT can be preserved and security from hacking, etc. can be strengthened.
또한, 본 발명에 따르면, NFT 거래 시에 발생가능한 법적 문제를 계약 당사자들 간의 전자서명이 포함된 전자 계약서(Verifiable Credential)를 통해 증명함으로써 소유자를 정확하게 증명할 수 있고, 법적 안정성을 도모할 수 있다. In addition, according to the present invention, legal problems that may arise during NFT transactions can be proven through an electronic contract (Verifiable Credential) containing electronic signatures between contracting parties, thereby accurately proving the owner and promoting legal stability.
또한, 본 발명에 따르면, NFT를 이용한 디지털 자산에 대해 정확한 소유 증명이 가능하게 되어 데이터 산업의 발전 및 활성화에 이바지할 수 있다. In addition, according to the present invention, accurate proof of ownership of digital assets using NFT is possible, contributing to the development and revitalization of the data industry.
다만, 본 발명의 효과는 상기 효과들로 한정되는 것이 아니며, 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있다.However, the effects of the present invention are not limited to the above effects, and may be expanded in various ways without departing from the technical spirit and scope of the present invention.
도 1은 본 발명에 따른 기술적 사상이 적용될 수 있는 블록체인을 이용한 분산처리 시스템을 도시한 도면이다.Figure 1 is a diagram showing a distributed processing system using blockchain to which the technical idea according to the present invention can be applied.
도 2 및 도 3은 블록체인 시스템에서 이용되는 블록의 연결을 도시한 블록도이다.Figures 2 and 3 are block diagrams showing the connection of blocks used in a blockchain system.
도 4는 제1 사용자가 NFT의 소유자임을 증명하는 NFT의 메타데이터의 예시를 나타낸 도면이다. Figure 4 is a diagram showing an example of NFT metadata proving that the first user is the owner of the NFT.
도 5는 본 발명의 실시예에 따른 DID 기반의 NFT 거래 시스템의 구성 및 동작 절차를 도시한 블록도이다. Figure 5 is a block diagram showing the configuration and operation procedures of a DID-based NFT transaction system according to an embodiment of the present invention.
도 6은 NFT의 소유자 항목 및 url 값이 제1 사용자에서 제2 사용자로 변경된 것을 증명하는 NFT의 메타데이터의 예시를 나타낸 도면이다.Figure 6 is a diagram showing an example of metadata of an NFT proving that the owner item and url value of the NFT have changed from the first user to the second user.
도 7은 본 발명의 실시예에 따른 노드의 컴퓨팅 장치의 구성도이다.Figure 7 is a configuration diagram of a node computing device according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and will be implemented in various different forms, but the present embodiments only serve to ensure that the disclosure of the present invention is complete and are within the scope of common knowledge in the technical field to which the present invention pertains. It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며, 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for describing embodiments and is not intended to limit the invention. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used herein, “comprises” and/or “comprising” refers to the presence of one or more other components, steps, operations and/or elements. or does not rule out addition.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings that can be commonly understood by those skilled in the art to which the present invention pertains. Additionally, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly specifically defined.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예들을 보다 상세하게 설명하고자 한다. 도면 상의 동일한 구성요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the attached drawings. The same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted.
이하에서는 본 발명의 개념이 적용될 수 있는 블록체인을 이용한 분산처리 시스템에 관해 먼저 설명하기로 한다. Below, we will first describe a distributed processing system using blockchain to which the concept of the present invention can be applied.
도 1은 본 발명에 따른 기술적 사상이 적용될 수 있는 블록체인을 이용한 분산처리 시스템을 도시한 도면이다.Figure 1 is a diagram showing a distributed processing system using blockchain to which the technical idea according to the present invention can be applied.
도 1을 참조하면 블록체인을 이용한 분산처리 시스템은 복수의 노드들(110~170)로 이루어진 분산형 네트워크(distributed network) 시스템이다. 상기 분산형 네트워크(100)를 구성하는 노드들(110~170)은 컴퓨터, 이동 단말기, 전용 전자 장치 등 연산 능력이 있는 전자 장치일 수 있다.Referring to Figure 1, a distributed processing system using blockchain is a distributed network system consisting of a plurality of nodes (110 to 170). The nodes 110 to 170 constituting the distributed network 100 may be electronic devices with computing capabilities, such as computers, mobile terminals, and dedicated electronic devices.
일반적으로 분산형 네트워크(100)는 블록체인이라 불리는 블록(block)의 연결 묶음 내에 모든 참여 노드에 공통으로 알려진 정보를 저장하고 참조할 수 있다. 상기 노드들(110~170)은 상호간 통신이 가능하며 블록체인을 저장, 관리 및 전파를 담당하는 완전 노드(full node)와 단순하게 트랜잭션에만 참여할 수 있는 간이 노드(light node)로 구분될 수 있다. 본 명세서에서 별다른 설명 없이 노드에 대하여 언급되는 경우, 이는 분산형 네트워크(100)에 참여하며 블록체인을 생성, 저장 또는 검증하는 동작을 수행하는 완전 노드를 지칭하는 경우가 많으나, 이에 한정되는 것은 아니다. In general, the distributed network 100 can store and reference information commonly known to all participating nodes within a connected bundle of blocks called a blockchain. The nodes 110 to 170 are capable of communicating with each other and can be divided into full nodes, which are responsible for storing, managing, and disseminating the blockchain, and light nodes, which can simply participate in transactions. . When a node is mentioned without further explanation in this specification, it often refers to a full node that participates in the decentralized network 100 and performs the operation of creating, storing, or verifying the blockchain, but is not limited to this. .
상기 블록체인에 연결되어 있는 각 블록들은 일정 기간 내의 거래 내역, 즉 트랜잭션(transaction)들을 포함한다. 상기 노드들은 각각 역할에 따라 블록체인을 생성, 저장 또는 검증함으로써 트랜잭션들을 관리할 수 있다.Each block connected to the blockchain contains transaction details, that is, transactions, within a certain period of time. The nodes can manage transactions by creating, storing, or verifying blockchains according to their respective roles.
실시 형태에 따라 상기 트랜잭션은 다양한 형태의 거래를 나타낼 수 있다. 일 실시예에서 상기 트랜잭션은 가상화폐의 소유 상태 및 그 변동을 나타내기 위한 금융 거래에 해당할 수 있다. 다른 실시예에서 상기 트랜잭션은 물건의 소유 상태 및 그 변동을 나타내기 위한 실물 거래에 해당할 수 있다. 또 다른 실시예에서 상기 트랜잭션은 정보의 기록, 저장 및 이송을 나타내기 위한 정보 공유 과정에 해당할 수 있다. 상기 분산형 네트워크(100)에서 거래를 수행하는 노드들은 각각의 암호학적 연관관계가 있는 개인키(private key) 및 공개키(public key) 쌍을 가질 수 있다.Depending on the embodiment, the transaction may represent various types of transactions. In one embodiment, the transaction may correspond to a financial transaction to indicate the ownership status of virtual currency and its changes. In another embodiment, the transaction may correspond to a physical transaction to indicate the ownership status of an item and its changes. In another embodiment, the transaction may correspond to an information sharing process to represent the recording, storage, and transfer of information. Nodes that perform transactions in the distributed network 100 may have a private key and public key pair with a cryptographic relationship.
도 2 및 도 3은 블록체인 시스템에서 이용되는 블록의 연결을 도시한 블록도이다.Figures 2 and 3 are block diagrams showing the connection of blocks used in a blockchain system.
도 2를 참조하면 블록체인(200)은 순차적으로 연결된 하나 이상의 블록들(210, 220, 230)의 분산 데이터베이스의 일종이다. 상기 블록체인(200)은 블록체인 시스템 내 사용자의 거래 내역을 저장하고 관리하기 위해 사용되며, 상기 블록체인 시스템의 네트워크에 참여하는 각 노드가 블록을 생성하여 상기 블록체인(200)에 연결한다. 도 2에는 제한된 수의 블록들(210, 220, 230)이 도시되어 있으나 블록체인에 포함될 수 있는 블록의 수는 이에 제한되지 아니한다.Referring to FIG. 2, the blockchain 200 is a type of distributed database of one or more sequentially connected blocks 210, 220, and 230. The blockchain 200 is used to store and manage users' transaction details within the blockchain system, and each node participating in the network of the blockchain system creates a block and connects it to the blockchain 200. Although a limited number of blocks 210, 220, and 230 are shown in Figure 2, the number of blocks that can be included in the blockchain is not limited thereto.
상기 블록체인(200)에 포함된 각 블록은 블록 헤더(211)와 블록 바디(213)를 포함하도록 구성될 수 있다. 상기 블록 헤더(211)는 각 블록들간의 연결 관계를 나타내기 위하여 이전 블록(220)의 해시 값을 포함할 수 있다. 상기 블록체인(200)이 유효한지 검증하는 과정에서 상기 블록 헤더(211) 내의 연결 관계가 사용된다. 상기 블록 바디(213)는 상기 블록(210)에 저장되고 관리되는 데이터, 예를 들어 트랜잭션 리스트 또는 트랜잭션 체인을 포함할 수 있다.Each block included in the blockchain 200 may be configured to include a block header 211 and a block body 213. The block header 211 may include the hash value of the previous block 220 to indicate the connection relationship between each block. In the process of verifying whether the blockchain 200 is valid, the connection relationship within the block header 211 is used. The block body 213 may include data stored and managed in the block 210, for example, a transaction list or a transaction chain.
도 3을 참조하면, 상기 블록 헤더(211)는 이전 블록의 해시(2112), 현재 블록의 해시(2113), 넌스(Nonce)(2114)를 포함할 수 있다. 또한, 상기 블록 헤더(211)는 블록 내의 트랜잭션 리스트의 헤더를 나타내는 루트(2115)를 포함할 수 있다.Referring to FIG. 3, the block header 211 may include a hash 2112 of the previous block, a hash 2113 of the current block, and a nonce 2114. Additionally, the block header 211 may include a root 2115 indicating the header of the transaction list within the block.
전술된 바와 같이, 상기 블록체인(200)은 연결된 하나 이상의 블록들을 포함할 수 있다. 상기 하나 이상의 블록들은 상기 블록 헤더(211) 내의 해시 값에 기초하여 연결된다. 상기 블록 헤더(211)에 포함된 이전 블록의 해시 값(2112)은 직전 블록(220)에 대한 해시 값으로서 직전 블록(220)에 포함된 현재 해시(2213)와 동일한 값이다. 상기 하나 이상의 블록들은 각 블록 헤더 내의 이전 블록의 해시 값에 의하여 연쇄적으로 연결된다. 상기 분산형 네트워크(100)에 참여하는 노드들은 상기 하나 이상의 블록들에 포함된 이전 블록의 해시 값에 기반하여 블록의 유효성을 검증하므로 악의적인 단일 노드가 이미 생성된 블록의 내용을 위조 또는 변조하는 행위가 불가능하다.As described above, the blockchain 200 may include one or more connected blocks. The one or more blocks are connected based on the hash value in the block header 211. The hash value 2112 of the previous block included in the block header 211 is a hash value for the previous block 220 and is the same as the current hash 2213 included in the previous block 220. The one or more blocks are chained by the hash value of the previous block in each block header. Nodes participating in the decentralized network 100 verify the validity of blocks based on the hash value of the previous block included in the one or more blocks, so that a single malicious node cannot forge or alter the contents of an already created block. The action is impossible.
상기 블록 바디(213)는 트랜잭션 리스트(2131)를 포함할 수 있다. 상기 트랜잭션 리스트(2131)는 블록체인 기반의 거래의 목록이다. 예를 들면, 상기 트랜잭션 리스트(2131)는 상기 블록체인 기반의 금융 시스템에서 이루어진 금융 거래에 대한 기록을 포함할 수 있다. 상기 트랜잭션 리스트(2131)는 트리(tree) 형태로 표현될 수 있으며, 예를 들어, 사용자 A가 사용자 B에게 전송한 금액을 목록 형태로 기록하며, 블록 내의 저장 길이는 현재 블록에 포함된 트랜잭션의 수에 기초하여 증감될 수 있다.The block body 213 may include a transaction list 2131. The transaction list 2131 is a list of blockchain-based transactions. For example, the transaction list 2131 may include records of financial transactions made in the blockchain-based financial system. The transaction list 2131 may be expressed in the form of a tree. For example, the amount sent by user A to user B is recorded in the form of a list, and the storage length in the block is the length of the transaction included in the current block. It can be increased or decreased based on the number.
그리고, 블록(210)은 블록 헤더(211)와 블록 바디(213)에 포함된 정보 이외의 기타 정보(2116)를 포함할 수 있다. Additionally, the block 210 may include other information 2116 other than the information included in the block header 211 and the block body 213.
분산형 네트워크(100)에 참여하는 노드들은 동일한 블록체인을 가지며, 블록에는 동일한 트랜잭션이 저장된다. 트랜잭션 목록이 포함된 블록이 네트워크에 공유되므로 모든 참여자가 검증할 수 있다.Nodes participating in the decentralized network 100 have the same blockchain, and the same transaction is stored in the block. Blocks containing the transaction list are shared across the network, so all participants can verify them.
본 발명에서는 사용자 노드의 신원을 증명할 수 있는 DID(분산 식별자)와 DID 기반의 탈중앙화된 저장소인 IDH(Identity Data Hub)를 이용하여 NFT의 원본 데이터를 보존할 수 있다. 본 발명에서 제안하는 IDH는 DID 기반의 접근 통제 스토리지로서, 중앙서버가 아닌 각 사용자 노드의 논리적 스토리지(허브 인스턴스)에 NFT 원본 데이터를 저장하고, 이에 대한 거래 성립시 NFT 메타데이터에 포함된 url 값을 다른 소유자의 url 값으로 변경하는 방식으로 NFT에 대한 거래를 수행할 수 있다. In the present invention, the original data of NFT can be preserved using a DID (distributed identifier) that can prove the identity of the user node and IDH (Identity Data Hub), a DID-based decentralized storage. IDH proposed in the present invention is a DID-based access control storage that stores NFT original data in the logical storage (hub instance) of each user node rather than the central server, and when a transaction is established, the url value included in the NFT metadata You can perform transactions for NFTs by changing the url value of another owner.
NFT는 하나의 토큰을 다른 토큰으로 대체하는 것이 불가능한 암호화폐를 의미하는 용어로서, 중간에서 조작이 불가능한 블록체인 기술을 활용하여 디지털 자산의 소유권을 증명하고 보호하는 기술이다. 즉, 디지털 파일(그림, 음악 등)에 관한 소유자 정보를 블록체인 네트워크에 NFT로 기록하면, 디지털 파일의 원본 데이터가 누구의 소유인지 영구적으로 증명할 수 있다. 이는 무한히 복제가 가능하여 가치가 없었던 디지털 자산과 달리 디지털 파일 자체에 대한 소유권과 희소성을 부여할 수 있다. NFT is a term that refers to a cryptocurrency in which it is impossible to replace one token with another. It is a technology that proves and protects the ownership of digital assets using blockchain technology that cannot be manipulated in the middle. In other words, by recording owner information about digital files (pictures, music, etc.) as NFTs on the blockchain network, it is possible to permanently prove who owns the original data of the digital file. This can give ownership and scarcity to the digital file itself, unlike digital assets that can be copied infinitely and are therefore worthless.
NFT 원본 데이터는 디지털 작품 자체를 의미하고, 메타데이터는 디지털 작품의 장르와 제목, 디지털 데이터가 저장되어 있는 주소 등 콘텐츠에 대한 설명과 정보를 포함한다. 원본 데이터는 블록체인 네트워크가 아닌 외부 저장매체에 보관되며, 외부 저장매체에 해당하는 것이 본 발명에서의 IDH이다. NFT 원본 데이터에 대한 거래가 이루어지면 디지털 작품 자체의 전송이 아닌 메타데이터의 링크가 전송되며 이 코드가 블록체인 상에 저장된다. 따라서, NFT 메타데이터는 개인이 보관 및 관리해야 한다. NFT original data refers to the digital work itself, and metadata includes descriptions and information about the content, such as the genre and title of the digital work and the address where the digital data is stored. The original data is stored in an external storage medium rather than a blockchain network, and the external storage medium is IDH in the present invention. When a transaction is made for NFT original data, a link to the metadata is transmitted rather than the digital work itself, and this code is stored on the blockchain. Therefore, NFT metadata must be stored and managed by individuals.
NFT 메타데이터는 NFT를 디지털 자산으로서 정의하며, 디지털 파일의 이름이나 파일의 구성에 관한 세부사항을 포함한다. 예를 들어, 비디오 NFT의 메타데이터는 비디오의 길이와 개별 프레임을 구성하는 이미지를 포함할 수 있고, 프로필 사진(PFP)이나 디지털 아트 NFT에 대한 메타데이터는 NFT가 얼마나 희귀한지를 정의하는 특정 생성 속성을 포함할 수 있다. NFT metadata defines an NFT as a digital asset and includes details about the name of the digital file or the composition of the file. For example, metadata for a video NFT may include the length of the video and the images that make up the individual frames, while metadata for a profile picture (PFP) or digital art NFT may include a specific creation that defines how rare the NFT is. Can contain properties.
본 발명에서는 제1 사용자 노드와 제2 사용자 노드는 서로 상대방의 DID를 알고 있다고 가정하며, 제1 사용자 노드의 정보와 제2 사용자 노드의 정보는 각각 IDH에 등록되어 있다고 가정한다. In the present invention, it is assumed that the first user node and the second user node know each other's DID, and that the information of the first user node and the information of the second user node are each registered in the IDH.
NFT 발행시에 NFT의 메타데이터는 블록체인 상에 기록되며, 이때 메타데이터는 NFT 원본 데이터의 해시(hash) 값과 원본 데이터가 저장된 url 값, 소유자 항목 등을 포함하고 있다. url 값은 NFT 소유자의 IDH에 연결된 값으로서 본 명세서에서는 "huburl"에 기재된 값이 url 값으로 정의된다(도 4 참고). "huburl" 이라는 표현은 url 값을 지칭하는 표현이면 다른 방식으로 표현되어도 무관하다. 이를 통해 NFT의 원본 데이터 및 메타데이터는 외부에서 통제되는 것이 아니라 권한이 있는 사용자만이 이를 수정 및 관리할 수 있다. 도 4에서는 제1 사용자가 NFT의 소유자임을 증명하는 NFT의 메타데이터 예시를 나타내고 있다. When an NFT is issued, the metadata of the NFT is recorded on the blockchain, and at this time, the metadata includes the hash value of the NFT original data, the url value where the original data is stored, and owner items. The url value is a value linked to the IDH of the NFT owner, and in this specification, the value described in “huburl” is defined as the url value (see Figure 4). The expression "huburl" can be expressed in any other way as long as it refers to the url value. Through this, the NFT's original data and metadata are not controlled externally, but only authorized users can modify and manage them. Figure 4 shows an example of NFT metadata that proves that the first user is the owner of the NFT.
본 발명에 대한 설명에 앞서, 이하에서는 우선 DID와 DID 문서에 대한 개념에 대해 설명하기로 한다. Before explaining the present invention, the following will first explain the concept of DID and DID document.
DID란, 중앙기관 없이 사용자를 중심으로 개인을 식별할 수 있는 정보를 CRUD(Create, Read, Update, Delete)하여 본인임을 증명할 수 있는 유일한 식별자를 의미한다. DID는 하나의 키 값으로 블록체인 트랜잭션의 DID 문서를 가리키는 포인터 역할을 수행한다. 특히, DID는 사용자의 공개키를 기반으로 생성된 식별자이다. DID refers to a unique identifier that can prove your identity by CRUD (Create, Read, Update, Delete) information that can identify an individual without a central agency. DID is a key value that serves as a pointer to the DID document of a blockchain transaction. In particular, DID is an identifier generated based on the user's public key.
DID 문서란, 개인이 자신을 인증하고 DID와 연관성을 증명하는데 필요한 집합을 의미한다. DID의 CRUD 수행 대상이 DID 문서이며, DID 서비스 이용 시 검증하는데 필요한 정보들을 의미하며 데이터 집합에는 공개키, 인증 방법 등의 속성들이 존재한다. A DID document refers to a set of documents required for an individual to authenticate himself and prove his association with a DID. The object of DID's CRUD performance is the DID document, which refers to the information required for verification when using the DID service, and the data set contains properties such as public key and authentication method.
DID와 DID 문서의 연관관계는 DID를 블록체인에서 검색하여 트랜잭션 내용을 기반으로 DID 문서를 생성하는 것이며, DID를 기반으로 DID 문서를 읽어오는 방식은 블록체인마다 상이할 수 있다. The relationship between DID and DID document is to search DID in the blockchain and create DID document based on transaction contents, and the method of reading DID document based on DID may be different for each blockchain.
본 발명에 따른 DID 기반의 NFT 거래 시스템은, 제1 사용자 노드(310), 제2 사용자 노드(320), 블록체인 노드(400), IDH 서버(500) 사이의 유기적인 관계에 의한 동작으로 작동된다. The DID-based NFT transaction system according to the present invention operates through an organic relationship between the first user node 310, the second user node 320, the blockchain node 400, and the IDH server 500. do.
이하에서는 도면을 참조하여 본 발명에 따른 DID 기반의 NFT 거래 시스템의 구성과 동작 절차에 대해 설명하기로 한다. Hereinafter, the configuration and operation procedures of the DID-based NFT transaction system according to the present invention will be described with reference to the drawings.
도 5는 본 발명의 실시예에 따른 DID 기반의 NFT 거래 시스템의 구성 및 동작 절차를 도시한 블록도이다. 도 6은 NFT의 소유자가 제1 사용자에서 제2 사용자로 변경된 것을 증명하는 NFT의 메타데이터의 예시를 나타낸 도면이다. Figure 5 is a block diagram showing the configuration and operation procedures of a DID-based NFT transaction system according to an embodiment of the present invention. Figure 6 is a diagram showing an example of NFT metadata proving that the owner of the NFT has changed from the first user to the second user.
본 발명의 실시예에 따른 DID 기반의 NFT 거래 시스템은 제1 사용자 노드(310), 제2 사용자 노드(320), 블록체인 노드(400), IDH 서버(500)를 포함할 수 있다. 본 발명에 따른 DID 기반의 NFT 거래 시스템을 위한 동작 방법은 어플리케이션을 통해 구현되는 알고리즘일 수 있다. The DID-based NFT transaction system according to an embodiment of the present invention may include a first user node 310, a second user node 320, a blockchain node 400, and an IDH server 500. The operating method for the DID-based NFT transaction system according to the present invention may be an algorithm implemented through an application.
본 발명의 구성요소 중 제1 사용자 노드(310)는 NFT를 구매하여 원본 데이터를 자신의 허브 인스턴스에 저장하고 다른 사용자에게 NFT를 판매하고자 하는 단말 장치일 수 있다. 제1 사용자 노드(310)는 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. Among the components of the present invention, the first user node 310 may be a terminal device that purchases NFT, stores the original data in its hub instance, and sells the NFT to other users. The first user node 310 may be implemented as a computer capable of accessing a remote server or terminal through a network. Here, the computer may include, for example, a laptop equipped with a navigation system and a web browser, a desktop, a laptop, etc.
또한, 제1 사용자 노드(310)는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.In addition, the first user node 310 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.
제2 사용자 노드(320)는 제1 사용자 노드(310)로부터 NFT를 구매하고자 하는 단말 장치로서, 제1 사용자 노드(310)와 마찬가지로 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다.The second user node 320 is a terminal device that wishes to purchase NFT from the first user node 310, and like the first user node 310, it will be implemented as a computer that can access a remote server or terminal through a network. You can.
제2 사용자 노드(320)는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. The second user node 320 may include, for example, a laptop equipped with a navigation system or a web browser, a desktop, or a laptop.
또한, 제2 사용자 노드(320)는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.In addition, the second user node 320 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.
블록체인 노드(400)는 NFT의 메타데이터가 기록된 블록을 생성하는 노드로서 블록체인 네트워크의 어느 한 노드일 수 있다. 블록체인 노드(400)에서는 NFT 거래 시 컨트랙트를 통해 상기 블록에 기록된 NFT 메타데이터의 소유자 정보 및 url 값을 제1 사용자 노드(310)에서 제2 사용자 노드(320)로 변경할 수 있고, 원본 데이터의 해시(hash) 값은 변경되지 않도록 한다. The blockchain node 400 is a node that generates a block in which NFT metadata is recorded and may be any node in the blockchain network. In the blockchain node 400, the owner information and url value of the NFT metadata recorded in the block can be changed from the first user node 310 to the second user node 320 through a contract during an NFT transaction, and the original data The hash value of should not be changed.
IDH 서버(500)는 제1 사용자 노드(310)와 통신하여 제1 사용자 노드(310)의 제1 허브 인스턴스에 NFT의 원본 데이터를 저장한다. 여기에서, 허브 인스턴스는 IDH 서버(500)에 연계된 논리적 스토리지에 해당하며, 제1 사용자 노드(310)는 NFT를 구매한 노드에 해당한다. The IDH server 500 communicates with the first user node 310 and stores the original data of the NFT in the first hub instance of the first user node 310. Here, the hub instance corresponds to logical storage linked to the IDH server 500, and the first user node 310 corresponds to the node that purchased the NFT.
IDH 서버(500)는 각 사용자 노드의 DID를 이용하여 NFT의 원본 데이터에 대한 저장 및 접근을 제어할 수 있으며, 예를 들어, 제1 사용자 노드(310)의 허브 인스턴스 내에 NFT의 원본 데이터가 저장되어 있는 경우에는 제1 사용자 노드(310)에 의해서만 DID를 이용하여 NFT의 원본 데이터에 접근하고 다른 사용자 노드로 NFT 원본 데이터를 공유 가능하다. The IDH server 500 can control storage and access to the original data of the NFT using the DID of each user node. For example, the original data of the NFT is stored in the hub instance of the first user node 310. In this case, the original data of the NFT can be accessed using the DID only by the first user node 310 and the original data of the NFT can be shared with other user nodes.
본 발명에서 NFT 거래 시에, 제1 사용자 노드(310)는 원본 데이터를 IDH 서버(500)를 통해 공유 가능하며, 제2 사용자 노드(320)는 IDH 서버(500)를 통해 공유된 원본 데이터를 자신의 제2 허브 인스턴스에 저장한다. In the present invention, during an NFT transaction, the first user node 310 can share the original data through the IDH server 500, and the second user node 320 can share the original data shared through the IDH server 500. Save it in your second hub instance.
구체적으로, 제1 사용자 노드(310)는 제1 허브 인스턴스에 저장된 NFT 원본 데이터를 IDH 서버(500)를 통해 공유하며, 제2 사용자 노드(320)는 IDH 서버(500)를 통해 공유된 NFT 원본 데이터를 다운로드 하여 자신의 제2 허브 인스턴스에 저장하고, 제2 사용자 노드(320)는 자신의 DID 값 및 제2 허브 인스턴스에 저장된 NFT 원본 데이터의 위치인 huburl 값을 IDH 서버(500)를 통해 제1 사용자 노드(310)로 전달한다. Specifically, the first user node 310 shares the NFT original data stored in the first hub instance through the IDH server 500, and the second user node 320 shares the NFT original data stored through the IDH server 500. The data is downloaded and stored in its second hub instance, and the second user node 320 provides its DID value and the huburl value, which is the location of the NFT original data stored in the second hub instance, through the IDH server 500. 1 Delivered to the user node 310.
IDH 서버(500)를 통해 허브 인스턴스에 데이터를 저장, 공유하는 방식의 로직 차이로 인해 제1 사용자 노드(310)가 제2 사용자 노드(320)로 NFT 원본 데이터를 직접 전송할 수는 없고, IDH 서버(500)를 통해 공유하는 방식으로 제2 사용자 노드(320)가 자신의 제2 허브 인스턴스에 NFT 원본 데이터를 저장할 수 있다. Due to the logic difference in the way data is stored and shared in the hub instance through the IDH server 500, the first user node 310 cannot directly transmit NFT original data to the second user node 320, and the IDH server The second user node 320 can store the NFT original data in its second hub instance by sharing it through 500.
즉, 제1 사용자 노드(310)는 제2 사용자 노드(320)와 관련하여 NFT 원본 데이터의 저장위치인 huburl 값 및 DID 값을 알 수 없으며, 이에 따라 NFT 원본 데이터의 저장에 관한 보안성이 강화된다. In other words, the first user node 310 cannot know the huburl value and the DID value, which are the storage locations of the NFT original data, in relation to the second user node 320, and thus the security regarding the storage of the NFT original data is strengthened. do.
본 발명에서 NFT 거래 시에, 블록체인 노드(400)는 컨트랙트를 이용하여 블록체인의 글로벌 스테이트(global state)의 NFT 소유자 항목 및 url 값을 제1 사용자 노드(310)에서 제2 사용자 노드(320)로 변경하고, NFT는 제1 사용자 노드(310)에서 제2 사용자 노드(320)로 전송(transfer)된다. 도 6에서는 NFT의 소유자 항목 및 url 값이 제1 사용자에서 제2 사용자로 변경된 것을 증명하는 NFT의 메타데이터 예시를 나타내고 있다. In the present invention, during an NFT transaction, the blockchain node 400 uses a contract to transfer the NFT owner item and URL value of the global state of the blockchain from the first user node 310 to the second user node 320. ), and the NFT is transferred from the first user node 310 to the second user node 320. Figure 6 shows an example of NFT metadata proving that the owner item and url value of the NFT have changed from the first user to the second user.
이때, 제1 사용자 노드(310)는 상기의 과정들을 포함하도록 DID 기반의 검증가능한 자격증명(Verifiable Credential)을 생성하여 제2 사용자 노드(320)로 전달하고, 상기 검증가능한 자격증명(Verifiable Credential)에 의해 NFT의 원본 데이터의 소유자가 제1 사용자 노드(310)에서 제2 사용자 노드(320)로 변경되었음을 증명할 수 있다. 이러한 검증가능한 자격증명(Verifiable Credential)은 전자 계약서에 해당하며, 제1 사용자 노드(310)와 제2 사용자 노드(320)의 전자서명을 통해 계약의 적법성, 정통성, 법적 효력을 부여할 수 있다. At this time, the first user node 310 generates a DID-based verifiable credential to include the above processes and transmits it to the second user node 320, and generates the verifiable credential. It can be proven that the owner of the original data of the NFT has changed from the first user node 310 to the second user node 320. This verifiable credential corresponds to an electronic contract, and can give legality, legitimacy, and legal effect to the contract through the electronic signature of the first user node 310 and the second user node 320.
검증가능한 자격증명(Verifiable Credential)과 관련하여, Claim은 하나의 주체에 대한 설명으로서 주체-특성-정보의 관계로 표현된다. Credential은 발행인이 발급하는 증명서로서 하나의 주체에 대해 만들어진 하나 이상의 Claim의 집합이다. Verifiable Credential은 Credential에 발행인의 전자서명이 포함된 데이터로 발급한 Credential이 변경되었는지에 관한 정보, 발행인 정보, 전자서명 등의 메타 데이터가 포함된 데이터의 집합이다.In relation to Verifiable Credential, a Claim is a description of a subject and is expressed as a subject-characteristic-information relationship. Credential is a certificate issued by an issuer and is a set of one or more claims made for one subject. Verifiable Credential is a set of data that includes metadata such as information on whether the issued Credential has been changed, issuer information, and electronic signature.
도 7은 본 발명의 실시예에 따른 노드의 컴퓨팅 장치의 구성도이다.Figure 7 is a configuration diagram of a node computing device according to an embodiment of the present invention.
본 발명의 실시예에 따른 노드의 컴퓨팅 장치(1000)는 프로세서(1100)와 메모리(1200)를 포함하고, 프로세서(1100)는 하나 이상의 코어(core) 및 그래픽 처리부 및/또는 다른 구성요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.The computing device 1000 of the node according to an embodiment of the present invention includes a processor 1100 and a memory 1200, and the processor 1100 includes one or more cores, a graphics processing unit, and/or other components and signals. It may include a connection passage (for example, a bus, etc.) for transmitting and receiving.
일 실시예에 따른 프로세서(1100)는 메모리(1200)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 4 내지 도 6과 관련하여 설명된 DID 기반의 NFT 거래 시스템의 동작을 실행한다. The processor 1100 according to one embodiment executes one or more instructions stored in the memory 1200, thereby executing the operation of the DID-based NFT transaction system described in relation to FIGS. 4 to 6.
예를 들어, 프로세서(1100)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써 하나 이상의 노드에서 발생되는 데이터 업로드/다운로드에 관한 정보들을 수집하고, 상기 수집된 정보들을 블록에 기록하고, 상기 블록에 기록된 정보에 기초하여, 적어도 하나의 노드에 대해 관련 정보를 제공한다. For example, the processor 1100 collects information about data upload/download occurring in one or more nodes by executing one or more instructions stored in memory, records the collected information in a block, and executes the information recorded in the block. Based on the information, relevant information is provided for at least one node.
한편, 프로세서(1100)는 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory) 및 롬(ROM: Read-Only Memory)을 더 포함할 수 있다. 또한, 프로세서(1100)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다. Meanwhile, the processor 1100 may further include RAM (Random Access Memory) and ROM (Read-Only Memory) that temporarily and/or permanently store internally processed signals (or data). . Additionally, the processor 1100 may be implemented in the form of a system on chip (SoC) including at least one of a graphics processing unit, RAM, and ROM.
메모리(1200)에는 프로세서(1100)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(1200)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 1200 may store programs (one or more instructions) for processing and controlling the processor 1100. Programs stored in the memory 1200 may be divided into a plurality of modules according to their functions.
본 발명의 실시예와 관련하여 설명된 시스템의 동작들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The operations of the system described in relation to embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.
전술된 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해되어야 하며, 본 발명의 범위는 전술된 상세한 설명보다는 후술될 청구범위에 의해 나타내어질 것이다. 그리고 이 청구범위의 의미 및 범위는 물론, 그 등가개념으로부터 도출되는 모든 변경 및 변형 가능한 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The above-described embodiments should be understood in all respects as illustrative and not restrictive, and the scope of the present invention will be indicated by the claims below rather than the detailed description above. In addition, the meaning and scope of this claim, as well as all changes and modifications derived from the equivalent concept, should be construed as being included in the scope of the present invention.

Claims (5)

  1. 제1 사용자 노드, 제2 사용자 노드, 블록체인 노드, 및 IDH 서버를 포함하는 DID 기반의 NFT 거래 시스템에 있어서, In a DID-based NFT transaction system including a first user node, a second user node, a blockchain node, and an IDH server,
    NFT를 구매하여 원본 데이터를 상기 IDH 서버의 상기 제1 사용자 노드에 관한 제1 허브 인스턴스에 저장하는 제1 사용자 노드; A first user node that purchases NFT and stores the original data in a first hub instance related to the first user node of the IDH server;
    상기 제1 사용자 노드로부터 상기 NFT를 구매하고자 하는 제2 사용자 노드;A second user node wanting to purchase the NFT from the first user node;
    상기 NFT의 메타데이터가 기록된 블록을 생성하는 블록체인 노드; 및A blockchain node that generates a block in which the metadata of the NFT is recorded; and
    상기 제1 사용자 노드와 통신하여 상기 제1 허브 인스턴스에 상기 원본 데이터를 저장하는 IDH 서버;를 포함하고, An IDH server that communicates with the first user node and stores the original data in the first hub instance,
    상기 NFT에 대한 거래 시에, When trading for the NFT,
    상기 제1 사용자 노드는 상기 원본 데이터를 상기 IDH 서버를 통해 공유하고, 상기 제2 사용자 노드는 상기 원본 데이터를 상기 IDH 서버를 통해 다운로드 하여 상기 제2 사용자 노드에 관한 제2 허브 인스턴스에 저장하고, The first user node shares the original data through the IDH server, and the second user node downloads the original data through the IDH server and stores it in a second hub instance related to the second user node,
    상기 블록체인 노드는 컨트랙트를 이용하여 블록체인의 글로벌 스테이트(global state)의 NFT 소유자 항목 및 url 값을 상기 제1 사용자 노드에서 상기 제2 사용자 노드로 변경하고, The blockchain node uses a contract to change the NFT owner item and URL value of the global state of the blockchain from the first user node to the second user node,
    상기 제1 사용자 노드는 상기 NFT를 상기 제2 사용자 노드로 전송하는, DID 기반의 NFT 거래 시스템.A DID-based NFT transaction system in which the first user node transmits the NFT to the second user node.
  2. 제 1항에 있어서, According to clause 1,
    상기 IDH 서버는, 각 사용자 노드의 DID를 이용하여 상기 원본 데이터에 대한 저장 및 접근을 제어하는, DID 기반의 NFT 거래 시스템.The IDH server is a DID-based NFT transaction system that controls storage and access to the original data using the DID of each user node.
  3. 제 1항에 있어서, According to clause 1,
    상기 블록체인 노드는, 상기 NFT 거래 시에 컨트랙트를 이용하여 상기 블록에 기록된 상기 메타데이터의 소유자 정보 및 url 값을 상기 제1 사용자 노드에서 상기 제2 사용자 노드로 변경하고, 상기 원본 데이터의 해시 값은 변경하지 않는, DID 기반의 NFT 거래 시스템.The blockchain node uses a contract during the NFT transaction to change the owner information and URL value of the metadata recorded in the block from the first user node to the second user node, and hash the original data. A DID-based NFT transaction system that does not change the value.
  4. 제 1항에 있어서, According to clause 1,
    상기 제1 사용자 노드는 상기 NFT의 거래 과정을 포함하도록 DID 기반의 검증가능한 자격증명(Verifiable Credential)을 생성하여 상기 제2 사용자 노드로 전달하는, DID 기반의 NFT 거래 시스템.A DID-based NFT transaction system in which the first user node generates a DID-based verifiable credential (Verifiable Credential) to include the transaction process of the NFT and transmits it to the second user node.
  5. 제 4항에 있어서, According to clause 4,
    상기 검증가능한 자격증명(Verifiable Credential)은 상기 제1 사용자 노드의 전자서명과 상기 제2 사용자 노드의 전자서명을 포함하는, DID 기반의 NFT 거래 시스템.The verifiable credential (Verifiable Credential) is a DID-based NFT transaction system including the electronic signature of the first user node and the electronic signature of the second user node.
PCT/KR2022/007484 2022-05-26 2022-05-26 Did-based nft transaction system WO2023229067A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220064449A KR20230164824A (en) 2022-05-26 2022-05-26 The NFT(Non-Fungible Token) trading system based on DID
KR10-2022-0064449 2022-05-26

Publications (1)

Publication Number Publication Date
WO2023229067A1 true WO2023229067A1 (en) 2023-11-30

Family

ID=88919512

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/007484 WO2023229067A1 (en) 2022-05-26 2022-05-26 Did-based nft transaction system

Country Status (2)

Country Link
KR (1) KR20230164824A (en)
WO (1) WO2023229067A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210097561A (en) * 2020-01-30 2021-08-09 에스케이텔레콤 주식회사 Method and apparatus for processing information on block chain
KR20210138452A (en) * 2020-05-12 2021-11-19 주식회사 블록체인기술연구소 The non-face-to-face large document access blockchain system that combines blockchain-based DID service and IPFS-based data sharing technology and private key distributed storage technology
KR102340588B1 (en) * 2021-05-11 2021-12-21 주식회사 와이콘즈 Object managing system supporting for object managing service using nft based on blockchain
KR102355550B1 (en) * 2021-06-22 2022-02-08 주식회사 매스어답션 Method, apparatus and system for converting real assets to digital assets based on blockchain

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101936758B1 (en) 2018-06-08 2019-01-11 주식회사 미탭스플러스 Encryption apparatus and method for integrity of information inquiry history

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210097561A (en) * 2020-01-30 2021-08-09 에스케이텔레콤 주식회사 Method and apparatus for processing information on block chain
KR20210138452A (en) * 2020-05-12 2021-11-19 주식회사 블록체인기술연구소 The non-face-to-face large document access blockchain system that combines blockchain-based DID service and IPFS-based data sharing technology and private key distributed storage technology
KR102340588B1 (en) * 2021-05-11 2021-12-21 주식회사 와이콘즈 Object managing system supporting for object managing service using nft based on blockchain
KR102355550B1 (en) * 2021-06-22 2022-02-08 주식회사 매스어답션 Method, apparatus and system for converting real assets to digital assets based on blockchain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LEDGIS: "[NFT Seoul 2022] NFT marketplace Tech Strategy ", 27 January 2022 (2022-01-27), XP093111914, Retrieved from the Internet <URL:https://medium.com/ledgis-eng/nft-seoul-2022-nft-marketplace-tech-strategy-8d01cf2bdd2c> *

Also Published As

Publication number Publication date
KR20230164824A (en) 2023-12-05

Similar Documents

Publication Publication Date Title
Ocheja et al. Managing lifelong learning records through blockchain
Bamakan et al. Patents and intellectual property assets as non-fungible tokens; key technologies and challenges
JP6877448B2 (en) Methods and systems for guaranteeing computer software using distributed hash tables and blockchain
Di Francesco Maesa et al. Blockchain based access control
Baird et al. Hedera: A governing council & public hashgraph network
US20200287874A1 (en) System and associated method for ensuring data privacy
KR20190075793A (en) Authentication System for Providing Instant Access Using Block Chain
Bamakan et al. A decentralized framework for patents and intellectual property as nft in blockchain networks
KR20210041459A (en) The encrypted data sharing system based on block chain and IPFS(InterPlanetary File System)
KR102383099B1 (en) The non-face-to-face large document access blockchain system that combines blockchain-based DID service and IPFS-based data sharing technology and private key distributed storage technology
US20220269754A1 (en) Decentralized system and method for asset registry and authentication
Tang et al. A secure and trustworthy medical record sharing scheme based on searchable encryption and blockchain
Khettry et al. A detailed review on blockchain and its applications
De Aguiar et al. A blockchain-based protocol for tracking user access to shared medical imaging
KR20210059164A (en) Secondary copyright ownership issuance system using blockchain
CN115705571A (en) Protecting privacy of auditable accounts
Mohey Eldin et al. Federated blockchain system (FBS) for the healthcare industry
Yang et al. An access control model based on blockchain master-sidechain collaboration
WO2023229067A1 (en) Did-based nft transaction system
Le et al. Distributed secure search in the personal cloud
WO2020096109A1 (en) Method, server, and system for managing distribution of business plan on basis of blockchain
WO2023095967A1 (en) Remote-interaction large document access system in which blockchain-based did service, ipfs-based data sharing technology and private key distributed storage technology are combined
Rose GDPR challenges for blockchain technology
WO2024025030A1 (en) System for proving ownership of private signature through nft issuance for private signature data
Shalom et al. Decentralized cloud storage using Blockchain

Legal Events

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

Ref document number: 22943874

Country of ref document: EP

Kind code of ref document: A1