KR20240033455A - Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof - Google Patents
Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof Download PDFInfo
- Publication number
- KR20240033455A KR20240033455A KR1020220112111A KR20220112111A KR20240033455A KR 20240033455 A KR20240033455 A KR 20240033455A KR 1020220112111 A KR1020220112111 A KR 1020220112111A KR 20220112111 A KR20220112111 A KR 20220112111A KR 20240033455 A KR20240033455 A KR 20240033455A
- Authority
- KR
- South Korea
- Prior art keywords
- nft
- information
- serial number
- identification information
- user terminal
- Prior art date
Links
- 238000012546 transfer Methods 0.000 title claims abstract description 93
- 238000011017 operating method Methods 0.000 title claims abstract description 6
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims description 53
- 230000006870 function Effects 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 17
- 230000009849 deactivation Effects 0.000 claims description 14
- 238000012790 confirmation Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 10
- 238000013075 data extraction Methods 0.000 claims description 8
- 230000008033 biological extinction Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000012423 maintenance Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 230000006378 damage Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 5
- 230000000644 propagated effect Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005226 mechanical processes and functions Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- 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/321—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 involving a third party or a trusted authority
- H04L9/3213—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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/3247—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 involving digital signatures
-
- 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
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
NFT 이전 발행 서비스 서버 및 그 동작 방법이 개시된다. 본 발명은 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 NFT 이전 발행 서비스를 통해, 사용자들이 보유하고 있는 NFT를 이전 발행하고, 이전 발행된 NFT를 다른 사용자들과 거래할 수 있도록 지원할 수 있다.An NFT transfer service server and its operating method are disclosed. The present invention proposes an NFT transfer issuance service server that provides an NFT (Non-Fungible Token) transfer issuance service between blockchains and an operation method, thereby transferring NFTs held by users through the NFT transfer issuance service. And it can support trading previously issued NFTs with other users.
Description
본 발명은 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버 및 그 동작 방법에 대한 것이다.The present invention relates to an NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance services between blockchains and a method of operating the same.
NFT(Non-Fungible Token)란, '대체 불가능한 토큰'을 의미하는 것으로, 각 토큰마다 고유 값이 부여되어 있어서, 다른 토큰으로 대체하는 것이 불가능한 가상 자산을 의미한다.NFT (Non-Fungible Token) refers to a 'non-fungible token' and is a virtual asset that cannot be replaced with another token because each token has a unique value.
최근에는, 디지털 예술품, 온라인 스포츠, 게임 아이템 거래 등과 같은 다양한 분야에서, NFT의 도입이 증가하고 있다.Recently, the adoption of NFTs has been increasing in various fields such as digital artwork, online sports, and game item trading.
이러한 NFT는 고유의 메인넷(Mainnet)을 가지고 있기 때문에, 특정 NFT를 소유하고 있는 소유자가 자신이 소유하고 있는 해당 NFT를 다른 메인넷의 NFT 마켓에서 거래하는 것이 어려운 실정이다.Because these NFTs have their own mainnet, it is difficult for the owner of a specific NFT to trade the NFT he or she owns in the NFT market of another mainnet.
여기서, 메인넷은 블록체인 프로젝트를 실제 출시하여 운영하는 네트워크를 의미하고, 블록체인 기술이란, 트랜잭션이라고 하는 소정의 데이터가 생성되면, 블록체인 네트워크에 참여하고 있는 복수의 노드들 중 어느 하나의 노드가 여러 블록들이 체인으로 연결되어 있는 블록체인 데이터에 포함된 이전 블록을 기초로 상기 트랜잭션이 포함된 새로운 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 블록을 상기 블록체인 네트워크를 통해 다른 노드들로 배포함으로써, 소정의 데이터가 복수의 노드들에 분산 저장되도록 하는 기술을 의미한다.Here, the mainnet refers to the network that actually launches and operates the blockchain project, and blockchain technology means that when certain data called a transaction is generated, any one node among a plurality of nodes participating in the blockchain network Create a new block containing the transaction based on the previous block included in blockchain data in which several blocks are connected in a chain, connect the block to the blockchain data in a chain, and then add the block to the blockchain. It refers to a technology that allows certain data to be distributed and stored in multiple nodes by distributing it to other nodes through a network.
이와 관련해서, 'A'라는 메인넷에서 발행된 NFT를 'B'라는 메인넷으로 이전 발행한 후, 이 NFT를 거래할 수 있도록 한다면, 사용자들은 NFT 거래의 확장성을 보다 향상시킬 수 있을 것이다.In this regard, if the NFT issued on the mainnet called 'A' is transferred to the mainnet called 'B' and then this NFT can be traded, users will be able to further improve the scalability of NFT transactions. .
따라서, 블록체인들 간의 NFT 이전 발행 서비스를 제공할 수 있도록 지원하는 하는 시스템 기술에 대한 연구가 필요하다.Therefore, research is needed on system technology that supports providing NFT transfer issuance services between blockchains.
본 발명은 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 NFT 이전 발행 서비스를 통해, 사용자들이 보유하고 있는 NFT를 이전 발행하고, 이전 발행된 NFT를 다른 사용자들과 거래할 수 있도록 지원하고자 한다.The present invention proposes an NFT transfer issuance service server that provides an NFT (Non-Fungible Token) transfer issuance service between blockchains and an operation method, thereby transferring NFTs held by users through the NFT transfer issuance service. And we want to support trading previously issued NFTs with other users.
본 발명의 일실시예에 따른 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버는 상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자의 제1 사용자 단말로부터, 사전 설정된 제1 블록체인 네트워크에 등록된 제1 NFT - 상기 제1 NFT는 사전 설정된 클라우드 서버에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 상기 클라우드 서버 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 상기 제1 사용자의 제1 소유자 식별 정보가 포함되어 있음 - 에 대한 제1 NFT 식별 정보가 수신되면서, 상기 제1 블록체인 네트워크에서 사전 설정된 제2 블록체인 네트워크로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 소유자 검증부, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는 것으로 검증 완료되면, 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출하는 정보 추출부, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 NFT 비활성화 처리부, 상기 제1 NFT가 비활성화 처리되면, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성하는 대체 NFT 생성부 및 상기 제1 대체 NFT가 생성되면, 상기 제2 블록체인 네트워크에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한 후, 상기 제1 NFT가, 상기 제1 블록체인 네트워크에서 상기 제2 블록체인 네트워크로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 상기 제1 사용자 단말로 전송하는 이전 발행 완료 메시지 전송부를 포함한다.The NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance service between blockchains according to an embodiment of the present invention is a first one of a plurality of users subscribed to the NFT transfer issuance service. From the user's first user terminal, a first NFT registered in a preset first blockchain network - the first NFT is an NFT for the first content data stored in a preset cloud server, and the first NFT includes, Information about the first storage path on the cloud server where the first content data is stored, and the first owner identification information of the first user is included as the owner information of the first NFT - first NFT identification information for When received, when a transfer issuance request command for the first NFT from the first blockchain network to a preset second blockchain network is received, based on the first NFT identification information, the first blockchain network Owner verification to verify whether the owner of the first NFT is the first user by checking the owner information of the first NFT included in the first NFT by checking the first NFT registered in Part, when verification is completed that the owner of the first NFT is the first user, an information extraction unit for extracting information about the first storage path and the first owner identification information included in the first NFT, When the information about the first storage path and the first owner identification information are extracted, a first transaction containing destruction information indicating that the first NFT has been destroyed is created, and then the first transaction is sent to the first block An NFT deactivation processing unit that deactivates the first NFT by registering it in the chain network, and when the first NFT is deactivated, a first replacement NFT containing information about the first storage path and the first owner identification information When the replacement NFT generator and the first replacement NFT are created, the first replacement NFT is registered in the second blockchain network, thereby completing the issuance of the first replacement NFT, and then the first replacement NFT is generated. The NFT includes a transfer completion message transmission unit that generates a transfer completion message indicating that the transfer from the first blockchain network to the second blockchain network has been completed and transmits it to the first user terminal.
또한, 본 발명의 일실시예에 따른 블록체인들 간의 NFT 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 동작 방법은 상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자의 제1 사용자 단말로부터, 사전 설정된 제1 블록체인 네트워크에 등록된 제1 NFT - 상기 제1 NFT는 사전 설정된 클라우드 서버에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 상기 클라우드 서버 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 상기 제1 사용자의 제1 소유자 식별 정보가 포함되어 있음 - 에 대한 제1 NFT 식별 정보가 수신되면서, 상기 제1 블록체인 네트워크에서 사전 설정된 제2 블록체인 네트워크로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 단계, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는 것으로 검증 완료되면, 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출하는 단계, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 단계, 상기 제1 NFT가 비활성화 처리되면, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성하는 단계 및 상기 제1 대체 NFT가 생성되면, 상기 제2 블록체인 네트워크에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한 후, 상기 제1 NFT가, 상기 제1 블록체인 네트워크에서 상기 제2 블록체인 네트워크로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 상기 제1 사용자 단말로 전송하는 단계를 포함한다.In addition, the method of operating an NFT transfer issuance service server that provides an NFT transfer issuance service between blockchains according to an embodiment of the present invention involves a first user who is one of a plurality of users subscribed to the NFT transfer issuance service. From the first user terminal, a first NFT registered in a preset first blockchain network - the first NFT is an NFT for the first content data stored in a preset cloud server, and the first NFT includes the Information about the first storage path on the cloud server where the first content data is stored, and the first owner identification information of the first user is included as the owner information of the first NFT - the first NFT identification information for When received, a transfer issuance request command for the first NFT from the first blockchain network to a preset second blockchain network is received, based on the first NFT identification information, to the first blockchain network. Verifying whether the owner of the first NFT is the first user by checking the registered first NFT and checking the owner information of the first NFT included in the first NFT, the step of verifying whether the owner of the first NFT is the first user, When verification is completed that the owner of the first NFT is the first user, extracting information about the first storage path and the first owner identification information included in the first NFT, the first storage path When the information and the first owner identification information are extracted, a first transaction containing destruction information indicating that the first NFT has been destroyed is created, and then the first transaction is registered in the first blockchain network. By doing so, deactivating the first NFT, if the first NFT is deactivated, generating a first replacement NFT containing information about the first storage path and the first owner identification information, and the first 1 When a replacement NFT is created, by registering the first replacement NFT in the second blockchain network, after completing the issuance of the first replacement NFT, the first NFT is issued in the first blockchain network. It includes generating a transfer issuance completion message indicating completion of transfer to the second blockchain network and transmitting it to the first user terminal.
본 발명은 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 NFT 이전 발행 서비스를 통해, 사용자들이 보유하고 있는 NFT를 이전 발행하고, 이전 발행된 NFT를 다른 사용자들과 거래할 수 있도록 지원할 수 있다.The present invention proposes an NFT transfer issuance service server that provides an NFT (Non-Fungible Token) transfer issuance service between blockchains and an operation method, thereby transferring NFTs held by users through the NFT transfer issuance service. And it can support trading previously issued NFTs with other users.
도 1은 본 발명의 일실시예에 따른 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 블록체인들 간의 NFT 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 동작 방법을 도시한 순서도이다.Figure 1 is a diagram showing the structure of an NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance services between blockchains according to an embodiment of the present invention.
Figure 2 is a flowchart showing the operation method of the NFT transfer service server that provides NFT transfer issuance services between blockchains according to an embodiment of the present invention.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the attached drawings. This description is not intended to limit the present invention to specific embodiments, but should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention. In describing each drawing, similar reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, are within the scope of common knowledge in the technical field to which the present invention pertains. It has the same meaning as generally understood by those who have it.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.In this document, when a part "includes" a certain component, this means that it may further include other components rather than excluding other components, unless specifically stated to the contrary. Additionally, in various embodiments of the present invention, each component, functional block, or means may be composed of one or more subcomponents, and the electrical, electronic, and mechanical functions performed by each component may be electronic. It may be implemented with various known elements or mechanical elements such as circuits, integrated circuits, and ASICs (Application Specific Integrated Circuits), and may be implemented separately or by integrating two or more into one.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.Meanwhile, the blocks in the attached block diagram or the steps in the flow chart are computer program instructions that are mounted on the processor or memory of equipment capable of data processing, such as general-purpose computers, special-purpose computers, portable laptop computers, and network computers, and perform designated functions. It can be interpreted to mean. Because these computer program instructions can be stored in a memory provided in a computer device or in a computer-readable memory, the functions described in the blocks of a block diagram or the steps of a flow diagram can be produced as a manufactured product containing instruction means to perform them. It could be. In addition, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). Additionally, it should be noted that in some alternative embodiments, it is possible for functions mentioned in blocks or steps to be executed in a different order. For example, two blocks or steps shown in succession may be performed substantially simultaneously or in reverse order, and in some cases, some blocks or steps may be omitted.
도 1은 본 발명의 일실시예에 따른 블록체인들 간의 NFT(Non-Fungible Token) 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 구조를 도시한 도면이다.Figure 1 is a diagram showing the structure of an NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance services between blockchains according to an embodiment of the present invention.
도 1을 참조하면, 본 발명에 따른 NFT 이전 발행 서비스 서버(110)는 소유자 검증부(111), 정보 추출부(112), NFT 비활성화 처리부(113), 대체 NFT 생성부(114) 및 이전 발행 완료 메시지 전송부(115)를 포함한다.Referring to Figure 1, the NFT previous
소유자 검증부(111)는 상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자(150)의 제1 사용자 단말(155)로부터, 사전 설정된 제1 블록체인 네트워크(10)에 등록된 제1 NFT에 대한 제1 NFT 식별 정보가 수신되면서, 제1 블록체인 네트워크(10)에서 사전 설정된 제2 블록체인 네트워크(20)로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 제1 블록체인 네트워크(10)에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 제1 사용자(150)가 맞는지 여부를 검증한다.The
여기서, 상기 제1 NFT는 사전 설정된 클라우드 서버(140)에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 클라우드 서버(140) 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 제1 사용자(150)의 제1 소유자 식별 정보가 포함되어 있다. 여기서, 콘텐츠 데이터란, 이미지, 음악, 영상, 문서 등의 콘텐츠에 대한 데이터를 의미하고, 저장 경로란, 데이터가 저장된 클라우드 서버(140) 상의 URI(Uniform Resource Identifier)를 의미하며, 소유자 식별 정보란, 각 소유자에 대해 사전 발급된 ID, 주민등록번호 등과 같은 각 소유자를 식별하기 위한 고유 정보를 의미한다.Here, the first NFT is an NFT for first content data stored in a
이때, 본 발명의 일실시예에 따르면, 소유자 검증부(111)는 상기 제1 NFT의 소유자가 제1 사용자(150)가 맞는지 여부를 검증하기 위한 구체적인 구성으로, 공개키 저장부(116), 전자 서명 요청부(117), 데이터 추출부(118) 및 검증 처리부(119)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the
공개키 저장부(116)에는 상기 복수의 사용자들 각각에 대해 사전 발급된 개인키(상기 개인키는, 상기 복수의 사용자들 각각의 사용자 단말에 사전 저장되어 있음)에 대응되는 공개키가 저장되어 있다.The public
예컨대, 공개키 저장부(116)에는 하기의 표 1과 같이, 상기 복수의 사용자들 각각에 대해 사전 발급된 개인키에 대응되는 공개키가 저장되어 있을 수 있다.For example, the public
사전 발급된 개인키Pre-issued private key
전자 서명 요청부(117)는 제1 사용자 단말(155)로부터, 상기 제1 NFT 식별 정보가 수신되면서, 상기 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보에 대한 데이터를, 공개키 저장부(116)에 저장되어 있는 제1 사용자(150)에 대해 사전 발급된 제1 개인키에 대응되는 제1 공개키로 암호화함으로써, 제1 암호화 데이터를 생성한 후, 제1 사용자 단말(155)로, 상기 제1 암호화 데이터를 전송하면서, 상기 제1 암호화 데이터를 기초로 전자 서명 값을 생성하여 전송할 것을 요청한다.When the first NFT identification information is received from the
데이터 추출부(118)는 상기 전자 서명 값의 전송 요청에 대응하여, 제1 사용자 단말(155)로부터, 제1 전자 서명 값(상기 제1 전자 서명 값은, 제1 사용자 단말(155)이 상기 제1 암호화 데이터를, 제1 사용자 단말(155)에 저장되어 있는 상기 제1 개인키로 복호화하여 상기 제1 NFT 식별 정보에 대한 데이터를 복원하고, 복원된 상기 제1 NFT 식별 정보에 대한 데이터와 상기 제1 소유자 식별 정보에 대한 데이터를 연접(Concatenation)하여 연접 데이터를 생성한 후, 상기 연접 데이터를 상기 제1 개인키로 암호화함으로써 생성한 전자 서명 값임)이 수신되면, 상기 제1 전자 서명 값을 상기 제1 공개키로 복호화함으로써, 상기 연접 데이터를 복원한 후, 복원된 상기 연접 데이터에서 상기 제1 NFT 식별정보에 대한 데이터를 제거함으로써, 상기 제1 소유자 식별 정보에 대한 데이터를 추출한다.In response to a request to transmit the electronic signature value, the
검증 처리부(119)는 상기 제1 소유자 식별 정보에 대한 데이터가 추출되면, 상기 제1 NFT 식별 정보를 기초로, 제1 블록체인 네트워크(10)에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는지 여부를 확인함으로써, 상기 제1 NFT의 소유자가 제1 사용자(150)가 맞는지 여부를 검증한다.When data on the first owner identification information is extracted, the
이하에서는, 전자 서명 요청부(117), 데이터 추출부(118) 및 검증 처리부(119)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, the operations of the electronic
먼저, 상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 '사용자 1(150)'의 제1 사용자 단말(155)로부터 NFT 이전 발행 서비스 서버(110)에, 사전 설정된 제1 블록체인 네트워크(10)에 등록된 제1 NFT에 대한 제1 NFT 식별 정보가 수신되면서, 제1 블록체인 네트워크(10)에서 사전 설정된 제2 블록체인 네트워크(20)로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되었다고 가정하자.First, a preset first block is sent from the
그러면, 전자 서명 요청부(117)는 상기 제1 NFT 식별 정보에 대한 데이터를, 상기 표 1과 같은 공개키 저장부(116)에 저장되어 있는 '사용자 1(150)'에 대해 사전 발급된 '개인키 1'에 대응되는 '공개키 1'로 암호화함으로써, 제1 암호화 데이터를 생성할 수 있다.Then, the electronic
그러고 나서, 전자 서명 요청부(117)는 제1 사용자 단말(155)로, 상기 제1 암호화 데이터를 전송하면서, 상기 제1 암호화 데이터를 기초로 전자 서명 값을 생성하여 전송할 것을 요청할 수 있다.Then, the electronic
이때, 제1 사용자 단말(155)에는 '사용자 1(150)'에 대해 사전 발급된 '개인키 1'이 저장되어 있을 수 있고, NFT 이전 발행 서비스 서버(110)로부터 제1 사용자 단말(155)에, 상기 제1 암호화 데이터와 상기 전자 서명 값의 전송 요청이 수신되면, 제1 사용자 단말(155)은 상기 제1 암호화 데이터를, '개인키 1'로 복호화하여 상기 제1 NFT 식별 정보에 대한 데이터를 복원할 수 있다. 그러고 나서, 제1 사용자 단말(155)은 복원된 상기 제1 NFT 식별 정보에 대한 데이터와 상기 제1 소유자 식별 정보에 대한 데이터를 연접하여 연접 데이터를 생성한 후, 상기 연접 데이터를 '개인키 1'로 암호화함으로써, 제1 전자 서명 값을 생성하여, 상기 제1 전자 서명 값을 NFT 이전 발행 서비스 서버(110)로 전송할 수 있다.At this time, the
이로 인해, 제1 사용자 단말(155)로부터 NFT 이전 발행 서비스 서버(110)에, 상기 제1 전자 서명 값이 수신되었다고 하는 경우, 상기 제1 전자 서명 값은 상기 연접 데이터가 '개인키 1'로 암호화되어 생성된 전자 서명 값이고, '개인키 1'에 대응되는 공개키는 '공개키 1'이므로, 데이터 추출부(118)는 상기 제1 전자 서명 값을 '공개키 1'로 복호화함으로써, 상기 연접 데이터를 복원할 수 있다.For this reason, when it is said that the first electronic signature value has been received from the
그러고 나서, 데이터 추출부(118)는 복원된 상기 연접 데이터에서, 상기 제1 NFT 식별정보에 대한 데이터를 제거함으로써, 상기 제1 소유자 식별 정보에 대한 데이터를 추출할 수 있다.Then, the
이렇게, 데이터 추출부(118)에 의해 상기 제1 소유자 식별 정보에 대한 데이터가 추출되면, 검증 처리부(119)는 상기 제1 NFT 식별 정보를 기초로, 제1 블록체인 네트워크(10)에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는지 여부를 확인할 수 있다.In this way, when the data for the first owner identification information is extracted by the
이때, 상기 제1 NFT에는 상기 제1 NFT의 소유자 정보로 상기 제1 소유자 식별 정보가 포함되어 있으므로, 검증 처리부(119)는 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는 것으로 확인함으로써, 상기 제1 NFT의 소유자가 '사용자 1(150)'이 맞는 것으로 검증할 수 있다.At this time, since the first NFT includes the first owner identification information as the owner information of the first NFT, the
이렇게, 소유자 검증부(111)에 의해 상기 제1 NFT의 소유자가 제1 사용자(150)가 맞는 것으로 검증 완료되면, 정보 추출부(112)는 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출한다.In this way, when verification is completed by the
이렇게, 정보 추출부(112)에 의해 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, NFT 비활성화 처리부(113)는 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 제1 블록체인 네트워크(10)에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리한다.In this way, when the information about the first storage path and the first owner identification information are extracted by the
이와 관련해서, 본 발명의 일실시예에 따르면, NFT 비활성화 처리부(113)는 상기 제1 트랜잭션을 제1 블록체인 네트워크(10)에 등록 처리하기 위해, 상기 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 제1 블록체인 네트워크(10)에 전파할 수 있다. 그러면, 제1 블록체인 네트워크(10)를 구성하고 있는 복수의 제1 노드들(11, 12, 13, 14, 15, 16) 중 어느 하나의 노드가 상기 제1 트랜잭션이 포함된 블록을 생성하여, 복수의 제1 노드들(11, 12, 13, 14, 15, 16)로 전파할 수 있다. 이에 따라, 복수의 제1 노드들(11, 12, 13, 14, 15, 16)에 상기 블록이 수신되면, 복수의 제1 노드들(11, 12, 13, 14, 15, 16)은 수신된 블록 상의 상기 제1 트랜잭션을 기초로, 각 노드에 저장되어 있는 블록체인 데이터 상에 포함되어 있는 상기 제1 NFT를 비활성화 처리함으로써, 제1 블록체인 네트워크(10) 상에서 상기 제1 NFT가 더 이상 존재하지 않도록 소각 처리할 수 있다.In this regard, according to one embodiment of the present invention, the NFT
이렇게, NFT 비활성화 처리부(113)에 의해 상기 제1 NFT가 비활성화 처리되면, 대체 NFT 생성부(114)는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성한다.In this way, when the first NFT is deactivated by the NFT
이렇게, 대체 NFT 생성부(114)에 의해 상기 제1 대체 NFT가 생성되면, 이전 발행 완료 메시지 전송부(115)는 제2 블록체인 네트워크(20)에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한다.In this way, when the first replacement NFT is generated by the replacement
이때, 본 발명의 일실시예에 따르면, 이전 발행 완료 메시지 전송부(115)는 제2 블록체인 네트워크(20)에 상기 제1 대체 NFT를 등록 처리하기 위해, 상기 제1 대체 NFT가 포함된 트랜잭션을 생성한 후, 상기 트랜잭션을 제2 블록체인 네트워크(20)에 전파할 수 있다. 그러면, 제2 블록체인 네트워크(20)를 구성하고 있는 복수의 제2 노드들(21, 22, 23, 24, 25, 26) 중 어느 하나의 노드가 상기 트랜잭션이 포함된 블록을 생성하여, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)로 전파할 수 있다. 이에 따라, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)에 상기 블록이 수신되면, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)은 각 노드에 저장되어 있는 블록체인 데이터에 체인으로 연결된 이전 블록을 기초로, 상기 블록을 상기 블록체인 데이터에 체인으로 연결함으로써, 상기 제1 대체 NFT를 서로 공유할 수 있게 된다.At this time, according to one embodiment of the present invention, the previous issuance completion
이렇게, 상기 제1 대체 NFT에 대한 발행이 완료되면, 이전 발행 완료 메시지 전송부(115)는 상기 제1 NFT가, 제1 블록체인 네트워크(10)에서 제2 블록체인 네트워크(20)로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 제1 사용자 단말(155)로 전송한다.In this way, when the issuance of the first alternative NFT is completed, the previous issuance completion
본 발명의 일실시예에 따르면, NFT 비활성화 처리부(113)는 상기 제1 NFT의 대체 발행을 위해 상기 제1 NFT를 비활성화 처리하기 전에, 클라우드 서버(140) 상에 상기 제1 NFT에 대한 원본 콘텐츠 데이터인 상기 제1 콘텐츠 데이터가 정상적으로 존재하고 있는지 여부를 확인하기 위한 구성을 더 포함할 수 있다. 이와 관련해서, NFT 비활성화 처리부(113)는 콘텐츠 데이터 수신부(120), 확인 요청부(121) 및 비활성화 처리부(122)를 포함할 수 있다.According to one embodiment of the present invention, the NFT
콘텐츠 데이터 수신부(120)는 정보 추출부(112)를 통해, 상기 제1 NFT로부터 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 클라우드 서버(140)에 접속하여, 상기 제1 저장 경로에 대한 정보를 기초로, 클라우드 서버(140)로부터 상기 제1 저장 경로 상에 저장되어 있는 상기 제1 콘텐츠 데이터를 수신한다.When the information about the first storage path and the first owner identification information are extracted from the first NFT through the
확인 요청부(121)는 상기 제1 콘텐츠 데이터가 수신되면, 제1 사용자 단말(155)로, 상기 제1 콘텐츠 데이터를 전송하면서, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는지 여부를 확인할 것을 지시하는 확인 요청 메시지를 전송한다.When the first content data is received, the
이때, 본 발명의 일실시예에 따르면, 확인 요청부(121)는 상기 제1 콘텐츠 데이터를 제1 사용자 단말(155)로 전송할 때, 상기 제1 콘텐츠 데이터가 다른 사용자에게 노출되는 것을 방지하기 위해서, 상기 제1 콘텐츠 데이터를 암호화하여 제1 사용자 단말(155)로 전송할 수 있다.At this time, according to one embodiment of the present invention, when transmitting the first content data to the
이와 관련해서, 본 발명의 일실시예에 따르면, 확인 요청부(121)는 상기 제1 콘텐츠 데이터를 암호화하여 제1 사용자 단말(155)로 전송하기 위한 구체적인 구성으로, 일련번호 테이블 유지부(123), 암호화 이벤트 발생부(124), 일련번호 추출부(125), 일련번호 분할부(126), 연산 코드 생성부(127), 해시 값 생성부(128) 및 전송부(129)를 포함할 수 있다.In this regard, according to one embodiment of the present invention, the
일련번호 테이블 유지부(123)는 상기 복수의 사용자들 각각의 사용자 단말과 사전 공유하고 있는, 사전 설정된 복수의 콘텐츠 데이터의 유형들 각각에 대응되는 서로 다른 2n(n은 2 이상의 자연수임)자릿수의 일련번호가 기록된 일련번호 테이블을 저장하여 유지한다.The serial number
예컨대, n을 '4'라고 하는 경우, 일련번호 테이블 유지부(123)는 하기의 표 2와 같은 일련번호 테이블을 저장하여 유지하고 있을 수 있다.For example, when n is '4', the serial number
암호화 이벤트 발생부(124)는 클라우드 서버(140)로부터 상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 콘텐츠 데이터를 암호화하기 위한 암호화 이벤트를 발생시킨다.When the first content data is received from the
일련번호 추출부(125)는 상기 암호화 이벤트가 발생되면, 상기 제1 콘텐츠 데이터의 유형을 확인하고, 상기 제1 콘텐츠 데이터의 유형이 제1 유형으로 확인되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 제1 일련번호를 추출한다.When the encryption event occurs, the
일련번호 분할부(126)는 상기 제1 일련번호가 추출되면, 상기 제1 일련번호를, 상기 제1 일련번호의 중심축을 기준으로, 좌측의 n자릿수의 제1 부분 일련번호와 우측의 n자릿수의 제2 부분 일련번호로 분할한다.When the first serial number is extracted, the serial
연산 코드 생성부(127)는 상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2(Modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제2 연산 코드를 생성한다.When the first serial number is divided into the first partial serial number and the second partial serial number based on the central axis, the
여기서, 모듈로-2 연산은 피제수를 2로 나누는 나눗셈을 수행하여, 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo-2 operation refers to an operation that performs division by dividing the dividend by 2 and calculates the remainder.
해시 값 생성부(128)는 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합(XOR) 연산을 수행함으로써, n비트의 시드(Seed) 코드를 생성한 후, 상기 시드 코드를 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한다.The
전송부(129)는 상기 제1 해시 값이 생성되면, 상기 제1 콘텐츠 데이터를, 상기 제1 해시 값으로 암호화함으로써, 제2 암호화 데이터를 생성한 후, 제1 사용자 단말(155)로, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수를 전송한다.When the first hash value is generated, the
이하에서는, 암호화 이벤트 발생부(124), 일련번호 추출부(125), 일련번호 분할부(126), 연산 코드 생성부(127), 해시 값 생성부(128) 및 전송부(129)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, the operations of the encryption
먼저, 클라우드 서버(140)로부터 NFT 이전 발행 서비스 서버(110)에, 상기 제1 콘텐츠 데이터가 수신되었다고 하는 경우, 암호화 이벤트 발생부(124)는 상기 제1 콘텐츠 데이터를 암호화하기 위한 암호화 이벤트를 발생시킬 수 있다.First, when the first content data is received from the
이렇게, 암호화 이벤트 발생부(124)에 의해 상기 암호화 이벤트가 발생되면, 일련번호 추출부(125)는 상기 제1 콘텐츠 데이터의 유형을 확인할 수 있다.In this way, when the encryption event is generated by the
이때, 일련번호 추출부(125)에 의해 상기 제1 콘텐츠 데이터의 유형이 '이미지'와 같은 제1 유형으로 확인되었다고 하는 경우, 일련번호 추출부(125)는 상기 표 2와 같은 일련번호 테이블로부터, 상기 제1 유형인 '이미지'에 대응되는 일련번호인 '12305429'를, 제1 일련번호로 추출할 수 있다.At this time, if the type of the first content data is confirmed to be a first type such as 'image' by the
이렇게, 일련번호 추출부(125)에 의해 상기 제1 일련번호가 추출되면, 일련번호 분할부(126)는 상기 제1 일련번호인 '12305429'를, 상기 제1 일련번호의 중심축을 기준으로, 좌측의 4자릿수의 제1 부분 일련번호인 '1230'과 우측의 4자릿수의 제2 부분 일련번호인 '5429'로 분할할 수 있다.In this way, when the first serial number is extracted by the serial
이렇게, 일련번호 분할부(126)에 의해 상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 연산 코드 생성부(127)는 상기 제1 부분 일련번호인 '1230'을 구성하는 4개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 4비트의 제1 연산 코드를 '1010'과 같이 생성할 수 있고, 상기 제2 부분 일련번호인 '5429'를 구성하는 4개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 4비트의 제2 연산 코드를 '1001'과 같이 생성할 수 있다.In this way, when the first serial number is divided into the first partial serial number and the second partial serial number based on the central axis by the serial
그러고 나서, 해시 값 생성부(128)는 상기 제1 연산 코드인 '1010'과 상기 제2 연산 코드인 '1001' 간의 배타적 논리합 연산을 수행함으로써, 4비트의 시드 코드를 '0011'과 같이 생성할 수 있다.Then, the
그 이후, 해시 값 생성부(128)는 상기 시드 코드인 '0011'을 사전 설정된 해시 함수에 입력으로 인가하여 '26d103c620a31345ag57qat327891703'과 같은 제1 해시 값을 생성할 수 있다.Afterwards, the
이렇게, 해시 값 생성부(128)에 의해 상기 제1 해시 값이 생성되면, 전송부(129)는 상기 제1 콘텐츠 데이터를, 상기 제1 해시 값인 '26d103c620a31345ag57qat327891703'으로 암호화함으로써, 제2 암호화 데이터를 생성할 수 있다.In this way, when the first hash value is generated by the
그러고 나서, 전송부(129)는 제1 사용자 단말(155)로, 상기 제2 암호화 데이터와 상기 제1 유형인 '이미지'에 대한 정보 및 상기 해시 함수를 전송할 수 있다.Then, the
이때, 본 발명의 일실시예에 따르면, 제1 사용자 단말(155)은 메모리 상에 상기 일련번호 테이블을 저장하고 있고, NFT 이전 발행 서비스 서버(110)로부터, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수가 수신되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 상기 제1 일련번호를 추출한 후, 상기 제1 일련번호를, 상기 중심축을 기준으로, 좌측의 n자릿수의 상기 제1 부분 일련번호와 우측의 n자릿수의 상기 제2 부분 일련번호로 분할하고, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제2 연산 코드를 생성한 후, 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합 연산을 수행함으로써, 상기 시드 코드를 생성하고, 상기 시드 코드를 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제2 암호화 데이터를, 상기 제1 해시 값으로 복호화함으로써, 상기 제1 콘텐츠 데이터를 복원할 수 있다.At this time, according to an embodiment of the present invention, the
이하에서는, 제1 사용자 단말(155)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, the operation of the
먼저, 전술한 예와 같이, n을 '4'라고 하고, 제1 사용자 단말(155)의 메모리 상에는, NFT 이전 발행 서비스 서버(110)와 사전 공유하고 있는 상기 표 2와 같은 일련번호 테이블이 사전 저장되어 있다고 가정하자. 또한, 전술한 예와 같이, 전송부(129)가 제1 사용자 단말(155)로, 상기 제2 암호화 데이터와 상기 제1 유형인 '이미지'에 대한 정보 및 상기 해시 함수를 전송함에 따라, NFT 이전 발행 서비스 서버(110)로부터 제1 사용자 단말(155)에, 상기 제2 암호화 데이터와 상기 제1 유형인 '이미지'에 대한 정보 및 상기 해시 함수가 수신되었다고 가정하자.First, as in the above-described example, n is set to '4', and on the memory of the
그러면, 제1 사용자 단말(155)은 상기 표 2와 같은 일련번호 테이블로부터, 상기 제1 유형인 '이미지'에 대응되는 일련번호인 '12305429'를, 상기 제1 일련번호로 추출할 수 있다.Then, the
이렇게, 제1 사용자 단말(155)에 의해 상기 제1 일련번호가 추출되면, 제1 사용자 단말(155)은 상기 제1 일련번호인 '12305429'를, 상기 중심축을 기준으로, 좌측의 4자릿수의 상기 제1 부분 일련번호인 '1230'과 우측의 4자릿수의 상기 제2 부분 일련번호인 '5429'로 분할할 수 있다.In this way, when the first serial number is extracted by the
이렇게, 제1 사용자 단말(155)에 의해 상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 제1 사용자 단말(155)은 상기 제1 부분 일련번호인 '1230'을 구성하는 4개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 4비트의 상기 제1 연산 코드를 '1010'과 같이 생성할 수 있고, 상기 제2 부분 일련번호인 '5429'를 구성하는 4개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 4비트의 상기 제2 연산 코드를 '1001'과 같이 생성할 수 있다.In this way, when the first serial number is divided by the
그러고 나서, 제1 사용자 단말(155)은 상기 제1 연산 코드인 '1010'과 상기 제2 연산 코드인 '1001' 간의 배타적 논리합 연산을 수행함으로써, 상기 시드 코드를 '0011'과 같이 생성할 수 있다.Then, the
그 이후, 제1 사용자 단말(155)은 상기 시드 코드인 '0011'을 상기 해시 함수에 입력으로 인가하여 '26d103c620a31345ag57qat327891703'과 같은 상기 제1 해시 값을 생성할 수 있다.Afterwards, the
이렇게, 제1 사용자 단말(155)에 의해 상기 제1 해시 값이 생성되면, 제1 사용자 단말(155)은 상기 제2 암호화 데이터를, 상기 제1 해시 값인 '26d103c620a31345ag57qat327891703'으로 복호화함으로써, 상기 제1 콘텐츠 데이터를 복원할 수 있다.In this way, when the first hash value is generated by the
이렇게, 제1 사용자 단말(155)에 의해 상기 제1 콘텐츠 데이터가 복원되면, 제1 사용자(150)는 제1 사용자 단말(155)을 통해 상기 제1 콘텐츠 데이터를 확인함으로써, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는지 여부를 확인할 수 있다.In this way, when the first content data is restored by the
만약, 제1 사용자(150)에 의해 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는 것으로 확인되는 경우, 제1 사용자(150)는 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는 것으로 확인되었음을 지시하는 피드백 메시지를 생성하여 NFT 이전 발행 서비스 서버(110)로 전송할 것을 요청하는 명령을 제1 사용자 단말(155)에 인가할 수 있다.If the first content data is confirmed by the
이때, 제1 사용자 단말(155)은, 제1 사용자(150)에 의해 상기 피드백 메시지를 생성하여 NFT 이전 발행 서비스 서버(110)로 전송할 것을 요청하는 명령이 인가되면, 상기 피드백 메시지를 생성하여 NFT 이전 발행 서비스 서버(110)로 전송할 수 있다.At this time, when a command requesting to generate the feedback message and transmit it to the NFT
이렇게, 제1 사용자 단말(155)로부터, 상기 피드백 메시지가 NFT 이전 발행 서비스 서버(110)에 수신되면, 비활성화 처리부(122)는 상기 소멸 정보가 포함된 상기 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 제1 블록체인 네트워크(10)에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리할 수 있다.In this way, when the feedback message is received from the
본 발명의 일실시예에 따르면, NFT 이전 발행 서비스 서버(110)는 판매 금액 요청부(130), 판매 등록 처리부(131), 결제 수단 요청부(133), 결제 처리부(134) 및 거래 등록 처리부(135)를 더 포함할 수 있다.According to one embodiment of the present invention, the NFT
판매 금액 요청부(130)는 상기 이전 발행 완료 메시지가 생성되어 제1 사용자 단말(155)로 전송된 이후, 제1 사용자 단말(155)로부터, 상기 제1 대체 NFT에 대한 판매 정보를 판매 정보 데이터베이스(132)에 등록할 것을 요청하는 판매 등록 요청 명령이 수신되면, 제1 사용자 단말(155)로, 상기 제1 대체 NFT의 판매를 위한 판매 금액 정보를 전송할 것을 요청한다.After the previous issuance completion message is generated and transmitted to the
판매 등록 처리부(131)는 제1 사용자 단말(155)로부터, 상기 제1 대체 NFT의 판매 금액 정보로, 제1 판매 금액 정보가 수신되면, 판매 정보 데이터베이스(132)에 상기 제1 대체 NFT에 대한 상기 제1 판매 금액 정보를 저장함으로써, 상기 제1 대체 NFT에 대한 판매 등록을 처리한다.The sales
결제 수단 요청부(133)는 상기 제1 대체 NFT에 대한 판매 등록이 처리된 이후, 상기 복수의 사용자들 중 어느 한 명인 제2 사용자(160)의 제2 사용자 단말(165)로부터, 상기 제1 대체 NFT에 대한 구매 요청 명령이 수신되면, 제2 사용자 단말(165)로, 대금 결제를 위한 결제 수단 정보를 전송할 것을 요청한다.After the sales registration for the first alternative NFT is processed, the payment
결제 처리부(134)는 제2 사용자 단말(165)로부터, 제1 결제 수단 정보가 수신되면, 상기 제1 결제 수단 정보를 기초로, 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리를 진행한다.When first payment method information is received from the
이하에서는, 판매 금액 요청부(130), 판매 등록 처리부(131), 결제 수단 요청부(133) 및 결제 처리부(134)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, the operations of the sales
먼저, 전술한 예와 같이, 이전 발행 완료 메시지 전송부(115)에 의해, 상기 제1 NFT가, 제1 블록체인 네트워크(10)에서 제2 블록체인 네트워크(20)로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지가 생성되어 제1 사용자 단말(155)로 전송되었다고 하고, 그 이후, 제1 사용자 단말(155)로부터 NFT 이전 발행 서비스 서버(110)에, 상기 제1 대체 NFT에 대한 판매 정보를 판매 정보 데이터베이스(132)에 등록할 것을 요청하는 판매 등록 요청 명령이 수신되었다고 가정하자.First, as in the above-described example, the first NFT indicates that the transfer has been completed from the first blockchain network 10 to the second blockchain network 20 by the previous issuance completion
그러면, 판매 금액 요청부(130)는 제1 사용자 단말(155)로, 상기 제1 대체 NFT의 판매를 위한 판매 금액 정보를 전송할 것을 요청할 수 있다.Then, the sales
이에 대응하여, 제1 사용자 단말(155)로부터 NFT 이전 발행 서비스 서버(110)에, 상기 제1 대체 NFT의 판매 금액 정보로, 제1 판매 금액 정보인 '100,000원'이 수신되었다고 하는 경우, 판매 등록 처리부(131)는 판매 정보 데이터베이스(132)에 상기 제1 NFT에 대한 상기 제1 판매 금액 정보인 '100,000원'을 저장함으로써, 상기 제1 NFT에 대한 판매 등록을 처리할 수 있다.In response to this, when it is said that '100,000 won', which is the first sales amount information, is received from the
이렇게, 판매 등록 처리부(131)에 의해 상기 제1 대체 NFT에 대한 판매 등록이 처리된 이후, 상기 복수의 사용자들 중 어느 한 명인 '사용자 2(160)'의 제2 사용자 단말(165)로부터, 상기 제1 대체 NFT에 대한 구매 요청 명령이 수신되었다고 가정하자.In this way, after the sales registration for the first alternative NFT is processed by the sales
그러면, 결제 수단 요청부(133)는 제2 사용자 단말(165)로, 대금 결제를 위한 결제 수단 정보를 전송할 것을 요청할 수 있다.Then, the payment
이에 대응하여, 제2 사용자 단말(165)로부터 NFT 이전 발행 서비스 서버(110)에, '신용카드 정보'가 수신되었다고 하는 경우, 결제 처리부(134)는 '신용카드 정보'를 기초로, 상기 제1 판매 금액 정보에 따른 금액인 '100,000원'에 대한 대금 결제 처리를 진행할 수 있다.In response to this, when it is said that 'credit card information' is received from the
이렇게, 결제 처리부(134)에 의해 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리가 완료되면, 거래 등록 처리부(135)는 제2 사용자 단말(165)로부터, 제2 사용자(160)의 소유자 식별 정보인 제2 소유자 식별 정보를 수신한 후, 상기 제1 대체 NFT에 포함되어 있는 상기 제1 소유자 식별 정보를 상기 제2 소유자 식별 정보로 변경할 것을 지시하는 소유권 이전 정보가 포함된 제2 트랜잭션을 생성한다.In this way, when payment processing for the amount according to the first sales price information is completed by the
그러고 나서, 거래 등록 처리부(135)는 상기 제2 트랜잭션을 제2 블록체인 네트워크(20)에 등록 처리함으로써, 제2 블록체인 네트워크(20)에 등록되어 있는 상기 제1 대체 NFT에 포함된 상기 제1 소유자 식별 정보가, 상기 제2 소유자 식별 정보로 변경되도록 처리한다.Then, the transaction
이때, 본 발명의 일실시예에 따르면, 거래 등록 처리부(135)는 상기 제2 트랜잭션을 제2 블록체인 네트워크(20)에 등록 처리하기 위해, 상기 제2 트랜잭션을 제2 블록체인 네트워크(20)에 전파할 수 있다. 그러면, 제2 블록체인 네트워크(20)를 구성하고 있는 복수의 제2 노드들(21, 22, 23, 24, 25, 26) 중 어느 하나의 노드가 상기 제2 트랜잭션이 포함된 블록을 생성하여, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)로 전파할 수 있다. 이에 따라, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)에 상기 블록이 수신되면, 복수의 제2 노드들(21, 22, 23, 24, 25, 26)은 수신된 블록 상의 상기 제2 트랜잭션을 기초로, 각 노드에 저장되어 있는 블록체인 데이터 상에 포함되어 있는 상기 제1 대체 NFT에 포함된 상기 제1 소유자 식별 정보를, 상기 제2 소유자 식별 정보로 변경할 수 있다.At this time, according to an embodiment of the present invention, the transaction
도 2는 본 발명의 일실시예에 따른 블록체인들 간의 NFT 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 동작 방법을 도시한 순서도이다.Figure 2 is a flowchart showing the operation method of the NFT transfer service server that provides NFT transfer issuance services between blockchains according to an embodiment of the present invention.
단계(S210)에서는 상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자의 제1 사용자 단말로부터, 사전 설정된 제1 블록체인 네트워크에 등록된 제1 NFT(상기 제1 NFT는 사전 설정된 클라우드 서버에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 상기 클라우드 서버 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 상기 제1 사용자의 제1 소유자 식별 정보가 포함되어 있음)에 대한 제1 NFT 식별 정보가 수신되면서, 상기 제1 블록체인 네트워크에서 사전 설정된 제2 블록체인 네트워크로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증한다.In step S210, a first NFT (the first NFT) registered in a preset first blockchain network is received from the first user terminal of a first user who is one of a plurality of users subscribed to the NFT previous issuance service. is an NFT for first content data stored in a preset cloud server, and the first NFT includes information about a first storage path on the cloud server where the first content data is stored, and the owner of the first NFT As the first NFT identification information (including the first owner identification information of the first user) is received, the first NFT for the first NFT is transferred from the first blockchain network to a preset second blockchain network. When a previous issuance request command is received, based on the first NFT identification information, the first NFT registered in the first blockchain network is searched, and the owner of the first NFT included in the first NFT is identified. By checking the information, it is verified whether the owner of the first NFT is the first user.
단계(S220)에서는 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는 것으로 검증 완료되면, 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출한다.In step S220, when verification is completed that the owner of the first NFT is the first user, information about the first storage path and the first owner identification information included in the first NFT are extracted.
단계(S230)에서는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리한다.In step S230, when the information about the first storage path and the first owner identification information are extracted, a first transaction containing extinction information indicating that the first NFT has been destroyed is generated, and then the first transaction By registering with the first blockchain network, the first NFT is deactivated.
단계(S240)에서는 상기 제1 NFT가 비활성화 처리되면, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성한다.In step S240, when the first NFT is deactivated, a first replacement NFT containing information about the first storage path and the first owner identification information is generated.
단계(S250)에서는 상기 제1 대체 NFT가 생성되면, 상기 제2 블록체인 네트워크에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한 후, 상기 제1 NFT가, 상기 제1 블록체인 네트워크에서 상기 제2 블록체인 네트워크로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 상기 제1 사용자 단말로 전송한다.In step S250, when the first replacement NFT is created, after completing the issuance of the first replacement NFT by registering the first replacement NFT in the second blockchain network, the first NFT is, A transfer issuance completion message indicating that the transfer from the first blockchain network to the second blockchain network has been completed is generated and transmitted to the first user terminal.
이때, 본 발명의 일실시예에 따르면, 단계(S210)에서는 상기 복수의 사용자들 각각에 대해 사전 발급된 개인키(상기 개인키는, 상기 복수의 사용자들 각각의 사용자 단말에 사전 저장되어 있음)에 대응되는 공개키가 저장되어 있는 공개키 저장부를 유지하는 단계, 상기 제1 사용자 단말로부터, 상기 제1 NFT 식별 정보가 수신되면서, 상기 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보에 대한 데이터를, 상기 공개키 저장부에 저장되어 있는 상기 제1 사용자에 대해 사전 발급된 제1 개인키에 대응되는 제1 공개키로 암호화함으로써, 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제1 암호화 데이터를 기초로 전자 서명 값을 생성하여 전송할 것을 요청하는 단계, 상기 전자 서명 값의 전송 요청에 대응하여, 상기 제1 사용자 단말로부터, 제1 전자 서명 값(상기 제1 전자 서명 값은, 상기 제1 사용자 단말이 상기 제1 암호화 데이터를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 개인키로 복호화하여 상기 제1 NFT 식별 정보에 대한 데이터를 복원하고, 복원된 상기 제1 NFT 식별 정보에 대한 데이터와 상기 제1 소유자 식별 정보에 대한 데이터를 연접하여 연접 데이터를 생성한 후, 상기 연접 데이터를 상기 제1 개인키로 암호화함으로써 생성한 전자 서명 값임)이 수신되면, 상기 제1 전자 서명 값을 상기 제1 공개키로 복호화함으로써, 상기 연접 데이터를 복원한 후, 복원된 상기 연접 데이터에서 상기 제1 NFT 식별정보에 대한 데이터를 제거함으로써, 상기 제1 소유자 식별 정보에 대한 데이터를 추출하는 단계 및 상기 제1 소유자 식별 정보에 대한 데이터가 추출되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는지 여부를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 단계를 포함할 수 있다.At this time, according to one embodiment of the present invention, in step S210, a private key is pre-issued for each of the plurality of users (the private key is pre-stored in the user terminal of each of the plurality of users). Maintaining a public key storage unit in which the public key corresponding to is stored, when the first NFT identification information is received from the first user terminal and the previous issuance request command is received, the first NFT identification information After generating first encrypted data by encrypting the data with the first public key corresponding to the first private key pre-issued for the first user stored in the public key storage unit, the first user terminal While transmitting the first encrypted data, requesting to generate and transmit an electronic signature value based on the first encrypted data, in response to the request for transmission of the electronic signature value, from the first user terminal, 1 electronic signature value (the first electronic signature value is the first user terminal decrypts the first encryption data with the first private key stored in the first user terminal for the first NFT identification information) Electronics generated by restoring data, concatenating data about the restored first NFT identification information and data about the first owner identification information to generate concatenated data, and then encrypting the concatenated data with the first private key. When the signature value) is received, the first electronic signature value is decrypted with the first public key, the concatenated data is restored, and then the data for the first NFT identification information is removed from the restored concatenated data, Extracting data about the first owner identification information and when the data about the first owner identification information is extracted, based on the first NFT identification information, the first NFT registered in the first blockchain network By checking whether the owner information of the first NFT included in the first NFT matches the first owner identification information, it is confirmed whether the owner of the first NFT is the first user. It may include a verification step.
또한, 본 발명의 일실시예에 따르면, 단계(S230)에서는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 클라우드 서버에 접속하여, 상기 제1 저장 경로에 대한 정보를 기초로, 상기 클라우드 서버로부터 상기 제1 저장 경로 상에 저장되어 있는 상기 제1 콘텐츠 데이터를 수신하는 단계, 상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 사용자 단말로, 상기 제1 콘텐츠 데이터를 전송하면서, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는지 여부를 확인할 것을 지시하는 확인 요청 메시지를 전송하는 단계 및 상기 제1 사용자 단말로부터, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는 것으로 확인되었음을 지시하는 피드백 메시지가 수신되면, 상기 소멸 정보가 포함된 상기 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 단계를 포함할 수 있다.Additionally, according to one embodiment of the present invention, in step S230, when the information on the first storage path and the first owner identification information are extracted, the cloud server is accessed to provide information on the first storage path. Based on this, receiving the first content data stored on the first storage path from the cloud server, when the first content data is received, sending the first content data to the first user terminal. While transmitting, transmitting a confirmation request message indicating whether the first content data is correct content data for the first NFT, and from the first user terminal, the first content data is the first NFT When a feedback message indicating that the content data for 1 It may include the step of deactivating the NFT.
이때, 본 발명의 일실시예에 따르면, 상기 확인 요청 메시지를 전송하는 단계는 상기 복수의 사용자들 각각의 사용자 단말과 사전 공유하고 있는, 사전 설정된 복수의 콘텐츠 데이터의 유형들 각각에 대응되는 서로 다른 2n(n은 2 이상의 자연수임)자릿수의 일련번호가 기록된 일련번호 테이블을 저장하여 유지하는 단계, 상기 클라우드 서버로부터 상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 콘텐츠 데이터를 암호화하기 위한 암호화 이벤트를 발생시키는 단계, 상기 암호화 이벤트가 발생되면, 상기 제1 콘텐츠 데이터의 유형을 확인하고, 상기 제1 콘텐츠 데이터의 유형이 제1 유형으로 확인되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 제1 일련번호를 추출하는 단계, 상기 제1 일련번호가 추출되면, 상기 제1 일련번호를, 상기 제1 일련번호의 중심축을 기준으로, 좌측의 n자릿수의 제1 부분 일련번호와 우측의 n자릿수의 제2 부분 일련번호로 분할하는 단계, 상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제2 연산 코드를 생성하는 단계, 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합 연산을 수행함으로써, n비트의 시드 코드를 생성한 후, 상기 시드 코드를 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 단계 및 상기 제1 해시 값이 생성되면, 상기 제1 콘텐츠 데이터를, 상기 제1 해시 값으로 암호화함으로써, 제2 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수를 전송하는 단계를 포함할 수 있다.At this time, according to one embodiment of the present invention, the step of transmitting the confirmation request message includes different types of content data corresponding to each of a plurality of preset types of content data that are pre-shared with the user terminal of each of the plurality of users. Storing and maintaining a serial number table in which a serial number of 2n (n is a natural number of 2 or more) digits is recorded; when the first content data is received from the cloud server, an encryption event for encrypting the first content data generating a step, when the encryption event occurs, confirming the type of the first content data, and if the type of the first content data is confirmed as the first type, from the serial number table, corresponding to the first type Extracting the first serial number, when the first serial number is extracted, the first serial number is divided into the n-digit first partial serial number on the left and the right partial serial number based on the central axis of the first serial number. Splitting into a second partial serial number of n digits, when the first serial number is divided into the first partial serial number and the second partial serial number based on the central axis, constituting the first partial serial number An n-bit first operation code is generated by configuring the result value of performing the modulo-2 operation on each of the n numbers into a bit string, and each of the n numbers constituting the second partial serial number Generating an n-bit second operation code by configuring the result of performing a modulo-2 operation on a bit string, performing an exclusive OR operation between the first operation code and the second operation code. , generating an n-bit seed code, then applying the seed code as an input to a preset hash function to generate a first hash value, and when the first hash value is generated, the first content data, After generating second encrypted data by encrypting it with a first hash value, it may include transmitting the second encrypted data, information about the first type, and the hash function to the first user terminal. .
이때, 상기 제1 사용자 단말은 메모리 상에 상기 일련번호 테이블을 저장하고 있고, 상기 NFT 이전 발행 서비스 서버로부터, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수가 수신되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 상기 제1 일련번호를 추출한 후, 상기 제1 일련번호를, 상기 중심축을 기준으로, 좌측의 n자릿수의 상기 제1 부분 일련번호와 우측의 n자릿수의 상기 제2 부분 일련번호로 분할하고, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제2 연산 코드를 생성한 후, 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합 연산을 수행함으로써, 상기 시드 코드를 생성하고, 상기 시드 코드를 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제2 암호화 데이터를, 상기 제1 해시 값으로 복호화함으로써, 상기 제1 콘텐츠 데이터를 복원할 수 있다.At this time, the first user terminal stores the serial number table in memory, and when the second encryption data, information about the first type, and the hash function are received from the NFT transfer service server, the After extracting the first serial number corresponding to the first type from the serial number table, the first serial number is divided into n digits of the first partial serial number on the left and n digits on the right with respect to the central axis. is divided by the second partial serial number, and the result of performing modulo-2 operation on each of the n numbers constituting the first partial serial number is configured into a bit string to form the n-bit first partial serial number. 1 operation code is generated, and the result of performing modulo-2 operation on each of the n numbers constituting the second partial serial number is configured as a bit string to generate the n-bit second operation code. After generation, the seed code is generated by performing an exclusive OR operation between the first operation code and the second operation code, and the seed code is applied as an input to the hash function to generate the first hash value. Afterwards, the first content data can be restored by decrypting the second encrypted data using the first hash value.
또한, 본 발명의 일실시예에 따르면, 상기 NFT 이전 발행 서비스 서버의 동작 방법은 상기 이전 발행 완료 메시지가 생성되어 상기 제1 사용자 단말로 전송된 이후, 상기 제1 사용자 단말로부터, 상기 제1 대체 NFT에 대한 판매 정보를 판매 정보 데이터베이스에 등록할 것을 요청하는 판매 등록 요청 명령이 수신되면, 상기 제1 사용자 단말로, 상기 제1 대체 NFT의 판매를 위한 판매 금액 정보를 전송할 것을 요청하는 단계, 상기 제1 사용자 단말로부터, 상기 제1 대체 NFT의 판매 금액 정보로, 제1 판매 금액 정보가 수신되면, 상기 판매 정보 데이터베이스에 상기 제1 대체 NFT에 대한 상기 제1 판매 금액 정보를 저장함으로써, 상기 제1 대체 NFT에 대한 판매 등록을 처리하는 단계, 상기 제1 대체 NFT에 대한 판매 등록이 처리된 이후, 상기 복수의 사용자들 중 어느 한 명인 제2 사용자의 제2 사용자 단말로부터, 상기 제1 대체 NFT에 대한 구매 요청 명령이 수신되면, 상기 제2 사용자 단말로, 대금 결제를 위한 결제 수단 정보를 전송할 것을 요청하는 단계, 상기 제2 사용자 단말로부터, 제1 결제 수단 정보가 수신되면, 상기 제1 결제 수단 정보를 기초로, 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리를 진행하는 단계 및 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리가 완료되면, 상기 제2 사용자 단말로부터, 상기 제2 사용자의 소유자 식별 정보인 제2 소유자 식별 정보를 수신한 후, 상기 제1 대체 NFT에 포함되어 있는 상기 제1 소유자 식별 정보를 상기 제2 소유자 식별 정보로 변경할 것을 지시하는 소유권 이전 정보가 포함된 제2 트랜잭션을 생성하여, 상기 제2 트랜잭션을 상기 제2 블록체인 네트워크에 등록 처리함으로써, 상기 제2 블록체인 네트워크에 등록되어 있는 상기 제1 대체 NFT에 포함된 상기 제1 소유자 식별 정보가, 상기 제2 소유자 식별 정보로 변경되도록 처리하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, the method of operating the NFT previous issuance service server is after the previous issuance completion message is generated and transmitted to the first user terminal, from the first user terminal, the first replacement When a sales registration request command requesting to register sales information about NFT in a sales information database is received, requesting to transmit sales amount information for sale of the first alternative NFT to the first user terminal, From the first user terminal, when the first sales amount information is received as the sales amount information of the first replacement NFT, by storing the first sale amount information for the first replacement NFT in the sales information database, the first 1 Processing sales registration for the replacement NFT, after the sales registration for the first replacement NFT is processed, from the second user terminal of the second user, which is one of the plurality of users, the first replacement NFT When a purchase request command for is received, requesting to transmit payment method information for payment to the second user terminal; When first payment method information is received from the second user terminal, the first payment Based on the means information, processing the payment for the amount according to the first sales amount information and when the payment processing for the amount according to the first sales amount information is completed, from the second user terminal, After receiving the second owner identification information, which is the owner identification information of the second user, ownership transfer information instructing to change the first owner identification information included in the first replacement NFT to the second owner identification information By creating an included second transaction and registering the second transaction in the second blockchain network, the first owner identification information included in the first alternative NFT registered in the second blockchain network is , and may further include processing the information to be changed to the second owner identification information.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 NFT 이전 발행 서비스 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 NFT 이전 발행 서비스 서버의 동작 방법은 도 1을 이용하여 설명한 NFT 이전 발행 서비스 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.Above, with reference to FIG. 2, the operation method of the NFT transfer service server according to an embodiment of the present invention has been described. Here, the operating method of the NFT pre-issuing service server according to an embodiment of the present invention may correspond to the configuration of the operation of the NFT
본 발명의 일실시예에 따른 블록체인들 간의 NFT 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The operating method of the NFT transfer issuance service server that provides NFT transfer issuance services between blockchains according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through combination with a computer.
또한, 본 발명의 일실시예에 따른 블록체인들 간의 NFT 이전 발행 서비스를 제공하는 NFT 이전 발행 서비스 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.In addition, the operating method of the NFT transfer issuance service server that provides NFT transfer issuance services between blockchains according to an embodiment of the present invention is implemented in the form of program instructions that can be executed through various computer means and stored in a computer-readable medium. can be recorded The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific details such as specific components and limited embodiments and drawings, but this is provided only to facilitate a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , those skilled in the art can make various modifications and variations from this description.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be limited to the described embodiments, and the scope of the patent claims described below as well as all modifications that are equivalent or equivalent to the scope of this patent claim shall fall within the scope of the spirit of the present invention. .
110: NFT 이전 발행 서비스 서버
111: 소유자 검증부
112: 정보 추출부
113: NFT 비활성화 처리부
114: 대체 NFT 생성부
115: 이전 발행 완료 메시지 전송부
116: 공개키 저장부
117: 전자 서명 요청부
118: 데이터 추출부
119: 검증 처리부
120: 콘텐츠 데이터 수신부
121: 확인 요청부
122: 비활성화 처리부
123: 일련번호 테이블 유지부
124: 암호화 이벤트 발생부
125: 일련번호 추출부
126: 일련번호 분할부
127: 연산 코드 생성부
128: 해시 값 생성부
129: 전송부
130: 판매 금액 요청부
131: 판매 등록 처리부
132: 판매 정보 데이터베이스
133: 결제 수단 요청부
134: 결제 처리부
135: 거래 등록 처리부
140: 클라우드 서버
150: 제1 사용자
155: 제1 사용자 단말
160: 제2 사용자
165: 제2 사용자 단말
10: 제1 블록체인 네트워크
11, 12, 13, 14, 15, 16: 복수의 제1 노드들
20: 제2 블록체인 네트워크
21, 22, 23, 24, 25, 26: 복수의 제2 노드들110: NFT transfer issuance service server
111: Owner verification unit 112: Information extraction unit
113: NFT deactivation processing unit 114: Replacement NFT generation unit
115: Previously issued message transmission unit 116: Public key storage unit
117: Electronic signature request unit 118: Data extraction unit
119: Verification processing unit 120: Content data receiving unit
121: Confirmation request unit 122: Deactivation processing unit
123: Serial number table maintenance unit 124: Encryption event generation unit
125: Serial number extraction unit 126: Serial number division unit
127: Operation code generation unit 128: Hash value generation unit
129: Transmission unit 130: Sales amount request unit
131: Sales registration processing unit 132: Sales information database
133: Payment method request unit 134: Payment processing unit
135: Transaction registration processing unit 140: Cloud server
150: first user 155: first user terminal
160: second user 165: second user terminal
10: The first blockchain network
11, 12, 13, 14, 15, 16: a plurality of first nodes
20: Second blockchain network
21, 22, 23, 24, 25, 26: a plurality of second nodes
Claims (12)
상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자의 제1 사용자 단말로부터, 사전 설정된 제1 블록체인 네트워크에 등록된 제1 NFT - 상기 제1 NFT는 사전 설정된 클라우드 서버에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 상기 클라우드 서버 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 상기 제1 사용자의 제1 소유자 식별 정보가 포함되어 있음 - 에 대한 제1 NFT 식별 정보가 수신되면서, 상기 제1 블록체인 네트워크에서 사전 설정된 제2 블록체인 네트워크로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 소유자 검증부;
상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는 것으로 검증 완료되면, 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출하는 정보 추출부;
상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 NFT 비활성화 처리부;
상기 제1 NFT가 비활성화 처리되면, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성하는 대체 NFT 생성부; 및
상기 제1 대체 NFT가 생성되면, 상기 제2 블록체인 네트워크에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한 후, 상기 제1 NFT가, 상기 제1 블록체인 네트워크에서 상기 제2 블록체인 네트워크로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 상기 제1 사용자 단말로 전송하는 이전 발행 완료 메시지 전송부
를 포함하는 NFT 이전 발행 서비스 서버.In the NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance services between blockchains,
A first NFT registered in a preset first blockchain network from a first user terminal of a first user who is one of a plurality of users subscribed to the NFT previous issuance service - the first NFT is a preset cloud server As an NFT for first content data stored in, the first NFT includes information about a first storage path on the cloud server where the first content data is stored, and owner information of the first NFT. Contains the user's first owner identification information - As the first NFT identification information for is received, a transfer issuance request command for the first NFT from the first blockchain network to a preset second blockchain network is issued. When received, based on the first NFT identification information, the first NFT registered in the first blockchain network is searched and the owner information of the first NFT included in the first NFT is confirmed, An owner verification unit that verifies whether the owner of the first NFT is the first user;
When verification is completed that the owner of the first NFT is the first user, an information extraction unit for extracting information about the first storage path and the first owner identification information included in the first NFT;
When the information about the first storage path and the first owner identification information are extracted, a first transaction containing destruction information indicating that the first NFT has been destroyed is created, and then the first transaction is sent to the first block An NFT deactivation processing unit that deactivates the first NFT by registering it in the chain network;
When the first NFT is deactivated, a replacement NFT generator that generates a first replacement NFT containing information about the first storage path and the first owner identification information; and
When the first replacement NFT is created, by registering the first replacement NFT in the second blockchain network, after completing the issuance of the first replacement NFT, the first NFT is transferred to the first blockchain network. A transfer completion message transmission unit that generates a transfer completion message indicating completion of transfer from the network to the second blockchain network and transmits it to the first user terminal.
NFT transfer service server containing.
상기 소유자 검증부는
상기 복수의 사용자들 각각에 대해 사전 발급된 개인키 - 상기 개인키는, 상기 복수의 사용자들 각각의 사용자 단말에 사전 저장되어 있음 - 에 대응되는 공개키가 저장되어 있는 공개키 저장부;
상기 제1 사용자 단말로부터, 상기 제1 NFT 식별 정보가 수신되면서, 상기 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보에 대한 데이터를, 상기 공개키 저장부에 저장되어 있는 상기 제1 사용자에 대해 사전 발급된 제1 개인키에 대응되는 제1 공개키로 암호화함으로써, 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제1 암호화 데이터를 기초로 전자 서명 값을 생성하여 전송할 것을 요청하는 전자 서명 요청부;
상기 전자 서명 값의 전송 요청에 대응하여, 상기 제1 사용자 단말로부터, 제1 전자 서명 값 - 상기 제1 전자 서명 값은, 상기 제1 사용자 단말이 상기 제1 암호화 데이터를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 개인키로 복호화하여 상기 제1 NFT 식별 정보에 대한 데이터를 복원하고, 복원된 상기 제1 NFT 식별 정보에 대한 데이터와 상기 제1 소유자 식별 정보에 대한 데이터를 연접(Concatenation)하여 연접 데이터를 생성한 후, 상기 연접 데이터를 상기 제1 개인키로 암호화함으로써 생성한 전자 서명 값임 - 이 수신되면, 상기 제1 전자 서명 값을 상기 제1 공개키로 복호화함으로써, 상기 연접 데이터를 복원한 후, 복원된 상기 연접 데이터에서 상기 제1 NFT 식별정보에 대한 데이터를 제거함으로써, 상기 제1 소유자 식별 정보에 대한 데이터를 추출하는 데이터 추출부; 및
상기 제1 소유자 식별 정보에 대한 데이터가 추출되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는지 여부를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 검증 처리부
를 포함하는 NFT 이전 발행 서비스 서버.According to paragraph 1,
The owner verification department
a public key storage unit storing a public key corresponding to a pre-issued private key for each of the plurality of users - the private key is pre-stored in a user terminal of each of the plurality of users;
When the first NFT identification information is received from the first user terminal and the previous issuance request command is received, the data for the first NFT identification information is stored in the public key storage unit. After generating the first encrypted data by encrypting it with the first public key corresponding to the first private key issued in advance, while transmitting the first encrypted data to the first user terminal, the first encrypted data An electronic signature request unit that requests to generate and transmit an electronic signature value as a basis;
In response to a request to transmit the electronic signature value, from the first user terminal, a first electronic signature value - the first electronic signature value is, the first user terminal transmits the first encryption data, the first user terminal Decrypt with the first private key stored in to restore the data for the first NFT identification information, and concatenate the data for the restored first NFT identification information and the data for the first owner identification information. After generating the concatenated data, it is an electronic signature value generated by encrypting the concatenated data with the first private key. When received, the concatenated data is restored by decrypting the first electronic signature value with the first public key. After, by removing data about the first NFT identification information from the restored concatenated data, a data extraction unit for extracting data about the first owner identification information; and
When data on the first owner identification information is extracted, the first NFT registered in the first blockchain network is searched based on the first NFT identification information, and the first NFT included in the first NFT is searched. A verification processing unit that verifies whether the owner of the first NFT is the first user by checking whether the owner information of the first NFT matches the first owner identification information.
NFT transfer service server containing.
상기 NFT 비활성화 처리부는
상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 클라우드 서버에 접속하여, 상기 제1 저장 경로에 대한 정보를 기초로, 상기 클라우드 서버로부터 상기 제1 저장 경로 상에 저장되어 있는 상기 제1 콘텐츠 데이터를 수신하는 콘텐츠 데이터 수신부;
상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 사용자 단말로, 상기 제1 콘텐츠 데이터를 전송하면서, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는지 여부를 확인할 것을 지시하는 확인 요청 메시지를 전송하는 확인 요청부; 및
상기 제1 사용자 단말로부터, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는 것으로 확인되었음을 지시하는 피드백 메시지가 수신되면, 상기 소멸 정보가 포함된 상기 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 비활성화 처리부
를 포함하는 NFT 이전 발행 서비스 서버.According to paragraph 1,
The NFT deactivation processing unit
Once the information on the first storage path and the first owner identification information are extracted, the cloud server is accessed and stored on the first storage path from the cloud server based on the information on the first storage path. a content data receiving unit that receives the first content data;
When the first content data is received, a confirmation request message instructing to confirm whether the first content data is content data for the first NFT while transmitting the first content data to the first user terminal. A confirmation request unit that transmits a; and
When a feedback message is received from the first user terminal indicating that the first content data has been confirmed to be correct content data for the first NFT, after generating the first transaction including the extinction information, the Deactivation processing unit that deactivates the first NFT by registering the first transaction in the first blockchain network
NFT transfer service server containing.
상기 확인 요청부는
상기 복수의 사용자들 각각의 사용자 단말과 사전 공유하고 있는, 사전 설정된 복수의 콘텐츠 데이터의 유형들 각각에 대응되는 서로 다른 2n(n은 2 이상의 자연수임)자릿수의 일련번호가 기록된 일련번호 테이블을 저장하여 유지하는 일련번호 테이블 유지부;
상기 클라우드 서버로부터 상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 콘텐츠 데이터를 암호화하기 위한 암호화 이벤트를 발생시키는 암호화 이벤트 발생부;
상기 암호화 이벤트가 발생되면, 상기 제1 콘텐츠 데이터의 유형을 확인하고, 상기 제1 콘텐츠 데이터의 유형이 제1 유형으로 확인되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 제1 일련번호를 추출하는 일련번호 추출부;
상기 제1 일련번호가 추출되면, 상기 제1 일련번호를, 상기 제1 일련번호의 중심축을 기준으로, 좌측의 n자릿수의 제1 부분 일련번호와 우측의 n자릿수의 제2 부분 일련번호로 분할하는 일련번호 분할부;
상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2(Modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제2 연산 코드를 생성하는 연산 코드 생성부;
상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합(XOR) 연산을 수행함으로써, n비트의 시드(Seed) 코드를 생성한 후, 상기 시드 코드를 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 해시 값 생성부; 및
상기 제1 해시 값이 생성되면, 상기 제1 콘텐츠 데이터를, 상기 제1 해시 값으로 암호화함으로써, 제2 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수를 전송하는 전송부
를 포함하고,
상기 제1 사용자 단말은
메모리 상에 상기 일련번호 테이블을 저장하고 있고, 상기 NFT 이전 발행 서비스 서버로부터, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수가 수신되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 상기 제1 일련번호를 추출한 후, 상기 제1 일련번호를, 상기 중심축을 기준으로, 좌측의 n자릿수의 상기 제1 부분 일련번호와 우측의 n자릿수의 상기 제2 부분 일련번호로 분할하고, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제2 연산 코드를 생성한 후, 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합 연산을 수행함으로써, 상기 시드 코드를 생성하고, 상기 시드 코드를 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제2 암호화 데이터를, 상기 제1 해시 값으로 복호화함으로써, 상기 제1 콘텐츠 데이터를 복원하는 것을 특징으로 하는 NFT 이전 발행 서비스 서버.According to paragraph 3,
The confirmation request section is
A serial number table in which different 2n (n is a natural number of 2 or more) digit serial numbers corresponding to each of the plurality of preset content data types that are pre-shared with the user terminals of each of the plurality of users are recorded. A serial number table maintenance unit that stores and maintains;
an encryption event generator that generates an encryption event to encrypt the first content data when the first content data is received from the cloud server;
When the encryption event occurs, the type of the first content data is confirmed, and when the type of the first content data is confirmed as the first type, a first serial number corresponding to the first type is selected from the serial number table. A serial number extraction unit that extracts;
When the first serial number is extracted, the first serial number is divided into a first partial serial number of n digits on the left and a second partial serial number of n digits on the right, based on the central axis of the first serial number. a serial number division unit;
When the first serial number is divided into the first partial serial number and the second partial serial number based on the central axis, modulo-2 (Modulo) for each of the n numbers constituting the first partial serial number -2) An n-bit first operation code is generated by organizing the result value when performing the operation into a bit string, and modulo-2 operation is performed on each of the n numbers constituting the second partial serial number. an operation code generator that generates an n-bit second operation code by configuring the result of the operation into a bit string;
By performing an exclusive OR (XOR) operation between the first operation code and the second operation code, an n-bit seed code is generated, and then the seed code is applied as an input to a preset hash function to generate the first A hash value generator that generates a hash value; and
When the first hash value is generated, the first content data is encrypted with the first hash value to generate second encrypted data, and then, to the first user terminal, the second encrypted data and the first A transmission unit that transmits information about the type and the hash function
Including,
The first user terminal is
The serial number table is stored in memory, and when the second encryption data, information about the first type, and the hash function are received from the NFT transfer service server, from the serial number table, the first After extracting the first serial number corresponding to the type, the first serial number is divided into the n-digit first partial serial number on the left and the n-digit second partial serial number on the right, based on the central axis. Generating the n-bit first operation code by dividing and configuring the result of performing modulo-2 operation on each of the n numbers constituting the first partial serial number into a bit string, After generating the n-bit second operation code by configuring the result value of performing the modulo-2 operation on each of the n numbers constituting the second partial serial number as a bit string, the first operation code is performed. By performing an exclusive OR operation between the code and the second operation code, the seed code is generated, the seed code is applied as an input to the hash function to generate the first hash value, and then the second encrypted data is generated. , NFT transfer service server, characterized in that restoring the first content data by decrypting it with the first hash value.
상기 이전 발행 완료 메시지가 생성되어 상기 제1 사용자 단말로 전송된 이후, 상기 제1 사용자 단말로부터, 상기 제1 대체 NFT에 대한 판매 정보를 판매 정보 데이터베이스에 등록할 것을 요청하는 판매 등록 요청 명령이 수신되면, 상기 제1 사용자 단말로, 상기 제1 대체 NFT의 판매를 위한 판매 금액 정보를 전송할 것을 요청하는 판매 금액 요청부;
상기 제1 사용자 단말로부터, 상기 제1 대체 NFT의 판매 금액 정보로, 제1 판매 금액 정보가 수신되면, 상기 판매 정보 데이터베이스에 상기 제1 대체 NFT에 대한 상기 제1 판매 금액 정보를 저장함으로써, 상기 제1 대체 NFT에 대한 판매 등록을 처리하는 판매 등록 처리부;
상기 제1 대체 NFT에 대한 판매 등록이 처리된 이후, 상기 복수의 사용자들 중 어느 한 명인 제2 사용자의 제2 사용자 단말로부터, 상기 제1 대체 NFT에 대한 구매 요청 명령이 수신되면, 상기 제2 사용자 단말로, 대금 결제를 위한 결제 수단 정보를 전송할 것을 요청하는 결제 수단 요청부;
상기 제2 사용자 단말로부터, 제1 결제 수단 정보가 수신되면, 상기 제1 결제 수단 정보를 기초로, 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리를 진행하는 결제 처리부; 및
상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리가 완료되면, 상기 제2 사용자 단말로부터, 상기 제2 사용자의 소유자 식별 정보인 제2 소유자 식별 정보를 수신한 후, 상기 제1 대체 NFT에 포함되어 있는 상기 제1 소유자 식별 정보를 상기 제2 소유자 식별 정보로 변경할 것을 지시하는 소유권 이전 정보가 포함된 제2 트랜잭션을 생성하여, 상기 제2 트랜잭션을 상기 제2 블록체인 네트워크에 등록 처리함으로써, 상기 제2 블록체인 네트워크에 등록되어 있는 상기 제1 대체 NFT에 포함된 상기 제1 소유자 식별 정보가, 상기 제2 소유자 식별 정보로 변경되도록 처리하는 거래 등록 처리부
를 더 포함하는 NFT 이전 발행 서비스 서버.According to paragraph 1,
After the previous issuance completion message is generated and transmitted to the first user terminal, a sales registration request command requesting to register sales information for the first alternative NFT in the sales information database is received from the first user terminal. When done, a sales amount request unit requesting to transmit sales amount information for sale of the first alternative NFT to the first user terminal;
When the first sales amount information is received from the first user terminal as the sales amount information of the first replacement NFT, by storing the first sale amount information for the first replacement NFT in the sales information database, A sales registration processing unit that processes sales registration for the first alternative NFT;
After the sales registration for the first alternative NFT is processed, if a purchase request command for the first alternative NFT is received from the second user terminal of the second user, which is one of the plurality of users, the second a payment method request unit that requests transmission of payment method information for payment to the user terminal;
When first payment method information is received from the second user terminal, a payment processing unit that processes payment for an amount according to the first sales amount information based on the first payment method information; and
When payment processing for the amount according to the first sale amount information is completed, after receiving the second owner identification information, which is the owner identification information of the second user, from the second user terminal, the first replacement NFT By creating a second transaction containing ownership transfer information instructing to change the included first owner identification information to the second owner identification information, and registering the second transaction in the second blockchain network, A transaction registration processing unit that processes the first owner identification information included in the first alternative NFT registered in the second blockchain network to be changed to the second owner identification information.
NFT transfer issuance service server further comprising.
상기 NFT 이전 발행 서비스에 가입되어 있는 복수의 사용자들 중 어느 한 명인 제1 사용자의 제1 사용자 단말로부터, 사전 설정된 제1 블록체인 네트워크에 등록된 제1 NFT - 상기 제1 NFT는 사전 설정된 클라우드 서버에 저장되어 있는 제1 콘텐츠 데이터에 대한 NFT로서, 상기 제1 NFT에는, 상기 제1 콘텐츠 데이터가 저장된 상기 클라우드 서버 상의 제1 저장 경로에 대한 정보와, 상기 제1 NFT의 소유자 정보로 상기 제1 사용자의 제1 소유자 식별 정보가 포함되어 있음 - 에 대한 제1 NFT 식별 정보가 수신되면서, 상기 제1 블록체인 네트워크에서 사전 설정된 제2 블록체인 네트워크로의 상기 제1 NFT에 대한 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 단계;
상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는 것으로 검증 완료되면, 상기 제1 NFT에 포함되어 있는 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보를 추출하는 단계;
상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 제1 NFT가 소멸되었음을 지시하는 소멸 정보가 포함된 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 단계;
상기 제1 NFT가 비활성화 처리되면, 상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 포함된 제1 대체 NFT를 생성하는 단계; 및
상기 제1 대체 NFT가 생성되면, 상기 제2 블록체인 네트워크에 상기 제1 대체 NFT를 등록 처리함으로써, 상기 제1 대체 NFT에 대한 발행을 완료한 후, 상기 제1 NFT가, 상기 제1 블록체인 네트워크에서 상기 제2 블록체인 네트워크로 이전 발행 완료되었음을 지시하는 이전 발행 완료 메시지를 생성하여 상기 제1 사용자 단말로 전송하는 단계
를 포함하는 NFT 이전 발행 서비스 서버의 동작 방법.In the operating method of the NFT transfer issuance service server that provides NFT (Non-Fungible Token) transfer issuance services between blockchains,
From the first user terminal of a first user who is one of a plurality of users subscribed to the NFT transfer service, a first NFT registered in a preset first blockchain network - the first NFT is a preset cloud server As an NFT for first content data stored in, the first NFT includes information about a first storage path on the cloud server where the first content data is stored, and owner information of the first NFT. Contains the user's first owner identification information - As the first NFT identification information for is received, a transfer issuance request command for the first NFT from the first blockchain network to a preset second blockchain network is issued. When received, based on the first NFT identification information, the first NFT registered in the first blockchain network is searched and the owner information of the first NFT included in the first NFT is confirmed, Verifying whether the owner of the first NFT is the first user;
When verification is completed that the owner of the first NFT is the first user, extracting information about the first storage path and the first owner identification information included in the first NFT;
When the information about the first storage path and the first owner identification information are extracted, a first transaction containing destruction information indicating that the first NFT has been destroyed is created, and then the first transaction is sent to the first block Deactivating the first NFT by registering it in the chain network;
When the first NFT is deactivated, generating a first replacement NFT containing information about the first storage path and the first owner identification information; and
When the first replacement NFT is created, by registering the first replacement NFT in the second blockchain network, after completing the issuance of the first replacement NFT, the first NFT is transferred to the first blockchain network. Generating a transfer issuance completion message indicating that the transfer from the network to the second blockchain network has been completed and transmitting it to the first user terminal.
Method of operation of NFT transfer service server including.
상기 제1 사용자가 맞는지 여부를 검증하는 단계는
상기 복수의 사용자들 각각에 대해 사전 발급된 개인키 - 상기 개인키는, 상기 복수의 사용자들 각각의 사용자 단말에 사전 저장되어 있음 - 에 대응되는 공개키가 저장되어 있는 공개키 저장부를 유지하는 단계;
상기 제1 사용자 단말로부터, 상기 제1 NFT 식별 정보가 수신되면서, 상기 이전 발행 요청 명령이 수신되면, 상기 제1 NFT 식별 정보에 대한 데이터를, 상기 공개키 저장부에 저장되어 있는 상기 제1 사용자에 대해 사전 발급된 제1 개인키에 대응되는 제1 공개키로 암호화함으로써, 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제1 암호화 데이터를 기초로 전자 서명 값을 생성하여 전송할 것을 요청하는 단계;
상기 전자 서명 값의 전송 요청에 대응하여, 상기 제1 사용자 단말로부터, 제1 전자 서명 값 - 상기 제1 전자 서명 값은, 상기 제1 사용자 단말이 상기 제1 암호화 데이터를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 개인키로 복호화하여 상기 제1 NFT 식별 정보에 대한 데이터를 복원하고, 복원된 상기 제1 NFT 식별 정보에 대한 데이터와 상기 제1 소유자 식별 정보에 대한 데이터를 연접(Concatenation)하여 연접 데이터를 생성한 후, 상기 연접 데이터를 상기 제1 개인키로 암호화함으로써 생성한 전자 서명 값임 - 이 수신되면, 상기 제1 전자 서명 값을 상기 제1 공개키로 복호화함으로써, 상기 연접 데이터를 복원한 후, 복원된 상기 연접 데이터에서 상기 제1 NFT 식별정보에 대한 데이터를 제거함으로써, 상기 제1 소유자 식별 정보에 대한 데이터를 추출하는 단계; 및
상기 제1 소유자 식별 정보에 대한 데이터가 추출되면, 상기 제1 NFT 식별 정보를 기초로, 상기 제1 블록체인 네트워크에 등록되어 있는 상기 제1 NFT를 조회하여, 상기 제1 NFT에 포함되어 있는 상기 제1 NFT의 소유자 정보가, 상기 제1 소유자 식별 정보와 일치하는지 여부를 확인함으로써, 상기 제1 NFT의 소유자가 상기 제1 사용자가 맞는지 여부를 검증하는 단계
를 포함하는 NFT 이전 발행 서비스 서버의 동작 방법.According to clause 6,
The step of verifying whether the first user is correct is
Maintaining a public key storage unit in which a public key corresponding to a pre-issued private key for each of the plurality of users is stored - the private key is pre-stored in a user terminal of each of the plurality of users. ;
When the first NFT identification information is received from the first user terminal and the previous issuance request command is received, the data for the first NFT identification information is stored in the public key storage unit. After generating the first encrypted data by encrypting it with the first public key corresponding to the first private key issued in advance, while transmitting the first encrypted data to the first user terminal, the first encrypted data Requesting to generate and transmit an electronic signature value as a basis;
In response to a request to transmit the electronic signature value, from the first user terminal, a first electronic signature value - the first electronic signature value is, the first user terminal transmits the first encryption data, the first user terminal Decrypt with the first private key stored in to restore the data for the first NFT identification information, and concatenate the data for the restored first NFT identification information and the data for the first owner identification information. After generating the concatenated data, it is an electronic signature value generated by encrypting the concatenated data with the first private key. When received, the concatenated data is restored by decrypting the first electronic signature value with the first public key. After, removing data about the first NFT identification information from the restored concatenated data, extracting data about the first owner identification information; and
When data on the first owner identification information is extracted, the first NFT registered in the first blockchain network is searched based on the first NFT identification information, and the first NFT included in the first NFT is searched. Verifying whether the owner of the first NFT is the first user by checking whether the owner information of the first NFT matches the first owner identification information.
Method of operation of NFT transfer service server including.
상기 제1 NFT를 비활성화 처리하는 단계는
상기 제1 저장 경로에 대한 정보와 상기 제1 소유자 식별 정보가 추출되면, 상기 클라우드 서버에 접속하여, 상기 제1 저장 경로에 대한 정보를 기초로, 상기 클라우드 서버로부터 상기 제1 저장 경로 상에 저장되어 있는 상기 제1 콘텐츠 데이터를 수신하는 단계;
상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 사용자 단말로, 상기 제1 콘텐츠 데이터를 전송하면서, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는지 여부를 확인할 것을 지시하는 확인 요청 메시지를 전송하는 단계; 및
상기 제1 사용자 단말로부터, 상기 제1 콘텐츠 데이터가 상기 제1 NFT에 대한 콘텐츠 데이터가 맞는 것으로 확인되었음을 지시하는 피드백 메시지가 수신되면, 상기 소멸 정보가 포함된 상기 제1 트랜잭션을 생성한 후, 상기 제1 트랜잭션을 상기 제1 블록체인 네트워크에 등록 처리함으로써, 상기 제1 NFT를 비활성화 처리하는 단계
를 포함하는 NFT 이전 발행 서비스 서버의 동작 방법.According to clause 6,
The step of deactivating the first NFT is
Once the information on the first storage path and the first owner identification information are extracted, the cloud server is accessed and stored on the first storage path from the cloud server based on the information on the first storage path. receiving the first content data;
When the first content data is received, a confirmation request message instructing to confirm whether the first content data is content data for the first NFT while transmitting the first content data to the first user terminal. transmitting; and
When a feedback message is received from the first user terminal indicating that the first content data has been confirmed to be correct content data for the first NFT, after generating the first transaction including the extinction information, the Deactivating the first NFT by registering the first transaction in the first blockchain network
Method of operation of NFT transfer service server including.
상기 확인 요청 메시지를 전송하는 단계는
상기 복수의 사용자들 각각의 사용자 단말과 사전 공유하고 있는, 사전 설정된 복수의 콘텐츠 데이터의 유형들 각각에 대응되는 서로 다른 2n(n은 2 이상의 자연수임)자릿수의 일련번호가 기록된 일련번호 테이블을 저장하여 유지하는 단계;
상기 클라우드 서버로부터 상기 제1 콘텐츠 데이터가 수신되면, 상기 제1 콘텐츠 데이터를 암호화하기 위한 암호화 이벤트를 발생시키는 단계;
상기 암호화 이벤트가 발생되면, 상기 제1 콘텐츠 데이터의 유형을 확인하고, 상기 제1 콘텐츠 데이터의 유형이 제1 유형으로 확인되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 제1 일련번호를 추출하는 단계;
상기 제1 일련번호가 추출되면, 상기 제1 일련번호를, 상기 제1 일련번호의 중심축을 기준으로, 좌측의 n자릿수의 제1 부분 일련번호와 우측의 n자릿수의 제2 부분 일련번호로 분할하는 단계;
상기 제1 일련번호가 상기 중심축을 기준으로 상기 제1 부분 일련번호와 상기 제2 부분 일련번호로 분할되면, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2(Modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 제2 연산 코드를 생성하는 단계;
상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합(XOR) 연산을 수행함으로써, n비트의 시드(Seed) 코드를 생성한 후, 상기 시드 코드를 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 단계; 및
상기 제1 해시 값이 생성되면, 상기 제1 콘텐츠 데이터를, 상기 제1 해시 값으로 암호화함으로써, 제2 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수를 전송하는 단계
를 포함하고,
상기 제1 사용자 단말은
메모리 상에 상기 일련번호 테이블을 저장하고 있고, 상기 NFT 이전 발행 서비스 서버로부터, 상기 제2 암호화 데이터와 상기 제1 유형에 대한 정보 및 상기 해시 함수가 수신되면, 상기 일련번호 테이블로부터, 상기 제1 유형에 대응되는 상기 제1 일련번호를 추출한 후, 상기 제1 일련번호를, 상기 중심축을 기준으로, 좌측의 n자릿수의 상기 제1 부분 일련번호와 우측의 n자릿수의 상기 제2 부분 일련번호로 분할하고, 상기 제1 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제1 연산 코드를 생성하고, 상기 제2 부분 일련번호를 구성하는 n개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써 n비트의 상기 제2 연산 코드를 생성한 후, 상기 제1 연산 코드와 상기 제2 연산 코드 간의 배타적 논리합 연산을 수행함으로써, 상기 시드 코드를 생성하고, 상기 시드 코드를 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제2 암호화 데이터를, 상기 제1 해시 값으로 복호화함으로써, 상기 제1 콘텐츠 데이터를 복원하는 것을 특징으로 하는 NFT 이전 발행 서비스 서버의 동작 방법.According to clause 8,
The step of transmitting the confirmation request message is
A serial number table in which different 2n (n is a natural number of 2 or more) digit serial numbers corresponding to each of the plurality of preset content data types that are pre-shared with the user terminals of each of the plurality of users are recorded. storing and maintaining;
When the first content data is received from the cloud server, generating an encryption event to encrypt the first content data;
When the encryption event occurs, the type of the first content data is confirmed, and when the type of the first content data is confirmed as the first type, a first serial number corresponding to the first type is selected from the serial number table. Extracting;
When the first serial number is extracted, the first serial number is divided into a first partial serial number of n digits on the left and a second partial serial number of n digits on the right, based on the central axis of the first serial number. steps;
When the first serial number is divided into the first partial serial number and the second partial serial number based on the central axis, modulo-2 (Modulo) for each of the n numbers constituting the first partial serial number -2) An n-bit first operation code is generated by organizing the result value when performing the operation into a bit string, and modulo-2 operation is performed on each of the n numbers constituting the second partial serial number. generating an n-bit second operation code by configuring the result of the operation into a bit string;
By performing an exclusive OR (XOR) operation between the first operation code and the second operation code, an n-bit seed code is generated, and then the seed code is applied as an input to a preset hash function to generate the first generating a hash value; and
When the first hash value is generated, the first content data is encrypted with the first hash value to generate second encrypted data, and then, to the first user terminal, the second encrypted data and the first transmitting information about the type and the hash function
Including,
The first user terminal is
The serial number table is stored in memory, and when the second encryption data, information about the first type, and the hash function are received from the NFT transfer service server, from the serial number table, the first After extracting the first serial number corresponding to the type, the first serial number is divided into the n-digit first partial serial number on the left and the n-digit second partial serial number on the right, based on the central axis. Generating the n-bit first operation code by dividing and configuring the result of performing modulo-2 operation on each of the n numbers constituting the first partial serial number into a bit string, After generating the n-bit second operation code by configuring the result value of performing the modulo-2 operation on each of the n numbers constituting the second partial serial number as a bit string, the first operation code is performed. By performing an exclusive OR operation between the code and the second operation code, the seed code is generated, the seed code is applied as an input to the hash function to generate the first hash value, and then the second encrypted data is generated. , A method of operating an NFT transfer service server, characterized in that restoring the first content data by decrypting it with the first hash value.
상기 이전 발행 완료 메시지가 생성되어 상기 제1 사용자 단말로 전송된 이후, 상기 제1 사용자 단말로부터, 상기 제1 대체 NFT에 대한 판매 정보를 판매 정보 데이터베이스에 등록할 것을 요청하는 판매 등록 요청 명령이 수신되면, 상기 제1 사용자 단말로, 상기 제1 대체 NFT의 판매를 위한 판매 금액 정보를 전송할 것을 요청하는 단계;
상기 제1 사용자 단말로부터, 상기 제1 대체 NFT의 판매 금액 정보로, 제1 판매 금액 정보가 수신되면, 상기 판매 정보 데이터베이스에 상기 제1 대체 NFT에 대한 상기 제1 판매 금액 정보를 저장함으로써, 상기 제1 대체 NFT에 대한 판매 등록을 처리하는 단계;
상기 제1 대체 NFT에 대한 판매 등록이 처리된 이후, 상기 복수의 사용자들 중 어느 한 명인 제2 사용자의 제2 사용자 단말로부터, 상기 제1 대체 NFT에 대한 구매 요청 명령이 수신되면, 상기 제2 사용자 단말로, 대금 결제를 위한 결제 수단 정보를 전송할 것을 요청하는 단계;
상기 제2 사용자 단말로부터, 제1 결제 수단 정보가 수신되면, 상기 제1 결제 수단 정보를 기초로, 상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리를 진행하는 단계; 및
상기 제1 판매 금액 정보에 따른 금액에 대한 대금 결제 처리가 완료되면, 상기 제2 사용자 단말로부터, 상기 제2 사용자의 소유자 식별 정보인 제2 소유자 식별 정보를 수신한 후, 상기 제1 대체 NFT에 포함되어 있는 상기 제1 소유자 식별 정보를 상기 제2 소유자 식별 정보로 변경할 것을 지시하는 소유권 이전 정보가 포함된 제2 트랜잭션을 생성하여, 상기 제2 트랜잭션을 상기 제2 블록체인 네트워크에 등록 처리함으로써, 상기 제2 블록체인 네트워크에 등록되어 있는 상기 제1 대체 NFT에 포함된 상기 제1 소유자 식별 정보가, 상기 제2 소유자 식별 정보로 변경되도록 처리하는 단계
를 더 포함하는 NFT 이전 발행 서비스 서버의 동작 방법.According to clause 6,
After the previous issuance completion message is generated and transmitted to the first user terminal, a sales registration request command requesting to register sales information for the first alternative NFT in the sales information database is received from the first user terminal. When done, requesting to transmit sales amount information for sale of the first alternative NFT to the first user terminal;
When the first sales amount information is received from the first user terminal as the sales amount information of the first replacement NFT, by storing the first sale amount information for the first replacement NFT in the sales information database, Processing sales registration for the first alternative NFT;
After the sales registration for the first alternative NFT is processed, if a purchase request command for the first alternative NFT is received from the second user terminal of the second user, which is one of the plurality of users, the second Requesting to transmit payment method information for payment to the user terminal;
When first payment method information is received from the second user terminal, processing a payment for an amount according to the first sales amount information based on the first payment method information; and
When payment processing for the amount according to the first sale amount information is completed, after receiving the second owner identification information, which is the owner identification information of the second user, from the second user terminal, the first replacement NFT By creating a second transaction containing ownership transfer information instructing to change the included first owner identification information to the second owner identification information, and registering the second transaction in the second blockchain network, Processing the first owner identification information included in the first alternative NFT registered in the second blockchain network to be changed to the second owner identification information.
A method of operating an NFT transfer service server further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220112111A KR20240033455A (en) | 2022-09-05 | 2022-09-05 | Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220112111A KR20240033455A (en) | 2022-09-05 | 2022-09-05 | Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240033455A true KR20240033455A (en) | 2024-03-12 |
Family
ID=90299838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220112111A KR20240033455A (en) | 2022-09-05 | 2022-09-05 | Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240033455A (en) |
-
2022
- 2022-09-05 KR KR1020220112111A patent/KR20240033455A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11481786B2 (en) | Genuine instance of digital goods | |
US20110154466A1 (en) | Tokenized data security | |
JPH0793148A (en) | Software distribution system | |
KR102295263B1 (en) | Data management device that enables distributed encryption management of data based on blockchain and operating method thereof | |
KR102302955B1 (en) | Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof | |
KR102302954B1 (en) | Real estate investment and transaction management server that enables real estate transactions based on blockchain and operating method thereof | |
KR102578855B1 (en) | Operating server of nft trading service which enables modification of storage route information, included in nft, and the operating method thereof | |
KR20240033455A (en) | Non-fungible token transfer issuance service server that provides non-fungible token transfer issuance service between blockchains and the operating method thereof | |
KR102602189B1 (en) | Document sharing service server for managing document sharing service based on cloud, and the operating method thereof | |
JP6874700B2 (en) | E-commerce systems, communication terminals, third-party servers, e-commerce methods, and programs | |
KR20230147847A (en) | Service providing server that provides nft issuance service for proof of ownership of e-book data and operating method thereof | |
KR102636695B1 (en) | Real estate brokerage management server that processes electronic contracts for online real estate transactions and operating method thereof | |
KR102662034B1 (en) | Electronic contract service server for operating electronic contract service which is able to issue an nft of the contract with an author, and the operating method thereof | |
KR20230078119A (en) | Nft management system apparatus which is able to encrypt and manage the original contents data, which is to be a subject to an nft, and the operating method thereof | |
KR102464429B1 (en) | Cloud-based gold trading platform server that enables gold trading based on digital gold token and operating method thereof | |
KR102389298B1 (en) | Gold asset management server for supporting members to deposit and withdraw their gold which is purchased with cashable points, and the operating method thereof | |
KR102389289B1 (en) | Gold sales server for supporting purchase of gold with cashable points, and the operating method thereof | |
KR102321204B1 (en) | Smart propertization method for protecting intellectual rights on digital content and system threrof | |
US20170270473A1 (en) | Systems and methods for securely searching and exchanging database relationships between registered inventory | |
KR102526406B1 (en) | Access management system apparatus which manages access to the original contents data, which is to be a subject to an nft, and the operating method thereof | |
KR102302942B1 (en) | Transaction management server that enables product purchase by linking with product vending machines based on gold and digital gold token, and operating method thereof | |
KR102302945B1 (en) | Gold wealth management server that enables gold bar purchase by interlocking with a gold bar vending machine where multiple gold bars are stored based on gold and digital gold tokens, and operating method thereof | |
KR102643163B1 (en) | Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof | |
KR102320103B1 (en) | Method for Authenticating Genuineness by Substituting the Autograph of the Work | |
KR20230148542A (en) | Proof of authenticity service server that enables proof of authenticity of products using nft and operating method thereof |