KR20230052782A - Method and apparatus for managing digital object ownership - Google Patents
Method and apparatus for managing digital object ownership Download PDFInfo
- Publication number
- KR20230052782A KR20230052782A KR1020210164036A KR20210164036A KR20230052782A KR 20230052782 A KR20230052782 A KR 20230052782A KR 1020210164036 A KR1020210164036 A KR 1020210164036A KR 20210164036 A KR20210164036 A KR 20210164036A KR 20230052782 A KR20230052782 A KR 20230052782A
- Authority
- KR
- South Korea
- Prior art keywords
- ownership
- digital object
- identifier
- user
- smart contract
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 29
- 238000012546 transfer Methods 0.000 claims description 49
- 230000004044 response Effects 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 238000007726 management method Methods 0.000 abstract description 53
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 4
- 102400000267 Rhomboid-related protein 2, N-terminal fragment Human genes 0.000 description 3
- 101800000645 Rhomboid-related protein 2, N-terminal fragment Proteins 0.000 description 3
- 101800000716 Tumor necrosis factor, membrane form Proteins 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Abstract
디지털 객체 소유권 관리 방법과 장치가 제공된다. 본 명세서에 기재된 일 실시예에 따른 디지털 객체 소유권 관리 방법은, 디지털 객체의 해시 값을 생성하는 단계와, 소유권 식별자를 생성하는 단계와, 상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 단계와, 상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 단계를 포함할 수 있다.A digital object ownership management method and apparatus are provided. A digital object ownership management method according to an embodiment described in this specification includes generating a hash value of a digital object, generating an ownership identifier, and storing the generated ownership identifier through a first smart contract. and storing object information including the generated hash value and the ownership identifier through a second smart contract.
Description
본 명세서에 기재된 실시예는 디지털 객체 소유권을 관리하는 방법에 관한 것이다. 보다 자세하게는, 본 명세서에 기재된 실시예는 스마트 컨트랙트(smart contract)와 분산 신원(DID: Decentralized Identifier) 기술을 이용하여 디지털 객체의 소유권을 관리하는 방법 및 장치에 관한 것이다.Embodiments described herein relate to methods for managing digital object ownership. More specifically, the embodiments described herein relate to a method and apparatus for managing ownership of a digital object using a smart contract and decentralized identifier (DID) technology.
근래 블록체인 분야에서 화두에 오르고 있는 부문 중 하나가 바로 NFT (Non-Fungible Token)이다. NFT는 기존 Fungible Token인 암호화폐와는 다르게 등교환 법칙이 성립되지 않고 유일성이 보장되어 블록체인 상에 디지털 객체에 대한 소유권을 주장하는 용도로 사용되고 있다. 아티스트 혹은 크리에이터가 만들어낸 디지털 객체에 대한 소유권을 NFT로 증명하고, 이러한 디지털 객체의 소유권은 경매 방식으로 판매되기도 한다.One of the hot topics in the blockchain field is NFT (Non-Fungible Token). Unlike cryptocurrencies, which are existing fungible tokens, NFTs are used for the purpose of claiming ownership of digital objects on the blockchain because the equal exchange rule is not established and uniqueness is guaranteed. Ownership of digital objects created by artists or creators is proved through NFT, and ownership of these digital objects is sometimes sold through an auction.
NFT는 다음과 같은 특징을 가져야 된다. 발행된 NFT는 나누어질 수 없는 형태이어야 하고, 희소성을 가져야 하며, 진본임을 증명할 수 있는 유일성을 가져야 하고, 소유권을 확인할 수 있어야 하며, 블록체인 상의 기록으로 투명성을 보장해야 된다.NFTs should have the following characteristics. The issued NFT must be indivisible, must have scarcity, must have uniqueness to prove that it is authentic, must be able to verify ownership, and must ensure transparency with records on the blockchain.
이러한 NTF는 대부분 경매 방식으로 소유권 이전이 이루어지는 있어, 개인이 소유권을 이전하거나 판매하는데 어려움이 발생한다. 또한, NTF는 소유권 이전만을 고려하고 있을 뿐, NTF에 대응하는 디지털 객체를 제3자에게 대여하거나 그 사용을 일시적으로 허락하는 것 등과 같은 다양한 방식을 고려하고 있지 않다. In most of these NTFs, ownership is transferred through an auction method, which makes it difficult for individuals to transfer or sell ownership. In addition, the NTF only considers transfer of ownership, and various methods such as renting a digital object corresponding to the NTF to a third party or temporarily permitting its use are not considered.
본 명세서에 기재된 실시예들은, 디지털 객체의 소유권 등록과 소유권 이전에 용이한 디지털 객체 소유권 관리 방법 및 장치를 제공할 수 있다.Embodiments described in this specification may provide a digital object ownership management method and apparatus that facilitate ownership registration and ownership transfer of a digital object.
본 명세서에 기재된 실시예들은, 소유자 이외의 타 사용자에 대한 디지털 객체 사용을 허락할 수 있는 디지털 객체 소유권 관리 방법 및 장치를 제공할 수 있다Embodiments described in this specification may provide a digital object ownership management method and apparatus capable of allowing use of a digital object by other users other than the owner.
본 명세서에 기재된 실시예들은, 디지털 객체의 소유권을 가지는 있는 사용자를 용이하게 파악할 수 있는 디지털 객체 소유권 관리 방법 및 장치를 제공할 수 있다.Embodiments described in this specification may provide a digital object ownership management method and apparatus capable of easily identifying a user who owns a digital object.
본 명세서에 기재된 실시예들은, 디지털 객체를 관리하는데 있어서의 보안을 향상시키는 방법 및 장치를 제공할 수 있다. Embodiments described herein may provide a method and apparatus for improving security in managing digital objects.
본 명세서에 기재된 실시예는, 이상에서 언급되지 않은 또 다른 방법 및 그 장치를 제공하는 것으로 아래의 기재로부터 이해될 수 있을 것이다.It will be understood from the description below that the embodiments described in this specification provide other methods and devices not mentioned above.
본 명세서에 기재된 일 실시예에 따른 디지털 객체 소유권 관리 방법은, 디지털 객체의 해시 값을 생성하는 단계와, 소유권 식별자를 생성하는 단계와, 상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 단계와, 상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 단계를 포함할 수 있다.A digital object ownership management method according to an embodiment described in this specification includes generating a hash value of a digital object, generating an ownership identifier, and storing the generated ownership identifier through a first smart contract. and storing object information including the generated hash value and the ownership identifier through a second smart contract.
일 실시예에서, 상기 객체 정보는 상기 디지털 객체의 원본에 대한 액세스 정보를 더 포함할 수 있다.In one embodiment, the object information may further include access information on the original of the digital object.
일 실시예에서, 디지털 객체 소유권 관리 방법은, 상기 디지털 객체의 소유권 이전 요청에 응답하여, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계를 더 포함할 수 있다.In one embodiment, the digital object ownership management method may further include, in response to a request for ownership transfer of the digital object, storing information about ownership transfer of the digital object through the first smart contract.
일 실시예에서, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계는, 제1 사용자에서 제2 사용자로의 디지털 객체 소유권 이전 요청을 수신하는 단계와, 제1 사용자의 전자 서명을 획득하는 단계와, 상기 제1 사용자의 전자 서명과 상기 디지털 객체의 소유권 식별자를 기초로, 상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계와, 상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있다는 판정에 응답하여, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계를 포함할 수 있다.In one embodiment, the storing the information about the transfer of ownership of the digital object through the first smart contract may include receiving a request for transfer of ownership of the digital object from a first user to a second user; obtaining an electronic signature of the first user; determining whether the first user holds ownership of the digital object based on the electronic signature of the first user and an ownership identifier of the digital object; In response to a determination that the ownership of the object is held by the first user, storing information about transfer of ownership of the digital object through the first smart contract.
일 실시예에서, 상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계는, 상기 디지털 객체의 소유권 식별자로부터 공개키를 획득하는 단계와, 상기 획득된 공개키를 이용하여 상기 제1 사용자의 전자 서명을 검증하는 단계와, 상기 제1 사용자의 전자 서명의 검증에 성공하면 상기 디지털 객체의 소유권이 상기 제1 사용자가 보유하는 있는 것으로 판정하는 단계를 포함할 수 있다. In one embodiment, the step of determining whether the first user holds ownership of the digital object includes obtaining a public key from an ownership identifier of the digital object, and using the obtained public key to The method may include verifying the electronic signature of the first user, and determining that ownership of the digital object is held by the first user if the digital signature of the first user is successfully verified.
몇몇 실시예에서, 상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계는, 상기 디지털 객체의 소유권 식별자로부터 공개키를 획득하는 단계와, 상기 제1 사용자의 전자 서명으로부터 공개키를 획득하는 단계와, 상기 전자 서명으로부터 획득한 공개키와 상기 소유권 식별자로부터 획득한 공개키가 일치하는 여부를 판정하는 단계와, 상기 전자 서명으로부터 획득한 공개키와 상기 소유권 식별자로부터 획득한 공개키가 일치하면, 상기 디지털 객체의 소유권이 상기 제1 사용자가 보유하는 있는 것으로 판정하는 단계를 포함할 수 있다.In some embodiments, determining whether ownership of the digital object is held by the first user comprises obtaining a public key from an ownership identifier of the digital object, and publishing from the digital signature of the first user. obtaining a key; determining whether a public key obtained from the digital signature matches a public key obtained from the ownership identifier; If the keys match, determining ownership of the digital object is in the possession of the first user.
일 실시예에서, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계는, 상기 디지털 객체에 대한 상기 제2 사용자의 소유권 식별자를 기술 기반으로 생성하는 단계와, 상기 디지털 객체의 소유권을 증명하는 식별자가 상기 제2 사용자의 소유권 식별자임을 나타내는 상기 소유권 이전에 관한 정보를 저장하는 단계를 포함할 수 있다.In one embodiment, storing the information on transfer of ownership of the digital object through the first smart contract may include generating an ownership identifier of the second user for the digital object based on a technology; and storing information about the transfer of ownership indicating that an identifier proving ownership of an object is an ownership identifier of the second user.
일 실시예에서, 상기 소유권 식별자를 생성하는 단계는, 상기 디지털 객체의 해시값과 동일한 해시값을 포함하는 객체 정보가 상기 제2 스마트 컨트랙트를 통해 이미 저장되어 있는지 여부를 검증하는 단계와, 상기 검증 결과 디지털 객체의 해시값과 동일한 해시값을 포함하는 객체 정보가 저장되지 않는다는 판정에 응답하여 상기 디지털 객체에 대한 소유권 식별자를 생성하는 단계를 포함할 수 있다.In one embodiment, the generating of the ownership identifier may include verifying whether object information including a hash value equal to a hash value of the digital object is already stored through the second smart contract; Generating an ownership identifier for the digital object in response to determining that object information including a hash value equal to the hash value of the resulting digital object is not stored.
일 실시예에서, 디지털 객체 소유권 관리 방법은, 상기 디지털 객체에 대한 이용을 요청을 수신하는 단계와, 상기 디지털 객체의 이용을 허락하는 크리덴셜을 상기 제2 스마트 컨트랙트를 통해 생성하는 단계와, 상기 크리덴셜을 사용자 단말로 전송하는 단계와, 상기 크리덴셜에 기초하여 사용자 단말에서의 상기 디지털 객체의 실행을 제어하는 단계를 더 포함할 수 있다.In one embodiment, a digital object ownership management method includes receiving a request for use of the digital object, generating credentials allowing use of the digital object through the second smart contract, and The method may further include transmitting credentials to a user terminal and controlling execution of the digital object in the user terminal based on the credentials.
일 실시예에서, 상기 크리덴셜을 상기 제2 스마트 컨트랙트를 통해 생성하는 단계는, 이용권 식별자를 생성하는 단계와, 상기 이용권 식별자를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계와, 상기 생성된 이용권 식별자에 기초하여, 상기 크리덴셜을 생성하는 단계를 포함할 수 있다.In one embodiment, the step of generating the credential through the second smart contract includes generating a right-of-use identifier, storing the right-of-use identifier through the first smart contract, and the generated right-of-use identifier Based on, it may include generating the credential.
일 실시예에서, 상기 디지털 객체 실행을 제어하는 단계는, 상기 사용자 단말에서의 상기 디지털 객체의 실행 개시에 응답하여, 상기 사용자 단말로부터 상기 크리덴셜을 수신하는 단계와, 상기 크리덴셜에 포함된 이용권 식별자를 식별하는 단계와, 상기 이용권 식별자가 상기 제1 스마트 컨트랙트를 통해서 이미 저장되어 있는지 여부를 검증하는 단계와, 상기 검증에 성공하는 것에 응답하여, 상기 사용자 단말로 상기 디지털 객체 실행을 허락하는 메시지를 전송하는 단계를 포함할 수 있다.In one embodiment, the controlling of the execution of the digital object may include receiving the credential from the user terminal in response to initiation of execution of the digital object in the user terminal, and the right to use included in the credential. The step of identifying an identifier, the step of verifying whether or not the right-of-use identifier is already stored through the first smart contract, and a message allowing the user terminal to execute the digital object in response to the successful verification. It may include the step of transmitting.
일 실시예에서, 상기 디지털 객체 실행을 제어하는 단계는, 상기 사용자 단말에서의 상기 디지털 객체의 실행 개시에 응답하여, 상기 디지털 객체의 소유권 식별자 요청을 수신하는 단계와, 상기 디지털 객체의 상기 소유권 식별자를 상기 사용자 단말로 전송하는 단계와, 상기 소유권 식별자에 대한 응답으로, 상기 사용자 단말로부터 상기 소유권 식별자와 관련된 상기 크리덴셜을 수신하는 단계를 포함할 수 있다.In an embodiment, the controlling of the execution of the digital object includes receiving a request for an ownership identifier of the digital object in response to initiation of execution of the digital object in the user terminal, and the ownership identifier of the digital object. Transmitting to the user terminal, and receiving the credential related to the ownership identifier from the user terminal in response to the ownership identifier.
일 실시예에서, 상기 소유권 식별자를 생성하는 단계는, 분산 신원(Decentralized Identifier) 기술에 기초하여 상기 소유권 식별자를 생성하는 단계를 포함할 수 있다.In one embodiment, generating the ownership identifier may include generating the ownership identifier based on a decentralized identity (Decentralized Identifier) technology.
본 명세서에 기재된 다른 실시예에 따른 컴퓨팅 장치는, 하나 이상의 프로세서와, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리와, 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 디지털 객체의 해시 값을 생성하는 동작과, 소유권 식별자를 생성하는 동작과, 상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 동작과, 상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함할 수 있다.A computing device according to another embodiment described in this specification includes one or more processors, a memory for loading a computer program executed by the processor, and a storage for storing the computer program, the computer program comprising: , An operation of generating a hash value of a digital object, an operation of generating an ownership identifier, an operation of storing the generated ownership identifier through a first smart contract, and object information including the generated hash value and the ownership identifier. It may include instructions for performing an operation of storing through the second smart contract.
본 명세서에 기재된 또 다른 실시예에 따른 명령어를 포함하는 컴퓨터 판독 가능한 비일시적 저장 매체는, 상기 명령어는 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 디지털 객체의 해시 값을 생성하는 단계와, 소유권 식별자를 생성하는 단계와, 상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 단계와, 상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 단계를 포함하는 동작들을 수행하도록 할 수 있다.A computer readable non-transitory storage medium including instructions according to another embodiment described in this specification, when executed by a processor, causes the processor to generate a hash value of a digital object; an ownership identifier; An operation comprising generating a, storing the generated ownership identifier through a first smart contract, and storing object information including the generated hash value and the ownership identifier through a second smart contract. can make them do it.
도 1은 본 명세서의 일 실시예에 따른, 디지털 객체 관리 시스템을 예시하는 도면이다.
도 2는, 볼 발명의 다른 실시예에 따른 디지털 객체의 소유권 식별자와 객체 정보가 생성되어 등록되는 방법을 설명하는 신호 흐름도이다.
도 3은 소유권 식별자를 생성하는데 이용되는 규칙(rule)을 예시하는 도면이다.
도 4는 객체 정보에 포함된 데이터를 예시하는 도면이다.
도 5는 본 발명의 또 다른 실시예에 따른, 디지털 객체의 소유권이 이전되는 방법을 설명하기 위한 신호 흐름도이다.
도 6은 디지털 객체의 소유권이 이전되는 것을 그래픽으로 설명한 도면이다.
도 7은 본 발명의 또 다른 실시예에 따른, 디지털 객체의 이용권 식별자 포함하는 크리덴셜이 발급되는 방법을 설명한다.
도 8은 본 발명의 또 다른 실시예에 따른, 크리덴셜에 기초하여 디지털 객체의 실행을 제어하는 방법을 설명하기 위한 신호 흐름도이다.
도 9는 다양한 실시예에서 컴퓨팅 장치를 구현할 수 있는 예시적인 하드웨어 구성도이다.1 is a diagram illustrating a digital object management system according to one embodiment of the present specification.
2 is a signal flow diagram illustrating a method of generating and registering an ownership identifier and object information of a digital object according to another embodiment of the present invention.
3 is a diagram illustrating rules used to generate an ownership identifier.
4 is a diagram illustrating data included in object information.
5 is a signal flow diagram illustrating a method of transferring ownership of a digital object according to another embodiment of the present invention.
6 is a diagram graphically illustrating the transfer of ownership of a digital object.
7 illustrates a method of issuing a credential including a usage right identifier of a digital object according to another embodiment of the present invention.
8 is a signal flow diagram illustrating a method of controlling execution of a digital object based on credentials according to another embodiment of the present invention.
9 is an exemplary hardware configuration diagram in which a computing device may be implemented in various embodiments.
이하, 첨부된 도면을 참조하여 본 명세서의 실시예들을 상세히 설명한다. 본 명세서의 실시예들의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 실시예의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명의 기술적 사상을 완전하도록 하고, 본 명세서의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, embodiments of the present specification will be described in detail with reference to the accompanying drawings. Advantages and characteristics of the embodiments of this specification, and methods for achieving them will become clear with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the technical spirit of the embodiments is not limited to the following embodiments, but may be implemented in various different forms, and only the following embodiments complete the technical spirit of the present invention, and the techniques to which the embodiments of the present specification belong. It is provided to completely inform those skilled in the art of the scope of the present invention, and the technical spirit of the present invention is only defined by the scope of the claims.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 명세서의 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In adding reference numerals to components of each drawing, it should be noted that the same components have the same numerals as much as possible even if they are displayed on different drawings. In addition, in describing the embodiments of the present specification, if it is determined that a detailed description of a related known configuration or function may obscure the subject matter, the detailed description will be omitted.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 명세서의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 명세서의 실시예들을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used in a meaning commonly understood by those of ordinary skill in the art to which the embodiments of this specification belong. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined. Terminology used herein is for describing the embodiments and is not intended to limit the embodiments herein. In this specification, singular forms also include plural forms unless specifically stated otherwise in a phrase.
또한, 본 명세서의 실시예들의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the components of the embodiments of the present specification, terms such as first, second, A, B, (a), and (b) may be used. These terms are only used to distinguish the component from other components, and the nature, order, or order of the corresponding component is not limited by the term. When an element is described as being “connected,” “coupled to,” or “connected” to another element, that element is directly connected or connectable to the other element, but there is another element between the elements. It will be understood that elements may be “connected”, “coupled” or “connected”.
후술하는 "디지털 객체"는 이미지, 동영상, 게임 아이템, 사운드, 가상자산(예컨대, 비트코인) 등의 디지털 창작물을 포함할 수 있다. A “digital object” to be described later may include digital creations such as images, videos, game items, sounds, and virtual assets (eg, Bitcoin).
이하, 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments will be described in detail according to the accompanying drawings.
도 1은 본 명세서의 일 실시예에 따른, 디지털 객체 관리 시스템을 예시하는 도면이다.1 is a diagram illustrating a digital object management system according to one embodiment of the present specification.
도 1에서 예시된 바와 같이, 본 발명의 일 실시예에 따른 디지털 객체 관리 시스템은 사용자 단말(110, 120) 및 디지털 객체 소유권 관리 장치(200)를 포함하여 구성될 수 있다. 사용자 단말(110, 120)과 디지털 객체 소유권 관리 장치(200)는 네트워크를 통해서 서로 통신할 수 있다. As illustrated in FIG. 1 , a digital object management system according to an embodiment of the present invention may include
사용자 단말(110, 120)은 이동통신단말, 태블릿 컴퓨터, 개인용 컴퓨터 등과 같이 사용자가 이용하는 컴퓨팅 장치일 수 있다. 사용자 단말(110, 120)은 디지털 객체 소유권 관리 장치(200)에 포함된 스마트 컨트랙트(210, 220)를 통해, 디지털 객체를 등록하여 소유권 식별자를 할당 받을 수 있다. 또한, 사용자 단말(110, 120)은 디지털 객체 소유권 관리 장치(200)에 포함된 스마트 컨트랙트(110, 120)를 통해, 특정 사용자가 소유하고 있는 디지털 객체의 소유권을 이전 받을 수도 있다.The
디지털 객체 소유권 관리 장치(200)는 하나 이상의 서버를 이용하여 구현된 컴퓨팅 장치일 수 있다. 디지털 객체 소유권 관리 장치(200)는 하나 이상의 물리적인 컴퓨팅 장치를 통해서 구현될 수도 있고, 클라우드 컴퓨팅 시스템에서 가상 머신 형태로 탑재될 수도 있다. 디지털 객체 소유권 관리 장치(200)는 각 사용자의 디지털 객체의 소유권을 관리하며, 더불어 디지털 객체의 사용을 제어할 수 있다. 일 실시예에서, 디지털 객체 소유권 관리 장치(200)는 제1 스마트 컨트랙트(210) 및 제2 스마트 컨트랙트(220)를 포함할 수 있다. 또한, 디지털 객체 소유권 관리 장치(200)는 저장소(230)를 더 포함할 수도 있다. 몇몇 실시예에서는, 저장소(230)는 디지털 객체 소유권 관리 장치(200)에 포함되지 않을 수도 있고, 별도의 스토리지 형태로 구현되거나 별도의 네트워크로 구현될 수도 있다.Digital object
제1 스마트 컨트랙트(210)는 디지털 객체의 소유권을 증명하기 위하여, 디지털 객체에 대한 소유권 식별자를 생성할 수 있다. 일 실시예에서, 제1 스마트 컨트랙트(210)는 분산 신원(DID: Decentralized ID) 기술을 이용하여, 상기 소유권 식별자를 생성하여 저장소(230)에 저장할 수 있다. 또한, 제1 스마트 컨트랙트(210)는 디지털 객체에 대한 소유권을 제1 사용자에서 제2 사용자로 이전하는 소유권 정보를 생성하여 저장소(230)에 저장할 수 있다. The first
몇몇 실시예에서, 제1 스마트 컨트랙트(210)는 디지털 객체의 사용을 허락을 나타내는 이용권 식별자를 생성할 수 있다. 여기서, 소유권 식별자는 디지털 객체의 소유권을 증명하기 위해서 이용되고, 이용권 식별자는 디지털 객체의 소유자의 허락 하에, 타 사용자가 해당 디지털 객체를 사용하는 것을 증명하기 위해 이용될 수 있다. 상기 제1 스마트 컨트랙트(210)는 함수, API(Application Programming Interface) 등과 같은 소프트웨어로 구현되어 디지털 객체 소유권 관리 장치(200)에 탑재될 수 있다. In some embodiments, the first
제2 스마트 컨트랙트(220)는 디지털 객체를 검증하고 등록할 수 있다. 일 실시예에서, 제2 스마트 컨트랙트(220)는 등록 요청된 디지털 객체의 해시값을 산출하고, 그 해시값이 저장소(230)에 이미 저장되어 있는지 여부를 판정함으로써, 등록된 요청된 디지털 객체가 최초 등록된 것인지 여부를 검증할 수 있다. 또한, 제2 스마트 컨트랙트(220)는 검증 완료된 디지털 객체의 해시, 디지털 객체의 소유권 식별자 및 디지털 객체의 액세스 정보를 포함하는 객체 정보를 생성하여 저장소(230)에 저장할 수 있다. 일 실시예에서, 제2 스마트 컨트랙트(220)는 디지털 객체의 이전 또는 디지털 객체의 이용에 따른 비용 처리를 위한 루틴을 진행할 수 있다. 몇몇 실시예에 따르면, 제2 스마트 컨트랙트(220)는 디지털 객체의 사용 허락을 나타내는 이용권 식별자를 포함하는 크리덴셜(credential)를 발급할 수 있다. 상기 제2 스마트 컨트랙트(220)는 함수, API(Application Programming Interface) 등과 같은 소프트웨어로 구현되어 디지털 객체 소유권 관리 장치(200)에 탑재될 수 있다. The second
저장소(230)는 디지털 객체의 해시값, 소유권 식별자 및 디지털 객체의 액세스 정보를 포함하는 객체 정보를 저장할 수 있다. 또한, 저장소(230)는 소유권 식별자를 포함하는 소유권 정보를 저장할 수 있으며, 이용권 식별자를 포함하는 이용권 정보를 저장할 수 있다. 일 실시예에서, 저장소(230)는 복수의 노드들이 연결된 블록체인 네트워크를 포함할 수 있다. 이 경우, 객체 정보, 소유권 정보 및 이용권 정보는 각각의 노드에 분산되어 저장될 수 있다. 도 1에서는 저장소(230)가 블록체인 네트워크를 포함하는 것으로 예시하고 있다.The
지금까지 도 1을 참조하여 본 명세서의 일 실시예에 따른 디지털 객체 관리 시스템을 설명하였다. 이하에서는 도 2 내지 도 8을 참조하여, 디지털 객체 소유권 관리 장치(200) 및 사용자 단말(110, 120)을 통해 수행될 수 있는 본 명세서의 실시예에 따른 디지털 객체 소유권 관리 방법에 관하여 설명한다.So far, a digital object management system according to an embodiment of the present specification has been described with reference to FIG. 1 . Hereinafter, a digital object ownership management method according to an embodiment of the present specification, which can be performed through the digital object
먼저 도 2를 참조하여, 디지털 객체의 소유권 식별자와 객체 정보가 생성되어 등록되는 방법에 대해서 설명한다. First, referring to FIG. 2, a method of generating and registering an ownership identifier and object information of a digital object will be described.
도 2를 참조한 설명에서, 제1 사용자가 디지털 객체의 창작자인 것으로 가정한다.In the description with reference to FIG. 2 , it is assumed that the first user is the creator of the digital object.
제1 사용자 단말(110)은 제1 사용자가 창작한 디지털 객체를 등록 대상 객체로서 선정할 수 있다(S101).The
이어서, 제1 사용자 단말(110)은 제1 사용자의 공개키와 선정된 디지털 객체를 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S103). 상기 제1 사용자의 공개키와 개인키는 미리 생성되어 제1 사용자 단말(110)에 저장될 수 있다. Subsequently, the
다음으로, 디지털 객체 소유권 관리 장치(200)는 제1 스마트 컨트랙트(210)와 제2 스마트 컨트랙트(220)를 이용하여, 소유권 정보와 객체 정보를 생성하는 루틴인 단계 S105 내지 단계 S117를 진행할 수 있다. Next, the digital object
해당 루틴에서, 제2 스마트 컨트랙트(220)는 제1 사용자 단말(110)로부터 수신한 디지털 객체의 해시값을 생성할 수 있다(S105). 이어서, 제2 스마트 컨트랙트(220)는 상기 생성된 디지털 객체의 해시값이 기존의 해시값과 중복되었는지 여부를 판정할 수 있다(S107). 일 실시예에서, 디지털 객체 소유권 관리 장치(200)는 디지털 객체의 해시값을 포함하는 객체 정보가 저장소(230)에서 검색되는지를 확인함으로써, 상기 해시값의 중복 여부를 판정할 수 있다. In the corresponding routine, the second
디지털 객체의 해시값이 기존의 해시값과 중복된다는 판정에 응답하여, 디지털 객체 소유권 관리 장치(200)는 디지털 객체의 등록이 불가능함을 알리는 메시지를 제1 사용자 단말(110)로 전송할 수 있다(S109). 즉, 디지털 객체 소유권 관리 장치(200)는 디지털 객체의 해시값이 기존의 해시값과 중복되는 경우, 상기 디지털 객체가 이미 등록되어 있다고 판정하여 디지털 객체의 등록이 불가능함을 알리는 메시지를 제1 사용자 단말(110)로 전송할 수 있다.In response to determining that the hash value of the digital object overlaps with the existing hash value, the digital object
반면에, 디지털 객체의 해시값이 기존의 해시값과 중복되지 않는다는 판정에 응답하여, 제2 스마트 컨트랙트(220)는 제1 스마트 컨트랙트(210)로 상기 디지털 객체에 대한 소유권 식별자의 생성을 요청할 수 있다(S111). On the other hand, in response to determining that the hash value of the digital object does not overlap with the existing hash value, the second
이어서, 제1 스마트 컨트랙트(210)는 상기 디지털 객체에 대해서 소유권이 제1 사용자에게 있음을 증명하기 위한, 제1 소유권 식별자를 생성하고, 그 생성된 제1 소유권 식별자를 포함하는 소유권 정보를 저장소(230)에 저장할 수 있다(S113. 일 실시예에서, 제1 스마트 컨트랙트(210)는 DID 기술을 이용하여 상기 제1 소유권의 식별자를 생성할 수 있으며, 또한 제1 사용자의 공개키를 기초로, 상기 제1 소유권 식별자를 생성할 수 있다. 제1 스마트 컨트랙트(210)는 제1 사용자의 정보를 획득하여 상기 소유권 정보에 추가적으로 포함시킬 수 있다. 상기 제1 사용자의 정보는 제1 사용자가 소지한 제1 사용자 단말(110)의 식별정보, 제1 사용자의 공개키, 상기 제1 사용자의 이메일, 제1 사용자의 계좌번호 등을 포함할 수 있다.Subsequently, the first
도 3은 소유권 식별자를 생성하는데 이용되는 규칙(rule)을 예시하는 도면이다.3 is a diagram illustrating rules used to generate an ownership identifier.
도 3에 예시된 바와 같이, [method-name]에 상응하는 함수가 호출되어 DID 기반의 소유권 식별자를 생성할 수 있다. 여기서, 상기 호출된 함수에는 [method-specific-id]와 대응되는 식별자가 이용될 수 있다. 상기 [method-specific-id]는 제1 사용자의 공개키일 수 있다. As illustrated in FIG. 3 , a function corresponding to [method-name] may be called to generate a DID-based ownership identifier. Here, an identifier corresponding to [method-specific-id] may be used for the called function. The [method-specific-id] may be the public key of the first user.
도 3에 따르면, 제1 스마트 컨트랙트(210)는 소유권 식별자를 생성하는 함수가 호출한 후, 그 호출된 함수에 제1 사용자의 공개키를 적용하여, 제1 소유권 식별자를 생성할 수 있다. 또한, 제1 스마트 컨트랙트(210)는 제1 소유권 식별자를 포함하고, 상기 디지털 객체의 해시값을 포함하는 소유권 정보를 생성하여 저장소(230)에 저장할 수 있다. 몇몇 실시예에서는, 상기 소유권 정보를 포함하는 트랜잭션을 저장소(230)의 블록체인 네트워크로 발생시킬 수 있다.According to FIG. 3 , the first
다시 도 2를 참조하면, 제1 스마트 컨트랙트(210)는 제1 소유권 식별자를 제2 스마트 컨트랙트(220)로 제공할 수 있다(S115).Referring back to FIG. 2 , the first
이어서, 제2 스마트 컨트랙트(220)는 디지털 객체의 해시값, 제1 소유권 식별자 및 디지털 객체의 액세스 정보를 포함하는 객체 정보를 생성하여 저장소(230)에 저장할 수 있다(S117). 몇몇 실시예에서는, 제2 스마트 컨트랙트(220)는 상기 객체 정보를 포함하는 트랜잭션을 저장소(230)의 블록체인 네트워크로 발생시킬 수 있다.Subsequently, the second
도 4는 객체 정보에 포함된 데이터를 예시하는 도면으로서, 도 4에 예시된 바와 같이, 객체 정보는 디지털 객체의 해시값(11), 소유권 식별자(12), 디지털 객체의 이름(13), 디지털 객체의 설명(14), 디지털 객체의 프리뷰 URL(15) 및 디지털 객체의 다운로드 URL(16)을 포함할 수 있다. 여기서, 디지털 객체의 프리뷰 URL(15) 및 디지털 객체의 다운로드 URL(16)이 디지털 객체의 액세스 정보에 포함될 수 있다. 상기 디지털 객체의 이름(13), 디지털 객체의 설명(14), 디지털 객체의 프리뷰 URL(15) 및 디지털 객체의 다운로드 URL(16)은 제1 사용자 단말(110)로부터 수신하여 획득될 수 있다. 또한, 디지털 객체의 이름(13), 디지털 객체의 설명(14), 디지털 객체의 프리뷰 URL(15) 및 디지털 객체의 다운로드 URL(16) 중 하나 이상은, 제1 사용자가 수시로 변경할 수 있다.4 is a diagram illustrating data included in object information. As illustrated in FIG. 4, the object information includes a
다시 도 2를 참조하면, 제2 스마트 컨트랙트(220)을 통해서 객체 정보가 저장소(230)에 저장되면, 디지털 객체 소유권 관리 장치(200)는 디지털 객체가 정상적으로 등록되었음을 알리는 메시지를 제1 사용자 단말(110)로 전송할 수 있다(S119). 일 실시예에서, 디지털 객체 소유권 관리 장치(200)는 디지털 객체에 대한 제1 소유권 식별자를 제1 사용자 단말(110)로 전송하여, 디지털 객체에 대한 제1 소유권 식별자를 제1 사용자에게 인지시킬 수 있다. 이에 따라, 제1 사용자는 제1 소유권 식별자를 이용하여, 디지털 객체에 대한 소유권이 자신에게 있음을 증명할 수 있다. 또한, 후술하는 바와 같이, 제1 사용자는 디지털 객체에 대한 타 사용자의 사용을 허락하거나, 디지털 객체의 소유권을 타인에게 이전시킬 수 있다.Referring back to FIG. 2 , when object information is stored in the
본 실시예에 따르면, 사용자는 디지털 객체의 등록을 요청하는 것을 통해서 소유권 식별자를 획득할 수 있고, 소유권 식별자를 이용하여 디지털 객체의 소유권을 증명할 수 있다.According to this embodiment, a user may obtain an ownership identifier by requesting registration of a digital object, and may prove ownership of a digital object using the ownership identifier.
이하, 도 5와 도 6을 참조하여, 디지털 객체의 소유권이 이전되는 방법을 설명한다.Hereinafter, a method of transferring ownership of a digital object will be described with reference to FIGS. 5 and 6 .
도 5를 참조한 설명에서는 제2 사용자가 제1 사용자가 소유하고 있는 제1 객체를 이전 받는 것으로 가정한다. 또한, 도 5를 참조한 설명에서는 상기 디지털 객체의 소유권 식별자가 제1 소유권 식별자인 것으로 가정한다.In the description referring to FIG. 5 , it is assumed that the second user receives the transfer of the first object owned by the first user. Also, in the description referring to FIG. 5 , it is assumed that the ownership identifier of the digital object is the first ownership identifier.
도 5를 참조하면, 제2 사용자 단말(120)은 제2 사용자가 소유권을 이전 받고자 하는 디지털 객체를 식별하고, 그 디지털 객체의 소유권 식별자 요청을 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S201). 일 실시예에서, 제2 사용자 단말(120)은 상기 디지털 객체의 다운로드 URL 또는 디지털 객체 파일을 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다.Referring to FIG. 5 , the
이어서, 디지털 객체 소유권 관리 장치(200)는 제1 스마트 컨트랙트(210)를 이용하여 소유권 식별자를 획득하고 제1 사용자 단말(110)로 전송하는 루틴인 단계 S203 내지 S211를 수행할 수 있다. 해당 루틴에서 제1 스마트 컨트랙트(210)는 디지털 객체를 획득하고, 제1 스마트 컨트랙트(210)를 이용하여 상기 획득된 디지털 객체가 이미 등록된 디지털 객체인지 여부를 검증할 수 있다(S203). 일 실시예에서, 제1 스마트 컨트랙트(210)는 제2 사용자 단말(120)로부터 수신한 URL 또는 파일을 이용하여 상기 디지털 객체의 해시값을 산출한 후, 디지털 객체의 해시값을 포함하는 객체 정보가 저장소(230)에 저장된 경우에 상기 디지털 객체의 검증에 성공한 것으로 판정할 수 있다.Then, the digital object
디지털 객체의 검증에 실패하면, 제1 스마트 컨트랙트(210)는 디지털 객체의 소유권을 이전할 수 없음을 알리는 메시지를 제2 사용자 단말(120)로 전송할 수 있다.If the verification of the digital object fails, the first
반면에, 디지털 객체의 검증에 성공하면, 제1 스마트 컨트랙트(210)는 상기 디지털 객체의 해시값을 포함하는 소유권 정보를 저장소(230)에서 획득한 후, 상기 소유권 정보에서 제1 사용자 단말(110)의 식별정보를 획득할 수 있다. 상기 디지털 객체가 소유권이 이미 이전된 적이 있으면, 저장소(230)에는 상기 디지털 객체의 해시값을 포함하는 소유권 정보가 복수 개가 저장될 수 있다. 이 경우, 제1 스마트 컨트랙트(210)는 최근에 저장된(즉, 가장 마지막에 저장된) 소유권 정보를 저장소(230)에서 획득하고, 그 획득된 소유권 정보에서 단말의 식별정보를 획득할 수 있다. 부연하면, 제1 스마트 컨트랙트(210)는 가장 마지막에 저장된 소유권 정보에 포함된 사용자 정보를, 현 시점에 디지털 객체의 소유권을 가지는 사용자 정보인 것으로 판정하여, 그 사용자 정보에 포함된 단말 식별정보를 획득할 수 있다. On the other hand, if the verification of the digital object is successful, the first
다음으로, 제1 스마트 컨트랙트(210)는 데이터 객체의 이전을 위한 제1 사용자의 전자 서명을 제1 사용자 단말(110)로 요청할 수 있다(S205). 이어서, 제1 스마트 컨트랙트(210)는 제1 사용자의 개인키를 기초로 서명된 전자 서명을 제1 사용자 단말(110)로부터 수신할 수 있다(S207). 일 실시예에서, 제1 사용자 단말(110)은 약속된 원문 데이터를 제1 사용자의 개인키로 서명된 전자 서명을 제1 스마트 컨트랙트(210)로 제공할 수 있다. 몇몇 실시예에서, 제1 사용자 단말(110)은 제1 사용자의 공개키와 상기 원문 데이터를 제1 사용자의 개인키로 암호화하여 전자 서명을 생성하고, 그 생성된 전자 서명을 제1 스마트 컨트랙트(210)로 제공할 수 있다.Next, the first
다음으로, 제1 스마트 컨트랙트(210)는 제1 사용자 단말(110)의 전자 서명의 진위를 검증함으로써, 디지털 객체에 대한 제1 사용자의 소유권을 검증할 수 있다(S209). 즉, 제1 스마트 컨트랙트(210)는 디지털 객체의 제1 소유권 식별자와 관련된 개인키를 제1 사용자가 보유하고 있는지 여부를, 상기 전자 서명을 이용하여 검증할 수 있다. 일 실시예에서, 제1 스마트 컨트랙트(210)는 디피 헬만(Diffie - Hellman) 등과 같은 전자 서명 검증 알고리즘에, 상기 제1 사용자의 공개키와 상기 원문 데이터를 적용하여 출력 데이터를 얻고, 그 출력 데이터와 제1 사용자 단말(110)로부터 수신된 전자 서명을 비교하여 전자 서명을 검증(즉, 소유권을 검증)할 수 있다. 일 실시예에서, 상기 출력 데이터와 상기 전자 서명에 포함된 데이터와 일치하는 경우, 소유권 검증에 성공한 것으로 판정될 수 있다. 일 실시예에서, 제1 스마트 컨트랙트(210)는 제1 소유권 식별자로부터 제1 사용자의 공개키를 획득할 수 있다.Next, the first
몇몇 실시예에서, 제1 스마트 컨트랙트(210)는 저장소(230)에서 획득한 소유권 정보로부터 제1 사용자의 공개키를 식별하고, 그 식별한 제1 사용자의 공개키를 이용하여 전자 서명을 복호화한 후, 전자 서명에 포함된 제1 사용자의 공개키와 상기 소유권 정보로부터 식별된 제1 사용자의 공개키가 일치하면 소유권 검증에 성공한 것으로 판정할 수 있다. 이때, 제1 스마트 컨트랙트(210)는 상기 소유권 정보에 포함된 제1 소유권 식별자에서 상기 제1 사용자의 공개키를 식별할 수 있다. In some embodiments, the first
제1 스마트 컨트랙트(210)는 소유권 검증에 성공하면, 저장소(230)로부터 획득한 소유권 정보에서 제1 소유권 식별자를 식별한 후, 그 제1 소유권 식별자를 제2 사용자 단말(120)로 전송할 수 있다(S211).If the ownership verification is successful, the first
몇몇 실시예에서, 디지털 객체에 대한 제1 소유권 식별자를 획득한 제2 사용자 단말(120)은, 디지털 객체의 해시값을 포함하는 소유권 정보들 중에서, 상기 제1 소유권을 포함하는 소유권 정보가 최신인지 여부를 저장소(230)에서 조회함으로써, 제1 소유권 식별자가 정당한지 여부를 검증할 수 있다. In some embodiments, the
이어서, 디지털 객체 소유권 관리 장치(200)는 제2 사용자 단말(120)로부터 소유권 변경 요청을 수신할 수 있고(S213), 제1 스마트 컨트랙트(210)와 제2 스마트 컨트랙트(220)를 이용하여 소유권 이전에 대한 루틴인 단계 S215 내지 S231를 진행할 수 있다. Subsequently, the digital object
해당 루틴이 시작되면, 제2 스마트 컨트랙트(220)는 디지털 객체의 소유권 이전에 대한 비용을 식별하고, 그 비용에 대한 결제 요청을 제2 사용자 단말(120)로 전송할 수 있다(S215). 일 실시예에서, 상기 객체의 소유권 이전에 대한 비용은 제1 사용자가 미리 설정하여 등록할 수 있다. 몇몇 실시예에서, 제2 스마트 컨트랙트(220)는 객체의 소유권 이전에 대한 비용을 제1 사용자 단말(110)로 문의하고, 이에 따른 비용을 수신할 수 있다.When the corresponding routine starts, the second
제2 사용자 단말(120)은 제2 사용자로부터 입력받은 결제 수단을 이용하여, 디지털 객체의 이전 비용을 결제한 후, 비용 결제가 완료되었음을 나타내는 메시지를 제2 스마트 컨트랙트(220)로 전송할 수 있다(S217). 일 실시예에서, 비용 결제 수단으로, 가상자산, 신용 카드, 무통장 입금 등이 이용될 수 있다. 또한, 제2 사용자 단말(120)에서 결제된 비용은, 미리 설정된 에스크로 계좌에 보관될 수 있다.The
제2 스마트 컨트랙트(220)는 디지털 객체의 소유권 이전 비용이 에스크로 계좌에 보관된 것에 응답하여, 소유권 이전에 대한 비용이 정상적으로 결제되었음을 알리는 메시지를 제1 사용자 단말(110)로 전송할 수 있다(S219).The second
이에 따라, 제1 사용자 단말(110)은 에스크로 계좌를 조회하여 소유권 이전의 위한 비용이 보관되었음을 확인할 수 있다(S221). 이어서, 제1 사용자 단말(110)은 제1 사용자의 입력에 근거하여, 디지털 객체의 소유권을 제2 사용자에게 이전하는 것을 요청하는 메시지를 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S223).Accordingly, the
이전 요청에 응답하여, 제1 스마트 컨트랙트(210)는 디지털 객체의 소유권이 제1 사용자로부터 제2 사용자로 이전되었음을 나타내는 소유권 정보를 생성하여 저장소(230)에 저장할 수 있다(S225). 몇몇 실시예에서, 제1 스마트 컨트랙트(210)는 상기 소유권 정보를 포함하는 트랜잭션을 저장소(230)의 블록체인 네트워크에 발생시킬 수 있다. In response to the transfer request, the first
일 실시예에서, 제1 스마트 컨트랙트(210)는 디지털 객체를 제2 사용자가 소유하고 있음을 증명하기 위한, 제2 소유권 식별자를 생성하고, 그 제2 소유권 식별자, 디지털 객체의 해시값 및 제2 사용자의 정보를 포함하는 새로운 소유권 정보를 생성하여 저장소(230)에 저장할 수 있다. 이때, 제1 스마트 컨트랙트(210)는 제2 사용자의 공개키를 획득하고, 그 획득된 제2 사용자의 공개키에 기초하여 상기 제2 소유권 식별자를 DID 기술 기반으로 생성할 수 있다. 몇몇 실시예에서, 제2 소유권 식별자는 비용 결제가 완료되었을 때 미리 생성될 수 있고, 이 경우, 제2 소유권 식별자는 제1 사용자 단말(110)로 제공될 수도 있다. 또한, 제1 스마트 컨트랙트(210)는 제2 소유권 식별자를 제2 사용자 단말(120)과 제2 스마트 컨트랙트(220) 각각으로 제공할 수 있다. In one embodiment, the first
몇몇 실시예에서, 제1 스마트 컨트랙트(210)는 이전되기 전의 소유권 식별자(즉, 제1 소유권 식별자)를 상기 소유권 정보에 포함시킴으로써, 상기 소유권 정보가 소유권 이전과 관련된 정보임을 나타낼 수 있다. 이러한 소유권 정보에 의해 디지털 객체의 소유권은 추적될 수 있으며, 동일한 해시값을 포함하는 소유권 정보들 중에서 가장 최신의 소유권 정보에 포함된 소유권 식별자만이, 해당 디지털 객체의 소유권을 증명하는데 이용될 수 있다.In some embodiments, the first
다음으로, 소유권 이전을 요청한 제1 사용자 단말(110)은 비용에 대한 출금 요청을 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S227).Next, the
이어서, 제2 스마트 컨트랙트(220)는 디지털 객체의 소유권이 제1 사용자로부터 제2 사용자로 이전되었는지 여부를 검증할 수 있다(S229). 일 실시예에서, 제2 스마트 컨트랙트(220)는 제1 스마트 컨트랙트(210)에서 생성한 제2 소유권 식별자와 디지털 객체의 해시값을 포함하는 소유권 정보가 저장소(230)에 저장되었는지 여부를 판정함으로써 소유권 이전이 정상적으로 완료되었는지 여부를 검증할 수 있다. Subsequently, the second
소유권 이전에 대한 검증에 성공한 것에 응답하여, 제2 스마트 컨트랙트(220)는 에스크로 계좌에 보관된 비용을, 제1 사용자의 계좌로 송금함으로써, 소유권 이전 비용을 출금 처리할 수 있다(S231). 상기 제1 사용자의 계좌는 미리 등록될 수 있다. 몇몇 실시예에서, 제2 제2 스마트 컨트랙트(220)는 상기 이전 비용에서 수수료를 차감하고, 수수료를 차감한 비용을 제2 사용자의 계좌로 송금할 수 있다.In response to successful verification of the ownership transfer, the second
본 실시예에 따르면, 소유권 식별자를 기초로 디지털 객체를 보유하고 있는 사용자를 보다 확실하게 검증할 수 있다. 또한, 본 실시예에 따르면, 확실하게 소유권이 이전된 후에, 비용을 정산하기 때문에 디지털 객체의 이전 과정에서의 사기 행위를 방지할 수 있다. According to this embodiment, it is possible to more reliably verify a user holding a digital object based on an ownership identifier. In addition, according to this embodiment, since the cost is settled after the ownership is definitely transferred, it is possible to prevent a fraudulent act in the transfer process of the digital object.
도 6은 디지털 객체의 소유권이 이전되는 것을 그래픽으로 설명한 도면이다.6 is a diagram graphically illustrating the transfer of ownership of a digital object.
도 6에서는 ①은 디지털 객체를 나타내고, ② did:ethr:lunvs:0x8a27..2C6E1b는 소유자의 소유권 식별자를 나타내고, ③ did:ethr:lunvs:0x3E3A..deDfCD는 요청자의 소유권 식별자를 나타내는 것으로 예시하고 있다. In FIG. 6, ① represents a digital object, ② did:ethr:lunvs:0x8a27..2C6E1b represents an ownership identifier of an owner, ③ did:ethr:lunvs:0x3E3A..deDfCD represents an ownership identifier of a requestor. there is.
먼저, 요청자는 identityOwner(①)를 실행함으로써, 디지털 객체(①)에 대한 소유권 식별자를 요청할 수 있다. 그러면, 제1 스마트 컨트랙트(210)는 저장소(230)에서 디지털 객체(①)의 해시값을 포함하는 최신의 소유권 정보를 저장소(230)에서 획득하고, 그 소유권 정보에서 소유권 식별자(② did:ethr:lunvs:0x8a27..2C6E1b)를 획득하여 요청자에 제공할 수 있다. First, the requester may request an ownership identifier for the digital object (①) by executing identityOwner (①). Then, the first
이어서, 요청자는 디지털 객체(①)를 이전 비용을 지불할 수 있다. 이 경우, 소유자는 changeOwner(①, ③)를 실행함으로써, 소유권 이전을 요청할 수 있다. 다음으로, 제1 스마트 컨트랙트(210)는 요청자의 소유권 식별자인 ③did:ethr:lunvs:0x3E3A..deDfCD를 포함하는 소유권 정보를 생성하여 저장소(230)에 저장할 수 있다.Then, the requester can pay the transfer fee of the digital object (①). In this case, the owner can request ownership transfer by executing changeOwner(①, ③). Next, the first
이후, 요청자는 identityOwner(①)를 실행함으로써, 디지털 객체(①)에 대한 소유권 식별자를 요청하여, 이에 대한 응답으로 ③did:ethr:lunvs:0x3E3A..deDfCD를 가지는 소유권 식별자를 수신할 수 있으며, 이 수신된 소유권 식별자를 기초로 자신에게 디지털 객체(①)의 소유권이 정상적으로 이전되었음을 판정할 수 있다.Thereafter, the requester may request an ownership identifier for the digital object (①) by executing identityOwner (①), and receive an ownership identifier having ③did:ethr:lunvs:0x3E3A..deDfCD as a response. Based on the received ownership identifier, it may be determined that the ownership of the digital object ① is normally transferred to the user.
이하, 도 7를 참조하여 디지털 객체의 이용권 식별자를 포함하는 크리덴셜이 발급되는 방법을 설명한다.Hereinafter, a method of issuing a credential including a use right identifier of a digital object will be described with reference to FIG. 7 .
도 7 및 도 8을 참조한 설명에서는, 디지털 객체의 소유권이 제1 사용자에게 있고, 제2 사용자는 제1 객체의 이용을 요구하는 사용자인 것으로 가정한다.In the description with reference to FIGS. 7 and 8 , it is assumed that a first user owns a digital object, and a second user is a user requesting use of the first object.
도 7를 참조하면, 제2 사용자 단말(120)은 제2 사용자가 이용하고자 하는 디지털 객체를 식별하고, 그 디지털 객체에 대한 크리덴셜 발급을 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S301). Referring to FIG. 7 , the
크리덴셜 발급에 대한 응답으로, 디지털 객체 소유권 관리 장치(200)는 제2 스마트 컨트랙트(220)를 이용하여, 이용권 결제와 이용권 발급을 허락받는 루틴인 단계 S303 내지 S311를 진행할 수 있다. In response to the issuance of the credential, the digital object
해당 루틴이 시작되면, 제2 스마트 컨트랙트(220)는 디지털 객체의 이용권 발급에 대한 비용을 식별하고, 그 비용에 대한 결제 요청을 제2 사용자 단말(120)로 전송할 수 있다(S303). 일 실시예에서, 객체의 이용권 발급에 대한 비용은 제1 사용자가 미리 설정하여 등록할 수 있다. 몇몇 실시예에서, 제2 스마트 컨트랙트(220)는 디지털 객체의 이용권 발급에 대한 비용을 제1 사용자 단말(110)로 문의하고, 이에 따른 비용을 수신할 수 있다.When the corresponding routine starts, the second
제2 사용자 단말(120)은 제2 사용자로부터 입력받은 결제 수단을 이용하여, 디지털 객체의 이용권 발급에 대한 비용을 결제한 후, 비용 결제가 완료되었음을 나타내는 메시지를 제2 스마트 컨트랙트(220)로 전송할 수 있다(S305). 일 실시예에서, 비용 결제 수단으로, 가상자산, 신용 카드, 무통장 입금 등이 이용될 수 있다. 또한, 제2 사용자 단말(120)에서 결제된 비용은, 미리 설정된 에스크로 계좌에 보관될 수 있다.The
제2 스마트 컨트랙트(220)는 디지털 객체의 이용권 발급 비용이 에스크로 계좌에 보관된 것에 응답하여, 소유권 이전에 대한 비용이 정상적으로 결제되었음을 알리는 메시지를 제1 사용자 단말(110)로 전송할 수 있다(S307).The second
이에 따라, 제1 사용자 단말(110)은 에스크로 계좌를 조회하여 이용권 발급에 대한 비용이 보관되었음을 확인한 후(S309), 제1 사용자의 입력에 근거하여, 디지털 객체의 이용권을 제2 사용자에게 발급하는 것을 허락하는 메시지를 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S311).Accordingly, the
이용권 발급 허락에 응답하여, 디지털 객체 소유권 관리 장치(200)는 제1 스마트 컨트랙트(210)와 제2 스마트 컨트랙트(220)를 이용하여 크리덴셜 발급을 수행하는 루틴인 단계 S313 내지 S321를 수행할 수 있다. In response to permission for issuance of a right to use, the digital object
해당 루틴이 진행되면, 제2 스마트 컨트랙트(220)는 제1 스마트 컨트랙트(210)로 이용권 식별자 생성을 요청할 수 있다(S313). When the corresponding routine proceeds, the second
이어서, 제1 스마트 컨트랙트(210)는 제2 사용자의 공개키를 획득하고, 제2 사용자의 공개키를 기초로, DID 기술 기반의 이용권 식별자를 생성할 수 있다(S315). 상기 이용권 식별자는 디지털 객체를 제2 사용자가 이용할 수 있음을 증명하기 위해서 사용될 수 있다. 상기 이용권 식별자도 도 3과 같은 규칙을 이용하여 생성될 수 있다. 몇몇 실시예에서, 소유권 식별자와 이용권 식별자를 구분하기 위하여, 이용권 식별자에 이용권 식별자를 나타내는 별도의 플래그를 부가할 수 있다. 일 실시예에서, 제1 스마트 컨트랙트(210)는 이용권 식별자와 상기 디지털 객체의 해시값을 포함하는 이용권 정보를 생성하여 저장소(230)에 저장할 수 있다. 다음으로, 제1 스마트 컨트랙트(210)는 생성된 이용권 식별자를 제2 스마트 컨트랙트(220)로 전송할 수 있다(S317).Subsequently, the first
이어서, 제2 스마트 컨트랙트(220)는 이용권의 유효기간과 보증 내용을 획득하고, 그 유효기간, 상기 이용권 식별자를 포함하는 크리덴셜을 생성하여 저장소(230)에 저장할 수 있다(S319). 일 실시예에서, 상기 이용권의 유효기간과 보증 내용은 제1 사용자에 의해 미리 설정될 수 있다. 몇몇 실시예에서, 제2 스마트 컨트랙트(220)는 제1 사용자의 전자 서명을 획득한 후, 상기 크린덴셜에 상기 전자 서명을 더 포함시킬 수 있다. 몇몇 실시예에서 제2 스마트 컨트랙트(220)는 제1 사용자 단말(110)로 제1 사용자의 전자 서명을 요구하여 수신하고, 상기 수신된 제1 사용자의 전자 서명을 상기 크리덴셜에 포함시킬 수 있다.Subsequently, the second
다음으로, 제2 스마트 컨트랙트(220)는 생성된 크리덴셜을 제2 사용자 단말(120)로 전송할 수 있다(S321). 일 실시예에서, 제2 사용자 단말(220)는 디지털 객체 소유권 관리 장치(200)로부터 제1 소유권 식별자를 수신하고, 상기 크리덴셜을 제1 소유권 식별자와 연관하여 저장할 수 있다. 이에 따라, 복수의 크리덴셜이 저장되더라도, 그 크리덴셜을 발급한 사용자들을 구분할 수 있다.Next, the second
크리덴셜의 전송이 완료된 이후에, 제1 사용자 단말(110)은 이용권 결제 비용에 대한 출금 요청할 수 있고, 디지털 객체 소유권 관리 장치(200)는 에스크로 계좌에 보관된 이용권 결제 비용을 제1 사용자의 계좌로 송금할 수 있다.After the transmission of the credentials is completed, the
이하, 도 8을 참조하면, 크리덴셜에 기초하여 디지털 객체의 실행이 제어되는 방법을 설명한다. Hereinafter, referring to FIG. 8 , a method of controlling execution of a digital object based on credentials will be described.
크리덴셜을 저장한 제2 사용자 단말(120)은 디지털 객체의 실행 개시 입력을 제2 사용자로부터 입력받을 수 있다(S401). 이어서, 디지털 객체의 실행을 위해, 제2 사용자 단말(120)은 상기 디지털 객체에 대한 소유권 식별자를 디지털 객체 소유권 관리 장치(200)를 요청할 수 있다(S403). The
디지털 객체 소유권 관리 장치(200)는 제2 스마트 컨트랙트(220)를 이용하여 저장소(230)에 저장된 상기 디지털 객체의 소유권 식별자를 획득하고(S403), 그 획득된 소유권 식별자를 제2 사용자 단말(120)로 전송할 수 있다(S405). 일 실시예에서, 디지털 객체의 해시값을 포함하는 최신의 소유권 정보를 저장소(230)에서 획득하고, 획득된 소유권 정보로부터 소유권 식별자를 식별할 수 있다.The digital object
다음으로, 제2 사용자 단말(120)은 소유권 식별자를 관련된 크리덴셜을 식별하고(S409), 그 식별된 크리덴셜을 디지털 객체 소유권 관리 장치(200)로 전송할 수 있다(S411).Next, the
디지털 객체 소유권 관리 장치(200)는 제2 스마트 컨트랙트(220)를 이용하여, 수신된 크리덴셜을 검증할 수 있다(S413). 먼저, 제2 스마트 컨트랙트(220)는 크리덴셜에 포함된 유효기간을 식별하고, 유효기간이 만료되었는지 여부를 판정함으로써, 크리덴셜을 1차 검증할 수 있다. 또한, 제2 스마트 컨트랙트(220)는 크리덴셜에 포함된 이용권 식별자를 획득하고, 그 이용권 식별자를 포함하는 이용권 정보가 저장소(230)에 저장되어 있는지 여부를 판정함으로써, 크리덴셜을 2차 검증할 수 있다. 게다가, 제2 스마트 컨트랙트(220)는 크리덴셜로부터 제1 사용자의 전자 서명을 식별하고, 제1 사용자의 공개키를 이용하여 상기 식별된 제1 사용자의 전자 서명의 진위 검증함으로써, 크리덴셜을 3차 검증할 수 있다.The digital object
디지털 객체 소유권 관리 장치(200)는 검증 결과를 제2 사용자 단말(120)로 전송할 수 있다(S415). 일 실시예에서, 디지털 객체 소유권 관리 장치(200)는 1차 내지 3차 검증에 모두 성공한 경우에 검증 성공을 제2 사용자 단말(120)로 전송할 수 있으며, 1차 내지 3차 검증 중 어느 하나에 실패한 경우 검증 실패를 제2 사용자 단말(120)로 전송할 수 있다.The digital object
제2 사용자 단말(120)은 검증 실패를 수신하면 디지털 객체를 실행하지 않고 검증 실패 메시지를 디스플레이할 수 있다. 반면에, 제2 사용자 단말(120)은 검증 성공을 수신하면 디지털 객체를 실행할 수 있다(S417). 이때, 제2 사용자 단말(120)은 디지털 객체의 액세스 정보를 디지털 객체 소유권 관리 장치(200)로부터 수신하고, 그 액세스 정보에 기초로 디지털 객체를 획득하여 실행할 수 있다.Upon receiving verification failure, the
본 실시예에 따르면, 제1 사용자의 디지털 객체의 소유권을 이전하지 않은 상태에서, 유효기간 내에 디지털 객체를 사용할 수 있는 크리덴셜을 발급함으로써, 비소유권자에게 디지털 객체를 이용할 수 있게 허락할 수 있다. According to this embodiment, a non-owner may be allowed to use a digital object by issuing a credential for using the digital object within a valid period without transferring the ownership of the digital object to the first user.
이하, 몇몇 실시예들에 따른 예시적인 컴퓨팅 장치의 하드웨어 구성을 도 9를 참조하여 설명하기로 한다.A hardware configuration of an exemplary computing device according to some embodiments will now be described with reference to FIG. 9 .
도 9는 다양한 실시예에서 컴퓨팅 장치를 구현할 수 있는 예시적인 하드웨어 구성도이다. 본 실시예에 따른 컴퓨팅 장치(1000)는 하나 이상의 프로세서(1100), 시스템 버스(1600), 네트워크 인터페이스(1200), 프로세서(1100)에 의하여 수행되는 컴퓨터 프로그램(1500)을 로드(load)하는 메모리(1400)와, 컴퓨터 프로그램(1500)을 저장하는 스토리지(1300)를 포함할 수 있다. 도 9에는 실시예와 관련 있는 구성요소들 만이 도시되어 있다. 따라서, 본 명세서의 실시예들이 속한 기술분야의 통상의 기술자라면 도 9에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.9 is an exemplary hardware configuration diagram in which a computing device may be implemented in various embodiments. The
프로세서(1100)는 컴퓨팅 장치(1000)의 각 구성의 전반적인 동작을 제어할 수 있다. 프로세서(1100)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 명세서의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(1100)는 다양한 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(1000)는 둘 이상의 프로세서를 구비할 수 있다.The
메모리(1400)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(1400)는 본 명세서의 다양한 실시예들에 따른 방법/동작들을 실행하기 위하여 스토리지(1300)로부터 하나 이상의 프로그램(190)을 로드(load) 할 수 있다. 메모리(1400)의 예시는 RAM이 될 수 있으나, 이에 한정되는 것은 아니다. 시스템 버스(1600)는 컴퓨팅 장치(1000)의 구성 요소 간 통신 기능을 제공한다.
상기 버스는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다. 네트워크 인터페이스(1200)는 통신망(500)과 연결할 수 있다. 스토리지(1300)는 하나 이상의 컴퓨터 프로그램(1500)을 비임시적으로 저장할 수 있다. 스토리지(1300)는 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 명세서의 실시예들이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The bus may be implemented in various forms such as an address bus, a data bus, and a control bus. The
컴퓨터 프로그램(1500)은 본 명세서의 다양한 실시예들에 따른 방법/동작들이 구현된 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 컴퓨터 프로그램(1500)이 메모리(1400)에 로드 되면, 프로세서(1100)는 상기 하나 이상의 인스트럭션들을 실행시킴으로써 본 명세서의 다양한 실시예들에 따른 방법/동작들을 수행할 수 있다. 컴퓨터 프로그램(1500)은, 도 2 내지 도 8을 참조하여 설명한 디지털 객체 소유권 관리 방법을 위한 인스트럭션들을 포함할 수 있다.
지금까지 도 1 내지 도 9를 참조하여 본 명세서의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 명세서의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, various embodiments of the present specification and effects according to the embodiments have been described with reference to FIGS. 1 to 9 . Effects according to the technical spirit of the present specification are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
지금까지 도 1 내지 도 9를 참조하여 설명된 본 명세서의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The technical idea of the present specification described with reference to FIGS. 1 to 9 so far may be implemented as computer readable code on a computer readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disc, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer-equipped hard disk). can The computer program recorded on the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet, installed in the other computing device, and thus used in the other computing device.
이상에서, 본 명세서의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 명세서의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 명세서의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even though all the components constituting the embodiments of the present specification have been described as being combined or operated as one, the technical spirit of the present specification is not necessarily limited to these embodiments. That is, within the scope of the purpose of the present specification, all of the components may be selectively combined with one or more to operate.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although actions are shown in a particular order in the drawings, it should not be understood that the actions must be performed in the specific order shown or in a sequential order, or that all shown actions must be performed to obtain a desired result. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various components in the embodiments described above should not be understood as requiring such separation, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products. It should be understood that there is
이상 첨부된 도면을 참조하여 본 명세서의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 발명이 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 명세서의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present specification have been described with reference to the accompanying drawings, those skilled in the art may implement the present invention in other specific forms without changing the technical spirit or essential features. can understand that there is Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting. The protection scope of this specification should be construed by the following claims, and all technical ideas within the equivalent range should be construed as being included in the scope of the technical ideas defined by the present invention.
Claims (18)
디지털 객체의 해시 값을 생성하는 단계;
소유권 식별자를 생성하는 단계;
상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 단계; 및
상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.As a method for a computing device to manage ownership of a digital object through a smart contract,
generating a hash value of the digital object;
generating an ownership identifier;
Storing the generated ownership identifier through a first smart contract; and
Storing object information including the generated hash value and the ownership identifier through a second smart contract,
How to manage digital object ownership.
상기 객체 정보는 상기 디지털 객체의 원본에 대한 액세스 정보를 더 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
The object information further includes access information on the original of the digital object.
How to manage digital object ownership.
상기 디지털 객체의 소유권 이전 요청에 응답하여, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계를 더 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
In response to a request for ownership transfer of the digital object, storing information about the ownership transfer of the digital object through the first smart contract,
How to manage digital object ownership.
상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계는,
제1 사용자에서 제2 사용자로의 디지털 객체 소유권 이전 요청을 수신하는 단계;
제1 사용자의 전자 서명을 획득하는 단계;
상기 제1 사용자의 전자 서명과 상기 디지털 객체의 소유권 식별자를 기초로, 상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계; 및
상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있다는 판정에 응답하여, 상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 3,
The step of storing the information on the transfer of ownership of the digital object through the first smart contract,
receiving a digital object ownership transfer request from a first user to a second user;
obtaining an electronic signature of a first user;
determining whether the first user holds ownership of the digital object based on the electronic signature of the first user and the ownership identifier of the digital object; and
In response to a determination that the ownership of the digital object is held by the first user, storing information about ownership transfer of the digital object through the first smart contract.
How to manage digital object ownership.
상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계는,
상기 디지털 객체 소유권 이전에 대한 비용을 상기 제2 사용자로부터 입금 받아 에스크로 계좌에 보관하는 단계를 포함하고,
상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계 이후에,
상기 에스크로 계좌에 보관된 상기 비용을 상기 제1 사용자의 계좌로 송금하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 4,
The step of storing the information on the transfer of ownership of the digital object through the first smart contract,
Receiving payment from the second user and storing the cost for transferring ownership of the digital object in an escrow account;
After the step of storing the information on the ownership transfer of the digital object through the first smart contract,
Comprising the step of transferring the cost stored in the escrow account to the account of the first user,
How to manage digital object ownership.
상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계는,
상기 디지털 객체의 소유권 식별자로부터 공개키를 획득하는 단계;
상기 획득된 공개키를 이용하여 상기 제1 사용자의 전자 서명을 검증하는 단계; 및
상기 제1 사용자의 전자 서명의 검증에 성공하면 상기 디지털 객체의 소유권이 상기 제1 사용자가 보유하는 있는 것으로 판정하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 4,
Determining whether the ownership of the digital object is held by the first user includes:
obtaining a public key from an ownership identifier of the digital object;
verifying the electronic signature of the first user using the obtained public key; and
Determining that ownership of the digital object is held by the first user if the verification of the digital signature of the first user succeeds.
How to manage digital object ownership.
상기 디지털 객체의 소유권을 상기 제1 사용자가 보유하고 있는지 여부를 판정하는 단계는,
상기 디지털 객체의 소유권 식별자로부터 공개키를 획득하는 단계;
상기 제1 사용자의 전자 서명으로부터 공개키를 획득하는 단계;
상기 전자 서명으로부터 획득한 공개키와 상기 소유권 식별자로부터 획득한 공개키가 일치하는 여부를 판정하는 단계; 및
상기 전자 서명으로부터 획득한 공개키와 상기 소유권 식별자로부터 획득한 공개키가 일치하면, 상기 디지털 객체의 소유권이 상기 제1 사용자가 보유하는 있는 것으로 판정하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 4,
Determining whether the ownership of the digital object is held by the first user includes:
obtaining a public key from an ownership identifier of the digital object;
obtaining a public key from the electronic signature of the first user;
determining whether the public key obtained from the digital signature matches the public key obtained from the ownership identifier; and
If the public key obtained from the digital signature matches the public key obtained from the ownership identifier, determining that the ownership of the digital object is held by the first user.
How to manage digital object ownership.
상기 디지털 객체의 소유권 이전에 관한 정보를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계는,
상기 디지털 객체에 대한 상기 제2 사용자의 소유권 식별자를 생성하는 단계; 및
상기 디지털 객체의 소유권을 증명하는 식별자가 상기 제2 사용자의 소유권 식별자임을 나타내는 상기 소유권 이전에 관한 정보를 저장하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 4,
The step of storing the information on the transfer of ownership of the digital object through the first smart contract,
generating an ownership identifier of the second user for the digital object; and
Storing information about the transfer of ownership indicating that an identifier proving ownership of the digital object is an ownership identifier of the second user.
How to manage digital object ownership.
상기 소유권 식별자를 생성하는 단계는,
상기 디지털 객체의 해시값과 동일한 해시값을 포함하는 객체 정보가 상기 제2 스마트 컨트랙트를 통해 이미 저장되어 있는지 여부를 검증하는 단계; 및
상기 검증 결과 디지털 객체의 해시값과 동일한 해시값을 포함하는 객체 정보가 저장되지 않는다는 판정에 응답하여 상기 디지털 객체에 대한 소유권 식별자를 생성하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
Generating the ownership identifier,
verifying whether object information including a hash value identical to that of the digital object is already stored through the second smart contract; and
Generating an ownership identifier for the digital object in response to a determination that object information having the same hash value as the hash value of the digital object is not stored as a result of the verification,
How to manage digital object ownership.
상기 소유권 식별자를 생성하는 단계는,
상기 디지털 객체의 소유자의 공개키를 획득하는 단계; 및
상기 소유자의 공개키를 기초로, 상기 소유권 식별자를 생성하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
Generating the ownership identifier,
obtaining a public key of an owner of the digital object; and
Based on the public key of the owner, generating the ownership identifier.
How to manage digital object ownership.
상기 디지털 객체에 대한 이용을 요청을 수신하는 단계;
상기 디지털 객체의 이용을 허락하는 크리덴셜을 상기 제2 스마트 컨트랙트를 통해 생성하는 단계;
상기 크리덴셜을 사용자 단말로 전송하는 단계; 및
상기 크리덴셜에 기초하여 사용자 단말에서의 상기 디지털 객체의 실행을 제어하는 단계를 더 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
receiving a request for use of the digital object;
generating credentials allowing use of the digital object through the second smart contract;
transmitting the credentials to a user terminal; and
Further comprising controlling execution of the digital object at a user terminal based on the credentials.
How to manage digital object ownership.
상기 크리덴셜을 상기 제2 스마트 컨트랙트를 통해 생성하는 단계는,
이용권 식별자를 생성하는 단계;
상기 이용권 식별자를 상기 제1 스마트 컨트랙트를 통해 저장하는 단계; 및
상기 생성된 이용권 식별자에 기초하여, 상기 크리덴셜을 생성하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 11,
Generating the credentials through the second smart contract,
generating a right-of-use identifier;
storing the use right identifier through the first smart contract; and
Based on the generated right-of-use identifier, generating the credential,
How to manage digital object ownership.
상기 디지털 객체 실행을 제어하는 단계는,
상기 사용자 단말에서의 상기 디지털 객체의 실행 개시에 응답하여, 상기 사용자 단말로부터 상기 크리덴셜을 수신하는 단계;
상기 크리덴셜에 포함된 이용권 식별자를 식별하는 단계;
상기 이용권 식별자가 상기 제1 스마트 컨트랙트를 통해서 이미 저장되어 있는지 여부를 검증하는 단계; 및
상기 검증에 성공하는 것에 응답하여, 상기 사용자 단말로 상기 디지털 객체 실행을 허락하는 메시지를 전송하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 11,
The step of controlling the execution of the digital object,
receiving the credentials from the user terminal in response to initiation of execution of the digital object in the user terminal;
identifying a right-of-use identifier included in the credential;
verifying whether the use right identifier is already stored through the first smart contract; and
In response to the verification being successful, transmitting a message allowing the execution of the digital object to the user terminal.
How to manage digital object ownership.
상기 디지털 객체 실행을 제어하는 단계는,
상기 사용자 단말에서의 상기 디지털 객체의 실행 개시에 응답하여, 상기 사용자 단말로부터 상기 크리덴셜을 수신하는 단계;
상기 크리덴셜에 포함된 전자 서명과 유효 기간을 검증하는 단계; 및
상기 검증에 성공하는 것에 응답하여, 상기 사용자 단말로 상기 디지털 객체 실행을 허락하는 메시지를 전송하는 단계를 포함하는
디지털 객체 소유권 관리 방법.According to claim 11,
The step of controlling the execution of the digital object,
receiving the credentials from the user terminal in response to initiation of execution of the digital object in the user terminal;
verifying the digital signature and validity period included in the credential; and
In response to the verification being successful, transmitting a message allowing the execution of the digital object to the user terminal.
How to manage digital object ownership.
상기 디지털 객체 실행을 제어하는 단계는,
상기 사용자 단말에서의 상기 디지털 객체의 실행 개시에 응답하여, 상기 디지털 객체의 소유권 식별자 요청을 수신하는 단계;
상기 디지털 객체의 상기 소유권 식별자를 상기 사용자 단말로 전송하는 단계; 및
상기 소유권 식별자에 대한 응답으로, 상기 사용자 단말로부터 상기 소유권 식별자와 관련된 상기 크리덴셜을 수신하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 11,
The step of controlling the execution of the digital object,
Receiving a request for an ownership identifier of the digital object in response to starting execution of the digital object in the user terminal;
transmitting the ownership identifier of the digital object to the user terminal; and
In response to the ownership identifier, receiving the credential associated with the ownership identifier from the user terminal.
How to manage digital object ownership.
상기 소유권 식별자를 생성하는 단계는, 분산 신원(Decentralized Identifier) 기술에 기초하여 상기 소유권 식별자를 생성하는 단계를 포함하는,
디지털 객체 소유권 관리 방법.According to claim 1,
Generating the ownership identifier comprises generating the ownership identifier based on a decentralized identity (Decentralized Identifier) technology.
How to manage digital object ownership.
상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되,
상기 컴퓨터 프로그램은,
디지털 객체의 해시 값을 생성하는 동작;
소유권 식별자를 생성하는 동작;
상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 동작; 및
상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함하는,
컴퓨팅 장치.one or more processors;
a memory for loading a computer program executed by the processor; and
Including a storage for storing the computer program,
The computer program,
generating a hash value of the digital object;
generating an ownership identifier;
storing the generated ownership identifier through a first smart contract; and
Including instructions for performing an operation of storing object information including the generated hash value and the ownership identifier through a second smart contract,
computing device.
상기 명령어는 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
디지털 객체의 해시 값을 생성하는 단계;
소유권 식별자를 생성하는 단계;
상기 생성된 소유권 식별자를 제1 스마트 컨트랙트를 통해 저장하는 단계; 및
상기 생성된 해시 값과 상기 소유권 식별자를 포함한 객체 정보를 제2 스마트 컨트랙트를 통해 저장하는 단계를 포함하는 동작들을 수행하도록 하는,
컴퓨터로 판독 가능한 비일시적 저장 매체.A computer-readable non-transitory storage medium containing instructions,
When executed by a processor, the instructions cause the processor to:
generating a hash value of the digital object;
generating an ownership identifier;
Storing the generated ownership identifier through a first smart contract; and
To perform operations including storing object information including the generated hash value and the ownership identifier through a second smart contract,
A computer-readable, non-transitory storage medium.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210135531 | 2021-10-13 | ||
KR20210135531 | 2021-10-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230052782A true KR20230052782A (en) | 2023-04-20 |
Family
ID=86143826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210164036A KR20230052782A (en) | 2021-10-13 | 2021-11-25 | Method and apparatus for managing digital object ownership |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230052782A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102576674B1 (en) * | 2023-05-18 | 2023-09-11 | 주식회사 나인투랩스 | Method, device and system for providing nft transaction mediation platform service based on attribute value in game environment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210059589A (en) | 2019-11-15 | 2021-05-25 | 주식회사 포스코아이씨티 | Permissioned Block Chain System for Supporting Non Fungible Token |
-
2021
- 2021-11-25 KR KR1020210164036A patent/KR20230052782A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210059589A (en) | 2019-11-15 | 2021-05-25 | 주식회사 포스코아이씨티 | Permissioned Block Chain System for Supporting Non Fungible Token |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102576674B1 (en) * | 2023-05-18 | 2023-09-11 | 주식회사 나인투랩스 | Method, device and system for providing nft transaction mediation platform service based on attribute value in game environment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11196572B2 (en) | Blockchain-based content verification | |
CN112749957A (en) | Asset right management system and method based on block chain | |
KR102349401B1 (en) | System for trading user-defined currency based on blockchain and operating method thereof | |
US20190114399A1 (en) | Application usage policy enforcement | |
CN109598116B (en) | Method and system for verifying the identity of a service making a service request | |
US20150220933A1 (en) | Methods and systems for making secure online payments | |
WO2017143924A1 (en) | Payment method, apparatus and device | |
CN105868970B (en) | authentication method and electronic equipment | |
TW201040783A (en) | Enhanced product functionality based on user identification | |
US20220164791A1 (en) | Method for distributing collectables ownership based on blockchain networks and online transaction server using the same | |
CN111967860A (en) | Transaction system, method and node in transaction system | |
WO2021026420A1 (en) | Blockchain-based secure resource management | |
EP2955682A1 (en) | Software resale method, apparatus and system | |
KR20230052782A (en) | Method and apparatus for managing digital object ownership | |
CN113126996A (en) | Code auditing method, device and system | |
CN112418851A (en) | Digital copyright registration, transaction and protection method and system | |
KR102301036B1 (en) | Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof | |
CN110599176A (en) | Data processing method and device based on block chain, storage medium and node equipment | |
US20220383282A1 (en) | Digital rights management using distributed ledgers | |
CN110619566A (en) | On-chain pledge asset return system and method through on-chain digital currency settlement | |
CN115880062A (en) | Product exchange method, device, equipment and system based on digital collections in block chain | |
WO2019239086A1 (en) | Token generation | |
JP6579266B2 (en) | Privilege grant system, privilege grant program and privilege grant method | |
TW201945989A (en) | System of smart ticket, method for issuing ticket and computer-readable storage device | |
CN110599184A (en) | Method and device for network service account transaction, server and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |