+

KR102816870B1 - Method, apparatus and recording medium for determining validation of ticket - Google Patents

Method, apparatus and recording medium for determining validation of ticket Download PDF

Info

Publication number
KR102816870B1
KR102816870B1 KR1020240062032A KR20240062032A KR102816870B1 KR 102816870 B1 KR102816870 B1 KR 102816870B1 KR 1020240062032 A KR1020240062032 A KR 1020240062032A KR 20240062032 A KR20240062032 A KR 20240062032A KR 102816870 B1 KR102816870 B1 KR 102816870B1
Authority
KR
South Korea
Prior art keywords
information
ticket
ticket information
code
fungible
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020240062032A
Other languages
Korean (ko)
Inventor
이두희
Original Assignee
현대카드 주식회사
모던라이언 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대카드 주식회사, 모던라이언 주식회사 filed Critical 현대카드 주식회사
Priority to KR1020240062032A priority Critical patent/KR102816870B1/en
Application granted granted Critical
Publication of KR102816870B1 publication Critical patent/KR102816870B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/045Payment circuits using payment protocols involving tickets
    • G06Q20/0457Payment circuits using payment protocols involving tickets the tickets being sent electronically
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3678Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 개시의 다양한 실시예에 따른 방법은 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하는 단계; 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득하는 단계; 및 제1 티켓 정보 및 암호화 정보에 기초하여, 코드가 유효한지 여부를 결정하는 단계를 포함할 수 있다.A method according to various embodiments of the present disclosure may include: obtaining first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract associated with an event; recognizing a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, to obtain encrypted information corresponding to the code; and determining whether the code is valid based on the first ticket information and the encrypted information.

Figure R1020240062032
Figure R1020240062032

Description

티켓의 유효성을 결정하는 방법, 장치 및 기록 매체{METHOD, APPARATUS AND RECORDING MEDIUM FOR DETERMINING VALIDATION OF TICKET}METHOD, APPARATUS AND RECORDING MEDIUM FOR DETERMINING VALIDATION OF TICKET

본 개시는 티켓의 유효성을 결정하는 방법, 장치 및 기록 매체에 관한 것이다.The present disclosure relates to a method, device and recording medium for determining the validity of a ticket.

티켓의 유효성을 판단하고 검증하기 위하여, 티켓에 관련된 다양한 정보가 유효한 것인지 여부가 확인될 수 있다. 예를 들어, 해당 티켓이 발행된 날짜, 유효 기간, 발행자의 신원, 티켓 소유자의 신원, 이벤트명 등이 유효한 것인지에 대한 확인이 유효성 검증에 포함될 수 있다. 이러한 유효성 검증을 위하여, 여러 보안 기술 및 안전 요소가 활용될 수 있다.In order to determine and verify the validity of a ticket, various information related to the ticket may be checked to see if it is valid. For example, the validity verification may include checking whether the ticket is issued on the date, the validity period, the identity of the issuer, the identity of the ticket holder, the event name, etc. For this validity verification, various security technologies and safety elements may be utilized.

본 개시의 다양한 실시예에 따르면, 장치와 서버의 통신이 차단된 상황에서, 해당 장치가 티켓의 유효성을 판단하는 기술을 제공한다.According to various embodiments of the present disclosure, a technique is provided for a device to determine the validity of a ticket in a situation where communication between the device and a server is blocked.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰에 대응되는 티켓의 유효성을 판단하는 기술을 제공한다.According to various embodiments of the present disclosure, a technique for determining the validity of a ticket corresponding to a non-fungible token is provided.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰의 메타 데이터를 활용하여, 티켓의 유효성을 판단하거나, 티켓 관련 정보를 획득하는 기술을 제공한다.According to various embodiments of the present disclosure, a technology is provided for determining the validity of a ticket or obtaining ticket-related information by utilizing metadata of a non-fungible token.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰에 대응되는 티켓의 부정 거래 행위를 방지하는 기술을 제공한다.According to various embodiments of the present disclosure, a technique is provided for preventing fraudulent trading of tickets corresponding to non-fungible tokens.

본 개시의 다양한 실시예에 따르면, 장치와 서버의 통신이 차단된 상황에서도 티켓의 부정 거래 행위를 방지하는 기술을 제공한다.According to various embodiments of the present disclosure, a technology is provided for preventing fraudulent ticket trading even in a situation where communication between a device and a server is blocked.

일 실시예에서, 하나 이상의 프로세서 및 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 방법에 있어서, 하나 이상의 프로세서가, 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하는 단계; 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득하는 단계 - 암호화 정보는, 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 사용자 단말에 의해 암호화된 정보이고 - ; 및 제1 티켓 정보 및 암호화 정보에 기초하여, 코드가 유효한지 여부를 결정하는 단계를 포함할 수 있다.In one embodiment, a method performed in a device including one or more processors and one or more memories having instructions stored thereon for execution by the one or more processors, the method comprising: obtaining, by the one or more processors, first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract associated with an event; recognizing a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, to obtain encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on second ticket information corresponding to the second non-fungible token; and determining, based on the first ticket information and the encrypted information, whether the code is valid.

일 실시예에서, 제1 티켓 정보를 획득하는 단계는 제1 시점 이전에 수행되고, 제1 시점은, 이벤트의 시작 시간으로부터 미리 결정된 시간 이전의 시점일 수 있다.In one embodiment, the step of obtaining the first ticket information is performed before the first time point, and the first time point may be a time point before a predetermined time from the start time of the event.

일 실시예에서, 제1 시점은, 스마트 계약에 의하여 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점일 수 있다.In one embodiment, the first point in time may be a point in time at which changes to information corresponding to each of the one or more first non-fungible tokens are restricted by the smart contract.

일 실시예에서, 암호화 정보를 획득하는 단계 및 코드가 유효한지 여부를 결정하는 단계는 제1 시점 이후에 수행될 수 있다.In one embodiment, the steps of obtaining the encryption information and determining whether the code is valid may be performed after the first point in time.

일 실시예에서, 코드가 유효한지 여부를 결정하는 단계는, 암호화 정보를 복호화하는 데에 실패한 경우, 코드가 유효하지 않다고 결정하는 단계를 포함할 수 있다.In one embodiment, determining whether the code is valid may include determining that the code is invalid if decrypting the encrypted information fails.

일 실시예에서, 코드가 유효한지 여부를 결정하는 단계는, 암호화 정보를 복호화하여 제2 티켓 정보를 획득하는 단계; 및 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether the code is valid may include the step of decrypting the encrypted information to obtain second ticket information; and the step of determining whether the code is valid based on the first ticket information and the second ticket information.

일 실시예에서, 암호화 정보는, 제1 암호키 및 사용자 단말이 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 암호화된 정보일 수 있다. In one embodiment, the encrypted information may be encrypted information based on a first encryption key and first time information for a first time interval corresponding to a time at which the user terminal encrypts the second ticket information.

일 실시예에서, 암호화 정보를 복호화하여 제2 티켓 정보를 획득하는 단계는, 장치가 암호화 정보를 복호화하는 시점에 대응되는 제2 시간 간격에 대한 제2 시간 정보에 기초하여, 암호화 정보를 1차 복호화하는 단계; 및 제1 암호키와 연관된 제2 암호키에 기초하여, 1차 복호화된 암호화 정보를 2차 복호화 하는 단계를 포함할 수 있다.In one embodiment, the step of decrypting the encrypted information to obtain the second ticket information may include the step of first decrypting the encrypted information based on second time information for a second time interval corresponding to the time at which the device decrypts the encrypted information; and the step of secondly decrypting the first decrypted encrypted information based on a second encryption key associated with the first encryption key.

일 실시예에서, 제1 암호키 및 제2 암호키가 동일한 경우, 제1 암호키 및 제2 암호키는 대칭키 또는 세션키 중 적어도 하나를 포함하고, 제1 암호키 및 제2 암호키가 다른 경우, 제1 암호키는 공개키이고 제2 암호키는 개인키일 수 있다.In one embodiment, when the first encryption key and the second encryption key are the same, the first encryption key and the second encryption key may include at least one of a symmetric key or a session key, and when the first encryption key and the second encryption key are different, the first encryption key may be a public key and the second encryption key may be a private key.

일 실시예에서, 방법은 서버로부터 제2 암호키를 수신하는 단계를 더 포함할 수 있다.In one embodiment, the method may further comprise receiving a second encryption key from the server.

일 실시예에서, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계는, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 매칭되는 대체 불가능 토큰의 식별 데이터가 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether a code is valid based on the first ticket information and the second ticket information may include the step of determining whether identification data of a non-fungible token that matches identification data of a second non-fungible token included in the second ticket information is present in the first ticket information; and the step of determining the code to be valid based on the determination that the identification data is present in the first ticket information.

일 실시예에서, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계는, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether a code is valid based on the first ticket information and the second ticket information may include the step of determining whether a correspondence between identification data of a second non-fungible token included in the second ticket information and user identification data included in the second ticket information exists in the first ticket information; and the step of determining the code to be valid based on a determination that the correspondence exists in the first ticket information.

일 실시예에서, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계는, 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭되는지 여부를 결정하는 단계; 및 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭된다는 결정에 따라, 코드를 유효하다고 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether the code is valid based on the first ticket information and the second ticket information may include the step of determining whether the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information; and the step of determining the code to be valid based on a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information.

일 실시예에서, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계는, 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether a code is valid based on the first ticket information and the second ticket information may include the step of determining whether metadata that matches ticket-related metadata included in the second ticket information is present in the first ticket information; and the step of determining the code to be valid based on the determination that the metadata is present in the first ticket information.

일 실시예에서, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정하는 단계는, 제2 티켓 정보에 포함된 스마트 계약의 주소와 제1 티켓 정보에 포함된 스마트 계약의 주소가 매칭되고, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재한다는 결정에 응답하여, 코드가 유효하다고 결정하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether the code is valid based on the first ticket information and the second ticket information may include the step of determining that the code is valid in response to a determination that an address of a smart contract included in the second ticket information matches an address of a smart contract included in the first ticket information, and a correspondence between identification data of a second non-fungible token included in the second ticket information and user identification data included in the second ticket information exists in the first ticket information.

일 실시예에서, 제2 티켓 정보는, 제2 대체 불가능 토큰의 식별 데이터, 제2 대체 불가능 토큰과 연관된 사용자의 사용자 식별 데이터, 또는 제2 대체 불가능 토큰의 티켓 관련 메타 데이터 중 적어도 하나를 포함하고, 제2 대체 불가능 토큰의 티켓 관련 메타데이터는, 제2 대체 불가능 토큰에 대응되는 이벤트의 티켓에 관한 정보일 수 있다.In one embodiment, the second ticket information includes at least one of identification data of the second non-fungible token, user identification data of a user associated with the second non-fungible token, or ticket-related metadata of the second non-fungible token, wherein the ticket-related metadata of the second non-fungible token may be information regarding a ticket for an event corresponding to the second non-fungible token.

일 실시예에서, 티켓 관련 메타 데이터는, 이벤트의 이름, 일정, 장소, 티켓의 좌석 식별자, 가격 또는 구매 조건 중 적어도 하나에 관한 정보를 포함할 수 있다.In one embodiment, ticket-related metadata may include information regarding at least one of the name of the event, the schedule, the location, the seat identifier of the ticket, the price, or the terms of purchase.

일 실시예에서, 제1 티켓 정보를 획득하는 단계는, 일정 주기마다 반복하여 수행되는 단계를 포함할 수 있다.In one embodiment, the step of obtaining the first ticket information may include a step that is performed repeatedly at regular intervals.

일 실시예에서, 하나 이상의 프로세서 및 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 단말에서 수행되는 방법에 있어서, 하나 이상의 프로세서가, 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보를 수신하는 단계; 제2 티켓 정보를 암호화함으로써 암호화 정보를 생성하는 단계; 및 리더기에서 암호화 정보를 획득할 수 있도록 하는 코드를 화면에 표출하는 단계를 포함하고, 암호화 정보는 코드를 인식한 리더기에 의해 획득되고, 리더기에 의해, 제2 티켓 정보로 복호화되고, 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보와 함께 코드가 유효한지 여부를 결정하는데에 기초가 될 수 있다. In one embodiment, a method performed in a terminal including one or more processors and one or more memories storing instructions to be executed by the one or more processors, the method comprising: receiving, by the one or more processors, second ticket information corresponding to a second non-fungible token, the second non-fungible token being one of one or more first non-fungible tokens issued by a smart contract associated with an event; generating encrypted information by encrypting the second ticket information; and displaying on a screen a code that enables a reader to obtain the encrypted information, wherein the encrypted information is obtained by a reader that recognizes the code, decrypted by the reader into the second ticket information, and can be used as a basis for determining whether the code is valid together with the first ticket information including information corresponding to each of the one or more first non-fungible tokens.

일 실시예에서, 암호화 정보를 생성하는 단계는, 제1 암호키에 기초하여 제2 티켓 정보를 1차 암호화하는 단계; 및 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 1차 암호화된 제2 티켓 정보를 2차 암호화하는 단계를 포함할 수 있다.In one embodiment, the step of generating the encryption information may include the step of first encrypting the second ticket information based on the first encryption key; and the step of secondly encrypting the second ticket information that was first encrypted based on first time information for a first time interval corresponding to the time at which the second ticket information is encrypted.

일 실시예에서, 단말에는, 제2 대체 불가능 토큰을 거래할 수 있는 서비스가 제공되는 어플리케이션이 설치되고, 코드는 어플리케이션을 통해 표출될 수 있다.In one embodiment, the terminal has an application installed that provides a service for trading a second non-fungible token, and the code can be displayed through the application.

일 실시예에서, 코드를 화면에 표출하는 단계는, 사용자에 대한 생체 인증을 수행하는 단계; 및 생체 인증의 결과에 기초하여, 코드를 화면에 표출하는 단계를 포함할 수 있다.In one embodiment, the step of displaying the code on the screen may include the step of performing biometric authentication on the user; and the step of displaying the code on the screen based on the result of the biometric authentication.

일 실시예에서, 방법은 사용자의 지갑에 제2 대체 불가능 토큰이 수신됨에 따라, 이벤트와 관련된 서버로부터 제1 암호키를 수신하거나, 서버로 제1 암호키와 연관된 제2 암호키를 전송하는 단계를 더 포함할 수 있다.In one embodiment, the method may further include receiving a first cryptographic key from a server associated with the event, or transmitting a second cryptographic key associated with the first cryptographic key to the server, upon receipt of the second non-fungible token in the user's wallet.

다른 실시예에서, 장치는 하나 이상의 프로세서; 및 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하고, 명령어들의 실행 시, 하나 이상의 프로세서는, 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하고, 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득하고 - 암호화 정보는, 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 사용자 단말에 의해 암호화된 정보이고 - ; 및 제1 티켓 정보 및 암호화 정보에 기초하여, 코드가 유효한지 여부를 결정할 수 있다.In another embodiment, the device includes one or more processors; and one or more memories storing instructions to be executed by the one or more processors, wherein upon execution of the instructions, the one or more processors obtain first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract associated with an event, recognize a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, and obtain encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on the second ticket information corresponding to the second non-fungible token; and determine whether the code is valid based on the first ticket information and the encrypted information.

다른 실시예에서, 하나 이상의 프로세서에 의해 실행되기 위한 명령어들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체에 있어서, 명령어들은, 명령어들의 실행 시, 하나 이상의 프로세서가, 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하도록 하고, 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득하도록 하고 - 암호화 정보는, 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 사용자 단말에 의해 암호화된 정보이고 - ; 및 제1 티켓 정보 및 암호화 정보에 기초하여, 코드가 유효한지 여부를 결정하도록 할 수 있다. In another embodiment, a non-transitory computer-readable recording medium having recorded thereon instructions to be executed by one or more processors, the instructions, when executed by the one or more processors, cause the one or more processors to obtain first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract associated with an event, recognize a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, and obtain encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on the second ticket information corresponding to the second non-fungible token; and determine whether the code is valid based on the first ticket information and the encrypted information.

본 개시의 다양한 실시예에 따르면, 장치와 서버의 통신이 차단된 상황에서, 해당 장치가 티켓의 유효성을 판단할 수 있다.According to various embodiments of the present disclosure, in a situation where communication between a device and a server is blocked, the device can determine the validity of a ticket.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰에 대응되는 티켓의 유효성을 판단할 수 있다.According to various embodiments of the present disclosure, the validity of a ticket corresponding to a non-fungible token can be determined.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰의 메타 데이터를 활용하여, 티켓의 유효성을 판단하거나, 티켓 관련 정보를 획득할 수 있다.According to various embodiments of the present disclosure, the validity of a ticket can be determined or ticket-related information can be obtained by utilizing metadata of a non-fungible token.

본 개시의 다양한 실시예에 따르면, 대체 불가능 토큰에 대응되는 티켓의 부정 거래 행위를 방지할 수 있다.According to various embodiments of the present disclosure, fraudulent trading of tickets corresponding to non-fungible tokens can be prevented.

본 개시의 다양한 실시예에 따르면, 장치와 서버의 통신이 차단된 상황에서도 티켓의 부정 거래 행위를 방지할 수 있다.According to various embodiments of the present disclosure, fraudulent ticket trading can be prevented even in a situation where communication between a device and a server is blocked.

도 1은 본 개시의 다양한 실시예에 따른 티켓의 유효성을 판단하는 시스템을 도시한 도면이다.
도 2는 본 개시의 다양한 실시예에 따른 장치를 도시한 블록도이다.
도 3은 본 개시의 다양한 실시예에 따른 대체 불가능 토큰을 이용하여 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다.
도 4는 본 개시의 다양한 실시예에 따른 대체 불가능 토큰을 발행하고, 대체 불가능 토큰에 대응하는 정보가 변경되는 방법을 설명하는 흐름도이다.
도 5는 본 개시의 다양한 실시예에 시간 정보에 기초하여 티켓의 유효성을 판단하는 방법을 설명하는 도면이다.
도 6은 본 개시의 다양한 실시예에 따른 티켓의 유효성 결정 결과에 따른 장치의 화면 표시 방법을 설명하는 흐름도이다.
도 7은 본 개시의 다른 실시예에 따른 단말에서 코드를 생성하여, 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다.
도 8은 본 개시의 또 다른 실시예에 따른 서버에서 코드를 생성하여, 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다.
도 9는 본 개시의 다양한 실시예에 따른 장치의 동작 흐름도이다.
도 10은 본 개시의 다양한 실시예에 따른 단말의 동작 흐름도이다.
FIG. 1 is a diagram illustrating a system for determining the validity of a ticket according to various embodiments of the present disclosure.
FIG. 2 is a block diagram illustrating a device according to various embodiments of the present disclosure.
FIG. 3 is a flowchart illustrating a method for determining the validity of a ticket using a non-fungible token according to various embodiments of the present disclosure.
FIG. 4 is a flowchart illustrating a method for issuing a non-fungible token and changing information corresponding to the non-fungible token according to various embodiments of the present disclosure.
FIG. 5 is a diagram illustrating a method for determining the validity of a ticket based on time information in various embodiments of the present disclosure.
FIG. 6 is a flowchart illustrating a method of displaying a screen of a device according to a result of determining the validity of a ticket according to various embodiments of the present disclosure.
FIG. 7 is a flowchart illustrating a method for determining the validity of a ticket by generating a code in a terminal according to another embodiment of the present disclosure.
FIG. 8 is a flowchart illustrating a method of determining the validity of a ticket by generating a code in a server according to another embodiment of the present disclosure.
FIG. 9 is a flowchart of the operation of a device according to various embodiments of the present disclosure.
FIG. 10 is a flowchart of operations of a terminal according to various embodiments of the present disclosure.

본 개시의 실시예들은 본 개시의 기술적 사상을 설명하기 위한 목적으로 예시된 것이다. 본 개시에 따른 권리범위가 이하에 제시되는 실시예들이나 이들 실시예들에 대한 구체적 설명으로 한정되는 것은 아니다.The embodiments of the present disclosure are provided for the purpose of explaining the technical idea of the present disclosure. The scope of rights according to the present disclosure is not limited to the embodiments presented below or the specific description of these embodiments.

본 개시에 사용되는 모든 기술적 용어들 및 과학적 용어들은, 달리 정의되지 않는 한, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 일반적으로 이해되는 의미를 갖는다. 본 개시에 사용되는 모든 용어들은 본 개시를 더욱 명확히 설명하기 위한 목적으로 선택된 것이며 본 개시에 따른 권리범위를 제한하기 위해 선택된 것이 아니다.All technical and scientific terms used in this disclosure, unless otherwise defined, have the meaning commonly understood by one of ordinary skill in the art to which this disclosure belongs. All terms used in this disclosure have been selected for the purpose of more clearly describing this disclosure and are not selected to limit the scope of rights under this disclosure.

본 개시에서 사용되는 "포함하는", "구비하는", "갖는" 등과 같은 표현은, 해당 표현이 포함되는 어구 또는 문장에서 달리 언급되지 않는 한, 다른 실시예를 포함할 가능성을 내포하는 개방형 용어(open-ended terms)로 이해되어야 한다.The expressions “including,” “comprising,” “having,” and the like, used in this disclosure, should be understood as open-ended terms implying the possibility of including other embodiments, unless otherwise stated in the phrase or sentence in which the expression is included.

본 개시에서 기술된 단수형의 표현은 달리 언급하지 않는 한 복수형의 의미를 포함할 수 있으며, 이는 청구범위에 기재된 단수형의 표현에도 마찬가지로 적용된다.The singular forms described in this disclosure may include plural meanings unless otherwise stated, and the same applies to the singular forms recited in the claims.

본 개시에서 사용되는 "제1", "제2" 등의 표현들은 복수의 구성요소들을 상호 구분하기 위해 사용되며, 해당 구성요소들의 순서 또는 중요도를 한정하는 것은 아니다.The expressions “first,” “second,” etc. used in this disclosure are used to distinguish between multiple components, and do not limit the order or importance of the components.

본 개시에서 사용되는 용어 "부"는, 소프트웨어, 또는 FPGA(field-programmable gate array), ASIC(application specific integrated circuit)과 같은 하드웨어 구성요소를 의미한다. 그러나, "부"는 하드웨어 및 소프트웨어에 한정되는 것은 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서, "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세서, 함수, 속성, 프로시저, 서브루틴, 프로그램 코드의 세그먼트, 드라이버, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조, 테이블, 어레이 및 변수를 포함한다. 구성요소와 "부" 내에서 제공되는 기능은 더 작은 수의 구성요소 및 "부"로 결합되거나 추가적인 구성요소와 "부"로 더 분리될 수 있다.The term "unit" as used in this disclosure means software or a hardware component such as a field-programmable gate array (FPGA) or an application specific integrated circuit (ASIC). However, the "unit" is not limited to hardware and software. The "unit" may be configured to be on an addressable storage medium, and may be configured to execute one or more processors. Thus, by way of example, the "unit" includes components such as software components, object-oriented software components, class components, and task components, as well as processors, functions, properties, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within a component and a "unit" may be combined into a smaller number of components and "units" or further separated into additional components and "units."

본 개시에서 사용되는 "~에 기초하여"라는 표현은, 해당 표현이 포함되는 어구 또는 문장에서 기술되는, 결정, 판단의 행위 또는 동작에 영향을 주는 하나 이상의 인자를 기술하는데 사용되며, 이 표현은 결정, 판단의 행위 또는 동작에 영향을 주는 추가적인 인자를 배제하지 않는다.The expression "based on" as used in this disclosure is used to describe one or more factors affecting a decision, act of judgment, or action described in a phrase or sentence containing the expression, and the expression does not exclude additional factors affecting the decision, act of judgment, or action.

본 개시에서, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 경우, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결될 수 있거나 접속될 수 있는 것으로, 또는 새로운 다른 구성요소를 매개로 하여 연결될 수 있거나 접속될 수 있는 것으로 이해되어야 한다.In this disclosure, when a component is referred to as being "connected" or "connected" to another component, it should be understood that said component can be directly connected or connected to said other component, or can be connected or connected via a new other component.

본 개시에서, "티켓"은 사용자가 어떤 서비스를 이용하거나 이벤트(예: 콘서트등 행사)에 입장할 수 있는 권리를 나타내는 증표이다. 티켓은 정해진 조건과 제한 사항을 포함할 수 있으며, 이에 따라 티켓의 소유자가 해당 서비스를 받거나 이벤트에 참여할 수 있게 한다.In this disclosure, a "ticket" is a certificate that represents the right of a user to use a service or enter an event (e.g., a concert, etc.). A ticket may include set conditions and restrictions, and accordingly, allows the owner of the ticket to receive the service or participate in the event.

본 개시에서, "티켓의 유효성 검증"은 티켓의 소지자가 어떤 서비스를 이용하거나 이벤트에 입장할 수 있는 권리가 있는지 여부를 판단하는 것일 수 있다. 따라서 티켓이 유효하다면, 티켓의 소지자는 서비스를 이용하거나 이벤트에 입장할 수 있지만, 티켓이 유효하지 않으면 티켓의 소지자는 서비스를 이용하거나 이벤트에 입장할 수 없다.In this disclosure, "validation of a ticket" may be determining whether a holder of a ticket has the right to use a service or enter an event. Accordingly, if a ticket is valid, the holder of the ticket can use the service or enter an event, but if a ticket is invalid, the holder of the ticket cannot use the service or enter an event.

본 개시에서 사용되는 용어 "블록체인 네트워크"는 블록체인을 관리하는 둘 이상의 노드를 포함할 수 있다. 여기서 블록(block)은 특정한 자료형을 지칭할 수 있다. 또한, 블록체인은 하나 이상의 블록이 체인 형태로 연결된 자료 구조를 지칭할 수 있다. 블록체인에 포함된 하나 이상의 블록은 블록체인 네트워크에 포함된 복수의 노드에 각각 독립적으로 저장되거나 여러 노드에 걸쳐 분산 저장될 수 있다. 블록은 다수의 거래 기록을 포함하는 데이터 구조체이다. 각 블록은 거래 데이터, 타임스탬프, 이전 블록의 해시값, 그리고 블록 자체의 해시값을 포함한다. 이 해시값은 블록의 무결성을 보장하며, 블록 체인 상에서 이전 블록과의 연결 고리 역할을 한다. 이러한 구조는 블록이 타임스탬프와 연결되어 연속적으로 체인으로 연결되는 방식으로 이루어지며, 모든 블록은 체인의 변경을 방지하는 보안 속성을 갖추게 된다. 예를 들어, 블록은 블록 해시값, 블록 헤더(header) 또는 블록 바디(body)를 포함할 수 있다. 블록 해시값은 블록을 식별할 수 있는 고유한 정보로서, 예를 들어 256비트로 표현되는 문자열일 수 있다. 블록 헤더는 예를 들어, 소프트웨어 또는 프로토콜의 버전 정보, 블록체인상에서의 블록의 연결 순서에 따른 이전 블록의 해시값, 머클 루트(merkle root), 블록이 생성된 시간을 지시하는 시간 정보, 계산의 난이도를 나타내는 비츠(bits) 또는 블록체인에 새로운 블록을 추가하는 채굴 작업에서 필요한 값인 논스(nonce) 중 적어도 하나를 포함할 수 있다. 블록 바디는 적어도 하나의 트랜잭션(transaction)을 포함할 수 있다. 트랜잭션은 특정한 자료 구조를 갖는 데이터들의 집합으로서, 블록 바디에 저장되는 정보의 단위일 수 있다. 트랜잭션은 토큰의 생성 또는 거래에 관한 정보를 포함할 수 있다.The term "blockchain network" used in the present disclosure may include two or more nodes that manage a blockchain. Here, a block may refer to a specific data type. In addition, a blockchain may refer to a data structure in which one or more blocks are linked in a chain form. One or more blocks included in a blockchain may be independently stored in multiple nodes included in the blockchain network, or may be distributedly stored across multiple nodes. A block is a data structure that includes multiple transaction records. Each block includes transaction data, a timestamp, a hash value of a previous block, and a hash value of the block itself. This hash value ensures the integrity of the block and acts as a link to the previous block in the blockchain. This structure is formed in such a way that blocks are linked to timestamps and are continuously linked in a chain, and all blocks have a security property that prevents alteration of the chain. For example, a block may include a block hash value, a block header, or a block body. The block hash value is unique information that can identify a block, and may be, for example, a string expressed in 256 bits. The block header may include at least one of, for example, version information of software or protocol, a hash value of a previous block according to the block connection order on the blockchain, a merkle root, time information indicating the time when the block was created, bits indicating the difficulty of calculation, or a nonce which is a value required for mining to add a new block to the blockchain. The block body may include at least one transaction. A transaction may be a set of data having a specific data structure and may be a unit of information stored in the block body. A transaction may include information regarding the creation or transaction of a token.

블록체인 네트워크에 포함된 적어도 하나의 노드 각각은 블록체인 네트워크의 "참여자"로 지칭될 수 있다. 블록체인 네트워크에 포함된 적어도 하나의 노드는 계층 구조에 의해 작동될 수 있다. 이 계층 구조는, 예를 들어, 블록체인 네트워크에 의해 다뤄지는 데이터의 구조를 정의하고 데이터를 관리하는 데이터 계층, 블록의 유효성을 검증하고 블록을 생성하는 마이닝을 수행하고 마이닝 과정에서 채굴자에게 지급되는 수수료의 처리를 담당하는 합의 계층, P2P 네트워크 프로토콜, 해시 함수, 전자서명, 인코딩 및 공통 저장소를 구현하거나 관리하는 공통 계층, 또는 다양한 어플리케이션이 생성되거나 처리되는 응용 계층 중 적어도 하나를 포함할 수 있다.Each of at least one node included in the blockchain network may be referred to as a "participant" of the blockchain network. The at least one node included in the blockchain network may operate by a hierarchy. The hierarchy may include, for example, at least one of a data layer that defines the structure of data handled by the blockchain network and manages the data, a consensus layer that verifies the validity of blocks, performs mining to generate blocks, and is responsible for processing fees paid to miners during the mining process, a common layer that implements or manages P2P network protocols, hash functions, digital signatures, encoding, and common storage, or an application layer where various applications are created or processed.

블록체인 네트워크에 포함된 적어도 하나의 노드는 블록체인상에 기록된 트랜잭션을 공유하거나 저장할 수 있다. 또한, 블록체인 네트워크에 포함된 적어도 하나의 노드는 블록체인의 합의 알고리즘을 통해 블록체인 네트워크로 전송된 트랜잭션에 대해 검증 작업을 수행하고, 검증이 완료된 경우 검증된 트랜잭션을 블록체인상의 일 블록에 기록하는 기능을 수행할 수 있다. 블록체인 네트워크에 의해 수행되는 합의 알고리즘의 종류에는 제한이 없으며, 통상의 기술자가 채택하고 변형할 수 있는 모든 종류의 합의 알고리즘이 수행될 수 있다. At least one node included in the blockchain network can share or store a transaction recorded on the blockchain. In addition, at least one node included in the blockchain network can perform a verification task on a transaction transmitted to the blockchain network through the blockchain consensus algorithm, and, when verification is complete, can perform a function of recording the verified transaction in a block on the blockchain. There is no limitation on the type of consensus algorithm performed by the blockchain network, and all types of consensus algorithms that can be adopted and modified by a person skilled in the art can be performed.

본 개시에서, "스마트 계약"은 예컨대 솔리디티(Solidity) 등의 프로그래밍 언어로 작성된 명세서 또는 스크립트로서, 블록체인 네트워크에 포함된 적어도 하나의 노드에 의해 실행되는 가상 머신(Virtual Machine)상에서 동작하는 프로그램 또는 어플리케이션일 수 있다. 스마트 계약은 특정 조건이 만족되면 특정 동작이 실행되도록 작성될 수 있다. 이 때 특정 조건이란, 예를 들어, 특정 종류의 토큰이 입력되거나 특정한 형식의 파일이 입력되는 등의 조건일 수 있다. 또한 특정 동작이란 예를 들어, 특정 종류의 토큰을 블록체인 네트워크의 임의의 노드로 전송하는 등의 동작일 수 있다. 블록체인 네트워크에 포함된 적어도 하나의 노드 각각은 스마트 계약을 저장할 수 있다. 이를 통해 블록체인 네트워크에 포함된 적어도 하나의 노드는 동일한 스마트 계약을 공유할 수 있다. 또한, 스마트 계약은 블록체인 네트워크에 의해 관리되는 블록체인상의 일 블록에 기록될 수 있다.In the present disclosure, a "smart contract" may be a specification or script written in a programming language such as Solidity, and may be a program or application that operates on a virtual machine executed by at least one node included in a blockchain network. A smart contract may be written so that a specific action is executed when a specific condition is satisfied. In this case, the specific condition may be, for example, a condition such as a specific type of token being input or a file in a specific format being input. In addition, the specific action may be, for example, an action such as transmitting a specific type of token to an arbitrary node of the blockchain network. Each of at least one node included in the blockchain network may store a smart contract. Through this, at least one node included in the blockchain network may share the same smart contract. In addition, a smart contract may be recorded in a block on a blockchain managed by the blockchain network.

본 개시에서, "디지털 자산 지갑"(이하 '지갑'이라 한다)은 전자적인 형태로 개인의 디지털 자산을 안전하게 보관하고 관리하는 도구일 수 있다. 지갑은 암호 화폐나 디지털 자산과 관련된 정보를 저장하고 관리할 수 있다. 지갑은 각각의 주소를 가지고 있으며, 노드가 특정 사용자에게 대체 불가능 토큰을 전송할 경우, 해당 사용자의 지갑 주소에 대체 불가능 토큰을 전송할 수 있다.In this disclosure, a "digital asset wallet" (hereinafter referred to as "wallet") may be a tool for safely storing and managing an individual's digital assets in electronic form. The wallet may store and manage information related to cryptocurrency or digital assets. Each wallet has its own address, and when a node transfers a non-fungible token to a specific user, the non-fungible token may be transferred to the wallet address of the user.

본 개시에서, "대체 불가능 토큰(Non-Fungible Token, NFT)"은 디지털 자산의 소유권을 나타내는 블록체인 기반의 토큰이다. 각각의 대체 불가능 토큰은 서로 대체가 불가능하며 고유한 값을 가진다. 이는 전통적인 암호화폐와 구별되는 주요 특징으로, 암호화폐는 일정 단위마다 동일한 가치를 가지고 상호 교환 가능하다. 대체 불가능 토큰은 주로 공연, 예술작품, 음악, 게임 아이템 및 기타 수집 가능한 디지털 항목의 소유권 증명으로 사용된다. 대체 불가능 토큰은 블록체인 네트워크에 기록되어 각각의 소유자 변경이 공개적으로 검증가능하게 된다. In this disclosure, a "Non-Fungible Token (NFT)" is a blockchain-based token that represents ownership of a digital asset. Each non-fungible token cannot be replaced with another and has a unique value. This is a key feature that distinguishes it from traditional cryptocurrencies, which have the same value for each unit and are interchangeable. Non-fungible tokens are primarily used as proof of ownership for performances, artwork, music, game items, and other collectible digital items. Non-fungible tokens are recorded on a blockchain network, so that each change of ownership is publicly verifiable.

대체 불가능 토큰의 생성과 거래는 블록체인 네트워크의 스마트 계약 기능을 활용하여 이루어진다. 스마트 계약은 대체 불가능 토큰의 생성, 전송 및 소멸과 같은 작업을 자동으로 실행하는 코드로 구성된다. The creation and trading of non-fungible tokens are done by utilizing the smart contract function of the blockchain network. Smart contracts consist of code that automatically executes tasks such as the creation, transfer, and destruction of non-fungible tokens.

본 개시에서, QR 코드는 퀵 리스폰스(Quick Response) 코드라 알려진 이종의 매트릭스 바코드이다. QR 코드는 검정과 흰색의 정사각형 패턴을 이용하여 데이터를 기록하며, 즉시 읽을 수 있고 빠르게 데이터를 처리할 수 있다는 특징을 가지고 있다. QR 코드는 그 구조상 가로, 세로 두 방향으로 데이터를 저장할 수 있어 기존의 바코드보다 훨씬 많은 정보를 담을 수 있다. 사용자는 QR 코드 리더기를 이용하여 QR 코드를 스캔하고 정보를 신속하게 얻을 수 있다. In this disclosure, QR code is a heterogeneous matrix barcode known as Quick Response code. QR code records data using a black and white square pattern, and has the characteristics of being able to read immediately and process data quickly. QR code can store data in both horizontal and vertical directions due to its structure, so it can contain much more information than existing barcodes. A user can scan a QR code using a QR code reader and quickly obtain information.

이하, 첨부한 도면들을 참조하여, 본 개시의 실시예들을 설명한다. 첨부된 도면에서, 동일하거나 대응하는 구성요소에는 동일한 참조부호가 부여되어 있다. 또한, 이하의 실시예들의 설명에 있어서, 동일하거나 대응하는 구성요소를 중복하여 기술하는 것이 생략될 수 있다. 그러나, 구성요소에 관한 기술이 생략되어도, 그러한 구성요소가 어떤 실시예에 포함되지 않는 것으로 의도되지는 않는다.Hereinafter, embodiments of the present disclosure will be described with reference to the attached drawings. In the attached drawings, identical or corresponding components are given the same reference numerals. In addition, in the description of the embodiments below, redundant description of identical or corresponding components may be omitted. However, even if the description of a component is omitted, it is not intended that such a component is not included in any embodiment.

도 1은 본 개시의 다양한 실시예에 따른 티켓의 유효성을 판단하는 시스템을 도시한 도면이다. 시스템은, 장치(110), 장치에 연결된 코드 인식 장치(111), 단말(120), 서버(130), 블록체인 네트워크(140) 및/또는 블록체인 네트워크(140)에 포함된 노드들(141)을 포함할 수 있다. FIG. 1 is a diagram illustrating a system for determining the validity of a ticket according to various embodiments of the present disclosure. The system may include a device (110), a code recognition device (111) connected to the device, a terminal (120), a server (130), a blockchain network (140), and/or nodes (141) included in the blockchain network (140).

장치(110)는 티켓의 유효성을 판단하는 장치일 수 있다. 예를 들어, 장치(110)는 이벤트 장소에 설치된 장치일 수 있다. 장치(110)는 코드 인식 장치(111)를 포함할 수 있다. 장치(110)는 코드 인식 장치(111)를 통해 획득한 티켓 정보를 이용하여 티켓의 유효성을 판단할 수 있다. 장치(110)와 서버(130)는 컴퓨터 네트워크(150)를 통해서 서로 연결되어 티켓 정보를 송수신할 수 있다. 코드 인식 장치(111)는 다양한 방식으로 단말(120)로부터 티켓 정보를 획득할 수 있다. 예를 들어, 코드 인식 장치(111)는 QR 코드, 바코드, NFC(Near-field communication) 통신 등을 이용하여 단말(120)로부터 티켓 정보를 획득할 수 있다. 본 개시에서 장치(110) 또는 코드 인식 장치(111)는 "리더기"라는 용어로 지칭될 수 있다.The device (110) may be a device that determines the validity of a ticket. For example, the device (110) may be a device installed at an event venue. The device (110) may include a code recognition device (111). The device (110) may determine the validity of a ticket using ticket information obtained through the code recognition device (111). The device (110) and the server (130) may be connected to each other through a computer network (150) to transmit and receive ticket information. The code recognition device (111) may obtain ticket information from the terminal (120) in various ways. For example, the code recognition device (111) may obtain ticket information from the terminal (120) using a QR code, a barcode, NFC (Near-field communication), etc. In the present disclosure, the device (110) or the code recognition device (111) may be referred to as a “reader.”

티켓 정보는 티켓의 유효성을 판단하는데에 사용되는 정보를 포함할 수 있다. 예를 들어, 티켓 정보는 이벤트와 관련된 스마트 계약의 주소, 티켓 정보에 대응하는 대체 불가능 토큰의 식별 데이터, 대체 불가능 토큰의 메타 데이터 또는 사용자 식별 데이터 중 적어도 하나를 포함할 수 있다. 스마트 계약의 주소는 블록체인 네트워크 상의 해당 스마트 계약을 지시하는 고유의 식별자일 수 있다. 스마트 계약의 주소는 스마트 계약이 실행되거나 상호 작용하는 데 필요한 주소이며, 토큰의 거래나 토큰의 거래 내역을 기록하기 위해 필요한 정보를 포함한다. 스마트 계약의 주소는 일련의 문자와 숫자를 포함할 수 있고, 노드들(141) 중 적어도 하나는 해당 스마트 계약의 주소를 이용하여 스마트 계약의 내용 및 조건을 확인하거나 변화를 추적할 수 있다. 대체 불가능 토큰의 식별 데이터는 특정한 정보나 항목을 고유하게 식별하는데 사용되는 고유한 데이터로서, 예를 들어 대체 불가능 토큰의 아이디를 포함할 수 있다. 대체 불가능 토큰의 메타 데이터는 대체 불가능 토큰이 발행된 시간, 발행자 정보, 거래 내역, 대여 정보 또는 소유권 중 적어도 하나와 관련된 데이터 등을 포함할 수 있다. 본 개시에서 대체 불가능 토큰의 메타 데이터는 티켓 관련 메타 데이터일 수 있다. 티켓 관련 메타 데이터는 해당 대체 불가능 토큰에 대응되는 이벤트의 티켓에 관한 정보를 포함할 수 있다. 사용자 식별 데이터는 사용자를 식별하기 위한 데이터로서, 예를 들어, 사용자의 아이디 또는 사용자의 지갑 주소 중 적어도 하나일 수 있다.The ticket information may include information used to determine the validity of the ticket. For example, the ticket information may include at least one of the address of a smart contract related to the event, identification data of a non-fungible token corresponding to the ticket information, metadata of the non-fungible token, or user identification data. The address of the smart contract may be a unique identifier indicating the corresponding smart contract on the blockchain network. The address of the smart contract is an address required for the smart contract to be executed or interacted with, and includes information required to record token transactions or transaction history of the token. The address of the smart contract may include a series of letters and numbers, and at least one of the nodes (141) may use the address of the corresponding smart contract to check the contents and conditions of the smart contract or track changes. The identification data of the non-fungible token is unique data used to uniquely identify specific information or items, and may include, for example, an ID of the non-fungible token. The metadata of the non-fungible token may include data related to at least one of the time the non-fungible token was issued, issuer information, transaction history, rental information, or ownership. In the present disclosure, the metadata of the non-fungible token may be ticket-related metadata. Ticket-related metadata may include information about a ticket for an event corresponding to the non-fungible token. User identification data may be data for identifying a user, such as at least one of the user's ID or the user's wallet address.

단말(120)은 사용자의 단말로서, 서비스를 이용하거나 이벤트에 입장하기 위해 티켓을 소유하거나 대여 받은 사용자의 단말일 수 있다. 단말(120)의 화면에는 코드가 표출될 수 있다. 예를 들어 단말(120)의 화면에는 QR 코드가 표출될 수 있고, QR 코드는 코드 인식 장치(111)에 의해 인식될 수 있다.The terminal (120) is a user's terminal, and may be a terminal of a user who owns or has borrowed a ticket to use a service or enter an event. A code may be displayed on the screen of the terminal (120). For example, a QR code may be displayed on the screen of the terminal (120), and the QR code may be recognized by a code recognition device (111).

서버(130)는 이벤트와 관련된 다양한 프로세스를 관리하는 장치일 수 있다. 예를 들어 서버(130)는 이벤트와 관련된 스마트 계약을 발행하거나, 스마트 계약에 의해 발행된 하나 이상의 대체 불가능 토큰 각각에 대응하는 티켓의 정보를 관리하거나, 장치(110)에 티켓 정보를 전송하는 장치일 수 있다.The server (130) may be a device that manages various processes related to an event. For example, the server (130) may be a device that issues a smart contract related to an event, manages information on tickets corresponding to each of one or more non-fungible tokens issued by a smart contract, or transmits ticket information to the device (110).

블록체인 네트워크(140)에 포함된 한 노드들(141) 중 적어도 하나는 블록체인 네트워크(140)에 참여한 한 참여자의 장치를 의미할 수 있다. 노드들(141) 중 적어도 하나는 블록체인 네트워크(140)를 구성하는 한 요소일 수 있다. 노드들(141) 중 적어도 하나는 블록체인 네트워크(140)의 블록체인을 유지하기 위한 연산을 수행할 수 있다. 예를 들어 블록체인 네트워크(140)의 임의의 한 노드는 해당 블록체인의 신규 블록을 생성할 수 있고, 신규 블록은 분산합의 과정을 통하여 블록체인 네트워크의 다른 노드들 간에 공유되고 블록체인의 다음 블록으로 연결될 수 있다. 즉, 노드들(141) 중 적어도 하나는 트랜잭션과 그 트랜잭션이 기록되는 블록을 생성하거나 검증하거나 전파하는 등의 동작을 수행할 수 있다. 노드들(141) 중 적어도 하나는, 서버(110)와 상호 작용함으로써 대체 불가능 토큰의 발행을 수행할 수 있다. 대체 불가능 토큰의 발행은 발행자가 스마트 계약을 이용하여 특정 개수의 대체 불가능 토큰을 생성하고 발행자의 지갑에 생성된 대체 불가능 토큰들을 보관하는 과정을 의미할 수 있다.At least one of the nodes (141) included in the blockchain network (140) may mean a device of a participant participating in the blockchain network (140). At least one of the nodes (141) may be an element constituting the blockchain network (140). At least one of the nodes (141) may perform an operation for maintaining the blockchain of the blockchain network (140). For example, any one node of the blockchain network (140) may create a new block of the corresponding blockchain, and the new block may be shared among other nodes of the blockchain network through a distributed consensus process and may be connected to the next block of the blockchain. That is, at least one of the nodes (141) may perform an operation such as creating, verifying, or propagating a transaction and a block in which the transaction is recorded. At least one of the nodes (141) may perform the issuance of a non-fungible token by interacting with the server (110). The issuance of a non-fungible token may refer to the process in which an issuer uses a smart contract to create a specific number of non-fungible tokens and stores the created non-fungible tokens in the issuer's wallet.

노드들(141) 중 적어도 하나는 컴퓨팅 장치로 구현될 수 있다. 예를 들어, 전술한 컴퓨팅 장치는 데스크톱 컴퓨터, 랩탑 컴퓨터 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능이 구비된 다양한 종류의 장치가 될 수 있다.At least one of the nodes (141) may be implemented as a computing device. For example, the computing device described above may be, but is not limited to, a desktop computer, a laptop computer, and the like, and may be various types of devices equipped with computing capabilities.

컴퓨터 네트워크(150)는 디지털 전기 통신망으로서, 분산되어 있는 각종 장치를 소정의 통신망으로 연결한 것을 의미한다. 컴퓨터 네트워크(150)는 근거리 통신망(Local Area Network, LAN), 광역 통신망(Wide Area Network, WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유선 또는 무선 네트워크로 구현될 수 있다.A computer network (150) is a digital telecommunications network, which means connecting various distributed devices to a given communication network. The computer network (150) can be implemented as any type of wired or wireless network, such as a local area network (LAN), a wide area network (WAN), a mobile radio communication network, Wibro (Wireless Broadband Internet), etc.

일 실시예에서, 장치(110)는 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 대체 불가능 토큰(이하, "제1 대체 불가능 토큰") 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득할 수 있다. 이벤트는 특정 주체에 의하여 일정 장소 및 일정 시간에 일어날 수 있다. 예를 들어, 이벤트는, 공연, 전시, 행사 등을 포함할 수 있다. 이벤트와 관련된 스마트 계약은 이벤트에 입장 가능한 티켓을 발행하고 관리할 수 있다. 예를 들어, 장치(110)는 블록체인 네트워크(140)의 적어도 하나의 노드들(141) 중 적어도 하나로 하여금 스마트 계약을 실행하게 할 수 있고, 이 과정에서 스마트 계약은 특정 이벤트와 연관된 하나 이상의 제1 대체 불가능 토큰을 발행할 수 있다. 예를 들어, 공연 A의 티켓이 500장인 경우, 각 티켓에 대응하는 500개의 제1 대체 불가능 토큰이 발행될 수 있다. 제1 티켓 정보는 스마트 계약에 의해 발행된 대체 불가능 토큰들 각각에 대응하는 티켓 정보의 집합일 수 있다. 제2 티켓 정보는 하나 이상의 제1 대체 불가능 토큰 중 한 대체 불가능 토큰(이하, "제2 대체 불가능 토큰")에 대응하는 티켓 정보일 수 있다.In one embodiment, the device (110) may obtain first ticket information including information corresponding to each of one or more non-fungible tokens (hereinafter, “first non-fungible tokens”) issued by a smart contract related to an event. The event may occur at a certain place and time by a certain entity. For example, the event may include a performance, an exhibition, an event, etc. The smart contract related to the event may issue and manage a ticket that can enter the event. For example, the device (110) may cause at least one of at least one node (141) of the blockchain network (140) to execute the smart contract, and in this process, the smart contract may issue one or more first non-fungible tokens associated with the specific event. For example, if there are 500 tickets for performance A, 500 first non-fungible tokens corresponding to each ticket may be issued. The first ticket information may be a set of ticket information corresponding to each of the non-fungible tokens issued by the smart contract. The second ticket information may be ticket information corresponding to one non-fungible token among one or more first non-fungible tokens (hereinafter, “second non-fungible token”).

장치(110)는 서버(130) 또는 노드들(141) 중 적어도 하나로부터 제1 티켓 정보를 수신할 수 있다. 일 실시예에서, 서버(130)는 스마트 계약을 통해 노드들(141) 중 적어도 하나로부터 제1 티켓 정보를 수신하고, 수신된 제1 티켓 정보를 장치(110)에 전송할 수 있다. 일 실시예에서, 장치(110)는 스마트 계약을 통해, 노드들(141) 중 적어도 하나로부터 제1 티켓 정보를 직접 수신할 수도 있다. 예를 들어, 장치(110)는 노드들(141) 중 적어도 하나로부터 피어 투 피어 데이터 전송 방식인 행성 간 파일 시스템(Inter Planetary File System, IPFS)을 통해 제1 티켓 정보를 수신할 수 있다.The device (110) may receive the first ticket information from at least one of the server (130) or the nodes (141). In one embodiment, the server (130) may receive the first ticket information from at least one of the nodes (141) via a smart contract and transmit the received first ticket information to the device (110). In one embodiment, the device (110) may also directly receive the first ticket information from at least one of the nodes (141) via the smart contract. For example, the device (110) may receive the first ticket information from at least one of the nodes (141) via an Inter Planetary File System (IPFS), which is a peer-to-peer data transmission method.

일 실시예에서, 장치(110)는 일정 주기마다 반복하여 제1 티켓 정보를 획득할 수 있다. 이를 통해, 장치(110)는 대체 불가능 토큰에 대응하는 티켓 정보의 변동 사항을 반영하여, 티켓의 유효성을 판단할 수 있다.In one embodiment, the device (110) can repeatedly obtain the first ticket information at regular intervals. Through this, the device (110) can determine the validity of the ticket by reflecting changes in the ticket information corresponding to the non-fungible token.

일 실시예에서, 장치(110)는 제2 대체 불가능 토큰과 연관된 사용자의 단말(120)에 표출된 코드를 인식하여 코드에 대응하는 암호화 정보(encrypted information)를 획득할 수 있다. 암호화 정보는 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 단말(120)에 의해 암호화된 정보일 수 있다. 사용자 단말(또는 단말(120))은 사용자의 소유인 단말일 필요는 없으며, 사용자의 점유 하에 있는 단말일 수도 있다. 제2 대체 불가능 토큰과 연관된 사용자의 단말(120)은 제2 대체 불가능 토큰에 대응하는 티켓을 소유한 사용자의 단말 또는 티켓을 대여한 사용자의 단말일 수 있다. 코드는 암호화 정보를 획득하기 위한 수단으로서, 코드 인식 장치(111)에 의해 인식될 수 있다. 예를 들어, 코드는 QR 코드, 바코드, RFID(radio-frequency identification) 태그에 포함된 식별 코드 등을 포함할 수 있다.In one embodiment, the device (110) may recognize a code displayed on a user's terminal (120) associated with a second non-fungible token and obtain encrypted information corresponding to the code. The encrypted information may be information encrypted by the terminal (120) based on second ticket information corresponding to the second non-fungible token. The user's terminal (or terminal (120)) does not need to be a terminal owned by the user and may be a terminal under the user's possession. The user's terminal (120) associated with the second non-fungible token may be a terminal of a user who owns a ticket corresponding to the second non-fungible token or a terminal of a user who has rented a ticket. The code may be recognized by a code recognition device (111) as a means for obtaining encrypted information. For example, the code may include a QR code, a barcode, an identification code included in an RFID (radio-frequency identification) tag, etc.

일 실시예에서, 장치(110)는 제1 티켓 정보 및 암호화 정보에 기초하여 코드가 유효한지 여부를 결정할 수 있다. 본 개시에서 코드가 유효한지 여부를 결정하는 것은 코드에 대응하는 티켓의 유효성을 결정하는 것과 동일한 의미이다. 장치(110)는 암호화 정보를 복호화하여 획득한 제2 티켓 정보와, 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보에 기초하여, 사용자 단말(120)에 표출된 코드가 유효한지 여부를 결정할 수 있다. 예를 들어, 장치(110)는 제2 티켓 정보에 포함된 다양한 정보 중의 적어도 하나 이상이 제1 티켓 정보에 존재하는지 여부에 기초하여 코드가 유효한지 여부를 결정할 수 있다.In one embodiment, the device (110) can determine whether the code is valid based on the first ticket information and the encryption information. In the present disclosure, determining whether the code is valid has the same meaning as determining the validity of a ticket corresponding to the code. The device (110) can determine whether the code displayed on the user terminal (120) is valid based on the second ticket information obtained by decrypting the encryption information and the first ticket information including information corresponding to each of one or more first non-fungible tokens. For example, the device (110) can determine whether the code is valid based on whether at least one of various pieces of information included in the second ticket information is present in the first ticket information.

도 2는 본 개시의 다양한 실시예에 따른 장치를 도시한 블록도이다. 장치(110)는, 하나 이상의 프로세서(210) 및/또는 하나 이상의 메모리(220)를 포함할 수 있다. 일 실시예에서, 장치(110)의 일부 구성 요소가 삭제되거나 다른 구성 요소(예를 들어, 출력부(240) 등)가 장치(110)에 추가될 수 있다. 또한, 추가적으로 또는 대체적으로(alternatively) 일부의 구성 요소들이 통합되어 구현되거나, 단수 또는 복수의 개체로 구현될 수 있다. 본 개시에서, 하나 이상의 프로세서(210)는 프로세서(210)라고 표현될 수 있다. 이러한 프로세서(210)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 프로세서의 집합을 의미할 수 있다. 또한, 본 개시에서, 하나 이상의 메모리(220)는 메모리(220)라고 표현될 수 있다. 이러한 메모리(220)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 메모리의 집합을 의미할 수 있다.FIG. 2 is a block diagram illustrating a device according to various embodiments of the present disclosure. The device (110) may include one or more processors (210) and/or one or more memories (220). In one embodiment, some components of the device (110) may be deleted or other components (e.g., an output unit (240), etc.) may be added to the device (110). In addition, some components may be implemented in an integrated manner or implemented as a single or multiple entities. In the present disclosure, one or more processors (210) may be referred to as a processor (210). The expression “processor (210)” may mean a set of one or more processors, unless the context clearly indicates otherwise. In addition, in the present disclosure, one or more memories (220) may be referred to as a memory (220). The expression memory (220) may mean a set of one or more memories, unless the context clearly indicates otherwise.

장치(110) 내의 적어도 일부의 구성 요소들은 버스(bus), GPIO(General Purpose Input/Output), SPI(Serial Peripheral Interface) 또는 MIPI(Mobile Industry Processor Interface) 등을 통해 서로 연결되어, 데이터 또는 시그널을 주고 받을 수 있다.At least some components within the device (110) may be connected to each other via a bus, GPIO (General Purpose Input/Output), SPI (Serial Peripheral Interface), or MIPI (Mobile Industry Processor Interface) to exchange data or signals.

프로세서(210)는, 장치(110)의 각 구성 요소들의 제어 또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있다. 구체적으로, 프로세서(210)는 다른 구성 요소로부터 수신된 소프트웨어(예를 들어, 명령, 프로그램 등)를 구동하여 프로세서(210)에 연결된 장치(110)의 적어도 하나의 구성 요소를 제어할 수 있다. 일 예로서, 프로세서(210)는 명령 또는 데이터를 메모리(220)에 로드(load)하고, 메모리(220)에 저장된 명령 또는 데이터를 처리하고, 그 처리에 따른 결과 데이터를 메모리(220)에 저장할 수 있다. 또한, 프로세서(210)는, 장치(110)의 구성 요소들과 작동적으로 연결되어 본 개시에 개시된 내용과 관련된 다양한 연산, 처리, 데이터 생성, 가공 등의 동작을 수행할 수 있다.The processor (210) may perform operations or data processing related to control or communication of each component of the device (110). Specifically, the processor (210) may control at least one component of the device (110) connected to the processor (210) by running software (e.g., commands, programs, etc.) received from another component. As an example, the processor (210) may load a command or data into the memory (220), process the command or data stored in the memory (220), and store result data according to the processing in the memory (220). In addition, the processor (210) may be operatively connected to the components of the device (110) to perform various operations, such as operations, processing, data generation, and processing, related to the contents disclosed in the present disclosure.

메모리(220)는 다양한 데이터를 저장할 수 있다. 메모리(220)에 저장되는 데이터는, 장치(110)의 적어도 하나의 구성 요소에 의해 획득되거나, 처리되거나, 사용되는 데이터로서, 소프트웨어(예를 들어, 명령, 프로그램 등)를 포함할 수 있다. 일 예로서, 메모리(220)는 프로세서(210)의 동작에 대한 명령들을 컴퓨터 프로그램으로서 저장할 수 있다. 여기서, 컴퓨터 프로그램은 메모리(220)에 로드될 때 프로세서(210)로 하여금 본 개시에 개시된 내용의 다양한 실시예에 따른 동작을 수행하도록 하는 하나 이상의 명령들을 포함할 수 있다. 즉, 프로세서(210)는 전술한 하나 이상의 명령들을 실행함으로써, 본 개시에 개시된 내용의 다양한 실시예에 따른 동작들을 수행할 수 있다. 또한, 메모리(220)는 휘발성 또는 비휘발성 메모리를 포함할 수 있다. 일 실시예에서, 명령 내지 프로그램은 메모리(220)에 저장되는 소프트웨어로서, 장치(110)의 리소스를 제어하기 위한 운영체제, 애플리케이션 또는 애플리케이션이 장치(110)의 리소스들을 활용할 수 있도록 다양한 기능을 애플리케이션에 제공하는 미들 웨어 등을 포함할 수 있다.The memory (220) can store various data. The data stored in the memory (220) is data acquired, processed, or used by at least one component of the device (110), and may include software (e.g., commands, programs, etc.). As an example, the memory (220) may store commands for the operation of the processor (210) as a computer program. Here, the computer program may include one or more commands that cause the processor (210) to perform operations according to various embodiments of the present disclosure when loaded into the memory (220). That is, the processor (210) may perform operations according to various embodiments of the present disclosure by executing the one or more commands described above. In addition, the memory (220) may include a volatile or nonvolatile memory. In one embodiment, the command or program may be software stored in the memory (220), and may include an operating system for controlling the resources of the device (110), an application, or middleware that provides various functions to the application so that the application can utilize the resources of the device (110).

일 실시예에서, 장치(110)는 통신 인터페이스(230)를 더 포함할 수 있다. 통신 인터페이스(230)는, 외부 장치(예를 들어, 서버(110) 또는 사용자 단말(120))와 유선 또는 무선 통신 채널을 설립하고, 그 외부 장치와 다양한 데이터를 송수신할 수 있다. 일 실시예에서, 통신 인터페이스(230)는 외부 장치와 유선으로 통신하기 위해서, 외부 장치와 유선 케이블로 연결되기 위한 적어도 하나의 포트를 포함할 수 있다. 이 경우, 통신 인터페이스(230)는 적어도 하나의 포트를 통하여 유선 연결된 외부 장치와 통신을 수행할 수 있다. 일 실시예에서, 통신 인터페이스(230)는 셀룰러 통신 모듈을 포함하여 셀룰러 네트워크(예를 들어, 3G, LTE, 5G, Wibro 또는 Wimax)에 연결되도록 구성될 수 있다. 일 실시예에서, 통신 인터페이스(230)는 근거리 통신 모듈을 포함하여 근거리 통신(예를 들면, Wi-Fi, Bluetooth, Bluetooth Low Energy(BLE), UWB)을 이용해 외부 장치와 데이터 송수신을 할 수 있다. 일 실시예에서, 통신 인터페이스(230)는 비접촉식 통신을 위한 비접촉 통신 모듈을 포함할 수 있다. 여기서 비접촉식 통신은, 예를 들면, NFC 통신, RFID(Radio Frequency Identification) 통신 또는 MST(Magnetic Secure Transmission) 통신과 같이 적어도 하나의 비접촉 방식의 근접 통신 기술을 포함할 수 있다. 앞서 설명된 다양한 예시들 외에도, 외부 장치와 통신하기 위한 공지된 다양한 방식으로 장치(110)가 구현될 수 있으며, 앞서 설명된 예시들에 의해 본 개시에 개시된 내용의 범위가 제한되지 않는다.In one embodiment, the device (110) may further include a communication interface (230). The communication interface (230) may establish a wired or wireless communication channel with an external device (e.g., a server (110) or a user terminal (120)) and transmit and receive various data with the external device. In one embodiment, the communication interface (230) may include at least one port for connecting to an external device with a wired cable in order to communicate with the external device via wire. In this case, the communication interface (230) may perform communication with the external device connected via wire through at least one port. In one embodiment, the communication interface (230) may include a cellular communication module and may be configured to be connected to a cellular network (e.g., 3G, LTE, 5G, Wibro, or Wimax). In one embodiment, the communication interface (230) may include a short-range communication module to transmit and receive data with an external device using short-range communication (e.g., Wi-Fi, Bluetooth, Bluetooth Low Energy (BLE), UWB). In one embodiment, the communication interface (230) may include a contactless communication module for contactless communication. The contactless communication may include at least one contactless proximity communication technology, such as NFC communication, RFID (Radio Frequency Identification) communication, or MST (Magnetic Secure Transmission) communication, for example. In addition to the various examples described above, the device (110) may be implemented in various known ways for communicating with an external device, and the scope of the present disclosure is not limited by the examples described above.

일 실시예에서, 장치(110)는 출력부(240)를 더 포함할 수 있다. 여기서 출력부(240)는, 프로세서(210)의 제어에 기반하여 다양한 화면을 표시할 수 있다. 예를 들어 출력부(240)는, 프로세서(210)의 제어에 기반하여, 플랫폼 사용자들의 토큰 보유 현황을 시각화한 대시보드를 표시할 수 있다. 이때, 대시보드를 출력부(240)에 표시하기 위해서, 예를 들어, 웹 브라우저 또는 전용 애플리케이션이 장치(110)에 설치될 수 있다. 일 실시예에서, 전술한 웹 브라우저 또는 전용 애플리케이션은, 토큰의 발행 요청 기능 또는 다른 사용자와의 커뮤니케이션 기능 등을 사용자 인터페이스를 통해 사용자에게 제공하도록 구현될 수 있다. 또한 출력부(240)는 사용자와 상호 작용이 가능한 구성으로서, 프로세서(210)의 제어에 기반하여 다양한 화면을 표시하고, 사용자로부터 사용자 입력을 수신할 수 있다. 이러한 출력부(240)는, 다양한 외부 객체(예를 들어, 손가락, 스타일러스 등)의 접촉 또는 근접을 인식할 수 있는 터치 센서 패널(Touch Sensor Panel, TSP)의 형태로 구현될 수 있다. 여기서, 터치 센서 패널은 다양한 구조 및 타입을 가질 수 있으며, 본 개시에 개시된 내용은 터치 센서 패널의 구조 및 타입과 관계없이 모두 적용될 수 있다. 출력부(240)는 실시예에 따라 장치(110)에서 생략될 수 있다.In one embodiment, the device (110) may further include an output unit (240). Here, the output unit (240) may display various screens based on the control of the processor (210). For example, the output unit (240) may display a dashboard visualizing the token holding status of platform users based on the control of the processor (210). At this time, in order to display the dashboard on the output unit (240), for example, a web browser or a dedicated application may be installed on the device (110). In one embodiment, the aforementioned web browser or dedicated application may be implemented to provide a token issuance request function or a communication function with other users to the user through a user interface. In addition, the output unit (240) is a configuration capable of interacting with the user, and may display various screens based on the control of the processor (210) and receive user input from the user. This output unit (240) may be implemented in the form of a touch sensor panel (TSP) that can recognize contact or proximity of various external objects (e.g., fingers, stylus, etc.). Here, the touch sensor panel may have various structures and types, and the contents disclosed in the present disclosure may be applied regardless of the structure and type of the touch sensor panel. The output unit (240) may be omitted from the device (110) depending on the embodiment.

일 실시예에서, 장치(110)는 입력부(250)(예를 들어, 마우스, 키보드 등)를 더 포함할 수 있다. 여기서, 입력부(250)는 장치(110)의 구성 요소(예를 들어, 프로세서(210))에 사용될 데이터를 장치(110)의 외부(예를 들어, 사용자)로부터 수신할 수 있다. 입력부(250)는 실시예에 따라 장치(110)에서 생략될 수 있다.In one embodiment, the device (110) may further include an input unit (250) (e.g., a mouse, a keyboard, etc.). Here, the input unit (250) may receive data to be used for a component of the device (110) (e.g., a processor (210)) from an external source of the device (110) (e.g., a user). The input unit (250) may be omitted from the device (110) depending on the embodiment.

일 실시예에서, 단말(120) 및 서버(130) 각각은 하나 이상의 프로세서 및/또는 하나 이상의 메모리를 포함할 수 있다. 단말(120) 및 서버(130)는 통신 인터페이스, 출력부 및/또는 입력부를 더 포함할 수 있다. 전술한 단말(120) 및 서버(130)의 구성은 예시일 뿐이며 본 개시는 이에 제한되지 않는다.In one embodiment, each of the terminal (120) and the server (130) may include one or more processors and/or one or more memories. The terminal (120) and the server (130) may further include a communication interface, an output port, and/or an input port. The configuration of the terminal (120) and the server (130) described above is only an example and the present disclosure is not limited thereto.

도 3은 본 개시의 다양한 실시예에 따른 대체 불가능 토큰을 이용하여 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다. 일 실시예에서, 서버(130)는 제2 티켓 정보를 단말(120)에 전송할 수 있다(S331). 서버(130)는 단말(120)로부터 수신한 티켓 구매 요청에 응답하여, 제2 대체 불가능 토큰에 대응하는 사용자 식별 데이터를 해당 단말(120)의 사용자에 대응하는 사용자 식별 데이터로 업데이트할 수 있다. 그리고 서버(130)는 제2 티켓 정보를 단말(120)에 전송할 수 있다. 제2 티켓 정보를 전송하면서, 서버(130)는 제2 티켓 정보에 기초하여 제1 티켓 정보를 업데이트할 수 있다. 제1 티켓 정보를 업데이트하는 동작은 노드들(141) 중 적어도 하나가 스마트 계약을 실행함으로써 수행될 수 있고, 이 경우, 서버(130)는 스마트 계약의 실행 결과 노드들(141) 중 적어도 하나로부터 업데이트된 제1 티켓 정보를 수신할 수 있다.FIG. 3 is a flowchart illustrating a method for determining the validity of a ticket using a non-fungible token according to various embodiments of the present disclosure. In one embodiment, the server (130) may transmit second ticket information to the terminal (120) (S331). In response to a ticket purchase request received from the terminal (120), the server (130) may update user identification data corresponding to the second non-fungible token with user identification data corresponding to a user of the terminal (120). In addition, the server (130) may transmit second ticket information to the terminal (120). While transmitting the second ticket information, the server (130) may update first ticket information based on the second ticket information. The operation of updating the first ticket information may be performed by at least one of the nodes (141) executing a smart contract, and in this case, the server (130) may receive updated first ticket information from at least one of the nodes (141) as a result of executing the smart contract.

단말(120)은 제2 티켓 정보를 수신할 수 있다(S311). 단말(120)은 제1 암호키에 기초하여 제2 티켓 정보를 1차 암호화할 수 있다(S312). 암호키는 정보를 암호화하거나 복호화하기 위해 사용되는 특정한 코드 또는 비밀번호이다. 암호키는 정보를 보호하고 권한이 있는 사용자만 접근 가능하도록 하는데 사용될 수 있다. 본 개시에서는 설명의 편의를 위해, 단말(120)에 저장된 암호키를 제1 암호키라하고, 장치(110)에 저장된 암호키를 제2 암호키라 한다. 제1 암호키와 제2 암호키는 동일할 수도 있고, 다를 수도 있다. 제1 암호키 및 제2 암호키가 동일한 경우, 제1 암호키 및 제2 암호키는 대칭키 또는 세션키 중 적어도 하나를 포함할 수 있다. 대칭키는 암호문을 생성하거나 해독하는 데 사용되는 키로, 암호화된 데이터를 복호화하기 위한 동일한 암호키일 수 있다. 대칭키를 공유하는 당사자들만이 암호화 정보를 복호화할 수 있다. 세션키는 사용자 인증을 위한 인증 수단으로 사용되며, 세션 통신의 보안성을 유지하는데 사용되는 암호키이다. 세션키는 세션 간의 통신을 보호하고 암호화하여 보안을 유지한다. 제1 암호키 및 제2 암호키가 다른 경우, 제1 암호키는 공개키이고 제2 암호키는 개인키일 수 있다. 공개키와 개인키는 비대칭키일 수 있다. 공개키는 암호화에 사용되며, 통신 상대방에게 제공되어 정보를 안전하게 전송할 수 있다. 반면 개인키는 복호화에 사용되며, 키를 소유한 당사자에 의해서만 사용되어 정보를 해독할 수 있다. The terminal (120) can receive the second ticket information (S311). The terminal (120) can first encrypt the second ticket information based on the first encryption key (S312). The encryption key is a specific code or password used to encrypt or decrypt information. The encryption key can be used to protect the information and allow only authorized users to access it. In the present disclosure, for convenience of explanation, the encryption key stored in the terminal (120) is referred to as the first encryption key, and the encryption key stored in the device (110) is referred to as the second encryption key. The first encryption key and the second encryption key may be the same or different. When the first encryption key and the second encryption key are the same, the first encryption key and the second encryption key may include at least one of a symmetric key or a session key. The symmetric key is a key used to generate or decrypt a ciphertext, and may be the same encryption key for decrypting encrypted data. Only parties sharing the symmetric key can decrypt the encrypted information. The session key is used as an authentication means for user authentication and is an encryption key used to maintain the security of session communication. The session key protects and encrypts communication between sessions to maintain security. If the first encryption key and the second encryption key are different, the first encryption key may be a public key and the second encryption key may be a private key. The public key and the private key may be asymmetric keys. The public key is used for encryption and can be provided to the communication partner to safely transmit information. On the other hand, the private key is used for decryption and can be used only by the party owning the key to decrypt information.

일 실시예에서, 서버(130)는 제2 암호키를 장치(110)에 전송할 수 있다(S332). 장치(110)는 제2 암호키를 저장할 수 있다(S351). In one embodiment, the server (130) can transmit a second encryption key to the device (110) (S332). The device (110) can store the second encryption key (S351).

동작(S331) 및 동작(S332)의 실행 순서는 바뀔 수 있으며, 실행 순서가 도 3의 흐름도에 의해 제한되지 않는다. 동작(S331)는 단말(120)로부터 티켓 구매 요청을 수신할 때 수행되는 것이므로, 흐름도의 어떤 시점에서도 수행될 수 있다. The execution order of operations (S331) and (S332) can be changed, and the execution order is not limited by the flow chart of Fig. 3. Since operation (S331) is performed when a ticket purchase request is received from the terminal (120), it can be performed at any point in the flow chart.

일 실시예에서, 단말(120)은 제1 시간 정보에 기초하여 1차 암호화된 제2 티켓 정보를 2차 암호화하여 암호화 정보를 생성할 수 있다. 시간 정보는 시간 간격마다 생성되는 임의의 값일 수 있다. 예를 들어, 시간 정보는 10시 1분 00초 - 10시 1분 59초 사이 시간 간격에 대응하는 값 "130293", 다음 시간 간격인 10시 2분 00초 - 10시 2분 59초 사이 시간 간격에 대응하는 값 "920313"을 포함할 수 있다. 따라서, 일정 규칙에 따라, 시간 정보는 각 시간 간격마다 생성된 값이며, 어떤 장치에서 생성되는지와 무관하게 특정 시간 간격에서 생성된 값는 모두 동일할 수 있다. 예를 들어, 장치(110) 및 단말(120)에서 10시 1분 00초 - 10시 1분 59초 사이 시간 간격에서는 값 "130293"가 동일하게 생성될 수 있다. 본 개시에서는, 설명의 편의를 위해 제1 시간 정보를 단말(120)에서 생성된 시간 정보로 하고, 제2 시간 정보를 장치(110)에서 생성된 시간 정보로 한다. In one embodiment, the terminal (120) may generate encrypted information by secondarily encrypting the first encrypted second ticket information based on the first time information. The time information may be an arbitrary value generated at each time interval. For example, the time information may include a value “130293” corresponding to a time interval between 10:01:00 and 10:01:59, and a value “920313” corresponding to a time interval between 10:02:00 and 10:02:59, which is a next time interval. Therefore, according to a certain rule, the time information is a value generated at each time interval, and all values generated at a specific time interval may be the same regardless of which device generates it. For example, the value “130293” may be generated identically at the time interval between 10:01:00 and 10:01:59 in the device (110) and the terminal (120). In the present disclosure, for convenience of explanation, the first time information is time information generated in the terminal (120), and the second time information is time information generated in the device (110).

일 실시예에서, 서버(130)는 스마트 계약으로부터 제1 티켓 정보를 수신하고, 수신된 제1 티켓 정보를 장치(110)에 전송할 수 있다(S333). 서버(110)가 스마트 계약으로부터 제1 티켓 정보를 수신하는 것은 노드들(141) 중 적어도 하나가 스마트 계약을 실행하여, 노드들(141) 중 적어도 하나로부터 제1 티켓 정보를 서버(110)가 수신하는 것을 의미할 수 있다. 장치(110)는 서버(130)로부터 제1 티켓 정보를 획득하고 저장할 수 있다(S352). 다른 예를 들어, 장치(110)는 노드들(141) 중 적어도 하나로부터 제1 티켓 정보를 수신할 수도 있다.In one embodiment, the server (130) may receive first ticket information from the smart contract and transmit the received first ticket information to the device (110) (S333). The server (110) receiving the first ticket information from the smart contract may mean that at least one of the nodes (141) executes the smart contract, so that the server (110) receives the first ticket information from at least one of the nodes (141). The device (110) may obtain and store the first ticket information from the server (130) (S352). As another example, the device (110) may also receive the first ticket information from at least one of the nodes (141).

일 실시예에서, 장치(110)는 제1 티켓 정보를 제1 시점(301) 이전에 획득할 수 있다. 제1 시점(301)은 이벤트의 시간 기간으로부터 미리 결정된 시간 이전의 시점일 수 있다. 이벤트에 수많은 인파가 몰려들면, 트래픽 증가로 인해 이벤트 장소에서 네트워크에의 접속이 차단될 수 있다. 따라서, 장치(110), 단말(120) 및 서버(130) 사이에 컴퓨터 네트워크(150)를 통한 통신이 불가능해질 수 있다. 따라서, 서버(130)가 티켓의 유효성을 판단하면, 이벤트 장소에서 사용자들의 티켓의 유효성을 판단할 수 없게 되어 이벤트 진행이 어려워질 수 있다. 이러한 경우에도 장치(110)는 단말(120)에 표출된 코드를 인식하여 코드가 유효한지 여부를 결정해야 이벤트가 원활하게 진행될 수 있다. 이를 위해, 장치(110)는 이벤트의 시작 시간으로부터 미리 결정된 시간 이전의 시점 이전에 가장 최근의 제1 티켓 정보를 수신하여 저장할 수 있다. 즉, 제1 시점(301)은 트래픽 증가로 인해 이벤트 장소에서 네트워크에의 접속이 차단될 것으로 예상되는 시점 이전의 일 시점일 수 있다. 장치(110)는 해당 제1 티켓 정보를 이용하여 컴퓨터 네트워크(150)에 접속이 불가능한 상황에서도, 티켓의 유효성을 결정할 수 있다.In one embodiment, the device (110) may obtain the first ticket information prior to the first time point (301). The first time point (301) may be a time point prior to a predetermined time period from the time of the event. If a large number of people gather at the event, network access at the event venue may be blocked due to increased traffic. Accordingly, communication via the computer network (150) between the device (110), the terminal (120), and the server (130) may become impossible. Accordingly, if the server (130) determines the validity of the ticket, the event venue may not be able to determine the validity of the users' tickets, making it difficult to proceed with the event. Even in this case, the device (110) must recognize the code displayed on the terminal (120) and determine whether the code is valid so that the event can proceed smoothly. To this end, the device (110) may receive and store the most recent first ticket information prior to a predetermined time period from the start time of the event. That is, the first point in time (301) may be a point in time before the point in time at which access to the network at the event venue is expected to be blocked due to increased traffic. The device (110) can determine the validity of the ticket even in a situation where access to the computer network (150) is impossible by using the first ticket information.

하지만, 제1 시점 이후에, 티켓의 매매로 인해, 티켓의 소유권이 변동되어, 제2 티켓 정보에 포함된 대체 불가능 토큰의 식별 데이터와 사용자 식별 데이터의 대응 관계가 변동될 수 있다. 그렇다면, 장치(110)에 저장된 제1 티켓 정보에는 제1 시점 이전에 획득한 제1 티켓 정보에 변동된 대응 관계가 없으므로, 장치(110)는 해당 코드는 유효하지 않다고 결정할 수 있다. 이를 방지하기 위해, 제1 시점은 스마트 계약에 의하여 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점으로 설정될 수 있다. 따라서, 제1 시점 이후에는 티켓의 소유권이 변동되는 것을 방지할 수 있다. 장치(110)는 제1 티켓 정보를 획득하는 시점에 서버(130) 또는 스마트 계약의 주소에 티켓 거래 금지 요청을 전송할 수 있고, 해당 요청에 응답하여, 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한될 수 있다. However, after the first point in time, due to the sale of the ticket, the ownership of the ticket may change, and the correspondence relationship between the identification data of the non-fungible token included in the second ticket information and the user identification data may change. In this case, since the first ticket information stored in the device (110) does not have a changed correspondence relationship with the first ticket information acquired before the first point in time, the device (110) may determine that the code is invalid. To prevent this, the first point in time may be set as a point in time at which changes in information corresponding to each of one or more first non-fungible tokens are restricted by a smart contract. Accordingly, it is possible to prevent the ownership of the ticket from changing after the first point in time. The device (110) may transmit a ticket transaction prohibition request to the server (130) or the address of the smart contract at the time of acquiring the first ticket information, and in response to the request, changes in information corresponding to each of one or more first non-fungible tokens may be restricted.

단말(120)은 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 1차 암호화된 제2 티켓 정보를 2차 암호화하여 암호화 정보를 생성할 수 있다. 예를 들어, 제2 티켓 정보를 암호화하는 시점이란 단말(120)이 코드 생성 요청을 수신한 시점일 수 있다. 사용자는 이벤트에 입장하거나 참여하기 위해, 코드를 화면에 표출하고자 코드 생성 버튼을 선택할 수 있다. The terminal (120) may generate encrypted information by re-encrypting the first encrypted second ticket information based on the first time information for the first time interval corresponding to the time point of encrypting the second ticket information. For example, the time point of encrypting the second ticket information may be the time point at which the terminal (120) receives a code generation request. The user may select the code generation button to display the code on the screen in order to enter or participate in the event.

일 실시예에서, 암호화 정보를 획득하는 동작(S353) 내지 코드가 유효한지 여부를 결정하는 동작(S357)은 제1 시점 이후에 수행될 수 있다. In one embodiment, the operation of obtaining encrypted information (S353) or the operation of determining whether the code is valid (S357) may be performed after the first time point.

일 실시예에서, 단말(120)은 암호화 정보에 대응하는 코드를 생성하고, 화면에 코드를 표시할 수 있다(S314). 단말(120)은 코드 생성 요청에 대응하여 암호화 정보를 생성하고, 암호화 정보에 대응하는 코드를 화면에 표출할 수 있다. In one embodiment, the terminal (120) can generate a code corresponding to the encryption information and display the code on the screen (S314). The terminal (120) can generate encryption information in response to a code generation request and display the code corresponding to the encryption information on the screen.

일 실시예에서, 장치(110)는 단말(120)에 표출된 코드를 인식할 수 있다(S353). 장치(110)는 단말(120)에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득할 수 있다(S354). 일 실시예에서, 장치(110)는 암호화 정보를 복호화하는 시점에 대응되는 제2 시간 간격에 대한 제2 시간 정보에 기초하여, 암호화 정보를 1차 복호화할 수 있다(S355). 암호화 정보는, 제1 암호키 및 단말(120)이 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 암호화된 정보일 수 있다. 예를 들어, 암호화 정보는 동작(S312) 및 동작(S313)에 의해 생성된 것일 수 있다. 장치(110)는 제1 암호키와 연관된 제2 암호키에 기초하여 1차 복호화된 암호화 정보를 2차 복호화하여 제2 티켓 정보를 획득할 수 있다(S356). 장치(110)는 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정할 수 있다(S357). In one embodiment, the device (110) can recognize a code displayed on the terminal (120) (S353). The device (110) can recognize the code displayed on the terminal (120) and obtain encrypted information corresponding to the code (S354). In one embodiment, the device (110) can first decrypt the encrypted information based on second time information for a second time interval corresponding to a time point at which the encrypted information is decrypted (S355). The encrypted information may be information encrypted based on a first encryption key and first time information for a first time interval corresponding to a time point at which the terminal (120) encrypts the second ticket information. For example, the encrypted information may be generated by the operation (S312) and the operation (S313). The device (110) can secondarily decrypt the first decrypted encrypted information based on a second encryption key associated with the first encryption key to obtain second ticket information (S356). The device (110) can determine whether the code is valid based on the first ticket information and the second ticket information (S357).

일 실시예에서, 장치(110)는 암호화 정보를 복호화하는데에 실패한 경우, 코드가 유효하지 않다고 결정할 수 있다. 예를 들어, 암호화 정보를 복호화하는데에 실패한 경우는 제1 암호키와 연관되지 않은 제2 암호키에 기초하여 암호화 정보를 복호화하는 경우를 포함할 수 있다. 다른 예를 들어, 암호화 정보를 복호화하는데에 실패한 경우는 제1 시간 간격과 제2 시간 간격이 상이하여 복호화에 실패한 경우를 포함할 수 있다. 예를 들어, 제1 시간 간격이 10시 5분 00초 - 5분 59초이고, 제2 시간 간격이 10시 7분 00초 - 7분 59초인 경우, 제1 시간 간격과 제2 시간 간격이 상이하여, 장치(110)가 복호화에 실패한 경우일 수 있다.In one embodiment, the device (110) may determine that the code is invalid if it fails to decrypt the encrypted information. For example, the failure to decrypt the encrypted information may include decrypting the encrypted information based on a second encryption key that is not associated with the first encryption key. For another example, the failure to decrypt the encrypted information may include a case where the decryption fails because the first time interval and the second time interval are different. For example, if the first time interval is 10:05:00 - 5:59, and the second time interval is 10:07:00 - 7:59, the device (110) may fail to decrypt because the first time interval and the second time interval are different.

일 실시예에서, 장치(110)는 암호화 정보를 복호화하여 제2 티켓 정보를 획득할 수 있다. 장치(110)는 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 판단할 수 있다. 이하에서는 코드가 유효한지 여부를 판단하는 다양한 방법이 설명된다.In one embodiment, the device (110) can decrypt the encrypted information to obtain the second ticket information. The device (110) can determine whether the code is valid based on the first ticket information and the second ticket information. Various methods for determining whether the code is valid are described below.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 매칭되는 대체 불가능 토큰의 식별 데이터가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 제1 티켓 정보에는 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 식별 데이터가 포함될 수 있다. 예를 들어, 제1 티켓 정보는 500개의 제1 대체 불가능 토큰 각각에 대응하는 500개의 식별 데이터를 포함할 수 있다. 장치(110)는 500개의 식별 데이터 중, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터가 존재하는지 여부를 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터가 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정할 수 있다. 반대로 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터가 제1 티켓 정보에 존재하지 않는다는 결정에 따라, 코드가 유효하지 않다고 결정할 수 있다. 이를 통해, 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터를 이용하여, 제2 티켓 정보에 대응하는 티켓이 실제로 판매된 티켓인지 여부를 판단할 수 있다.In one embodiment, the device (110) may determine whether identification data of a non-fungible token that matches identification data of a second non-fungible token included in the second ticket information is present in the first ticket information. The first ticket information may include identification data corresponding to each of one or more first non-fungible tokens. For example, the first ticket information may include 500 pieces of identification data corresponding to each of 500 first non-fungible tokens. The device (110) may determine whether identification data of a second non-fungible token included in the second ticket information is present among the 500 pieces of identification data. The device (110) may determine the code to be valid based on a determination that identification data of a second non-fungible token included in the second ticket information is present in the first ticket information. Conversely, the device (110) may determine that identification data of a second non-fungible token included in the second ticket information is not present in the first ticket information. Through this, the device (110) can determine whether a ticket corresponding to the second ticket information is an actually sold ticket by using the identification data of the second non-replaceable token included in the second ticket information.

다른 실시예에서, 장치(110)는 티켓의 소유권 정보가 제1 티켓 정보에 존재하는지 여부에 기초하여, 코드가 유효한지 여부를 결정할 수 있다. 티켓의 소유권 정보는 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계로 표현될 수 있다. 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 예를 들어, 장치는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 사용자의 아이디의 대응 관계가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 다른 예를 들어, 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 사용자의 지갑 주소의 대응 관계가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 장치(110)는 제1 티켓 정보에 해당하는 대응 관계가 존재한다는 결정에 따라, 코드를 유효하다고 결정할 수 있다. 반대로, 장치(110)는 제1 티켓 정보에 해당하는 대응 관계가 존재하지 않는다는 결정에 따라, 코드가 유효하지 않다고 결정할 수 있다. 이를 통해, 장치(110)는 티켓의 소유권 정보를 대체 불가능 토큰과 관련된 정보를 이용하여 티켓의 유효성을 결정할 수 있다.In another embodiment, the device (110) may determine whether the code is valid based on whether the ownership information of the ticket exists in the first ticket information. The ownership information of the ticket may be expressed as a correspondence relationship between the identification data of the second non-fungible token and the user identification data included in the second ticket information. The device (110) may determine whether a correspondence relationship between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information. For example, the device may determine whether a correspondence relationship between the identification data of the second non-fungible token included in the second ticket information and the user ID exists in the first ticket information. For another example, the device (110) may determine whether a correspondence relationship between the identification data of the second non-fungible token included in the second ticket information and the user's wallet address exists in the first ticket information. The device (110) may determine the code is valid based on a determination that a correspondence relationship corresponding to the first ticket information exists. Conversely, the device (110) may determine that the code is invalid based on a determination that a correspondence relationship corresponding to the first ticket information does not exist. Through this, the device (110) can determine the validity of the ticket by using the ownership information of the ticket and the information associated with the non-fungible token.

다른 실시예에서, 장치(110)는 이벤트를 확인하여 코드가 유효한지 여부를 결정할 수 있다. 이벤트를 확인하는 방법은 스마트 계약의 주소를 확인하는 것일 수 있다. 그 이유는 이벤트마다 스마트 계약의 주소가 상이할 수 있기 때문이다. 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭되는지 여부를 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭된다는 결정에 따라, 코드를 유효하다고 결정할 수 있다. 반대로, 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭되지 않는다는 결정에 따라, 코드를 유효하지 않다고 결정할 수 있다. 이를 통해, 장치(110)는 이벤트를 식별하여, 티켓의 유효성을 결정할 수 있다.In another embodiment, the device (110) can determine whether the code is valid by checking the event. The method of checking the event can be to check the address of the smart contract. This is because the address of the smart contract can be different for each event. The device (110) can determine whether the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information. The device (110) can determine the code is valid based on a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information. Conversely, the device (110) can determine the code is invalid based on a determination that the address of the smart contract included in the second ticket information does not match the address of the smart contract included in the first ticket information. Through this, the device (110) can identify the event and determine the validity of the ticket.

다른 실시예에서, 장치(110)는 티켓 관련 메타 데이터를 이용하여 코드가 유효한지 여부를 결정할 수 있다. 티켓 관련 메타 데이터는 이벤트의 이름, 일정, 장소, 티켓의 좌석 식별자, 가격 또는 구매 조건 중 적어도 하나에 관한 정보를 포함할 수 있다. 예를 들어, 이벤트가 가수 A의 콘서트인 경우, 티켓 관련 메타 데이터는 콘서트 이름, 콘서트 개최 일시, 좌석 번호, 구매 가격, 구매 조건, 구매한 사용자 정보, 양도된 티켓의 경우 이전 소유자 정보 등을 포함할 수 있다. 티켓의 좌석 식별자는 좌석 번호, 좌석 유형 등을 나타낼 수 있다. 가격은 최초 판매 가격, 양도시 판매된 가격 등을 포함할 수 있다. 구매 조건은 티켓의 구매 조건으로서, 예를 들어 이벤트 개최자가 설정한 조건일 수 있다. 예를 들어, 구매 조건은 타인 양도 금지 조건, 일정 가격 이상으로 재판매 금지 등을 포함할 수 있다. 티켓 관련 메타 데이터는 이벤트와 관련된 쿠폰을 더 포함할 수 있다. 예를 들어, 쿠폰은 이벤트 내에서 이용 가능한 무료 식음료 이용권, 식음료 할인권 및/또는 이벤트 관련 상품 할인권 등을 포함할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정할 수 있다. 반대로, 장치(110)는 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 제1 티켓 정보에 존재하지 않는다는 결정에 따라, 코드를 유효하지 않은 것으로 결정할 수 있다. 티켓 관련 메타 데이터는 다양한 정보를 포함하고 있으므로, 티켓의 식별하는 고유 정보로서 활용될 수 있다. 따라서, 장치(110)는 티켓 관련 메타 데이터가 제1 티켓 정보에 존재하지 않으면, 유효하지 않은 티켓으로 결정할 수 있다.In another embodiment, the device (110) may use ticket-related metadata to determine whether a code is valid. The ticket-related metadata may include information about at least one of the event's name, schedule, location, seat identifier, price, or purchase conditions of the ticket. For example, if the event is a concert by singer A, the ticket-related metadata may include the concert name, the concert date and time, the seat number, the purchase price, the purchase conditions, the purchasing user information, and in the case of a transferred ticket, the previous owner information. The seat identifier of the ticket may indicate the seat number, the seat type, etc. The price may include the original sale price, the price sold at the time of transfer, etc. The purchase conditions may be conditions for purchasing the ticket, and may be conditions set by the event organizer, for example. For example, the purchase conditions may include conditions such as prohibiting transfer to others, prohibiting resale above a certain price, etc. The ticket-related metadata may further include coupons related to the event. For example, the coupons may include free food and beverage coupons, food and beverage discount coupons, and/or event-related product discount coupons that can be used within the event. The device (110) can determine whether metadata matching the ticket-related metadata included in the second ticket information exists in the first ticket information. The device (110) can determine the code to be valid based on a determination that metadata matching the ticket-related metadata included in the second ticket information exists in the first ticket information. Conversely, the device (110) can determine the code to be invalid based on a determination that metadata matching the ticket-related metadata included in the second ticket information does not exist in the first ticket information. Since the ticket-related metadata includes various information, it can be utilized as unique information for identifying the ticket. Therefore, the device (110) can determine the ticket to be invalid if the ticket-related metadata does not exist in the first ticket information.

다른 실시예에서, 장치(110)는 스마트 계약의 주소가 확인되고, 소유권 정보가 확인되어야 코드가 유효하다고 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소와 제1 티켓 정보에 포함된 스마트 계약의 주소가 매칭되고, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재한다는 결정에 응답하여, 코드가 유효하다고 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소와 제1 티켓 정보에 포함된 스마트 계약의 주소가 매칭되지 않거나, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재하지 않는 경우, 코드가 유효하지 않다고 결정할 수 있다. 전술한 실시예와 같이, 장치(110)는 티켓의 유효성을 판단하는 다양한 방법들을 조합할 수 있으며, 본 개시는 이에 제한되지 않는다.In another embodiment, the device (110) may determine that the code is valid only if the address of the smart contract is verified and the ownership information is verified. The device (110) may determine that the code is valid in response to a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information, and that a correspondence between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information. The device (110) may determine that the code is invalid if the address of the smart contract included in the second ticket information does not match the address of the smart contract included in the first ticket information, or if a correspondence between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information does not exist in the first ticket information. As in the above-described embodiments, the device (110) may combine various methods for determining the validity of a ticket, and the present disclosure is not limited thereto.

도 4는 본 개시의 다양한 실시예에 따른 대체 불가능 토큰을 발행하고, 대체 불가능 토큰에 대응하는 정보가 변경되는 방법을 설명하는 흐름도이다. 일 실시예에서, 서버(130)는 이벤트에 대응하는 스마트 계약을 블록체인 네트워크(140)에 포함된 노드들(141) 중 적어도 하나에 전송할 수 있다(S411). 본 개시에서, 노드들(141) 중 적어도 하나에 전송하는 동작은, 스마트 계약의 주소에 신호를 전송함으로써, 블록체인 네트워크(140)에 포함된 노드가 해당 신호에 대응하여 스마트 계약을 실행하는 것을 의미할 수 있다. 노드들(141) 중 적어도 하나는 스마트 계약을 실행하여, 선택된 개수의 티켓에 대응하는 하나 이상의 제1 대체 불가능 토큰을 발행할 수 있다(S431). 스마트 계약은 발행된 제1 대체 불가능 토큰의 개수를 포함할 수 있고, 노드들(141) 중 적어도 하나는 해당 개수만큼의 제1 대체 불가능 토큰을 발행할 수 있다.FIG. 4 is a flowchart illustrating a method of issuing a non-fungible token and changing information corresponding to the non-fungible token according to various embodiments of the present disclosure. In one embodiment, a server (130) may transmit a smart contract corresponding to an event to at least one of nodes (141) included in a blockchain network (140) (S411). In the present disclosure, the operation of transmitting to at least one of the nodes (141) may mean that a node included in the blockchain network (140) executes the smart contract in response to the signal by transmitting a signal to an address of the smart contract. At least one of the nodes (141) may execute the smart contract to issue one or more first non-fungible tokens corresponding to a selected number of tickets (S431). The smart contract may include the number of issued first non-fungible tokens, and at least one of the nodes (141) may issue the corresponding number of first non-fungible tokens.

일 실시예에서, 서버(130)는 단말(120)로부터 티켓 구매 요청을 수신하여, 단말의 사용자 식별 데이터에 기초하여 대체 불가능 토큰 매칭 요청을 노드들(141) 중 적어도 하나에 전송할 수 있다(S412). 노드들(141) 중 적어도 하나는 단말(120)의 사용자 식별 데이터에 대응된 제2 대체 불가능 토큰의 식별 데이터를 전송할 수 있다(S432). 이를 통해, 사용자의 지갑에 제2 대체 불가능 토큰이 수신될 수 있다. In one embodiment, the server (130) may receive a ticket purchase request from the terminal (120) and transmit a non-fungible token matching request to at least one of the nodes (141) based on the user identification data of the terminal (S412). At least one of the nodes (141) may transmit identification data of a second non-fungible token corresponding to the user identification data of the terminal (120) (S432). Through this, the second non-fungible token may be received in the user's wallet.

일 실시예에서, 서버(130)는 사용자 식별 데이터와 제2 대체 불가능 토큰의 식별 데이터 사이의 대응 관계에 기초하여 제1 티켓 정보를 업데이트할 수 있다(S413). 다른 실시예에서, 서버(130)는 동작(S413) 대신에 노드들(141) 중 적어도 하나로부터 업데이트된 제1 티켓 정보를 수신할 수도 있다.In one embodiment, the server (130) may update the first ticket information based on the correspondence between the user identification data and the identification data of the second non-fungible token (S413). In another embodiment, the server (130) may receive the updated first ticket information from at least one of the nodes (141) instead of the operation (S413).

일 실시예에서, 서버(130)는 제1 사용자가 제2 사용자에게 티켓을 양도한 경우, 사용자 식별 데이터를 제1 사용자의 것에서 제2 사용자의 것으로 수정하는 요청을 전송할 수 있다(S414). 노드들(141) 중 적어도 하나는 제2 대체 불가능 토큰의 식별 데이터에 대응하는 사용자 식별 데이터를 업데이트할 수 있다(S433). 노드들(141) 중 적어도 하나는 제2 대체 불가능 토큰의 식별 데이터에 대응하는 사용자 식별 데이터를 제1 사용자의 것에서 제2 사용자의 것으로 업데이트할 수 있다. 노드들(141) 중 적어도 하나는 업데이트 결과를 제1 티켓 정보에 반영할 수 있으며, 노드들(141) 중 적어도 하나는 업데이트 결과가 반영된 제1 티켓 정보를 서버(130)에 전송할 수 있다.In one embodiment, the server (130) may transmit a request to modify the user identification data from that of the first user to that of the second user if the first user transfers the ticket to the second user (S414). At least one of the nodes (141) may update the user identification data corresponding to the identification data of the second non-fungible token (S433). At least one of the nodes (141) may update the user identification data corresponding to the identification data of the second non-fungible token from that of the first user to that of the second user. At least one of the nodes (141) may reflect the update result in the first ticket information, and at least one of the nodes (141) may transmit the first ticket information with the update result reflected therein to the server (130).

일 실시예에서, 노드들(141) 중 적어도 하나는 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경을 제한할 수 있다(S434). 노드들(141) 중 적어도 하나는 제1 시점(301)에 동작(S434)를 수행할 수 있다. 스마트 계약에는 이벤트의 시작 시간으로부터 일정 시간 이전의 시점이 설정되어 있을 수 있다. 예를 들어, 이벤트의 시작 시간이 2024년 10월 1일 19:00인 경우, 1시간 이전의 시점인 2024년 10월 1일 18:00가 제1 시점으로 설정되어 있을 수 있다. 노드들(141) 중 적어도 하나는 스마트 계약에 포함된 시점에 기초하여 동작(S434)를 수행할 수 있다.In one embodiment, at least one of the nodes (141) may restrict changes to information corresponding to each of the one or more first non-fungible tokens (S434). At least one of the nodes (141) may perform an operation (S434) at a first point in time (301). A smart contract may have a point in time set that is a certain amount of time before the start time of the event. For example, if the start time of the event is 19:00 on October 1, 2024, a point in time that is 1 hour before, 18:00 on October 1, 2024, may be set as the first point in time. At least one of the nodes (141) may perform an operation (S434) based on the point in time included in the smart contract.

일 실시예에서, 장치(110)는 제1 시점(301) 이전에 제1 티켓 정보를 수신할 수 있다. 다른 실시예에서, 장치(110)는 제1 시점(301) 직후에 제1 티켓 정보를 수신할 수도 있다.In one embodiment, the device (110) may receive the first ticket information prior to the first time point (301). In another embodiment, the device (110) may receive the first ticket information immediately after the first time point (301).

도 5는 본 개시의 다양한 실시예에 시간 정보에 기초하여 티켓의 유효성을 판단하는 방법을 설명하는 도면이다. 시간의 흐름에 따라 복수의 시간 간격들(511, 512, 513, 514)이 존재할 수 있다. 그리고 복수의 시간 간격들 각각에 대응하는 시간 정보가 존재할 수 있다.FIG. 5 is a diagram illustrating a method for determining the validity of a ticket based on time information in various embodiments of the present disclosure. There may be multiple time intervals (511, 512, 513, 514) as time passes. And there may be time information corresponding to each of the multiple time intervals.

일 실시예에서, 단말(120)은 제2 티켓 정보를 암호화하는 시점(560)에 대응되는 제1 시간 간격에 대한 제1 시간 정보(510)에 기초하여 제2 티켓 정보를 암호화할 수 있다. In one embodiment, the terminal (120) may encrypt the second ticket information based on first time information (510) for a first time interval corresponding to a time point (560) at which the second ticket information is encrypted.

일 실시예에서, 장치(110)가 암호화 정보를 복호화하는 시점에 대응되는 제2 시간 간격에 대한 제2 시간 정보(520)에 기초하여, 암호화 정보를 복호화할 수 있다.In one embodiment, the device (110) can decrypt the encrypted information based on second time information (520) for a second time interval corresponding to the time at which the encrypted information is decrypted.

예를 들어, 제2 티켓 정보를 암호화하는 시점(560)과 암호화 정보를 복호화하는 시점 A(570)가 동일한 시간 간격 t2 - t3 (512)에 포함되는 경우, 제1 시간 정보(510)와 제2 시간 정보(520)은 동일한 값을 가질 수 있다. 따라서, 장치(110)는 제2 시간 정보(520)를 이용하여 복호화한 결과를 통해, 코드가 유효하다고 결정할 수 있다.For example, if the time point (560) of encrypting the second ticket information and the time point A (570) of decrypting the encrypted information are included in the same time interval t 2 - t 3 (512), the first time information (510) and the second time information (520) may have the same value. Accordingly, the device (110) may determine that the code is valid through the result of decryption using the second time information (520).

다른 예를 들어, 제2 티켓 정보를 암호화하는 시점(560)은 시간 간격 t2 - t3 (512)에 포함되고, 암호화 정보를 복호화하는 시점 B(580)는 시간 간격 t3 - t4 (513)에 포함되는 경우, 제1 시간 정보(510)와 제2 시간 정보(520)는 서로 다른 값을 가질 수 있다. 각 시간 간격에 대응하는 시간 정보는 상이하기 때문이다. 따라서, 장치(110)는 제2 시간 정보(520)를 이용하여 복호화한 결과를 통해, 코드가 유효하지 않다고 결정할 수 있다.For another example, if the time point (560) for encrypting the second ticket information is included in the time interval t 2 - t 3 (512), and the time point B (580) for decrypting the encrypted information is included in the time interval t 3 - t 4 (513), the first time information (510) and the second time information (520) may have different values. This is because the time information corresponding to each time interval is different. Accordingly, the device (110) may determine that the code is invalid through the result of decryption using the second time information (520).

단말(120)이 제1 시간 정보(510)에 기초하여 암호화 정보를 생성함으로써, 시간 간격마다 다른 암호화 정보가 생성될 수 있다. 시간 간격마다 다른 암호화 정보가 생성된다면, 시간 정보가 생성된 시점으로부터 일정 시간 이내에 장치(110)가 코드를 인식하지 않으면, 장치(110)는 해당 코드를 유효하지 않은 것으로 결정하므로, 사용자는 이벤트에 입장하는 시점에 코드를 생성할 수 밖에 없다. 그렇다면, 사용자는 코드를 생성하여 바로 장치(110)에 인식시켜야 하는 제약이 존재하므로, 사용자는 자신의 티켓만으로 이벤트에 입장할 수 있다. 따라서, 사용자는 자신의 티켓만 사용할 수 있는 상황이므로, 다른 사용자에게 티켓을 팔 수 없어, 한번에 다량의 티켓을 구매한 후, 높은 가격에 티켓을 다른 사용자에게 판매하는 암표 거래 행위가 단절될 수 있다. 또한, 시간 간격마다 시간 정보가 생성되므로, 서버(130)와 컴퓨터 네트워크(150)를 통한 통신이 단절되어도, 장치(110)는 안전하게 티켓의 유효성을 결정할 수 있다.Since the terminal (120) generates encryption information based on the first time information (510), different encryption information can be generated at each time interval. If different encryption information is generated at each time interval, if the device (110) does not recognize the code within a certain time from the time at which the time information is generated, the device (110) determines that the code is invalid, so the user has no choice but to generate a code at the time of entering the event. In this case, since there is a restriction that the user must generate a code and immediately recognize it in the device (110), the user can enter the event with only his or her ticket. Accordingly, since the user can only use his or her ticket, he or she cannot sell tickets to other users, so that black market trading, in which a large number of tickets are purchased at one time and then sold to other users at high prices, can be cut off. In addition, since the time information is generated at each time interval, even if communication through the server (130) and the computer network (150) is cut off, the device (110) can safely determine the validity of the ticket.

도 6은 본 개시의 다양한 실시예에 따른 티켓의 유효성 결정 결과에 따른 장치의 화면 표시 방법을 설명하는 흐름도이다. 일 실시예에서, 장치(110)는 코드를 인식할 수 있다(S610). 장치(110)는 코드를 인식하여 획득한 암호화 정보에 기초하여 코드가 유효한지 여부를 결정할 수 있다(S620). 동작(S620)은 도 3의 동작(S357)과 동일할 수 있다.FIG. 6 is a flowchart illustrating a method of displaying a screen of a device according to a result of determining the validity of a ticket according to various embodiments of the present disclosure. In one embodiment, the device (110) can recognize a code (S610). The device (110) can determine whether the code is valid based on the encrypted information obtained by recognizing the code (S620). The operation (S620) may be the same as the operation (S357) of FIG. 3.

일 실시예에서, 장치(110)는 코드가 유효하다고 결정한 것에 응답하여, 코드의 유효를 화면에 표시할 수 있다(S630). 예를 들어, 장치(110)는 화면에 코드의 유효를 표시하는 색(예: 초록색)을 표시할 수 있다. 다른 예를 들어, 장치(110)는 화면에 티켓이 유효하다는 내용을 지시하는 텍스트(예: 티켓이 확인되었습니다)를 표시할 수 있다.In one embodiment, the device (110) may, in response to determining that the code is valid, display the validity of the code on the screen (S630). For example, the device (110) may display a color (e.g., green) indicating the validity of the code on the screen. As another example, the device (110) may display text on the screen indicating that the ticket is valid (e.g., Ticket has been verified).

일 실시예에서, 장치(110)는 티켓 관련 메타 데이터를 화면에 표시할 수 있다(S640). 예를 들어, 장치(110)는 이벤트의 이름, 일정, 장소, 티켓의 좌석 식별자, 가격, 쿠폰 또는 구매 조건 중 적어도 하나를 화면에 표시할 수 있다.In one embodiment, the device (110) may display ticket-related metadata on the screen (S640). For example, the device (110) may display at least one of the event name, schedule, location, seat identifier of the ticket, price, coupon, or purchase conditions on the screen.

일 실시예에서, 장치(110)는 코드가 유효하지 않다고 결정한 것에 응답하여, 코드가 유효하지 않다는 것을 화면에 표시할 수 있다(S650). 예를 들어, 장치(110)는 화면에 코드가 유효하지 않다고 표시하는 색(예: 빨간색)을 표시할 수 있다. 다른 예를 들어, 장치(110)는 화면에 티켓이 유효하지 않다는 내용을 지시하는 텍스트(예: 티켓이 유효하지 않습니다)를 표시할 수 있다.In one embodiment, in response to determining that the code is invalid, the device (110) may display on the screen that the code is invalid (S650). For example, the device (110) may display a color (e.g., red) on the screen that indicates that the code is invalid. As another example, the device (110) may display text on the screen that indicates that the ticket is invalid (e.g., Ticket is invalid).

도 7은 본 개시의 다른 실시예에 따른 단말(120)에서 코드를 생성하여, 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다. 이하에서 설명되는 실시예는, 단말(120)에서 코드를 생성하고, 서버(130)가 코드가 유효한지 여부를 결정하는 것일 수 있다.FIG. 7 is a flowchart illustrating a method of determining the validity of a ticket by generating a code in a terminal (120) according to another embodiment of the present disclosure. The embodiment described below may be one in which a terminal (120) generates a code and a server (130) determines whether the code is valid.

일 실시예에서, 서버(130)는 단말(120)에 암호키를 전송할 수 있다(S731). 단말(120)은 암호키를 수신할 수 있다(S731). 단말(120)은 제1 시간 정보 및 암호키에 기초하여 코드를 생성하고, 화면에 코드를 표시할 수 있다(S712).In one embodiment, the server (130) can transmit an encryption key to the terminal (120) (S731). The terminal (120) can receive the encryption key (S731). The terminal (120) can generate a code based on the first time information and the encryption key, and display the code on the screen (S712).

일 실시예에서, 장치(110)는 코드를 인식할 수 있다(S751). 장치(110)는 코드 검증 요청을 서버(130)에 전송할 수 있다(S752). 서버(130)는 암호키 및 제2 시간 정보에 기초하여 코드를 검증할 수 있다(S732). 제1 시간 정보와 제2 시간 정보가 상이하면, 서버(130)는 해당 코드를 유효하지 않다고 결정하고, 제1 시간 정보와 제2 시간 정보가 동일하면, 서버(130)는 해당 코드를 유효하다고 결정할 수 있다.In one embodiment, the device (110) can recognize the code (S751). The device (110) can transmit a code verification request to the server (130) (S752). The server (130) can verify the code based on the encryption key and the second time information (S732). If the first time information and the second time information are different, the server (130) can determine that the corresponding code is invalid, and if the first time information and the second time information are the same, the server (130) can determine that the corresponding code is valid.

일 실시예에서, 서버(130)는 코드 검증 결과를 장치(110)에 전송할 수 있다(S733). 장치(110)는 코드 검증 결과를 화면에 표시할 수 있다(S753).In one embodiment, the server (130) can transmit the code verification result to the device (110) (S733). The device (110) can display the code verification result on the screen (S753).

도 8은 본 개시의 또 다른 실시예에 따른 서버에서 코드를 생성하여, 티켓의 유효성을 판단하는 방법을 설명하는 흐름도이다. 이하에서 설명되는 실시예는, 서버(130)가 코드를 생성하고, 코드가 유효한지 여부를 결정하는 것일 수 있다. 단말(120)은 단순히 코드를 화면에 표출하는 역할만 할 수 있다.FIG. 8 is a flowchart illustrating a method of determining the validity of a ticket by generating a code in a server according to another embodiment of the present disclosure. In the embodiment described below, the server (130) may generate a code and determine whether the code is valid. The terminal (120) may simply display the code on the screen.

일 실시예에서, 서버(130)는 제1 시간 정보 및 암호키에 기초하여 코드를 생성하고 단말(120)에 전송할 수 있다(S831). 단말(120)은 코드를 수신할 수 있다(S811). 단말(120)은 코드를 화면에 표시할 수 있다(S812). 장치(110)는 코드를 인식할 수 있다(S851). 장치(110)는 코드 검증 요청을 서버(130)에 전송할 수 있다(S852). 서버(130)는 암호키 및 제2 시간 정보에 기초하여 코드를 검증할 수 있다(S832). 제1 시간 정보와 제2 시간 정보가 상이하면, 서버(130)는 해당 코드를 유효하지 않다고 결정하고, 제1 시간 정보와 제2 시간 정보가 동일하면, 서버(130)는 해당 코드를 유효하다고 결정할 수 있다.In one embodiment, the server (130) may generate a code based on the first time information and the encryption key and transmit the code to the terminal (120) (S831). The terminal (120) may receive the code (S811). The terminal (120) may display the code on the screen (S812). The device (110) may recognize the code (S851). The device (110) may transmit a code verification request to the server (130) (S852). The server (130) may verify the code based on the encryption key and the second time information (S832). If the first time information and the second time information are different, the server (130) may determine that the code is invalid, and if the first time information and the second time information are the same, the server (130) may determine that the code is valid.

일 실시예에서, 서버(130)는 코드 검증 결과를 장치(110)에 전송할 수 있다(S833). 장치(110)는 코드 검증 결과를 화면에 표시할 수 있다(S853).In one embodiment, the server (130) can transmit the code verification result to the device (110) (S833). The device (110) can display the code verification result on the screen (S853).

도 9는 본 개시의 다양한 실시예에 따른 장치의 동작 흐름도이다. 일 실시예에서, 장치(110)는 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득할 수 있다(S910).FIG. 9 is a flowchart of the operation of a device according to various embodiments of the present disclosure. In one embodiment, the device (110) may obtain first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract related to an event (S910).

일 실시예에서, 장치(110)는 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말(120)에 표출된 코드를 인식하여, 코드에 대응하는 암호화 정보를 획득할 수 있다(S920).In one embodiment, the device (110) may recognize a code displayed on a user terminal (120) of a user associated with a second non-fungible token, which is one of one or more first non-fungible tokens, and obtain encrypted information corresponding to the code (S920).

일 실시예에서, 장치(110)는 제1 티켓 정보 및 암호화 정보에 기초하여, 코드가 유효한지 여부를 결정할 수 있다(S930).In one embodiment, the device (110) can determine whether the code is valid based on the first ticket information and the encryption information (S930).

일 실시예에서, 장치(110)는 암호화 정보를 복호화하는 데에 실패한 경우, 코드가 유효하지 않다고 결정할 수 있다.In one embodiment, the device (110) may determine that a code is invalid if it fails to decrypt the encrypted information.

일 실시예에서, 장치(110)는 암호화 정보를 복호화하여 상기 제2 티켓 정보를 획득하고, 제1 티켓 정보 및 제2 티켓 정보에 기초하여 코드가 유효한지 여부를 결정할 수 있다.In one embodiment, the device (110) can decrypt the encrypted information to obtain the second ticket information and determine whether the code is valid based on the first ticket information and the second ticket information.

일 실시예에서, 장치(110)는 암호화 정보를 복호화하는 시점에 대응되는 제2 시간 간격에 대한 제2 시간 정보에 기초하여, 암호화 정보를 1차 복호화할 수 있다. 장치(110)는 제1 암호키와 연관된 제2 암호키에 기초하여, 1차 복호화된 암호화 정보를 2차 복호화할 수 있다.In one embodiment, the device (110) can first decrypt the encrypted information based on second time information for a second time interval corresponding to the time at which the encrypted information is decrypted. The device (110) can secondarily decrypt the first decrypted encrypted information based on a second encryption key associated with the first encryption key.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 매칭되는 대체 불가능 토큰의 식별 데이터가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 제1 티켓 정보에 존재한다는 결정에 따라, 장치(110)는 코드를 유효하다고 결정할 수 있다.In one embodiment, the device (110) may determine whether identification data of a non-fungible token that matches identification data of a second non-fungible token included in the second ticket information is present in the first ticket information. Based on the determination that it is present in the first ticket information, the device (110) may determine that the code is valid.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 제1 티켓 정보에 존재한다는 결정에 따라, 장치(110)는 코드를 유효하다고 결정할 수 있다.In one embodiment, the device (110) can determine whether a correspondence between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information. Based on a determination that it exists in the first ticket information, the device (110) can determine that the code is valid.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭되는지 여부를 결정할 수 있다. 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소가 제1 티켓 정보에 포함된 스마트 계약의 주소와 매칭된다는 결정에 따라, 코드를 유효하다고 결정할 수 있다.In one embodiment, the device (110) may determine whether the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information. The device (110) may determine the code to be valid based on a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 제1 티켓 정보에 존재하는지 여부를 결정할 수 있다. 장치(110)는 제1 티켓 정보에 존재한다는 결정에 따라, 코드를 유효하다고 결정할 수 있다.In one embodiment, the device (110) may determine whether metadata that matches ticket-related metadata included in the second ticket information is present in the first ticket information. Based on the determination that the metadata is present in the first ticket information, the device (110) may determine that the code is valid.

일 실시예에서, 장치(110)는 제2 티켓 정보에 포함된 스마트 계약의 주소와 제1 티켓 정보에 포함된 스마트 계약의 주소가 매칭되고, 제2 티켓 정보에 포함된 제2 대체 불가능 토큰의 식별 데이터와 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 제1 티켓 정보에 존재한다는 결정에 응답하여, 코드가 유효하다고 결정할 수 있다.In one embodiment, the device (110) may determine that the code is valid in response to a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information, and that a correspondence relationship between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information.

일 실시예에서, 장치(110)는 제1 시점 이전까지 제1 티켓 정보를 획득하는 동작을 일정 주기마다 반복하여 수행할 수 있다.In one embodiment, the device (110) may repeatedly perform the operation of obtaining first ticket information at regular intervals until the first time point.

도 10은 본 개시의 다양한 실시예에 따른 단말(120)의 동작 흐름도이다. 일 실시예에서, 단말(120)은 이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보를 수신할 수 있다(S1010).FIG. 10 is a flowchart of operations of a terminal (120) according to various embodiments of the present disclosure. In one embodiment, the terminal (120) may receive second ticket information corresponding to a second non-fungible token, which is one of one or more first non-fungible tokens issued by a smart contract related to an event (S1010).

일 실시예에서, 단말(120)은 제2 티켓 정보를 암호화함으로써 암호화 정보를 생성할 수 있다(S1020). 일 실시예에서, 단말(120)은 리더기(예: 장치(110))에서 암호화 정보를 획득할 수 있도록 하는 코드를 화면에 표출할 수 있다(S1030).In one embodiment, the terminal (120) can generate encrypted information by encrypting the second ticket information (S1020). In one embodiment, the terminal (120) can display a code on the screen that enables the reader (e.g., device (110)) to obtain the encrypted information (S1030).

암호화 정보는 코드를 인식한 리더기(예: 장치(110))에 의해 획득될 수 있다. 암호화 정보는 리더기에 의해, 제2 티켓 정보로 복호화될 수 있다. 암호화 정보는 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보와 함께 코드가 유효한지 여부를 결정하는데에 기초가 될 수 있다.The encrypted information can be obtained by a reader (e.g., device (110)) that recognizes the code. The encrypted information can be decrypted by the reader into second ticket information. The encrypted information can be used as a basis for determining whether the code is valid, together with the first ticket information, which includes information corresponding to each of one or more first non-fungible tokens.

일 실시예에서, 단말(120)은 제1 암호키에 기초하여 제2 티켓 정보를 1차 암호화할 수 있다. 단말(120)은 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 1차 암호화된 제2 티켓 정보를 2차 암호화할 수 있다.In one embodiment, the terminal (120) may first encrypt the second ticket information based on the first encryption key. The terminal (120) may second encrypt the first encrypted second ticket information based on first time information for a first time interval corresponding to the time at which the second ticket information is encrypted.

일 실시예에서, 단말(120)에는 제2 대체 불가능 토큰을 거래할 수 있는 서비스가 제공되는 어플리케이션이 설치될 수 있다. 코드는 어플리케이션을 통해 표출될 수 있다. 암호화 정보를 생성하는 동작은 어플리케이션을 통해 수행될 수 있다. 어플리케이션을 통해, 사용자들은 제2 대체 불가능 토큰에 대응하는 티켓을 구매할 수 있다. 그리고, 어플리케이션을 통해, 사용자는 제2 대체 불가능 토큰에 대응하는 티켓을 다른 사용자에게 양도할 수 있다.In one embodiment, an application that provides a service for trading a second non-fungible token may be installed in the terminal (120). A code may be displayed through the application. An operation for generating encrypted information may be performed through the application. Through the application, users may purchase tickets corresponding to the second non-fungible token. And, through the application, users may transfer tickets corresponding to the second non-fungible token to other users.

일 실시예에서, 단말(120)은 사용자에 대한 생체 인증을 수행할 수 있다. 생체 인증은 개인의 생체적인 특징을 활용하여 개인을 식별하는 인증 방법이다. 이는 생체 특성을 이용하여 접근 통제나 사용자 인증 등에 활용된다. 생체 인증은 지문, 홍채, 안면 인식 등 다양한 생체 정보를 기반으로 한다. 일 실시예에서, 단말(120)은 생체 인증의 결과에 기초하여 코드를 화면에 표출할 수 있다. 생체 인증을 통과한 경우, 코드가 화면에 표출되고, 생체 인증에 실패한 경우 코드가 화면에 표출되지 않을 수 있다. 다른 실시예에서, 단말은 생체 인증의 결과에 기초하여 암호화 정보를 생성할 수 있다. 생체 인증을 통과한 경우, 암호화 정보가 생성되고, 생체 인증에 실패한 경우 코드가 암호화 정보가 생성되지 않을 수 있다.In one embodiment, the terminal (120) can perform biometric authentication for the user. Biometric authentication is an authentication method that uses the biometric characteristics of the individual to identify the individual. It is used for access control or user authentication using the biometric characteristics. Biometric authentication is based on various biometric information such as fingerprints, irises, and facial recognition. In one embodiment, the terminal (120) can display a code on the screen based on the result of the biometric authentication. If the biometric authentication passes, the code is displayed on the screen, and if the biometric authentication fails, the code may not be displayed on the screen. In another embodiment, the terminal can generate encrypted information based on the result of the biometric authentication. If the biometric authentication passes, encrypted information is generated, and if the biometric authentication fails, the code or encrypted information may not be generated.

일 실시예에서, 단말(120)은 사용자의 지갑에 제2 대체 불가능 토큰이 수신됨에 따라, 이벤트와 관련된 서버(130)로부터 제1 암호키를 수신하거나 서버(130)로 제1 암호키와 연관된 제2 암호키를 전송할 수 있다. 사용자의 지갑에 제2 대체 불가능 토큰이 수신되면서, 제2 티켓 정보 및 제1 암호키도 단말(120)에 함께 수신될 수 있다. 서버(130)는 제2 암호키를 수신하여, 제2 암호키를 장치(110)에 전송할 수 있다.In one embodiment, the terminal (120) may receive a first cryptographic key from a server (130) associated with an event or transmit a second cryptographic key associated with the first cryptographic key to the server (130) upon receiving a second non-fungible token in the user's wallet. As the second non-fungible token is received in the user's wallet, the second ticket information and the first cryptographic key may also be received together in the terminal (120). The server (130) may receive the second cryptographic key and transmit the second cryptographic key to the device (110).

프로세스 단계들, 방법 단계들, 알고리즘들 등이 순차적인 순서로 설명되었지만, 그러한 프로세스들, 방법들 및 알고리즘들은 임의의 적합한 순서로 작동하도록 구성될 수 있다. 다시 말하면, 본 개시의 다양한 실시예들에서 설명되는 프로세스들, 방법들 및 알고리즘들의 단계들이 본 개시에서 기술된 순서로 수행될 필요는 없다. 또한, 일부 단계들이 비동시적으로 수행되는 것으로서 설명되더라도, 다른 실시예에서는 이러한 일부 단계들이 동시에 수행될 수 있다. 또한, 도면에서의 묘사에 의한 프로세스의 예시는 예시된 프로세스가 그에 대한 다른 변화들 및 수정들을 제외하는 것을 의미하지 않으며, 예시된 프로세스 또는 그의 단계들 중 임의의 것이 본 개시의 다양한 실시예들 중 하나 이상에 필수적임을 의미하지 않으며, 예시된 프로세스가 바람직하다는 것을 의미하지 않는다.Although the process steps, method steps, algorithms, etc. have been described in a sequential order, such processes, methods, and algorithms may be configured to operate in any suitable order. In other words, the steps of the processes, methods, and algorithms described in various embodiments of the present disclosure need not be performed in the order described herein. Furthermore, even if some steps are described as being performed asynchronously, in other embodiments such some steps may be performed concurrently. Furthermore, the illustration of a process by depiction in the drawings does not imply that the illustrated process is exclusive of other changes and modifications thereof, nor does it imply that the illustrated process or any of its steps is essential to one or more of the various embodiments of the present disclosure, nor does it imply that the illustrated process is preferred.

상기 방법은 특정 실시예들을 통하여 설명되었지만, 상기 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템(10)에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템(10)에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 실시예들을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 개시가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.While the method has been described through specific embodiments, the method can also be implemented as computer-readable code on a computer-readable recording medium. The computer-readable recording medium includes all types of recording devices that store data that can be read by a computer system (10). Examples of the computer-readable recording medium may include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc. In addition, the computer-readable recording medium can be distributed over network-connected computer systems (10), so that the computer-readable code can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the embodiments can be easily inferred by programmers in the technical field to which the present disclosure pertains.

Claims (24)

하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 방법에 있어서,
상기 하나 이상의 프로세서가,
이벤트와 관련된 스마트 계약(smart contract)에 의해 발행된 하나 이상의 제1 대체 불가능 토큰(Non-Fungible Token, NFT) 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하는 단계;
상기 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 상기 코드에 대응하는 암호화 정보(encrypted information)를 획득하는 단계 - 상기 암호화 정보는, 상기 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 상기 사용자 단말에 의해 암호화된 정보이고 - ; 및
상기 제1 티켓 정보 및 상기 암호화 정보에 기초하여, 상기 코드가 유효한지 여부를 결정하는 단계를 포함하고,
상기 제1 티켓 정보를 획득하는 단계는 상기 스마트 계약에 의하여 상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점인 제1 시점 이전에 수행되는, 방법.
A method performed in a device comprising one or more processors and one or more memories storing instructions to be executed by the one or more processors,
One or more of the above processors,
A step of obtaining first ticket information including information corresponding to each of one or more first non-fungible tokens (NFTs) issued by a smart contract related to an event;
A step of recognizing a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, and obtaining encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on second ticket information corresponding to the second non-fungible token; and
A step of determining whether the code is valid based on the first ticket information and the encryption information,
A method according to claim 1, wherein the step of obtaining the first ticket information is performed before a first point in time at which changes to information corresponding to each of the one or more first non-fungible tokens are restricted by the smart contract.
삭제delete 삭제delete 제1항에 있어서,
상기 암호화 정보를 획득하는 단계 및 상기 코드가 유효한지 여부를 결정하는 단계는 상기 제1 시점 이후에 수행되는, 방법.
In the first paragraph,
A method, wherein the step of obtaining the above-mentioned encrypted information and the step of determining whether the above-mentioned code is valid are performed after the first time point.
제1항에 있어서,
상기 코드가 유효한지 여부를 결정하는 단계는,
상기 암호화 정보를 복호화하는 데에 실패한 경우, 상기 코드가 유효하지 않다고 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The steps to determine whether the above code is valid are:
A method comprising the step of determining that the code is invalid if decrypting the encrypted information fails.
제1항에 있어서,
상기 코드가 유효한지 여부를 결정하는 단계는,
상기 암호화 정보를 복호화하여 상기 제2 티켓 정보를 획득하는 단계; 및
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The steps to determine whether the above code is valid are:
A step of decrypting the above encrypted information to obtain the second ticket information; and
A method comprising the step of determining whether the code is valid based on the first ticket information and the second ticket information.
제6항에 있어서,
상기 암호화 정보는, 제1 암호키 및 상기 사용자 단말이 상기 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 암호화된 정보이고,
상기 암호화 정보를 복호화하여 상기 제2 티켓 정보를 획득하는 단계는,
상기 장치가 상기 암호화 정보를 복호화하는 시점에 대응되는 제2 시간 간격에 대한 제2 시간 정보에 기초하여, 상기 암호화 정보를 1차 복호화하는 단계; 및
상기 제1 암호키와 연관된 제2 암호키에 기초하여, 1차 복호화된 상기 암호화 정보를 2차 복호화 하는 단계를 포함하는, 방법.
In Article 6,
The above encrypted information is encrypted information based on the first encryption key and the first time information for the first time interval corresponding to the time at which the user terminal encrypts the second ticket information,
The step of decrypting the above encrypted information and obtaining the second ticket information is:
A step of first decrypting the encrypted information based on second time information for a second time interval corresponding to the time at which the device decrypts the encrypted information; and
A method comprising the step of secondarily decrypting the encrypted information that has been firstly decrypted based on a second encryption key associated with the first encryption key.
제7항에 있어서,
상기 제1 암호키 및 상기 제2 암호키가 동일한 경우, 상기 제1 암호키 및 상기 제2 암호키는 대칭키 또는 세션키 중 적어도 하나를 포함하고,
상기 제1 암호키 및 상기 제2 암호키가 다른 경우, 상기 제1 암호키는 공개키이고 상기 제2 암호키는 개인키인, 방법.
In Article 7,
If the first encryption key and the second encryption key are the same, the first encryption key and the second encryption key include at least one of a symmetric key or a session key,
A method wherein, when the first encryption key and the second encryption key are different, the first encryption key is a public key and the second encryption key is a private key.
제7항에 있어서,
서버로부터 상기 제2 암호키를 수신하는 단계
를 더 포함하는, 방법.
In Article 7,
Step of receiving the second encryption key from the server
A method further comprising:
제1항에 있어서,
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계는,
상기 제2 티켓 정보에 포함된 상기 제2 대체 불가능 토큰의 식별 데이터와 매칭되는 대체 불가능 토큰의 식별 데이터가 상기 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및
상기 제1 티켓 정보에 존재한다는 결정에 따라, 상기 코드를 유효하다고 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The step of determining whether the code is valid based on the first ticket information and the second ticket information is as follows:
A step of determining whether identification data of a non-replaceable token matching the identification data of the second non-replaceable token included in the second ticket information exists in the first ticket information; and
A method comprising the step of determining that the code is valid based on a determination that the first ticket information exists.
제1항에 있어서,
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계는,
상기 제2 티켓 정보에 포함된 상기 제2 대체 불가능 토큰의 식별 데이터와 상기 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 상기 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및
상기 제1 티켓 정보에 존재한다는 결정에 따라, 상기 코드를 유효하다고 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The step of determining whether the code is valid based on the first ticket information and the second ticket information is as follows:
A step of determining whether a correspondence relationship between the identification data of the second non-replaceable token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information; and
A method comprising the step of determining that the code is valid based on a determination that the first ticket information exists.
제1항에 있어서,
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계는,
상기 제2 티켓 정보에 포함된 스마트 계약의 주소가 상기 제1 티켓 정보에 포함된 상기 스마트 계약의 주소와 매칭되는지 여부를 결정하는 단계; 및
상기 제2 티켓 정보에 포함된 스마트 계약의 주소가 상기 제1 티켓 정보에 포함된 상기 스마트 계약의 주소와 매칭된다는 결정에 따라, 상기 코드를 유효하다고 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The step of determining whether the code is valid based on the first ticket information and the second ticket information is as follows:
A step of determining whether the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information; and
A method comprising the step of determining that the code is valid based on a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information.
제1항에 있어서,
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계는,
상기 제2 티켓 정보에 포함된 티켓 관련 메타 데이터와 매칭되는 메타 데이터가 상기 제1 티켓 정보에 존재하는지 여부를 결정하는 단계; 및
상기 제1 티켓 정보에 존재한다는 결정에 따라, 상기 코드를 유효하다고 결정하는 단계를 포함하는, 방법.
In the first paragraph,
The step of determining whether the code is valid based on the first ticket information and the second ticket information is as follows:
A step of determining whether metadata matching the ticket-related metadata included in the second ticket information exists in the first ticket information; and
A method comprising the step of determining that the code is valid based on a determination that the first ticket information exists.
제1항에 있어서,
상기 제1 티켓 정보 및 상기 제2 티켓 정보에 기초하여 상기 코드가 유효한지 여부를 결정하는 단계는,
상기 제2 티켓 정보에 포함된 스마트 계약의 주소와 상기 제1 티켓 정보에 포함된 상기 스마트 계약의 주소가 매칭되고, 상기 제2 티켓 정보에 포함된 상기 제2 대체 불가능 토큰의 식별 데이터와 상기 제2 티켓 정보에 포함된 사용자 식별 데이터의 대응 관계가 상기 제1 티켓 정보에 존재한다는 결정에 응답하여, 상기 코드가 유효하다고 결정하는 단계
를 포함하는, 방법.
In the first paragraph,
The step of determining whether the code is valid based on the first ticket information and the second ticket information is as follows:
A step of determining that the code is valid in response to a determination that the address of the smart contract included in the second ticket information matches the address of the smart contract included in the first ticket information, and that a correspondence relationship between the identification data of the second non-fungible token included in the second ticket information and the user identification data included in the second ticket information exists in the first ticket information.
A method comprising:
제1항에 있어서,
상기 제2 티켓 정보는,
상기 제2 대체 불가능 토큰의 식별 데이터, 상기 제2 대체 불가능 토큰과 연관된 상기 사용자의 사용자 식별 데이터, 또는 상기 제2 대체 불가능 토큰의 티켓 관련 메타 데이터 중 적어도 하나를 포함하고,
상기 제2 대체 불가능 토큰의 상기 티켓 관련 메타데이터는, 상기 제2 대체 불가능 토큰에 대응되는 상기 이벤트의 티켓에 관한 정보인, 방법.
In the first paragraph,
The above second ticket information is,
At least one of identification data of the second non-fungible token, user identification data of the user associated with the second non-fungible token, or ticket-related metadata of the second non-fungible token;
A method wherein the ticket-related metadata of the second non-fungible token is information about a ticket of the event corresponding to the second non-fungible token.
제15항에 있어서,
상기 티켓 관련 메타 데이터는,
상기 이벤트의 이름, 일정, 장소, 상기 티켓의 좌석 식별자, 가격 또는 구매 조건 중 적어도 하나에 관한 정보를 포함하는, 방법.
In Article 15,
The above ticket related metadata is:
A method comprising information regarding at least one of the name, schedule, location, seat identifier, price, or purchase conditions of the event.
제1항에 있어서,
상기 제1 티켓 정보를 획득하는 단계는, 일정 주기마다 반복하여 수행되는 단계를 포함하는, 방법.
In the first paragraph,
A method, wherein the step of obtaining the first ticket information includes a step that is repeatedly performed at regular intervals.
하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 단말에서 수행되는 방법에 있어서,
상기 하나 이상의 프로세서가,
이벤트와 관련된 스마트 계약(smart contract)에 의해 발행된 하나 이상의 제1 대체 불가능 토큰(Non-Fungible Token, NFT) 중 하나인 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보를 수신하는 단계;
상기 제2 티켓 정보를 암호화함으로써 암호화 정보(encrypted information)를 생성하는 단계; 및
리더기에서 상기 암호화 정보를 획득할 수 있도록 하는 코드를 화면에 표출하는 단계를 포함하고,
상기 리더기는 상기 스마트 계약에 의하여 상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점인 제1 시점 이전에 상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하고,
상기 암호화 정보는
상기 코드를 인식한 리더기에 의해 획득되고,
상기 리더기에 의해, 상기 제2 티켓 정보로 복호화되고,
상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보와 함께 상기 코드가 유효한지 여부를 결정하는데에 기초가 되는,
방법.
A method performed in a terminal including one or more processors and one or more memories storing instructions to be executed by the one or more processors,
One or more of the above processors,
A step of receiving second ticket information corresponding to a second non-fungible token, which is one of one or more first non-fungible tokens (NFTs) issued by a smart contract related to an event;
A step of generating encrypted information by encrypting the second ticket information; and
Including a step of displaying a code on the screen that enables obtaining the above-mentioned encrypted information from the reader;
The above reader obtains first ticket information including information corresponding to each of the one or more first non-fungible tokens prior to a first point in time at which change of information corresponding to each of the one or more first non-fungible tokens is restricted by the smart contract,
The above encrypted information is
Obtained by a reader that recognizes the above code,
By the above reader, the second ticket information is decrypted,
The first ticket information, which includes information corresponding to each of the one or more first non-fungible tokens, is used as a basis for determining whether the code is valid.
method.
제18항에 있어서,
상기 암호화 정보를 생성하는 단계는,
제1 암호키에 기초하여 상기 제2 티켓 정보를 1차 암호화하는 단계; 및
상기 제2 티켓 정보를 암호화하는 시점에 대응되는 제1 시간 간격에 대한 제1 시간 정보에 기초하여 1차 암호화된 상기 제2 티켓 정보를 2차 암호화하는 단계
를 포함하는, 방법.
In Article 18,
The step of generating the above encrypted information is:
A step of first encrypting the second ticket information based on the first encryption key; and
A step of secondly encrypting the first encrypted second ticket information based on the first time information for the first time interval corresponding to the time at which the second ticket information is encrypted.
A method comprising:
제18항에 있어서,
상기 단말에는, 상기 제2 대체 불가능 토큰을 거래할 수 있는 서비스가 제공되는 어플리케이션이 설치되고,
상기 코드는 상기 어플리케이션을 통해 표출되는, 방법.
In Article 18,
In the above terminal, an application is installed that provides a service that can trade the second non-fungible token,
The above code is expressed through the above application, method.
제18항에 있어서,
상기 코드를 화면에 표출하는 단계는,
사용자에 대한 생체 인증을 수행하는 단계; 및
상기 생체 인증의 결과에 기초하여, 상기 코드를 화면에 표출하는 단계를 포함하는, 방법.
In Article 18,
The steps to display the above code on the screen are:
Steps for performing biometric authentication on a user; and
A method comprising the step of displaying the code on a screen based on the result of the biometric authentication.
제18항에 있어서,
사용자의 지갑에 상기 제2 대체 불가능 토큰이 수신됨에 따라, 상기 이벤트와 관련된 서버로부터 제1 암호키를 수신하거나, 상기 서버로 상기 제1 암호키와 연관된 제2 암호키를 전송하는 단계를 더 포함하는, 방법.
In Article 18,
A method further comprising the step of receiving a first cryptographic key from a server associated with the event, or transmitting a second cryptographic key associated with the first cryptographic key to the server, upon receipt of the second non-fungible token in the user's wallet.
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하고,
상기 명령어들의 실행 시, 상기 하나 이상의 프로세서는,
이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하고,
상기 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 상기 코드에 대응하는 암호화 정보를 획득하고 - 상기 암호화 정보는, 상기 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 상기 사용자 단말에 의해 암호화된 정보이고 - ; 및
상기 제1 티켓 정보 및 상기 암호화 정보에 기초하여, 상기 코드가 유효한지 여부를 결정하고,
상기 제1 티켓 정보를 획득하는 것은 상기 스마트 계약에 의하여 상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점인 제1 시점 이전에 수행되는,
장치.
one or more processors; and
comprising one or more memories storing instructions to be executed by said one or more processors;
Upon execution of the above instructions, the one or more processors,
Obtain first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract related to the event,
Recognizing a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the one or more first non-fungible tokens, and obtaining encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on second ticket information corresponding to the second non-fungible token; and
Based on the above first ticket information and the above encryption information, determine whether the code is valid,
Obtaining the above first ticket information is performed prior to the first point in time when changes to information corresponding to each of the one or more first non-fungible tokens are restricted by the smart contract.
device.
하나 이상의 프로세서에 의해 실행되기 위한 명령어들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체에 있어서,
상기 명령어들은, 상기 명령어들의 실행 시, 상기 하나 이상의 프로세서가,
이벤트와 관련된 스마트 계약에 의해 발행된 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보를 포함하는 제1 티켓 정보를 획득하도록 하고,
상기 하나 이상의 제1 대체 불가능 토큰 중 하나인 제2 대체 불가능 토큰과 연관된 사용자의 사용자 단말에 표출된 코드를 인식하여, 상기 코드에 대응하는 암호화 정보를 획득하도록 하고 - 상기 암호화 정보는, 상기 제2 대체 불가능 토큰에 대응하는 제2 티켓 정보에 기초하여 상기 사용자 단말에 의해 암호화된 정보이고 - ; 및
상기 제1 티켓 정보 및 상기 암호화 정보에 기초하여, 상기 코드가 유효한지 여부를 결정하도록 하고,
상기 제1 티켓 정보를 획득하는 것은 상기 스마트 계약에 의하여 상기 하나 이상의 제1 대체 불가능 토큰 각각에 대응하는 정보의 변경이 제한되는 시점인 제1 시점 이전에 수행되는,
비일시적 컴퓨터 판독 가능 기록 매체.

In a non-transitory computer-readable recording medium having recorded thereon instructions to be executed by one or more processors,
The above instructions, when executing the above instructions, cause the one or more processors to:
Obtain first ticket information including information corresponding to each of one or more first non-fungible tokens issued by a smart contract related to the event;
Recognize a code displayed on a user terminal of a user associated with a second non-fungible token, which is one of the first non-fungible tokens, and obtain encrypted information corresponding to the code, wherein the encrypted information is information encrypted by the user terminal based on second ticket information corresponding to the second non-fungible token; and
Based on the above first ticket information and the above encryption information, determine whether the code is valid,
Obtaining the above first ticket information is performed prior to the first point in time when changes to information corresponding to each of the one or more first non-fungible tokens are restricted by the smart contract.
A non-transitory computer-readable recording medium.

KR1020240062032A 2024-05-10 2024-05-10 Method, apparatus and recording medium for determining validation of ticket Active KR102816870B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240062032A KR102816870B1 (en) 2024-05-10 2024-05-10 Method, apparatus and recording medium for determining validation of ticket

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020240062032A KR102816870B1 (en) 2024-05-10 2024-05-10 Method, apparatus and recording medium for determining validation of ticket

Publications (1)

Publication Number Publication Date
KR102816870B1 true KR102816870B1 (en) 2025-06-05

Family

ID=96016667

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020240062032A Active KR102816870B1 (en) 2024-05-10 2024-05-10 Method, apparatus and recording medium for determining validation of ticket

Country Status (1)

Country Link
KR (1) KR102816870B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017117301A (en) * 2015-12-25 2017-06-29 サイレックス・テクノロジー株式会社 Ticket issuing system
KR101824015B1 (en) * 2016-04-12 2018-01-31 김태연 Mobile Ticket Trading System
KR20230120005A (en) * 2022-02-08 2023-08-16 서강대학교산학협력단 Ticket management system using blockchain non-fungible token and method thereof
JP2024024676A (en) * 2021-11-15 2024-02-22 株式会社ボードウォーク electronic ticket system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017117301A (en) * 2015-12-25 2017-06-29 サイレックス・テクノロジー株式会社 Ticket issuing system
KR101824015B1 (en) * 2016-04-12 2018-01-31 김태연 Mobile Ticket Trading System
JP2024024676A (en) * 2021-11-15 2024-02-22 株式会社ボードウォーク electronic ticket system
KR20230120005A (en) * 2022-02-08 2023-08-16 서강대학교산학협력단 Ticket management system using blockchain non-fungible token and method thereof

Similar Documents

Publication Publication Date Title
KR102205654B1 (en) Authentication method in a distributed circumstance
JP6524347B2 (en) Information sharing system
CN105684346B (en) Ensure the method for air communication safety between mobile application and gateway
CN104380652B (en) Many publisher's safety element subregion frameworks for NFC enabled devices
CN109313763A (en) Hierarchical Network System, Nodes and Programs for Hierarchical Network System
JP4326443B2 (en) Information processing apparatus, information processing method, and program
US12086792B2 (en) Tokenized control of personal data
US12093349B2 (en) Method for distributing certificate of right to use digital content, and computer program stored in medium in order to carry out method
KR20200093777A (en) System and method for providng digital asset vault services
JP2006107323A (en) Information processing apparatus and method, and program
JP6195526B2 (en) Payment system, payment apparatus, payment management method and program
WO2018121377A1 (en) Transaction method, device and system used in virtual reality environment
KR20190132159A (en) Method for Providing Cryptocurrency Trading Platform based on Blockchain by using Smart Contract
KR20190132054A (en) Method for Providing Cryptocurrency Trading Platform by using Smart Contract based on Blockchain
KR20200096400A (en) System and method for dealing a digital currency with block chain matching QR(or BAR) code
JP4540454B2 (en) Application setting device, IC chip and program
KR20190132160A (en) Method for Providing Cryptocurrency Trading Platform by using Smart Contract
CN110414957A (en) Smart ticket system, smart ticket distribution method and computer-readable storage device
CA3182400A1 (en) Method, terminal, and coin register for transmitting electronic coin data sets
KR102816870B1 (en) Method, apparatus and recording medium for determining validation of ticket
KR102816874B1 (en) Method, apparatus and recording medium for determining validation of ticket
KR102666287B1 (en) Method for providing nft service and system thereof
WO2011058629A1 (en) Information management system
KR102395871B1 (en) A payment terminal apparatus for providing multi van services using a distributed management network of encryption key based on block chains
JPWO2019107000A1 (en) Information processing equipment, information processing systems, information processing methods, and programs

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20240510

PA0201 Request for examination

Patent event code: PA02011R01I

Patent event date: 20240510

Comment text: Patent Application

PN2301 Change of applicant

Patent event date: 20240618

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PA0302 Request for accelerated examination

Patent event date: 20240725

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20241024

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20250515

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20250530

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20250602

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载