KR102283503B1 - Method for providing intelligent smart contract - Google Patents

Method for providing intelligent smart contract Download PDF

Info

Publication number
KR102283503B1
KR102283503B1 KR1020190143556A KR20190143556A KR102283503B1 KR 102283503 B1 KR102283503 B1 KR 102283503B1 KR 1020190143556 A KR1020190143556 A KR 1020190143556A KR 20190143556 A KR20190143556 A KR 20190143556A KR 102283503 B1 KR102283503 B1 KR 102283503B1
Authority
KR
South Korea
Prior art keywords
scenario
shared resource
service
providing
user
Prior art date
Application number
KR1020190143556A
Other languages
Korean (ko)
Other versions
KR20210056745A (en
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 KR1020190143556A priority Critical patent/KR102283503B1/en
Priority to PCT/KR2019/015545 priority patent/WO2021095927A1/en
Publication of KR20210056745A publication Critical patent/KR20210056745A/en
Application granted granted Critical
Publication of KR102283503B1 publication Critical patent/KR102283503B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files

Abstract

본 발명의 일실시예는, 공유자원을 이용한 서비스를 블록체인 네트워크를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오에 기초하여 상기 서비스를 제공하는 서비스 제공단계, 사용자 단말 또는 관리자 단말이 상기 시나리오를 편집하는 피드백을 제공하는 피드백단계, 상기 피드백에 기초하여 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계, 및 상기 인공지능 학습모델이 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계를 포함하는, 지능형 스마트 컨트랙트 제공방법을 제공함에 따라 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.An embodiment of the present invention provides a service providing step of providing the service based on a scenario including one or more smart contracts necessary to provide a service using a shared resource through a block chain network, a user terminal or a manager terminal A feedback step of providing feedback for editing a scenario, a learning step of learning an artificial intelligence learning model that changes the contents of one or more smart contracts included in the scenario based on the feedback, and the artificial intelligence learning model is applied to the scenario By providing an intelligent smart contract providing method, including a scenario modification step of changing the contents of one or more included smart contracts, the conditions and operations of smart contracts can be changed, so that various types of shared resources are required to provide shared services. Smart contracts with various conditions can be created and used.

Description

지능형 스마트 컨트랙트 제공방법{Method for providing intelligent smart contract}Method for providing intelligent smart contract

본 발명은 지능형 스마트 컨트랙트 제공방법에 관한 것이다. The present invention relates to a method for providing an intelligent smart contract.

현재의 공유서비스는 기업이 개인과 개인을 중개하고 수수료를 받는 형태로 이루어지고 있으며, 기업이 운영하는 중앙집중화된 공유서비스 제공 시스템에 기초하여 서비스가 제공되고 있다. 현재의 공유서비스는 하나의 품목을 공유하기 위한 서비스 제공형태를 갖고 있다. 예를 들어, 우버(Uber)는 차량공유 서비스를 제공하고, 에어비엔비(Airbnb)는 숙박공유 서비스를 제공한다. 이러한 기존 공유서비스는 다양한 종류의 제품이나 서비스를 제공하지 못하는 한계가 있다. The current shared service is in the form of a company intermediary between individuals and receiving a fee, and the service is provided based on the centralized shared service provision system operated by the company. The current shared service has a service provision form for sharing a single item. For example, Uber provides a ride-sharing service, and Airbnb provides a lodging-sharing service. These existing shared services have limitations in not being able to provide various types of products or services.

또한, 현재의 공유서비스는 공유서비스를 제공하기 위한 중앙집중화된 시스템을 이용하므로, 해킹이나 서버에 대한 공격을 받는 경우 서비스의 제공이 어려워지는 단일실패지점이 존재하는 문제가 있다. In addition, since the current shared service uses a centralized system for providing the shared service, there is a problem that there is a single point of failure in which the provision of the service becomes difficult in case of a hacking or attack on the server.

블록체인 네트워크는 조건이 만족되면 자동으로 정해진 동작이 실행되도록 계약을 프로그램화한 스마트 컨트랙트를 제공할 수 있다. 스마트 컨트랙트는 정해진 계약을 수행하기 위하여 프로그램화되어 블록체인 네트워크에서 동작할 수 있으나, 이미 동작하고 있는 스마트 컨트랙트는 조건을 변경하기 어려운 문제가 있다. A blockchain network can provide a smart contract in which the contract is programmed to automatically execute a predetermined action when the condition is satisfied. A smart contract can be programmed to perform a fixed contract and can be operated in a blockchain network, but a smart contract that is already in operation has a problem in that it is difficult to change the conditions.

KR 10-2013-0047915 AKR 10-2013-0047915 A

본 발명의 일실시예에 따른 목적은, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있는 지능형 스마트 컨트랙트를 제공하기 위한 것이다.An object of an embodiment of the present invention is to provide an intelligent smart contract that can change the conditions and operation of the smart contract based on user feedback.

본 발명의 일실시예에 따른 목적은, 다양한 종류의 공유자원을 이용하여 공유서비스를 제공하기 위하여 필요한 조건과 동작을 갖도록 지능형 스마트 컨트랙트를 생성할 수 있는 방법을 제공하기 위한 것이다. An object of an embodiment of the present invention is to provide a method for creating an intelligent smart contract to have conditions and operations necessary to provide a shared service using various types of shared resources.

본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 공유자원을 이용한 서비스를 블록체인 네트워크를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오에 기초하여 상기 서비스를 제공하는 서비스 제공단계, 사용자 단말 또는 관리자 단말이 상기 시나리오를 편집하는 피드백을 제공하는 피드백단계, 상기 피드백에 기초하여 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계, 및 상기 인공지능 학습모델이 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계를 포함할 수 있다. An intelligent smart contract providing method according to an embodiment of the present invention includes a service providing step of providing the service based on a scenario including one or more smart contracts necessary to provide a service using a shared resource through a block chain network; A feedback step in which a user terminal or a manager terminal provides feedback for editing the scenario, a learning step of learning an artificial intelligence learning model that changes the contents of one or more smart contracts included in the scenario based on the feedback, and the artificial intelligence The intelligent learning model may include a scenario modification step of changing the contents of one or more smart contracts included in the scenario.

또한, 상기 시나리오는 상기 블록체인 네트워크를 통해 상기 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 상기 스마트 컨트랙트의 동작순서를 포함할 수 있고, 상기 스마트 컨트랙트는 상기 공유자원을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 상기 조건을 만족하면 수행하는 동작을 포함할 수 있다. In addition, the scenario may include one or more smart contracts necessary to provide the service through the blockchain network, and an operation sequence of the smart contract, and the smart contract provides a service using the shared resource. It may include one or more conditions for implementing at least some necessary functions, and an operation performed when the conditions are satisfied.

또한, 상기 피드백단계는 상기 사용자 단말 또는 관리자 단말이 상기 시나리오의 적어도 일부를 편집하여 피드백으로 제공할 수 있다. In addition, in the feedback step, the user terminal or the manager terminal may edit at least a part of the scenario and provide it as feedback.

또한, 상기 학습단계는 입력데이터가 상기 시나리오이고 정답데이터가 상기 사용자 단말 또는 관리자 단말로부터 수신한 편집된 시나리오인 학습데이터를 이용하여, 상기 인공지능 학습모델을 훈련시킬 수 있다. In addition, in the learning step, the artificial intelligence learning model may be trained using learning data in which the input data is the scenario and the correct answer data is the edited scenario received from the user terminal or the manager terminal.

또한, 상기 수정단계는 정해진 기간동안 수집된 피드백에 기초하여 훈련된 상기 인공지능 학습모델에 상기 시나리오를 입력하여 출력되는 수정된 시나리오를 획득하고, 상기 수정된 시나리오를 상기 공유자원을 이용한 서비스에 적용할 수 있다. In addition, the modifying step acquires a modified scenario output by inputting the scenario to the artificial intelligence learning model trained based on the feedback collected for a predetermined period, and applying the modified scenario to a service using the shared resource can do.

또한, 상기 피드백은 상기 사용자 단말로부터 수집되는 위치정보, 상기 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함할 수 있다. In addition, the feedback may further include location information collected from the user terminal, an answer input to a pop-up question provided according to the location information, and a history of conversations between the chatbot and the user.

또한, 상기 피드백단계는 사용자 또는 관리자가 사용자 단말 또는 관리자 단말을 통해 상기 시나리오에서 사용자 또는 관리자가 입력하여야 동작하는 기능들을 수정하면, 그에 따라 상기 시나리오의 기능들을 제공하기 위하여 포함된 복수의 스마트 컨트랙트의 동작순서, 스마트 컨트랙트의 조건 또는 동작을 자동으로 수정할 수 있다. In addition, in the feedback step, if the user or administrator modifies the functions that the user or administrator must input in the scenario through the user terminal or the administrator terminal, the plurality of smart contracts included in order to provide the functions of the scenario accordingly It is possible to automatically modify the operation sequence, conditions or operations of smart contracts.

또한, 상기 서비스 제공단계 이전에, 관리자 단말이 상기 공유자원을 이용한 서비스를 제공하기 위하여 상기 공유자원을 블록체인 네트워크에 등록하고 상기 공유자원을 이용할 서비스에 적용될 시나리오를 결정하는 공유자원 등록단계를 더 포함할 수 있고, 상기 서비스 제공단계는 상기 공유자원 등록단계에서 결정된 시나리오에 의해 상기 서비스가 제공되는 것일 수 있다. In addition, prior to the service providing step, a shared resource registration step of registering the shared resource to a blockchain network and determining a scenario to be applied to a service using the shared resource in order for the manager terminal to provide a service using the shared resource is further performed In addition, the service providing step may include providing the service according to a scenario determined in the shared resource registration step.

또한, 상기 공유자원 등록단계는 상기 관리자 단말이 상기 공유자원에 관한 정보, 상기 공유자원에 결합된 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 제공하는 정보전송단계, 상기 공유자원과 기존에 등록된 다른 공유자원을 비교하여 유사한 경우 기존에 등록된 다른 공유자원을 이용한 서비스에 이용되는 시나리오를 관리자 단말에 제공하고, 상기 공유자원이 기존에 등록된 다른 공유자원과 다른 새로운 것인 경우 예시적인 시나리오들을 관리자 단말에 제공하는 예시제공단계, 및 상기 관리자 단말이 상기 다른 공유자원을 이용한 서비스에 이용되는 시나리오에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오들 중에서 사용자가 선택한 하나의 시나리오와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계를 포함할 수 있다. In addition, the shared resource registration step is an information transmission step in which the manager terminal provides information about the shared resource and information about a composite IoT device coupled to the shared resource to the block chain network, and previously registered with the shared resource In case of similarity by comparing other shared resources, a scenario used for a service using another previously registered shared resource is provided to the manager terminal, and an exemplary scenario when the shared resource is new and different from other previously registered shared resources An example providing step of providing them to the manager terminal, and the manager terminal receives and provides a user's edit of a scenario used for a service using the other shared resource, or one scenario and a user selected by the user from among the exemplary scenarios It may include a scenario selection step of receiving and providing the edit of.

본 발명의 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다.The features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings.

이에 앞서 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이고 사전적인 의미로 해석되어서는 아니 되며, 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야만 한다.Prior to this, the terms or words used in the present specification and claims should not be construed in a conventional and dictionary meaning, and the inventor may properly define the concept of the term to describe his invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that there is.

본 발명의 일실시예에 따르면, 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.According to an embodiment of the present invention, the conditions and operations of the smart contract can be changed, so that it is possible to create and use smart contracts with various conditions necessary to provide various types of shared resources to shared services.

또한, 본 발명의 일실시예에 따르면, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있으므로, 공유서비스를 제공하기 위하여 필요한 스마트 컨트랙트의 지속적인 업데이트가 가능하다.In addition, according to an embodiment of the present invention, since conditions and operations of the smart contract can be changed based on user feedback, it is possible to continuously update the smart contract necessary to provide a shared service.

도 1은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법이 수행되는 환경을 나타내는 도면이다.
도 2는 본 발명의 일실시에에 따른 복합 IoT 디바이스를 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 각 단계를 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 시나리오를 스마트 컨트랙트와 기능으로 나타내는 도면이다.
도 5는 본 발명의 일실시예에 따른 시나리오 편집을 나타내는 도면이다.
도 6은 본 발명의 일실시예에 따른 인공지능 학습모델을 위한 학습데이터를 나타내는 도면이다.
도 7은 본 발명의 일실시예에 따른 인공지능 학습모델의 신경망 네트워크 구조를 예시적으로 나타내는 도면이다.
1 is a diagram illustrating an environment in which an intelligent smart contract providing method according to an embodiment of the present invention is performed.
2 is a diagram illustrating a composite IoT device according to an embodiment of the present invention.
3 is a view showing each step of the intelligent smart contract providing method according to an embodiment of the present invention.
4 is a diagram illustrating a scenario of a method for providing an intelligent smart contract according to an embodiment of the present invention in terms of smart contracts and functions.
5 is a diagram illustrating scenario editing according to an embodiment of the present invention.
6 is a diagram illustrating learning data for an artificial intelligence learning model according to an embodiment of the present invention.
7 is a diagram exemplarily illustrating a neural network structure of an artificial intelligence learning model according to an embodiment of the present invention.

본 발명의 일실시예의 목적, 특정한 장점들 및 신규한 특징들은 첨부된 도면들과 연관되어지는 이하의 상세한 설명과 바람직한 실시예들로부터 더욱 명백해질 것이다. 본 명세서에서 각 도면의 구성요소들에 참조번호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 번호를 가지도록 하고 있음에 유의하여야 한다. 또한, "일면", "타면", "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 상기 용어들에 의해 제한되는 것은 아니다. 이하, 본 발명의 일실시예를 설명함에 있어서, 본 발명의 일실시예의 요지를 불필요하게 흐릴 수 있는 관련된 공지 기술에 대한 상세한 설명은 생략한다. The objects, specific advantages and novel features of one embodiment of the present invention will become more apparent from the following detailed description and preferred embodiments taken in conjunction with the accompanying drawings. In the present specification, in adding reference numbers to the components of each drawing, it should be noted that only the same components are given the same number as possible even though they are indicated on different drawings. In addition, terms such as "one side", "the other side", "first", "second" etc. are used to distinguish one component from another component, and the component is limited by the terms. no. Hereinafter, in describing an embodiment of the present invention, detailed descriptions of related known technologies that may unnecessarily obscure the gist of an embodiment of the present invention will be omitted.

이하, 첨부된 도면을 참조하여, 본 발명의 일실시예를 상세히 설명한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법이 수행되는 환경을 나타내는 도면이다. 1 is a diagram illustrating an environment in which an intelligent smart contract providing method according to an embodiment of the present invention is performed.

본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 다양한 공유자원(10)을 누구나 공유대상으로 제공하고 이용할 수 있도록 블록체인 네트워크(50)에 기반하여 제공되는 '복합 IoT 디바이스를 이용한 공유서비스 제공방법'과 연계되어 수행될 수 있다. The intelligent smart contract providing method according to an embodiment of the present invention is a 'shared service using a complex IoT device that is provided based on the block chain network 50 so that anyone can provide and use various shared resources (10) as a sharing target. It may be performed in connection with the 'providing method'.

관리자가 복합 IoT 디바이스(20)를 다양한 종류의 공유자원(10)에 결합하고 공유자원(10)에 관한 정보와 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 등록함으로써 공유자원(10)을 공유서비스에 제공하면, 사용자는 블록체인 네트워크(50)를 통해 공유자원(10)의 이용권한을 획득하고 이용권한에 기초하여 복합 IoT 디바이스(20)의 잠금을 개방하여 공유자원(10)을 이용할 수 있다. 본 발명의 일실시예에서 공유서비스 또는 서비스는, 공유자원(10)을 공유하는 서비스 뿐만 아니라, 공유자원(10)을 이용하여 물건을 판매하거나 다양한 종류의 서비스를 제공하거나 공유자원(10) 자체를 매매하는 서비스도 포함할 수 있다. Shared resources by an administrator combining the composite IoT device 20 to various types of shared resources 10 and registering information about the shared resource 10 and information about the composite IoT device 20 in the blockchain network 50 If (10) is provided to the shared service, the user acquires the right to use the shared resource 10 through the block chain network 50 and unlocks the composite IoT device 20 based on the use right to unlock the shared resource ( 10) can be used. In one embodiment of the present invention, the shared service or service is not only a service for sharing the shared resource 10, but also selling goods or providing various types of services using the shared resource 10, or the shared resource 10 itself. It may include a service for buying and selling.

다양한 종류의 공유자원(10)을 이용하여 서비스를 제공하는 과정에서, 공유자원(10)의 특성이나 서비스의 특성에 따라 서비스를 제공하는 세부 단계의 변경이 필요할 수 있다. 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 서비스를 제공하는 과정을 블록체인 네트워크(50)에서 구현하는 스마트 컨트랙트를 사용자 피드백에 기초하여 수정할 수 있기 때문에, 새로운 종류의 공유자원(10)을 이용해야 하거나 새로운 종류의 서비스를 제공하기 알맞은 스마트 컨트랙트를 제공할 수 있다.In the process of providing a service using various types of shared resources 10 , it may be necessary to change the detailed steps of providing a service according to the characteristics of the shared resource 10 or the characteristics of the service. Since the intelligent smart contract providing method according to an embodiment of the present invention can modify the smart contract implementing the service providing process in the blockchain network 50 based on user feedback, a new kind of shared resource 10 It is possible to provide a smart contract suitable for providing a new kind of service.

이하에서 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법을 제공하는 환경에 대하여 설명한다. Hereinafter, an environment providing an intelligent smart contract providing method according to an embodiment of the present invention will be described.

도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50), 분산형 데이터베이스(70), 시나리오 관리서버(90)를 이용하여 수행될 수 있다. 1, the intelligent smart contract providing method according to an embodiment of the present invention is a composite IoT device 20, a manager terminal 31, a user terminal 32, a blockchain network 50, a distributed This may be performed using the database 70 and the scenario management server 90 .

블록체인 네트워크(50)는 복수의 노드(51)가 피어 투 피어(P2P, Peer to Peer) 방식으로 연결된 네트워크이다. 블록체인 네트워크(50)는 복수의 노드(51)들 사이의 정보처리와 각 노드(51)의 정보처리에 기초하여 지능형 스마트 컨트랙트 제공방법을 수행할 수 있다. 블록체인 네트워크(50)는 공유자원(10)을 이용하는 서비스를 제공하고, 지능형 스마트 컨트랙트 제공방법을 수행하기 위한 기능의 적어도 일부를 수행하는 복수의 노드(51)로 구성될 수 있다. The blockchain network 50 is a network in which a plurality of nodes 51 are connected in a peer-to-peer (P2P, Peer to Peer) manner. The blockchain network 50 may perform an intelligent smart contract providing method based on information processing between a plurality of nodes 51 and information processing of each node 51 . The blockchain network 50 may be composed of a plurality of nodes 51 that provide a service using the shared resource 10 and perform at least a part of a function for performing an intelligent smart contract providing method.

노드(51)는 통신부(51a), 제어부(51b), 저장부(51c)를 포함할 수 있다. 노드(51)는 서버 컴퓨터, PC, 노트북 PC, 태블릿 PC, 스마트폰 등의 정보처리장치를 포함한다. 통신부(51a)는 다른 노드(51), 관리자 단말(31), 사용자 단말(32), 복합 IoT 디바이스(20), 분산형 데이터베이스(70), 시나리오 관리서버(90)와 데이터를 송수신할 수 있다. 통신부(51a)는 노드(51)와 다른 노드(51)를 연결하여 블록체인 네트워크(50)를 구성할 수 있다. 저장부(51c)는 블록체인(60)의 전부 또는 일부를 저장할 수 있다. 저장부(51c)는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 일부 기능을 수행하는 프로그램 코드를 저장할 수 있다. 제어부(51b)는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 일부 기능을 수행하는 프로그램 코드를 실시할 수 있는 프로세서(processor)를 포함할 수 있다. The node 51 may include a communication unit 51a, a control unit 51b, and a storage unit 51c. The node 51 includes an information processing device such as a server computer, PC, notebook PC, tablet PC, and smart phone. The communication unit 51a may transmit/receive data to and from another node 51 , the manager terminal 31 , the user terminal 32 , the composite IoT device 20 , the distributed database 70 , and the scenario management server 90 . . The communication unit 51a may configure the block chain network 50 by connecting the node 51 and other nodes 51 . The storage unit 51c may store all or part of the block chain 60 . The storage unit 51c may store program codes for performing some functions of the method for providing an intelligent smart contract according to an embodiment of the present invention. The control unit 51b may include a processor capable of executing a program code for performing some functions of the method for providing an intelligent smart contract according to an embodiment of the present invention.

블록체인(60)은 이전 블록(61)의 해시값을 자기 블록(61)의 구성으로 포함하는 블록(61)들의 연속적인 연결로 구성될 수 있다. 블록(61)은 이전 블록(61)의 해시값 및 저장공간을 포함한다. 블록체인(60)은 블록체인 네트워크(50)를 구성하는 복수의 노드(51)에 각각 저장되고, 복수의 노드(51)에 저장된 블록체인(60)들은 서로 동일한 데이터를 갖는다. 블록(61)의 저장공간에는 공유자원(10)에 관한 정보, 복합 IoT 디바이스(20)에 관한 정보, 관리자에 관한 정보, 사용자에 관한 정보, 공유자원(10)을 이용한 서비스 이용기록, 편집된 시나리오(SN) 등이 저장될 수 있거나, 이러한 정보들은 분산형 데이터베이스(70)에 저장하고 저장내역을 블록(61)의 저장공간에 저장할 수 있다. The block chain 60 may be configured as a continuous connection of blocks 61 including the hash value of the previous block 61 as a configuration of the magnetic block 61 . Block 61 contains the hash value and storage space of the previous block 61 . The block chain 60 is stored in a plurality of nodes 51 constituting the block chain network 50, respectively, and the block chains 60 stored in the plurality of nodes 51 have the same data. In the storage space of the block 61, information about the shared resource 10, information about the composite IoT device 20, information about the manager, information about the user, service usage record using the shared resource 10, and edited The scenario SN and the like may be stored, or such information may be stored in the distributed database 70 and the storage details may be stored in the storage space of the block 61 .

관리자 단말(31) 및 사용자 단말(32)은 블록체인 네트워크(50)에 접속하여 데이터를 송수신할 수 있는 정보처리장치이다. 관리자 단말(31) 및 사용자 단말(32)은 스마트폰, 노트북 PC, 태블릿 PC, 웨어러블 컴퓨터 등의 휴대용 전자기기를 포함할 수 있다. 관리자 단말(31) 및 사용자 단말(32)은 dApp을 통하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다. The manager terminal 31 and the user terminal 32 are information processing devices that can transmit and receive data by connecting to the block chain network 50 . The manager terminal 31 and the user terminal 32 may include portable electronic devices such as smart phones, notebook PCs, tablet PCs, and wearable computers. The manager terminal 31 and the user terminal 32 may transmit/receive data to and from the blockchain network 50 through the dApp.

dApp(distributed Application, 분산형 어플리케이션)은 지능형 스마트 컨트랙트 제공방법을 사용자 및 관리자가 이용하기 위하여 접속하는 프론트엔드 인터페이스(Frontend Interface)이다. dApp은 관리자 단말(31) 및 사용자 단말(32)에 설치되어 실행될 수도 있고, 블록체인 네트워크(50)와 별도의 서버에서 운영되는 웹페이지 형태로 관리자 단말(31) 및 사용자 단말(32)에 제공될 수 있으며, 블록체인 네트워크(50)의 노드(51)에서 실행될 수도 있다. dApp은 관리자용 dApp(41) 및 사용자용 dApp(42)을 포함할 수 있다. 관리자용 dApp(41)은 공유자원(10)에 관한 정보, 및 복합 IoT 디바이스(20)에 관한 정보의 등록기능, 공유자원(10)의 모니터링 기능, 시나리오(SN) 편집기능, 각종 관리 허가 기능들을 관리자 단말(31)에 제공할 수 있다. 사용자용 dApp(42)은 공유자원(10) 검색기능, 이용권한 신청, 복합 IoT 디바이스(20)의 잠금해제 요청, 토탈서비스 추천, 시나리오(SN) 편집기능 등의 기능들을 관리자 단말(31)에 제공할 수 있다. dApp (distributed application, distributed application) is a front-end interface that users and administrators connect to use the intelligent smart contract provision method. The dApp may be installed and executed in the manager terminal 31 and the user terminal 32, and provided to the manager terminal 31 and the user terminal 32 in the form of a web page operated on a server separate from the block chain network 50 It can also be executed in the node 51 of the blockchain network 50. The dApp may include a dApp 41 for an administrator and a dApp 42 for a user. The manager dApp 41 has a function of registering information about the shared resource 10 and information about the composite IoT device 20, a monitoring function of the shared resource 10, a scenario (SN) editing function, and various management permission functions. These may be provided to the manager terminal 31 . The user dApp 42 provides functions such as a shared resource 10 search function, a use right application, a request to unlock the complex IoT device 20, a total service recommendation, and a scenario (SN) editing function to the manager terminal 31. can provide

dApp은 관리자 단말(31) 및 사용자 단말(32)로부터 수신한 데이터나 명령을 블록체인 네트워크(50)에 존재하는 스마트 컨트랙트에 전달한다. 블록체인 네트워크(50)에서 구동되는 스마트 컨트랙트는 관리자용 스마트 컨트랙트 및 사용자용 스마트 컨트랙트를 포함한다. 관리자용 스마트 컨트랙트는 관리자용 dApp(41)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다. 사용자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다. The dApp transfers data or commands received from the manager terminal 31 and the user terminal 32 to a smart contract existing in the blockchain network 50 . The smart contract running in the blockchain network 50 includes a smart contract for an administrator and a smart contract for a user. The manager smart contract may operate based on data and commands received from the manager dApp 41 . The smart contract for the user may operate based on the data and commands it receives from the dApp 42 for the user.

도 2는 본 발명의 일실시에에 따른 복합 IoT 디바이스(20)를 나타내는 도면이다.2 is a diagram illustrating a composite IoT device 20 according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 복합 IoT 디바이스(20)는 다양한 종류의 공유자원(10)에 결합되어 물리적 또는 전기적으로 공유자원(10)을 개폐하는 잠금모듈(21), 사용자 단말(32) 또는 블록체인 네트워크(50)와 데이터를 송수신하는 통신모듈(22), 및 사용자 단말(32)이 공유자원(10)의 이용권한을 갖는지 여부를 상기 블록체인 네트워크(50)로부터 수신하는 키에 기초하여 판단하고, 잠금모듈(21)을 개폐하도록 제어하는 컨트롤러모듈(23)을 포함할 수 있다. As shown in FIG. 2 , the composite IoT device 20 is coupled to various types of shared resources 10 to physically or electrically open and close the shared resource 10, a lock module 21 , a user terminal 32 or Based on the key received from the block chain network 50 whether the communication module 22 for transmitting and receiving data with the block chain network 50, and the user terminal 32 has the right to use the shared resource 10, the block chain network 50 It may include a controller module 23 for determining and controlling the opening and closing of the lock module 21 .

또한, 복합 IoT 디바이스(20)는 사용자 또는 관리자에게 정보를 시각적 또는 청각적으로 제공할 수 있는 표시모듈(25), 사용자 또는 관리자의 터치 등을 입력받을 수 있는 입력모듈(24), 복합 IoT 디바이스(20)의 구성들에게 전원을 공급하는 배터리 등의 전원모듈(26)을 포함할 수 있다. In addition, the composite IoT device 20 includes a display module 25 capable of providing information visually or audibly to a user or manager, an input module 24 capable of receiving a touch of a user or manager, and the like, a composite IoT device It may include a power module 26 such as a battery for supplying power to the components of (20).

잠금모듈(21)은 컨트롤러모듈(23)의 제어에 따라 개폐될 수 있다. 잠금모듈(21)은 공유대상에 물리적으로 결합되어 공유대상을 이용할 때 필요한 공유대상의 일부 구성에 사용자가 접근하는 것을 물리적으로 또는 전기적으로 차단할 수 있다. 예를 들어, 공유대상이 회의실이나 숙박시설인 경우 잠금모듈(21)은 문의 도어락이나 자물쇠에 물리적으로 결합되어 사용자가 문을 임의로 개방할 수 없도록 차단할 수 있다. 또는, 공유대상이 전자기기일 때 잠금모듈(21)은 전자기기의 입력장치나 출력장치에 결합되어 사용자가 전자기기의 전부 또는 일부를 사용할 수 없도록 물리적 또는 전기적인 제한을 수행할 수 있다. 또는, 잠금모듈(21)은 거래시의 결제서비스를 제공하는 카드리더기 또는 POS 시스템에 결합되어 사용자가 이용권한에 기초하여 결제서비스를 수행하도록 제한할 수 있다. 또는, 잠금모듈(21)은 도어락이나 자물쇠 등에 일체로 형성될 수 있다. 잠금모듈(21)은 다양한 공유대상에 결합될 수 있다. The lock module 21 may be opened and closed under the control of the controller module 23 . The lock module 21 is physically coupled to the sharing target to physically or electrically block the user's access to some components of the sharing target required when using the sharing target. For example, if the sharing target is a conference room or accommodation facility, the lock module 21 may be physically coupled to the door lock or lock of the door to block the user from arbitrarily opening the door. Alternatively, when the sharing target is an electronic device, the lock module 21 may be coupled to an input device or an output device of the electronic device to perform physical or electrical restrictions so that the user cannot use all or part of the electronic device. Alternatively, the lock module 21 may be coupled to a card reader or POS system that provides a payment service at the time of a transaction to restrict the user to perform a payment service based on usage rights. Alternatively, the lock module 21 may be integrally formed with a door lock or a lock. The locking module 21 may be coupled to various shared objects.

통신모듈(22)은 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)와 데이터를 송수신할 수 있다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 근거리 통신방식을 이용할 수 있다. 통신모듈(22)은 GPS 정보를 이용하여 자신의 위치를 인식할 수도 있다. The communication module 22 may transmit/receive data to and from the manager terminal 31 , the user terminal 32 , and the block chain network 50 . The communication module 22 may use a short-distance communication method such as Wi-Fi, Bluetooth, or NFC. The communication module 22 may recognize its own location using GPS information.

컨트롤러모듈(23)은 잠금모듈(21)의 개폐를 제어할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용을 요청한 사용자 단말(32)의 이용권한을 확인할 수 있다. 컨트롤러모듈(23)은 일회용 인증 프로토콜에 따라 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키를 비교하여 사용자 단말(32)의 이용권한을 확인할 수 있다. 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키가 일치하는 경우 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)의 이용권한의 존재가 확인되면 잠금모듈(21)을 개방하도록 제어한다. 컨트롤러모듈(23)은 정해진 사용기간이 경과하거나, 필요한 조건이 만족되는 경우 잠금모듈(21)을 잠그도록 제어할 수 있다. The controller module 23 may control opening and closing of the lock module 21 . The controller module 23 may check the usage right of the user terminal 32 that has requested the use of the shared resource 10 . The controller module 23 compares the key received from the block chain network 50 with the key transmitted by the user terminal 32 through the communication module 22 according to the one-time authentication protocol to determine the right to use the user terminal 32 can be checked When the key received from the block chain network 50 and the key transmitted by the user terminal 32 through the communication module 22 match, the controller module 23 determines that the user terminal 32 has the right to use it. can do. The controller module 23 controls to open the lock module 21 when the existence of the right to use the user terminal 32 is confirmed. The controller module 23 may control the locking module 21 to be locked when a predetermined period of use has elapsed or a necessary condition is satisfied.

컨트롤러모듈(23)은 통신모듈(22)과 사용자 단말(32) 사이의 근거리 통신 또는 GPS 정보를 이용하여 사용자 단말(32)이 정해진 거리만큼 접근하여야 이용권한을 갖는지 여부를 판단하는 절차를 시작할 수도 있다. 사용자 단말(32)과 통신모듈(22)이 정해진 거리만큼 접근한 상태에서 잠금이 개방되어야 이용권한이 없는 사람의 이용을 방지할 수 있는 점에서 근접여부 판단은 추가적인 안전장치가 된다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 전파 강도에 기초한 거리판단을 수행하거나, 자신의 GPS 좌표와 사용자 단말(32)로부터 수신하는 사용자 단말(32)의 GPS 정보를 비교하여 근접 여부를 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)이 통신모듈(22)과 정해진 거리만큼 접근한 것으로 판단되면, 블록체인 네트워크(50)에 일회용 인증 프로토콜에 기초한 이용권한 확인을 요청할 수 있다.The controller module 23 may start a procedure for determining whether or not the user terminal 32 has the right to use only when the user terminal 32 approaches by a predetermined distance using short-distance communication or GPS information between the communication module 22 and the user terminal 32. there is. The proximity determination is an additional safety device in that the user terminal 32 and the communication module 22 must be unlocked in a state in which the user terminal 32 and the communication module 22 are approached by a predetermined distance to prevent use by a person who does not have the right to use. The communication module 22 performs distance determination based on the strength of radio waves such as Wi-Fi, Bluetooth, NFC, or the like, or compares its own GPS coordinates with GPS information of the user terminal 32 received from the user terminal 32 for proximity can determine whether When it is determined that the user terminal 32 approaches the communication module 22 by a predetermined distance, the controller module 23 may request the blockchain network 50 to check the usage right based on the one-time authentication protocol.

복합 IoT 디바이스(20)의 잠금모듈(21)은 사용자가 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하여야 공유자원(10)에 미리 설치되어 있는 다른 잠금장치(예를 들어, 도어락)에 접근가능하도록, 잠금장치에 애드온 방식으로 설치될 수 있다. 애드온(add on) 방식이란 공유자원(10)에 설치되어 있는 잠금장치는 그대로 유지하고, 잠금장치에 복합 IoT 디바이스(20)를 추가로 결합하는 것이다. 복합 IoT 디바이스(20)의 잠금모듈(21)은 잠금장치를 개방하기 위해 필요한 키패드, 열쇠구멍, 다이얼 등을 커버하도록 결합되고, 잠금모듈(21)이 개방되면 사용자가 키패드, 열쇠구멍, 다이얼 등에 접근할 수 있는 공간을 오픈하는 방식으로 형성될 수 있다. The locking module 21 of the composite IoT device 20 requires the user to open the locking module 21 based on the use right of the shared resource 10, and then other locking devices installed in advance in the shared resource 10 (for example, It can be installed as an add-on to the lock, for example, to access the door lock. The add-on method maintains the lock installed in the shared resource 10 as it is, and additionally couples the composite IoT device 20 to the lock. The lock module 21 of the composite IoT device 20 is coupled to cover a keypad, a key hole, a dial, etc. required to open the lock, and when the lock module 21 is opened, the user can use the keypad, key hole, dial, etc. It can be formed in a way that opens an accessible space.

컨트롤러모듈(23)은 사용자 또는 관리자가 입력모듈(24)로 입력하는 정보에 기초하여 공유자원(10)의 이용에 필요한 절차를 더 수행할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하는 경우, 잠금장치를 개방할 수 있는 키를 상기 사용자 단말(32)로 제공할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단되면, 공유자원(10)을 이용하는데 필요한 비밀번호 등의 정보를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다. 예를 들어, 잠금모듈(21)이 도어락에 물리적으로 연결되어 있는 경우, 사용자 단말(32)의 이용권한이 확인되면 컨트롤러모듈(23)은 잠금모듈(21)을 개방하도록 제어하면서, 도어락을 개방하는데 필요한 도어락 비밀번호를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다. The controller module 23 may further perform a procedure necessary for use of the shared resource 10 based on information input by a user or an administrator to the input module 24 . The controller module 23 may provide a key for opening the locking device to the user terminal 32 when the locking module 21 is opened based on the right to use the shared resource 10 . If it is determined that the user terminal 32 has the right to use the user terminal 32 , the controller module 23 provides information such as a password required to use the shared resource 10 to the user terminal 32 or through the display module 25 . can be provided to users. For example, when the lock module 21 is physically connected to the door lock, when the user terminal 32 is checked for permission to use, the controller module 23 controls the lock module 21 to open while opening the door lock. The door lock password required for this may be provided to the user terminal 32 or to the user through the display module 25 .

게이트웨이모듈(27)은 모션센서, 인체감지센서, 적외선센서, 초음파센서, 터치센서 중에서 적어도 하나를 이용하여 공유자원(10)의 이용상태를 감시하여 이용상태정보를 생성하고 상기 컨트롤러모듈(23)에 제공할 수 있다. 게이트웨이모듈(27)은 공유자원(10)을 이용하는 사람이 존재하는지 여부를 감시한다. 게이트웨이모듈(27)은 물리적으로 별도의 디바이스로 형성되고, 공유자원(10)의 이용상태를 감시하기 적합한 위치의 공유자원(10)에 결합될 수 있다. The gateway module 27 monitors the usage status of the shared resource 10 using at least one of a motion sensor, a human body sensor, an infrared sensor, an ultrasonic sensor, and a touch sensor to generate usage status information, and the controller module 23 can be provided to The gateway module 27 monitors whether there is a person using the shared resource 10 . The gateway module 27 is physically formed as a separate device, and may be coupled to the shared resource 10 at a location suitable for monitoring the usage state of the shared resource 10 .

예를 들어, 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 게이트웨이모듈(27)은 공간에 사람이 존재하는지 여부를 확인할 수 있는 위치에 설치될 수 있다. 이때 게이트웨이모듈(27)은 잠금모듈(21)과 물리적으로 별도의 디바이스로 형성되어, 게이트웨이모듈(27)이 감지한 공유자원(10)의 이용상태는 통신모듈(22)을 통해 컨트롤러모듈(23)에 전달될 수 있다. 컨트롤러모듈(23)은 이용권한에 기초하여 공유자원(10)을 이용하는 사람이 침입자인지 정당한 사용자인지 판단할 수 있다. 컨트롤러모듈(23)은 침입자로 판단되는 경우 관리자 단말(31)에 경보를 제공할 수 있다. 컨트롤러모듈(23)은 이용권한에 기초한 사용시간이 만료되면 게이트웨이모듈(27)로부터 수신한 이용상태에 기초하여 공유자원(10)을 이용하는 사람이 없는지 확인하고, 공유자원(10)을 이용하는 사람이 없는 경우 잠금모듈(21)이 잠궈지도록 제어할 수 있다. 상품을 구매하는 거래 서비스의 경우 공유자원(10)을 일회적으로 이용하는 것이므로 게이트웨이모듈(27)이 불필요할 수 있다. For example, when the shared resource 10 is a space such as a conference room or accommodation facility, the gateway module 27 may be installed at a location where it is possible to check whether a person exists in the space. At this time, the gateway module 27 is formed as a physically separate device from the lock module 21 , and the usage state of the shared resource 10 sensed by the gateway module 27 is determined by the controller module 23 through the communication module 22 . ) can be transferred to The controller module 23 may determine whether the person using the shared resource 10 is an intruder or a legitimate user based on the usage right. The controller module 23 may provide an alert to the manager terminal 31 when it is determined as an intruder. When the usage time based on the usage right expires, the controller module 23 checks whether no one uses the shared resource 10 based on the usage status received from the gateway module 27, and the person using the shared resource 10 If there is no lock module 21 can be controlled to be locked. In the case of a transaction service for purchasing a product, since the shared resource 10 is used once, the gateway module 27 may be unnecessary.

상술한 바와 같은 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)는 다양한 공유자원(10)에 결합될 수 있고, 공유자원(10)의 이용권한이 존재하는 사용자에게만 잠금모듈(21)을 개방하여 공유자원(10)의 이용을 제공할 수 있다. As described above, the composite IoT device 20 according to an embodiment of the present invention can be coupled to various shared resources 10 , and the lock module 21 is provided only to a user who has the right to use the shared resource 10 . It can be opened to provide the use of the shared resource (10).

도 3은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 각 단계를 나타내는 도면이다. 3 is a view showing each step of the intelligent smart contract providing method according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 관리자 단말(31)이 공유자원(10)을 이용한 서비스를 제공하기 위하여 공유자원(10)을 블록체인 네트워크(50)에 등록하고 공유자원(10)을 이용할 서비스에 적용될 시나리오(SN)를 결정하는 공유자원 등록단계(S110), 공유자원(10)을 이용한 서비스를 블록체인 네트워크(50)를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오(SN)에 기초하여 서비스를 제공하는 서비스 제공단계(S120), 사용자 단말(32) 또는 관리자 단말(31)이 시나리오(SN)를 편집하는 피드백을 제공하는 피드백단계(S130), 피드백에 기초하여 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계(S140), 및 인공지능 학습모델이 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계(S150)를 포함할 수 있다. As shown in FIG. 3 , in the intelligent smart contract providing method according to an embodiment of the present invention, the manager terminal 31 uses the shared resource 10 to provide a service using the shared resource 10 in a blockchain network. A shared resource registration step (S110) of registering in (50) and determining a scenario (SN) to be applied to a service using the shared resource (10), providing a service using the shared resource (10) through the blockchain network (50) A service providing step (S120) of providing a service based on a scenario (SN) including one or more smart contracts necessary for this purpose, the user terminal 32 or the manager terminal 31 providing feedback to edit the scenario (SN) A feedback step (S130), a learning step (S140) of learning an artificial intelligence learning model that changes the contents of one or more smart contracts included in the scenario (SN) based on the feedback (S140), and the artificial intelligence learning model in the scenario (SN) It may include a scenario modification step (S150) of changing the contents of one or more included smart contracts.

공유자원 등록단계(S110)는 서비스 제공단계(S120) 이전에 수행될 수 있다. 공유자원 등록단계(S110)는 관리자 단말(31)이 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 제공하고, 서비스를 제공하기 위해 필요한 시나리오(SN)를 결정하는 과정이다. 공유자원(10)을 이용하여 서비스를 제공하기 위해서는 해당 공유자원(10)을 블록체인 네트워크(50)에 등록하는 공유자원 등록단계(S110)를 수행할 필요가 있다.The shared resource registration step (S110) may be performed before the service provision step (S120). In the shared resource registration step (S110), the manager terminal 31 provides information about the shared resource 10 and information about the composite IoT device 20 coupled to the shared resource 10 to the block chain network 50 and , it is the process of determining the necessary scenario (SN) to provide the service. In order to provide a service using the shared resource 10 , it is necessary to perform the shared resource registration step ( S110 ) of registering the shared resource 10 in the blockchain network 50 .

공유자원 등록단계(S110)는 관리자 단말(31)이 공유자원(10)에 관한 정보, 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 제공하는 정보전송단계(S111), 공유자원(10)과 기존에 등록된 다른 공유자원(10)을 비교하여 유사한 경우 기존에 등록된 다른 공유자원(10)을 이용한 서비스에 이용되는 시나리오(SN)를 관리자 단말(31)에 제공하고, 공유자원(10)이 기존에 등록된 다른 공유자원(10)과 다른 새로운 것인 경우 예시적인 시나리오(SN)들을 관리자 단말(31)에 제공하는 예시제공단계(S112), 관리자 단말(31)이 다른 공유자원(10)을 이용한 서비스에 이용되는 시나리오(SN)에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오(SN)들 중에서 사용자가 선택한 하나의 시나리오(SN)와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계(S113)를 포함할 수 있다. In the shared resource registration step (S110), the manager terminal 31 provides information about the shared resource 10 and information about the composite IoT device 20 coupled to the shared resource 10 to the block chain network 50. In the information transmission step (S111), the shared resource 10 is compared with another previously registered shared resource 10 and, if similar, manages the scenario SN used for the service using the other previously registered shared resource 10. An example providing step (S112) of providing to the terminal 31 and providing exemplary scenarios (SN) to the manager terminal 31 when the shared resource 10 is new and different from other previously registered shared resources 10 ), the manager terminal 31 receives and provides a user's edit for a scenario (SN) used for a service using another shared resource 10, or one scenario ( SN) and a scenario selection step (S113) of receiving and providing the user's edits.

정보전송단계(S111)는 관리자 단말(31)이 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)로 제공하는 과정이다. 블록체인 네트워크(50)는 관리자 단말(31)로부터 수신한 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록(61)에 저장할 수 있다. The information transmission step (S111) is a process in which the manager terminal 31 provides information about the shared resource 10 and information about the composite IoT device 20 coupled to the shared resource 10 to the block chain network 50 am. The blockchain network 50 may store information about the shared resource 10 received from the manager terminal 31 and information about the composite IoT device 20 coupled to the shared resource 10 in the block 61 . .

예시제공단계(S112)는 공유자원(10)을 이용하는 서비스를 제공하기 위하여 필요한 시나리오(SN)를 관리자 단말(31)에게 제공하는 과정이다. 공유자원(10)을 이용하여 서비스를 제공하기 위해서는 정해진 절차에 따라 관리자 단말(31), 사용자 단말(32), 복합 IoT 디바이스(20), 블록체인 네트워크(50)의 협업이 요구된다. 예를 들어, 공유자원(10)이 집인 경우 집을 이용하여 숙박 공유 서비스를 제공할 수 있고, 숙박 공유 서비스를 제공하기 위해서는 예약을 하고, 비용을 지불하며, 사용자를 확인하고, 잠금을 해제하며, 출입을 확인하고, 정해진 기간이 만료되면 잠금을 수행하는 일련의 절차가 필요하다. 이러한 절차 또는 기능을 블록체인 네트워크(50)를 이용하여 제공하기 위하여 스마트 컨트랙트를 이용할 수 있고, 이러한 절차를 수행하기 위하여 복합적으로 조합된 복수의 스마트 컨트랙트와 그 동작순서를 시나리오(SN)라고 할 수 있다. The example providing step S112 is a process of providing the manager terminal 31 with a scenario SN necessary for providing a service using the shared resource 10 . In order to provide a service using the shared resource 10 , collaboration of the manager terminal 31 , the user terminal 32 , the composite IoT device 20 , and the blockchain network 50 is required according to a predetermined procedure. For example, if the shared resource 10 is a house, the accommodation sharing service may be provided using the house, and to provide the accommodation sharing service, a reservation is made, payment is made, the user is identified, and the lock is released. A series of procedures are required to confirm access and lock when the specified period expires. A smart contract can be used to provide such a procedure or function using the block chain network 50, and a plurality of smart contracts complexly combined to perform this procedure and the operation sequence thereof can be referred to as a scenario (SN). there is.

시나리오(SN)는 블록체인 네트워크(50)를 통해 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 스마트 컨트랙트의 동작순서를 포함할 수 있고, 스마트 컨트랙트는 공유자원(10)을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 조건을 만족하면 수행하는 동작을 포함할 수 있다. The scenario SN may include one or more smart contracts necessary to provide a service through the blockchain network 50, and an operation sequence of the smart contract, and the smart contract provides a service using the shared resource 10 It may include one or more conditions for implementing at least some functions required for this purpose and an operation performed when the conditions are satisfied.

도 4는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 시나리오(SN)를 스마트 컨트랙트와 기능으로 나타내는 도면이다. 4 is a diagram illustrating a scenario (SN) of a method for providing an intelligent smart contract according to an embodiment of the present invention with smart contracts and functions.

도 4에 도시된 바와 같이, 시나리오(SN)를 스마트 컨트랙트의 집합인 계약으로 도시하면, 시나리오(계약)(SN)은 복수의 스마트 컨트랙트를 포함할 수 있고, 복수의 스마트 컨트랙트의 동작순서를 포함할 수 있다. 또한, 시나리오(SN)를 서비스를 제공하기 위해 필요한 기능으로 도시하면, 시나리오(기능)(SN)은 복수의 스마트 컨트랙트가 수행하는 기능들을 포함할 수 있고, 복수의 기능의 동작순서를 포함할 수 있다.As shown in FIG. 4 , if the scenario SN is shown as a contract that is a set of smart contracts, the scenario (contract) SN may include a plurality of smart contracts and includes the operation sequence of the plurality of smart contracts. can do. In addition, if the scenario SN is shown as a function necessary to provide a service, the scenario (function) SN may include functions performed by a plurality of smart contracts, and may include an operation sequence of a plurality of functions. there is.

예를 들어, 공유자원(10)을 대여해주는 공유서비스를 제공하는 경우, 시나리오(SN)는 스마트 컨트랙트 1, 2, 3, ... No. (SC-1, SC-2, SC-3, ... SC-No.)가 순서대로 동작하도록 조합될 수 있다. 이때 시나리오(SN)를 따라 복수의 스마트 컨트랙트가 동작하면 공유자원 현재상태 확인기능(SC-1), 이용권한 부여기능(SC-2), 이용 시작 기능(SC-3), ... 이용 종료 기능(SC-No.)이 동작할 수 있다. 공유자원(10)이나 서비스의 특성에 따라 서비스의 제공에 필요한 하나의 기능을 수행하기 위하여 두개 이상의 스마트 컨트랙트가 복합적으로 동작할 수 있다. For example, in the case of providing a shared service that lends the shared resource 10, the scenario SN is the smart contract 1, 2, 3, ... No. (SC-1, SC-2, SC-3, ... SC-No.) may be combined to operate in sequence. At this time, if a plurality of smart contracts operate according to the scenario (SN), the shared resource current status check function (SC-1), the use authorization function (SC-2), the use start function (SC-3), ... end use The function (SC-No.) can operate. According to the shared resource 10 or the characteristics of the service, two or more smart contracts may operate in a complex manner in order to perform one function required for the provision of the service.

다시 도 3을 참조하면, 예시제공단계(S112)에서 블록체인 네트워크(50)는 정보전송단계(S111)에서 수신한 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보 및 서비스의 종류에 따라 알맞은 시나리오(SN)를 관리자 단말(31)에 제공할 수 있다. 등록하려는 공유자원(10)과 기존에 등록된 다른 공유자원(10)을 비교하여 유사하다면 다른 공유자원(10)을 이용하여 제공하는 서비스와 유사한 시나리오(SN)를 따라 서비스가 제공될 것임을 예상할 수 있다. 따라서 블록체인 네트워크(50)는 공유자원(10)이 유사한지 여부를 비교하여 기존에 등록된 다른 공유자원(10)을 이용하여 제공되는 서비스에 이용되는 시나리오(SN)를 하나 이상 선택하여 관리자 단말(31)에 제공할 수 있다. Referring back to FIG. 3 , in the example providing step S112 , the block chain network 50 receives the information about the shared resource 10 and the composite IoT device 20 information and services received in the information transmission step S111 . A suitable scenario SN may be provided to the manager terminal 31 according to the type of . If the shared resource 10 to be registered is compared with another shared resource 10 previously registered, it can be expected that the service will be provided according to a scenario SN similar to the service provided using the other shared resource 10. can Therefore, the blockchain network 50 compares whether the shared resources 10 are similar and selects one or more scenarios (SNs) used for services provided by using other previously registered shared resources 10, and selects the manager terminal (31) can be provided.

또는, 예시제공단계(S112)에서 블록체인 네트워크(50)는 등록하려는 공유자원(10)과 기존에 등록된 공유자원(10)을 비교한 결과 유사하지 않고 등록하려는 공유자원(10)이 새로운 종류인 경우 다양한 종류의 서비스에 사용되는 예시적인 시나리오(SN)들을 관리자 단말(31)에 제공할 수 있다. 새로운 종류의 공유자원(10)과 새로운 종류의 서비스를 제공하기 위해서는 새로운 시나리오(SN)가 필요하지만, 완전히 새로운 시나리오(SN)를 처음부터 관리자가 작성하는 것은 어려우므로, 다른 서비스에서 사용되는 시나리오(SN)들 중에서 적당한 시나리오(SN)를 선택하여 편집하여 사용할 수 있도록 예시적인 시나리오(SN)들을 제공하는 것이다. Alternatively, in the example providing step (S112), the blockchain network 50 compares the shared resource 10 to be registered with the previously registered shared resource 10 and is not similar and the shared resource 10 to be registered is a new type. In the case of , exemplary scenarios (SNs) used for various types of services may be provided to the manager terminal 31 . In order to provide a new type of shared resource 10 and a new type of service, a new scenario (SN) is required, but since it is difficult for an administrator to create a completely new scenario (SN) from the beginning, the scenario used in other services ( Exemplary scenarios (SNs) are provided so that appropriate scenarios (SNs) can be selected from among SNs, edited and used.

다음으로, 시나리오 선택단계(S113)에서 관리자 단말(31)은 시나리오(SN)를 수신하면 관리자에게 시나리오(SN)를 표시하고, 관리자가 시나리오(SN)를 선택하고 편집하는 입력을 수신하며, 선택되거나 편집된 시나리오(SN)를 블록체인 네트워크(50)에 제공할 수 있다. Next, in the scenario selection step S113 , when the manager terminal 31 receives the scenario SN, it displays the scenario SN to the manager, receives an input for the manager to select and edit the scenario SN, and select The created or edited scenario SN may be provided to the blockchain network 50 .

시나리오 선택단계(S113)에서 관리자 단말(31)은 공유자원(10)의 종류가 유사한 다른 공유자원(10)을 이용하는 서비스에 이용되는 시나리오(SN)들을 수신한 경우, 표시된 시나리오(SN)들 중에서 관리자가 임의의 시나리오(SN)를 선택하는 입력을 수신하고, 선택돤 시나리오(SN)를 블록체인(60)에 제공할 수 있다. 또는, 시나리오 선택단계(S113)에서 공유자원(10)이 새로운 종류이거나 서비스가 새로운 종류여서 예시적인 시나리오(SN)들을 수신한 경우, 표시된 예시적인 시나리오(SN)들 중에서 관리자가 선택한 하나의 시나리오(SN)와 관리자의 편집을 수신하여 블록체인 네트워크(50)에 제공할 수 있다. 관리자가 시나리오(SN)를 편집하는 과정에 대한 자세한 내용은 후술한다. In the scenario selection step S113 , the manager terminal 31 receives scenarios SNs used for services using other shared resources 10 having similar types of shared resources 10 , among the displayed scenarios SNs. The administrator may receive an input for selecting an arbitrary scenario SN, and may provide the selected scenario SN to the block chain 60 . Alternatively, when exemplary scenarios (SNs) are received because the shared resource 10 is of a new type or the service is of a new type in the scenario selection step (S113), one scenario selected by the administrator from among the displayed exemplary scenarios (SN) ( SN) and the administrator's edits can be received and provided to the blockchain network 50 . Details of the process of the manager editing the scenario SN will be described later.

블록체인 네트워크(50)를 기반으로 동작하는 스마트 컨트랙트를 관리자가 직접 프로그램 코드를 작성하여 실행하는 것은 어려우므로, 블록체인 네트워크(50)를 이용하는 서비스가 널리 보급되기 어려운 문제가 있다. 또한, 기술이 발전하고 사회가 변화하면서 새로운 종류의 공유자원(10)과 새로운 종류의 서비스는 항상 발생하므로, 새로운 종류의 공유자원(10)과 이를 이용한 서비스를 제공하기 위한 시나리오(SN)를 매번 새로 만드는 것은 블록체인 네트워크(50)를 이용하는 서비스의 보급에 장애가 된다. 이러한 문제를 해결하기 위하여, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 관리자 또는 사용자가 시나리오(SN)를 직접 편집하거나 인공지능 학습모델이 시나리오(SN)를 자동으로 수정하는 단계를 포함하여, 새로운 종류의 공유자원(10)과 새로운 종류의 서비스를 제공할 수 있다. 공유자원(10)을 블록체인 네트워크(50)에 등록하는 과정의 시나리오 선택단계(S113)에서 관리자가 관리자 단말(31)을 통해 시나리오(SN)를 편집할 수 있으므로 관리자가 새로운 공유자원(10)을 이용하여 새로운 서비스를 용이하게 제공할 수 있다.Since it is difficult for an administrator to write and execute a program code directly for a smart contract operating based on the blockchain network 50 , there is a problem in that a service using the blockchain network 50 is not widely distributed. In addition, as technology develops and society changes, a new type of shared resource 10 and a new type of service always occur, so a new type of shared resource 10 and a scenario SN for providing a service using the same are always performed. Creating a new one is an obstacle to the dissemination of services using the blockchain network 50 . In order to solve this problem, an intelligent smart contract providing method according to an embodiment of the present invention includes the step of directly editing the scenario (SN) by an administrator or user or automatically modifying the scenario (SN) by an artificial intelligence learning model Thus, it is possible to provide a new kind of shared resource 10 and a new kind of service. In the scenario selection step (S113) of the process of registering the shared resource 10 to the blockchain network 50, the administrator can edit the scenario SN through the administrator terminal 31, so that the administrator can use the new shared resource 10 can be used to easily provide new services.

공유자원 등록단계(S110)가 수행되면, 사용자가 사용자 단말(32)을 통해 공유자원(10)을 검색하고 이용권한을 획득하여 이용하도록 하는 서비스 제공단계(S120)가 수행될 수 있다. 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 관리자나 사용자가 '복합 IoT 디바이스(20)를 이용한 공유서비스'를 제공하고 이용하는 과정을 더 쉽게하기 위한 것이다. 이하에서 복합 IoT 디바이스(20)를 이용한 공유서비스를 제공하는 서비스 제공단계(S120)를 먼저 설명한다. When the shared resource registration step ( S110 ) is performed, a service provision step ( S120 ) in which the user searches for the shared resource 10 through the user terminal 32 and obtains and uses the right to use it may be performed. The intelligent smart contract providing method according to an embodiment of the present invention is to make it easier for an administrator or user to provide and use a 'shared service using the composite IoT device 20'. Hereinafter, the service providing step ( S120 ) of providing a shared service using the composite IoT device 20 will be described first.

복합 IoT 디바이스(20)를 이용한 공유서비스는, 관리자 단말(31)이 관리자 dApp을 통하여 공유자원(10)의 정보 및 공유자원(10)에 결합된 복합 IoT 디바이스(20)의 정보를 블록체인 네트워크(50)에 제공하여 공유자원(10)을 공유가능하도록 제공하는 공유자원 등록단계(S110), 사용자 단말(32)이 사용자 dApp을 통하여 블록체인 네트워크(50)에 등록된 공유자원(10)의 이용권한을 요청하고 관리자 단말(31)이 사전에 지정해놓은 스마트 컨트랙트에 기초하여 이용권한이 부여되는 이용권한 획득단계(S121), 및 복합 IoT 디바이스(20)가 사용자 단말(32)에 이용권한이 존재하는지 판단하여 공유자원(10)에 접근가능하도록 잠금을 개방하는 이용 시작단계(S122)를 포함할 수 있고, 이용권한에 기초하여 정해진 사용시간이 만료되는 경우, 공유자원(10)의 이용상태를 점검하여 이용이 종료된 것으로 판단되면 잠금모듈(21)이 잠궈지도록 제어하는 이용 종료단계(S123)를 더 포함할 수 있다. 공유자원 등록단계(S110)에서 정보전송단계(S111), 예시제공단계(S112), 시나리오 선택단계(S113)에 관련된 기술내용은 상술하였으므로 이하에서는 생략한다.In the shared service using the composite IoT device 20, the manager terminal 31 transmits the information of the shared resource 10 and the information of the composite IoT device 20 coupled to the shared resource 10 through the manager dApp through a blockchain network. A shared resource registration step (S110) of providing the shared resource 10 so that it can be shared by providing it to the 50, the user terminal 32 of the shared resource 10 registered in the blockchain network 50 through the user dApp A use right acquisition step (S121) in which a use right is requested and a use right is granted based on a smart contract designated by the manager terminal 31 in advance, and the composite IoT device 20 has a use right to the user terminal 32 It may include a use start step (S122) of opening a lock to be accessible to the shared resource 10 by determining whether there is, and when the use time determined based on the use authority expires, the use state of the shared resource 10 It may further include a use termination step (S123) of controlling the lock module 21 to be locked when it is determined that the use is terminated by checking the . In the shared resource registration step (S110), the descriptions related to the information transmission step (S111), the example providing step (S112), and the scenario selection step (S113) have been described above, and thus will be omitted below.

복합 IoT 디바이스(20)를 이용한 공유서비스 제공방법은, 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)를 포함하는 시스템에서 수행될 수 있다. 관리자와 사용자는 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)를 이용한 공유서비스를 이용하기 위하여 회원가입을 하고 정해진 정보를 등록할 수 있다.The shared service providing method using the composite IoT device 20 may be performed in a system including the composite IoT device 20 , the manager terminal 31 , the user terminal 32 , and the block chain network 50 . An administrator and a user may register as a member and register predetermined information in order to use the shared service using the composite IoT device 20 according to an embodiment of the present invention.

정보전송단계(S111)는 관리자 단말(31)이 관리자용 dApp(41)을 통하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보를 블록체인 네트워크(50)에 제공하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 기초하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보가 블록체인 네트워크(50)가 생성하는 블록(61)에 기록되고 블록(61)이 공유되는 단계를 포함할 수 있다. In the information transmission step (S111), the manager terminal 31 provides the information of the shared resource 10 and the information of the composite IoT device 20 to the block chain network 50 through the dApp 41 for the manager, and Based on the smart contract for the manager of the blockchain network 50, the information of the shared resource 10 and the information of the composite IoT device 20 are recorded in the block 61 generated by the blockchain network 50, and the block 61 ) may include a shared step.

먼저 관리자는 복합 IoT 디바이스(20)를 공유자원(10)에 설치한다. 관리자는 관리자 단말(31)을 이용하여 관리자 dApp을 실행하거나 관리자 dApp에 접속하여 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 입력한다. 공유자원(10)에 관한 정보는 공유자원(10)의 종류, 특징, 대여비용, 대여가능 시간대, 최소대여 가능시간 등 사용자가 공유자원(10)을 이용하는데 필요한 정보를 포함한다. 복합 IoT 디바이스(20)에 관한 정보는 기기 ID, Mac Address, 게이트웨이모듈(27)의 센서 타입, 센서 추가 시간 등 사용자 단말(32)과 블록체인 네트워크(50)가 복합 IoT 디바이스(20)를 인식하고 데이터를 송수신할 수 있도록 하는 정보를 포함한다. 관리자 단말(31)에 입력된 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보는 dApp을 통해 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 전달된다. First, the manager installs the composite IoT device 20 in the shared resource 10 . The manager executes the manager dApp using the manager terminal 31 or accesses the manager dApp to input information about the shared resource 10 and information about the composite IoT device 20 . The information on the shared resource 10 includes information necessary for a user to use the shared resource 10 , such as the type, characteristic, rental cost, rental available time, and minimum rental available time of the shared resource 10 . The information about the composite IoT device 20 includes the device ID, Mac Address, sensor type of the gateway module 27, sensor addition time, etc. The user terminal 32 and the blockchain network 50 recognize the composite IoT device 20 and includes information that allows data to be transmitted and received. The information about the shared resource 10 and the information about the composite IoT device 20 input to the manager terminal 31 is transmitted to the smart contract for the manager of the blockchain network 50 through the dApp.

관리자용 dApp(41)은 네트워크의 관리자용 스마트 컨트랙트를 호출하여 입력받은 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 제공한다. 관리자용 dApp(41)은 Restful API를 이용하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다. The manager dApp 41 provides information about the shared resource 10 and information about the composite IoT device 20 received by calling the smart contract for the manager of the network. The manager dApp 41 can transmit and receive data to and from the blockchain network 50 using the Restful API.

관리자용 스마트 컨트랙트는 공유자원(10) 정보관리 기능을 수행하여 공유자원(10)을 사용자가 이용가능하도록 블록체인 네트워크(50) 상에 등록한다. 관리자용 스마트 컨트랙트는 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 블록(61)의 저장공간에 테이블 형식으로 저장하도록 블록체인 네트워크(50)를 구성하는 노드(51)들에 공유할 수 있다. 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보는 검증 및 합의과정을 통해 블록(61)에 저장된다. The manager smart contract performs a shared resource 10 information management function and registers the shared resource 10 on the block chain network 50 so that the user can use it. The smart contract for the manager is a node 51 that configures the blockchain network 50 to store information about the shared resource 10 and information about the composite IoT device 20 in the storage space of the block 61 in a table format. can be shared with Information about the shared resource 10 and information about the composite IoT device 20 are stored in the block 61 through a verification and consensus process.

서비스 제공단계(S120)는, 이용권한 획득단계(S121), 이용 시작단계, 이용 종료단계(S123)를 포함할 수 있다. The service provision step (S120) may include a use right acquisition step (S121), a use start step, and a use end step (S123).

이용권한 획득단계(S121)는, 사용자 단말(32)이 사용자용 dApp(42)을 통해 블록체인 네트워크(50)에 분산 저장된 블록체인(60)에 기록된 공유자원(10)의 검색을 요청하면, 사용자용 dApp(42)이 블록체인(60)에 기록된 공유자원(10)을 검색하여 제공가능한 공유자원(10)의 목록을 사용자 단말(32)로 제공하는 단계, 사용자 단말(32)이 제공가능한 공유자원(10)의 목록 중에서 공유자원(10)을 선택하여 이용권한 획득을 요청하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트는 요청된 공유자원(10)의 이용가능여부를 판단하고 이용가능한 경우 사용자 단말(32)에 이용권한을 부여하였음을 블록체인(60)에 기록하는 단계를 포함할 수 있다. When the user terminal 32 requests a search for the shared resource 10 recorded in the block chain 60 distributed and stored in the block chain network 50 through the dApp 42 for the user, the use right acquisition step S121 is , a step in which the dApp 42 for the user searches for the shared resources 10 recorded in the block chain 60 and provides a list of the available shared resources 10 to the user terminal 32, the user terminal 32 Selecting a shared resource 10 from the list of available shared resources 10 and requesting permission to use, and a smart contract for an administrator of the blockchain network 50 whether the requested shared resource 10 is available It may include the step of determining in the block chain 60 that the user terminal 32 has been granted the use right if available.

사용자는 공유자원(10)을 이용하기 위하여 먼저 이용권한을 획득하여야 한다. 이용권한 획득단계(S121)에서, 사용자는 사용자 단말(32)에서 사용자용 dApp(42)을 실행하거나 사용자용 dApp(42)에 접속하여 블록체인 네트워크(50)에 등록된 공유자원(10)의 검색을 요청할 수 있다. dApp은 공유자원(10)의 종류, 위치, 사용기간, 대여비용 등의 조건을 선택하여 공유자원(10)을 검색할 수 있는 인터페이스를 제공할 수 있다. dApp은 사용자 단말(32)로부터 수신한 검색조건에 기초하여 블록체인 네트워크(50)를 구성하는 임의의 노드(51)에 검색을 요청할 수 있다. 복수의 노드(51)들 각각은 동일한 블록체인(60)을 저장하고 있으므로, 사용자용 dApp(42)에 의해 요청된 검색을 수행하고 결과를 회신할 수 있다. 사용자 단말(32)은 임의의 노드(51)에서 검색을 수행한 결과를 사용자용 dApp(42)을 통해 전달받을 수 있다. 사용자 단말(32)은 수신한 검색결과를 사용자에게 표시한다.In order to use the shared resource 10, the user must first obtain the right to use it. In the use right acquisition step (S121), the user executes the user dApp 42 on the user terminal 32 or accesses the user dApp 42 to access the shared resource 10 registered in the blockchain network 50. You can request a search. The dApp may provide an interface for searching for the shared resource 10 by selecting conditions such as the type, location, period of use, and rental cost of the shared resource 10 . The dApp may request a search from any node 51 constituting the blockchain network 50 based on the search condition received from the user terminal 32 . Since each of the plurality of nodes 51 stores the same blockchain 60, it is possible to perform a search requested by the dApp 42 for the user and return the result. The user terminal 32 may receive the result of performing the search in the arbitrary node 51 through the dApp 42 for the user. The user terminal 32 displays the received search result to the user.

이용권한 획득단계(S121)에서, 사용자는 검색결과로 제공된 공유자원(10) 목록에서 공유자원(10)을 선택하고 공유자원(10)의 이용권한 획득을 요청할 수 있다. 사용자 단말(32)은 사용자용 dApp(42)을 통해 사용자가 선택한 공유자원(10)의 이용권한 획득을 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 요청할 수 있다.In the use permission acquisition step (S121), the user may select the shared resource 10 from the list of the shared resources 10 provided as a search result and request acquisition of the use right of the shared resource 10. The user terminal 32 may request the smart contract for the manager of the blockchain network 50 to obtain the right to use the shared resource 10 selected by the user through the dApp 42 for the user.

이용권한 획득단계(S121)에서, 관리자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신한 공유자원(10)의 이용권한 획득요청을 수신하면, 공유자원(10)의 이용가능 여부를 판단한다. 공유자원(10)의 이용가능 여부는 공유자원(10)의 이용권한 획득요청에 포함된 조건들에 기초하여 판단될 수 있다. 사용자가 요청한 시간에 이미 예약되어 있는 다른 사용자가 존재하는지 여부를 판단하고, 사용자가 블랙리스트에 등록되어 있어서 이용권한을 획득할 자격이 없는 사람인지 판단할 수 있다. 관리자용 스마트 컨트랙트는 요청된 공유자원(10)이 이용가능한 경우 이용권한을 요청한 사용자 단말(32)에 이용권한을 부여함을 블록체인(60)에 기록한다. 관리자용 스마트 컨트랙트는 요청된 시간에 해당 사용자 단말(32)에 이용권한이 존재한다는 내용을 블록체인 네트워크(50)에 공유하고, 블록체인 네트워크(50)는 검증 및 합의를 통해 블록(61)에 이용권한이 부여되었음을 저장한다. 관리자용 스마트 컨트랙트는 이용권한이 부여되었음을 사용자 dApp을 통해 사용자 단말(32)에 제공할 수 있다. In the use right acquisition step (S121), the smart contract for the manager determines whether the shared resource 10 is available when it receives a request for acquiring the use right of the shared resource 10 received from the dApp 42 for the user. Availability of the shared resource 10 may be determined based on conditions included in the request for obtaining the right to use the shared resource 10 . It may be determined whether there is another user who has already been reserved at the time requested by the user, and it may be determined whether the user is not entitled to acquire the right to use because the user is registered in the blacklist. The smart contract for the manager records in the block chain 60 that when the requested shared resource 10 is available, it grants the use right to the user terminal 32 that has requested the use right. The smart contract for administrator shares the content that the user terminal 32 has the right to use at the requested time to the block chain network 50, and the block chain network 50 transmits the information to the block 61 through verification and consensus. Saves that permission has been granted. The smart contract for the manager may provide that the use right is granted to the user terminal 32 through the user dApp.

사용자 단말(32)이 이용권한을 획득하면, 사용자는 사용자 단말(32)을 통해 복합 IoT 모듈의 잠금을 개방하고 공유자원(10)의 이용을 시작할 수 있다. 이용 시작단계(S122)는 사용자 단말(32)이 사용자용 dApp(42)을 통하여 블록체인 네트워크(50)에 이용권한에 기초한 상기 복합 IoT 디바이스(20)의 잠금 개방을 요청하는 단계, 복합 IoT 디바이스(20)가 사용자 단말(32)이 정해진 거리 이내에 위치하는지 판단하는 단계, 복합 IoT 디바이스(20)와 사용자 단말(32)이 정해진 거리 이내에 위치하는 경우, 복합 IoT 디바이스(20)와 상기 사용자 단말(32)이 각각 상기 블록체인 네트워크(50)에 일회용 인증 프로토콜의 실행을 요청하는 단계, 블록체인 네트워크(50)는 일회용 인증 프로토콜에 따라, 일회용 키를 생성하여 상기 복합 IoT 디바이스(20)와 상기 사용자 단말(32)에 각각 전달하는 단계, 및 상기 복합 IoT 디바이스(20)가 수신한 상기 일회용 키와 상기 사용자 단말(32)로부터 수신한 상기 일회용 키가 일치하는 경우 상기 사용자 단말(32)에 이용권한이 있는 것으로 판단하여 잠금을 개방하는 단계를 포함할 수 있다. When the user terminal 32 acquires the right to use, the user may unlock the composite IoT module through the user terminal 32 and start using the shared resource 10 . The use start step (S122) is a step in which the user terminal 32 requests the lock-opening of the composite IoT device 20 based on the usage right to the blockchain network 50 through the dApp 42 for the user, the composite IoT device (20) determining whether the user terminal 32 is located within a predetermined distance, when the composite IoT device 20 and the user terminal 32 are located within a predetermined distance, the composite IoT device 20 and the user terminal ( 32) each requesting execution of a one-time authentication protocol from the blockchain network 50, the blockchain network 50 generates a one-time key according to the one-time authentication protocol to generate a one-time key for the composite IoT device 20 and the user transmitting each to the terminal 32, and when the one-time key received by the composite IoT device 20 matches the one-time key received from the user terminal 32, the user terminal 32 is entitled to use Determining that there is a lock may include the step of opening the lock.

사용자는 사용자 단말(32)을 통해 이용권한을 획득한 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 잠금 개방을 요청할 수 있다. 사용자 단말(32)은 복합 IoT 디바이스(20)에 직접 또는 dApp이나 블록체인 네트워크(50)를 통해 잠금 개방을 요청할 수 있다.The user may request a lock open from the composite IoT device 20 coupled to the shared resource 10 that has obtained the right to use it through the user terminal 32 . The user terminal 32 may request unlocking of the lock directly from the composite IoT device 20 or through a dApp or blockchain network 50 .

복합 IoT 디바이스(20)는 잠금 개방 요청을 받으면 사용자 단말(32)이 정해진 거리 이내에 위치하는지 판단하는 근접 여부 판단을 수행할 수 있다. 사용자 단말(32)이 공유자원(10) 근처에 없는 상태에서 이용권한에 기초하여 잠금모듈(21)을 개방하게 되면, 이용권한이 없는 타인이 공유자원(10)을 이용할 위험이 존재하기 때문에, 사용자가 공유자원(10)에 정해진 거리 이내에 위치하는지 판단하는 과정이다. 근접 여부 판단은 복합 IoT 디바이스(20)의 컨트롤러모듈(23)을 설명하는 과정에서 설명하였으므로 중복되는 내용은 생략한다. 사용자 단말(32)은 Wi-Fi, bluetooth, NFC 등의 근거리 통신을 이용하여 복합 IoT 디바이스(20)에 신호를 송수신할 수 있다. 사용자 단말(32)은 자신의 GPS 좌표를 복합 IoT 디바이스(20)에 전송하여 복합 IoT 디바이스(20)가 근접 여부 판단을 수행할 수 있게 한다.Upon receiving the lock open request, the composite IoT device 20 may perform proximity determination to determine whether the user terminal 32 is located within a predetermined distance. If the user terminal 32 opens the lock module 21 based on the use right while the user terminal 32 is not near the shared resource 10, there is a risk that others without the use right will use the shared resource 10, It is a process of determining whether a user is located within a predetermined distance to the shared resource 10 . Since the determination of proximity is described in the process of describing the controller module 23 of the composite IoT device 20, overlapping contents are omitted. The user terminal 32 may transmit/receive a signal to/from the composite IoT device 20 using short-distance communication such as Wi-Fi, bluetooth, or NFC. The user terminal 32 transmits its GPS coordinates to the composite IoT device 20 to enable the composite IoT device 20 to perform proximity determination.

사용자 단말(32)이 복합 IoT 디바이스(20)에 정해진 거리 이내에 위치하는 것으로 판단되는 경우, 복합 IoT 디바이스(20)는 사용자 단말(32)에 근접 여부 판단을 통과하였다는 신호를 제공할 수 있다. 근접 여부 판단을 통과한 경우, 복합 IoT 디바이스(20)와 사용자 단말(32)은 블록체인 네트워크(50)에 일회용 인증 프로토콜의 실행을 요청할 수 있다. 복합 IoT 디바이스(20)와 사용자 단말(32)로부터 수신되는 일회용 인증 프로토콜의 실행 요청이 일치하는 경우 블록체인 네트워크(50)는 일회용 인증 프로토콜을 실행한다. When it is determined that the user terminal 32 is located within a predetermined distance to the composite IoT device 20 , the composite IoT device 20 may provide a signal indicating that the proximity determination has been passed to the user terminal 32 . If the proximity determination is passed, the composite IoT device 20 and the user terminal 32 may request the blockchain network 50 to execute a one-time authentication protocol. When the execution request of the one-time authentication protocol received from the composite IoT device 20 and the user terminal 32 matches, the blockchain network 50 executes the one-time authentication protocol.

일회용 인증 프로토콜은 블록체인(60)에 저장된 이용권한 기록을 검색하여, 사용자 단말(32)이 정해진 시간에 해당 공유자원(10)의 이용권한을 갖는지 판단하고, 이용권한이 존재하는 경우 일회용 인증 프로토콜은 복합 IoT 디바이스(20)와 사용자 단말(32)에 일회용 키를 생성하여 제공한다. 일회용 키는 임의로 생성되는 값일 수 있고, 복합 IoT 디바이스(20)와 사용자 단말(32) 각각의 공개키로 암호화되어 전달될 수 있다. 복합 IoT 디바이스(20)가 수신한 일회용 키와 사용자 단말(32)이 수신한 일회용 키를 비교하여 일치하는 경우 복합 IoT 디바이스(20)는 사용자 단말(32)이 이용권한을 갖는 것으로 판단하여 잠금모듈(21)의 잠금을 개방할 수 있다. 사용자는 잠금모듈(21)이 개방되면 공유자원(10)을 이용할 수 있다. 잠금모듈(21)이 공유자원(10)의 기존 잠금장치에 애드온 방식으로 결합된 경우 복합 IoT 디바이스(20)는 사용자 단말(32)에 기존 잠금장치의 비밀번호를 제공하고, 사용자는 사용자 단말(32)에 표시된 비밀번호를 기존 잠금장치에 입력하여 공유자원(10)을 이용할 수 있다. The one-time authentication protocol searches the record of use rights stored in the block chain 60, determines whether the user terminal 32 has the right to use the corresponding shared resource 10 at a predetermined time, and if there is a use right, the one-time authentication protocol generates and provides a one-time key to the composite IoT device 20 and the user terminal 32 . The one-time key may be an arbitrarily generated value, and may be encrypted and transmitted with a public key of each of the composite IoT device 20 and the user terminal 32 . When the one-time key received by the composite IoT device 20 is matched with the one-time key received by the user terminal 32, the composite IoT device 20 determines that the user terminal 32 has the right to use the lock module (21) can be unlocked. The user can use the shared resource 10 when the lock module 21 is opened. When the lock module 21 is coupled to the existing locking device of the shared resource 10 in an add-on method, the composite IoT device 20 provides the password of the existing locking device to the user terminal 32, and the user uses the user terminal 32 ), you can use the shared resource 10 by entering the password displayed in the existing lock.

게이트웨이모듈(27)은 사용자가 공유자원(10)을 이용하는 과정에서 공유자원(10)의 상태를 모니터링할 수 있다. 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 잠금모듈(21)이 개방되면 게이트웨이모듈(27)은 공유자원(10)인 공간에 사람이 들어오고 나가는지 여부를 센싱할 수 있다. 게이트웨이모듈(27)은 정해진 주기마다 또는 잠금모듈(21)이 개방되면 지속적으로 공유자원(10)의 이용상태를 센싱할 수 있다. 게이트웨이모듈(27)은 공유자원(10)의 이용상태를 복합 IoT 디바이스(20)에 전송할 수 있다.The gateway module 27 may monitor the state of the shared resource 10 while the user uses the shared resource 10 . When the shared resource 10 is a space such as a conference room or accommodation facility, when the lock module 21 is opened, the gateway module 27 can sense whether a person enters or leaves the space that is the shared resource 10 . . The gateway module 27 may sense the usage state of the shared resource 10 continuously at predetermined intervals or when the lock module 21 is opened. The gateway module 27 may transmit the usage state of the shared resource 10 to the composite IoT device 20 .

관리자 단말(31)은 관리자용 dApp(41)을 통해 공유자원(10) 접근관리기능을 수행할 수 있다. 관리자 단말(31)은 공유자원(10)에 이용을 신청한 사용자들에 관한 정보, 공유자원(10)의 이용상태에 관한 정보, 공유자원(10)의 이용기록 및 예약 기록 등을 모니터링할 수 있다. 관리자용 dApp(41)은 관리자용 스마트 컨트랙트에 공유자원(10)의 현재 상태 모니터링을 요청할 수 있으며 관리자용 스마트 컨트랙트는 복합 IoT 디바이스(20)로부터 게이트웨이모듈(27)이 제공한 공유자원(10)의 이용상태를 수신하여 관리자용 dApp(41)을 통해 관리자 단말(31)에 제공할 수 있다.The manager terminal 31 may perform an access management function of the shared resource 10 through the dApp 41 for the manager. The manager terminal 31 can monitor information about users who have applied for use of the shared resource 10 , information about the usage status of the shared resource 10 , usage records and reservation records of the shared resource 10 , etc. there is. The manager dApp 41 can request the manager smart contract to monitor the current state of the shared resource 10, and the manager smart contract is the shared resource 10 provided by the gateway module 27 from the composite IoT device 20. can be provided to the manager terminal 31 through the manager's dApp 41 by receiving the usage status.

사용자는 이용권한에 기초한 사용시간이 종료되는 경우 공유자원(10)의 이용을 중지한다. 복합 IoT 디바이스(20)는 이용권한에 기초한 사용시간이 종료되는 경우 게이트웨이모듈(27)로부터 공유자원(10)의 이용상태에 관한 정보를 수신하여 잠금모듈(21)을 동작시켜 사용자와 공유자원(10)을 차단해도 되는지 판단한다. 예를 들어, 공유자원(10)이 회의실이나 숙박시설과 같은 공간인 경우, 게이트웨이모듈(27)은 공유자원(10)인 공간 안에 사용자가 존재하는지 센싱할 수 있고, 공유자원(10)인 공간 안에 사용자가 존재하지 않게 되었을 때 복합 IoT 디바이스(20)는 잠금모듈(21)이 잠궈지도록 제어할 수 있다. The user stops using the shared resource 10 when the usage time based on the usage right is over. The composite IoT device 20 receives information about the usage state of the shared resource 10 from the gateway module 27 when the usage time based on the usage right ends and operates the locking module 21 to operate the shared resource ( 10) is judged to be blocked. For example, when the shared resource 10 is a space such as a conference room or accommodation facility, the gateway module 27 may sense whether a user exists in the space that is the shared resource 10 , and the space that is the shared resource 10 . When the user does not exist therein, the composite IoT device 20 may control the locking module 21 to be locked.

복합 IoT 디바이스(20)가 잠금모듈(21)을 잠그도록 제어하여 사용자의 이용이 종료되면, 복합 IoT 디바이스(20)는 블록체인 네트워크(50)에 사용종료 사실을 전송한다. 공유서비스 사용이 종료되면 서비스 이용내역이 블록체인 네트워크(50)에 전달된다. When the user's use is terminated by controlling the composite IoT device 20 to lock the locking module 21 , the composite IoT device 20 transmits the fact of termination to the blockchain network 50 . When the use of the shared service is terminated, the service usage details are transmitted to the block chain network 50 .

이러한 서비스 제공단계(S120)를 통해 공유자원(10)을 이용하는 서비스가 제공될 수 있다. 사용자는 서비스를 이용하는 과정에서 불편하거나 오류가 존재하거나 수정이 필요한 내용을 피드백할 수 있다. A service using the shared resource 10 may be provided through the service providing step ( S120 ). Users may provide feedback on inconvenient, error, or correction in the process of using the service.

피드백단계(S130)는 사용자 단말(32) 또는 관리자 단말(31)이 시나리오(SN)의 적어도 일부를 편집하여 피드백으로 제공하는 것이다. 관리자 단말(31)은 공유자원(10)을 등록하는 과정의 시나리오 선택단계(S113)에서 일차적으로 시나리오(SN)를 편집할 수 있고, 공유자원(10)을 이용하여 서비스가 제공되는 상태에서도 시나리오(SN)를 편집하여 제공하는 피드백을 제공할 수 있다. In the feedback step S130 , the user terminal 32 or the manager terminal 31 edits at least a part of the scenario SN and provides it as feedback. The manager terminal 31 may edit the scenario SN primarily in the scenario selection step S113 of the process of registering the shared resource 10 , and use the shared resource 10 to edit the scenario even in a state in which the service is provided. (SN) can be edited to provide feedback.

도 5는 본 발명의 일실시예에 따른 시나리오(SN) 편집을 나타내는 도면이다. 5 is a diagram illustrating scenario (SN) editing according to an embodiment of the present invention.

도 5에 도시된 바와 같이, 피드백단계(S130)는 사용자 또는 관리자가 사용자 단말(32) 또는 관리자 단말(31)을 통해 시나리오(SN)에서 사용자 또는 관리자가 입력하여야 동작하는 기능들을 수정하면, 그에 따라 시나리오(SN)의 기능들을 제공하기 위하여 포함된 복수의 스마트 컨트랙트의 동작순서, 스마트 컨트랙트의 조건 또는 동작을 자동으로 수정할 수 있다. 예를 들어, 시나리오(SN-0)가 공유자원(10) 현재상태 확인기능(SC-1), 이용권한 부여기능(SC-2), 이용 시작기능(SC-3), 이용 종료기능(SC-4)을 수행하는 스마트 컨트랙트 1, 2, 3, 4 (SC-1, SC-2, SC-3, SC-4)를 포함하는 경우, 관리자 또는 사용자가 일시정지 기능(SC-3a)이 더 필요하다고 판단하여 일시정지 기능(SC-3a)을 이용 시작기능(SC-3)과 이용 종료기능(SC-4) 사이에 삽입라는 편집을 수행할 수 있다. 이러한 경우 관리자 단말(31) 또는 사용자 단말(32)은 기능을 나타내는 시나리오(SN-0)를 표시하고, 관리자 또는 사용자가 선택하는 위치에 일시정지 기능(SC-3a)을 삽입하는 입력을 수신한다. 그러면 관리자 단말(31) 또는 사용자 단말(32)은 일시정지 기능(SC-3a)을 수행할 수 있는 스마트 컨트랙트 3a (SC-3a)를 스마트 컨트랙트 3(SC-3)과 스마트 컨트랙트 4(SC-4) 사이에서 동작하도록 시나리오(SN-0)의 스마트 컨트랙트를 수정하여, 편집된 시나리오(SN-1)를 생성할 수 있다. As shown in FIG. 5 , in the feedback step S130 , if the user or manager modifies the functions that the user or manager must input in the scenario SN through the user terminal 32 or the manager terminal 31 to operate, it Accordingly, in order to provide the functions of the scenario SN, the operation sequence of a plurality of included smart contracts, conditions or operations of the smart contract can be automatically modified. For example, the scenario (SN-0) is the shared resource 10, the current status check function (SC-1), the use authorization function (SC-2), the use start function (SC-3), the use end function (SC) When including smart contracts 1, 2, 3, and 4 (SC-1, SC-2, SC-3, SC-4) that perform -4), the administrator or user has a pause function (SC-3a) Determining that it is more necessary, an edit such as inserting the pause function SC-3a between the use start function SC-3 and the use end function SC-4 may be performed. In this case, the manager terminal 31 or the user terminal 32 displays the scenario indicating the function SN-0, and receives an input for inserting the pause function SC-3a at a position selected by the administrator or the user. . Then, the manager terminal 31 or the user terminal 32 connects the smart contract 3a (SC-3a) capable of performing the pause function (SC-3a) to the smart contract 3 (SC-3) and the smart contract 4 (SC-). 4) The edited scenario SN-1 can be created by modifying the smart contract of the scenario SN-0 to operate between them.

시나리오(SN)에 추가할 수 있는 기능들은 다른 시나리오(SN)에 포함된 스마트 컨트랙트로부터 가져올 수 있다. 시나리오(SN)에 포함된 기능들은 세부 기능들로 나뉘어질 수 있으며, 세부 기능을 수행하는 스마트 컨트랙트를 블록(61)과 같이 조합하여 임의의 기능을 생성할 수 있다. 예를 들어, 일시정지 기능(SC-3a)을 시나리오(SN-0)에 추가하려는 경우, 관리자 단말(31) 또는 사용자 단말(32)은 다른 시나리오(SN)에 포함되어 있는 일시정지 기능(SC-3a)을 가져올 수도 있고, 다른 시나리오(SN)에 포함되어 있는 공유자원 현재상태 확인기능, 공유자원의 다음 예약 존재 확인 기능, 비용 추가결제 기능, 이용시간 변경기능 등을 조합하여, 현재 공유자원(10)을 자신이 이용하고 있고, 다음 예약이 존재하지 않는 경우 정해진 비용을 추가로 결제하고 이용시간을 일시정지 하였다가 다시 시작하도록 변경하도록 조합하여 일시정지 기능(SC-3a)을 생성할 수 있다. Functions that can be added to a scenario (SN) can be imported from smart contracts included in other scenarios (SN). Functions included in the scenario SN may be divided into detailed functions, and an arbitrary function may be created by combining a smart contract that performs the detailed function as in block 61 . For example, if the pause function SC-3a is to be added to the scenario SN-0, the manager terminal 31 or the user terminal 32 may include the pause function SC included in another scenario SN. -3a), and by combining the function to check the current status of the shared resources included in other scenarios (SN), the function to confirm the existence of the next reservation of the shared resource, the function to pay additional costs, the function to change the usage time, etc. If you are using (10) and there is no next reservation, you can create a pause function (SC-3a) by combining it to change the usage time to start again after paying an additional fee. there is.

시나리오(SN)에서 임의의 기능을 삭제하려는 경우 관리자 단말(31) 또는 사용자 단말(32)은 삭제하려는 기능을 선택하고 삭제하는 입력을 수신할 수 있다. 시나리오(SN)에서 임의의 기능의 동작순서를 변경하려는 경우 관리자 단말(31) 또는 사용자 단말(32)은 동작순서를 변경하려는 기능을 선택하고 위치를 변경하여 동작순서를 변경하는 입력을 수신할 수 있다. When an arbitrary function is to be deleted from the scenario SN, the manager terminal 31 or the user terminal 32 may receive an input for selecting and deleting a function to be deleted. In the case of changing the operation order of arbitrary functions in the scenario SN, the manager terminal 31 or the user terminal 32 may receive an input for changing the operation order by selecting the function for which the operation order is to be changed and changing the location. there is.

관리자 단말(31) 또는 사용자 단말(32)은 시나리오(SN)에서 스마트 컨트랙트의 조건 및 동작을 변경할 수 있다. 스마트 컨트랙트의 조건 및 동작은 단말에서 프로그램 코드를 수정하는 방법으로 편집될 수 있다. 또는, 스마트 컨트랙트의 조건 및 동작이 기능의 세부사항으로 표시되고, 사용자 또는 관리자가 기능의 세부사항을 수정하면 스마트 컨트랙트의 조건 및 동작이 수정되는 방법으로 편집될 수 있다. 시나리오 선택단계(S113) 또는 피드백단계(S130)는 상술한 바와 같이 시나리오(SN)를 편집하는 과정을 수행할 수 있다. The manager terminal 31 or the user terminal 32 may change the conditions and operation of the smart contract in the scenario SN. The conditions and actions of the smart contract can be edited by modifying the program code in the terminal. Alternatively, it can be edited in such a way that the conditions and operations of the smart contract are displayed as details of the function, and the conditions and operations of the smart contract are modified when the user or administrator modifies the details of the function. The scenario selection step S113 or the feedback step S130 may perform a process of editing the scenario SN as described above.

그리고, 피드백은 사용자 단말(32)로부터 수집되는 위치정보, 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함할 수 있다. 사용자 단말(32)은 사용자와 복합 IoT 디바이스(20)가 인접한 경우 자동으로 팝업질문을 표시할 수 있다. 팝업질문은 인접한 위치에 존재하는 서비스 추천, 이용하고 있는 서비스에 관한 선호도 질문, 이용하고 있는 서비스에 관한 수정할 점 또는 불편한 점에 관한 질문 등을 포함할 수 있다. 사용자 단말(32)은 팝업질문에 대한 사용자의 답변을 입력받으면, 블록체인 네트워크(50)에 답변을 피드백으로서 제공할 수 있다. 또한, 사용자는 사용자 단말(32)을 통하여 챗봇과 대화할 수 있다. 챗봇은 공유자원(10)을 이용하는 서비스에 대한 질문에 답변을 제공하는 서비스를 포함한다. 챗봇과 사용자의 대화내역(TD-C)은 피드백으로서 블록체인 네트워크(50)에 제공될 수 있다. 챗봇과 사용자의 대화내역(TD-C)을 구문분석하면 사용자가 불편을 느낀 사항이나 수정을 요구하는 사항을 인식할 수 있다. 이러한 방법을 이용하여 인식한 사용자의 의견은 피드백으로 포함될 수 있다. In addition, the feedback may further include location information collected from the user terminal 32 , an answer input to a pop-up question provided according to the location information, and a history of conversations between the chatbot and the user. The user terminal 32 may automatically display a pop-up question when the user and the composite IoT device 20 are adjacent. The pop-up question may include a service recommendation existing in an adjacent location, a preference question about the service being used, and a question about corrections or inconveniences about the service being used. When the user terminal 32 receives the user's answer to the pop-up question, the user terminal 32 may provide the answer to the blockchain network 50 as feedback. Also, the user may communicate with the chatbot through the user terminal 32 . The chatbot includes a service that provides an answer to a question about a service using the shared resource 10 . The chatbot and the user's conversation history (TD-C) may be provided to the blockchain network 50 as feedback. By parsing the chatbot and the user's conversation history (TD-C), it is possible to recognize the items that the user feels uncomfortable with or the items that require correction. The user's opinion recognized using this method may be included as feedback.

피드백이 수집되면, 피드백을 이용하여 인공지능 학습모델을 학습시키는 학습단계(S140)를 수행할 수 있다. 학습단계(S140)에서 먼저 피드백을 종합하여 인공지능 학습모델을 훈련시키기 위한 학습데이터(TD)를 생성한다. When the feedback is collected, a learning step ( S140 ) of learning the artificial intelligence learning model by using the feedback may be performed. In the learning step (S140), first, by synthesizing the feedback, learning data (TD) for training the artificial intelligence learning model is generated.

도 6은 본 발명의 일실시예에 따른 인공지능 학습모델을 위한 학습데이터(TD)를 나타내는 도면이다. 6 is a diagram illustrating learning data (TD) for an artificial intelligence learning model according to an embodiment of the present invention.

학습단계(S140)는 입력데이터가 시나리오(SN)이고 정답데이터가 사용자 단말(32) 또는 관리자 단말(31)로부터 수신한 편집된 시나리오(SNe)인 학습데이터(TD)를 이용할 수 있다. 학습데이터(TD)는 관리자 단말(31) 또는 사용자 단말(32)로부터 수신한 편집된 시나리오(SNe-1)를 이용하여 생성되는 시나리오 학습데이터(TD-S), 사용자 단말(32)로부터 수신되는 사용자 단말(32)의 위치정보(TD-L), 챗봇과 사용자의 대화내역(TD-C), 팝업질문의 답변(TD-A)을 포함할 수 있다. In the learning step (S140), the input data is the scenario (SN) and the correct answer data is the edited scenario (SNe) received from the user terminal 32 or the manager terminal 31 may use the learning data (TD). The learning data TD is the scenario learning data TD-S generated using the edited scenario SNe-1 received from the manager terminal 31 or the user terminal 32, and received from the user terminal 32 It may include location information (TD-L) of the user terminal 32, conversation history (TD-C) between the chatbot and the user, and answers to pop-up questions (TD-A).

도 7은 본 발명의 일실시예에 따른 인공지능 학습모델의 신경망 네트워크 구조를 예시적으로 나타내는 도면이다. 7 is a diagram exemplarily illustrating a neural network structure of an artificial intelligence learning model according to an embodiment of the present invention.

도 7에 도시된 바와 같이, 본 발명의 일실시예에 따른 인공지능 학습모델은 입력층과 복수의 은닉층과 출력층을 포함하는 신경망 네트워크 구조를 이용할 수 있다. 학습단계(S140)에서 학습되는 인공지능 학습모델은 시나리오 학습데이터(TD-S)를 이용하여 학습될 수 있다. 인공지능 학습모델의 노드(N)들을 연결하는 방식은 다양하게 존재할 수 있다. 시나리오(SN)는 복수의 스마트 컨트랙트가 순서적으로 조합되어 있는 구조이므로, 각 스마트 컨트랙트의 조건과 동작을 특성벡터화 하고, 스마트 컨트랙트의 순서를 특성벡터화하여 복합벡터를 형성하여 입력층으로 입력한다. 입력층으로 입력된 정보는 인코더를 거치면서 인코딩 정보가 되고, 디코더를 거치면서 복원되어 출력층으로 출력된다. 출력층이 출력하는 특성벡터를 정답데이터인 편집된 시나리오(SNe)와 비교하여 오차를 감소시키는 방향으로 역전파하여 인공지능 학습모델을 학습시킬 수 있다. As shown in FIG. 7 , the artificial intelligence learning model according to an embodiment of the present invention may use a neural network structure including an input layer, a plurality of hidden layers, and an output layer. The artificial intelligence learning model learned in the learning step S140 may be learned using the scenario learning data TD-S. There may be various ways to connect the nodes (N) of the AI learning model. Since the scenario (SN) is a structure in which a plurality of smart contracts are sequentially combined, the conditions and operations of each smart contract are transformed into a characteristic vector, and the sequence of the smart contract is transformed into a characteristic vector to form a complex vector and input to the input layer. Information input to the input layer becomes encoding information through the encoder, and is restored through the decoder and output to the output layer. The AI learning model can be trained by comparing the characteristic vector output by the output layer with the edited scenario (SNe), which is the correct answer data, and backpropagating it in the direction of reducing the error.

인공지능 학습모델은 블록체인 네트워크(50) 상에서 동작하지 않고, 시나리오 관리서버(90)에 존재할 수 있다. 인공지능 학습모델은 새로운 종류의 공유자원(10)이 등록된 경우 해당 종류의 공유자원(10)을 이용하는 서비스의 시나리오(SN) 수정을 담당하는 새로운 인공지능 학습모델이 생성된다. 블록체인 네트워크(50)를 이용하여 제공되는 공유자원(10)을 이용하는 서비스의 종류마다 시나리오(SN)를 수정하는 인공지능 학습모델이 배정되어, 시나리오 관리서버(90)는 복수의 인공지능 학습모델을 운영할 수 있다. The AI learning model does not operate on the blockchain network 50 and may exist in the scenario management server 90 . In the AI learning model, when a new type of shared resource 10 is registered, a new AI learning model responsible for modifying the scenario (SN) of the service using the shared resource 10 of the corresponding type is created. An artificial intelligence learning model for correcting a scenario (SN) is assigned for each type of service using the shared resource 10 provided using the block chain network 50, and the scenario management server 90 provides a plurality of artificial intelligence learning models. can operate.

인공지능 학습모델은 시나리오 학습데이터(TD-S)를 이용하여 학습될 수 있다. 이때, 피드백에 포함되는 팝업질문의 답변(TD-A)이나 챗봇과 사용자의 대화내역(TD-C)을 분석하여 획득된 수정이 필요한 항목이 존재하는 경우, 수정이 필요한 항목에 가중치를 더 부여할 수 있다. 예를 들어, 팝업질문의 답변(TD-A)이나 챗봇과 사용자의 대화내역(TD-C)을 분석한 결과, 일시정지가 불가능한 점이 수정이 필요하다고 인식된 경우, 시나리오 학습데이터(TD-S)가 보유하고 있는 시나리오(SN)-편집된 시나리오(SNe)로 구성된 복수의 데이터쌍들 중에서 일시정지 기능을 추가하는 편집이 수행된 데이터쌍을 정해진 횟수만큼 반복학습 시키거나, 학습된 인공지능 학습모델에서 일시정지 기능이 학습된 부분에 가중치를 더 부여하는 방식을 이용하여, 학습을 강화할 수 있다. The AI learning model may be trained using scenario learning data (TD-S). At this time, if there is an item that needs correction obtained by analyzing the answer to the pop-up question included in the feedback (TD-A) or the conversation history between the chatbot and the user (TD-C), more weight is given to the item requiring correction can do. For example, as a result of analyzing the answer to a pop-up question (TD-A) or the chatbot and user’s conversation history (TD-C), if it is recognized that a point that cannot be paused requires correction, the scenario learning data (TD-S) ) possesses a scenario (SN)-edited scenario (SNe) among a plurality of data pairs that have been edited to add a pause function, repeatedly learn a set number of times, or learn artificial intelligence Learning can be reinforced by using a method in which the pause function gives more weight to the learned part of the model.

인공지능 학습모델을 학습시키는 학습단계(S140)는 서비스가 제공되는 상태에서 피드백이 수신되면 반복적으로 수행되어 피드백을 즉시 반영시킬 수 있다. The learning step (S140) of learning the artificial intelligence learning model is repeatedly performed when feedback is received in a state in which the service is provided, so that the feedback can be immediately reflected.

학습단계(S140) 이후에, 시나리오 수정단계(S150)를 수행할 수 있다. 시나리오 수정단계(S150)는 인공지능 학습모델이 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용 및 동작순서를 변경하고, 수정된 시나리오(SN)를 블록체인 네트워크(50)에 제공하여 공유자원(10)을 이용하는 서비스의 시나리오(SN)로 사용하는 것이다. After the learning step (S140), a scenario modification step (S150) may be performed. In the scenario modification step (S150), the AI learning model changes the contents and operation order of one or more smart contracts included in the scenario (SN), and provides the modified scenario (SN) to the blockchain network 50 to provide shared resources (10) is used as the service scenario (SN).

수정단계(S150)는 정해진 기간동안 수집된 피드백에 기초하여 훈련된 인공지능 학습모델에 시나리오(SN)를 입력하여 출력되는 수정된 시나리오(SN)를 획득하고, 수정된 시나리오(SN)를 상기 공유자원(10)을 이용한 서비스에 적용할 수 있다. 수정단계(S150)는 다양한 기준에 따라 수행될 수 있다. 수정단계(S150)는 기간을 정하고 그 기간동안 피드백을 수집한 다음 인공지능 학습모델의 훈련이 완료되면 수정단계(S150)를 수행할 수도 있다. 이러한 경우 다음 기간이 경과하는 동안은 피드백을 계속 수집하는 것이고, 피드백의 수집이 완료되면 학습단계(S140)와 수정단계(S150)를 수행할 수 있다. 이때, 시나리오(SN)를 수정하여 이전 시나리오(SN)와 달라졌다면, 기존에 수집한 피드백을 학습데이터(TD)에서 제거할 수 있다. 새로운 피드백 수집기간이 시작되면 처음부터 피드백을 수집하여 새로운 학습데이터(TD)를 작성한다.In the modification step (S150), the modified scenario (SN) is obtained by inputting the scenario (SN) to the trained artificial intelligence learning model based on the feedback collected for a predetermined period, and the modified scenario (SN) is shared. It can be applied to a service using the resource 10 . The correction step S150 may be performed according to various criteria. In the correction step (S150), the correction step (S150) may be performed when the training of the artificial intelligence learning model is completed after determining a period and collecting feedback during the period. In this case, feedback is continuously collected while the next period elapses, and when the collection of feedback is completed, the learning step ( S140 ) and the correction step ( S150 ) can be performed. At this time, if the scenario SN is modified to be different from the previous scenario SN, the previously collected feedback may be removed from the learning data TD. When a new feedback collection period starts, feedback is collected from the beginning and new learning data (TD) is created.

또는, 학습단계(S140)가 정해진 수준 이상으로 학습된 경우 수정단계(S150)를 수행할 수 있다. 예를 들어, 인공지능 학습모델이 특정한 편집된 시나리오(SN)를 출력할 확률이 정해진 값을 초과하는 경우 학습이 충분히 된 것으로 인정하고 수정단계(S150)를 수행할 수 있다. 이러한 경우 통계적으로 가장 많이 출력되는 특정한 편집된 시나리오(SN)를 블록체인 네트워크(50)에서 서비스에 이용되는 시나리오(SN)로 반영하는 수정단계(S150)를 수행할 수 있다. Alternatively, if the learning step (S140) is learned at a predetermined level or higher, the correction step (S150) may be performed. For example, if the probability that the AI learning model outputs a specific edited scenario (SN) exceeds a predetermined value, it may be recognized that the learning has been completed and the correction step (S150) may be performed. In this case, a correction step (S150) of reflecting a specific edited scenario (SN) that is statistically output the most as a scenario (SN) used for service in the blockchain network 50 may be performed.

이러한 피드백단계(S130), 학습단계(S140), 수정단계(S150)를 수행함에 따라, 공유자원(10)을 이용한 서비스가 제공되는 상태에서 사용자들의 피드백에 기초하여 서비스를 제공하기 위한 시나리오(SN)를 더 편리하게 변경할 수 있다. 또한, 관리자가 사용자의 피드백을 일일이 분석하여 시나리오(SN)를 업데이트하지 않더라도, 사용자 단말(32)을 통해 수집되는 피드백에 기초하여 시나리오(SN)를 지속적으로 업데이트할 수 있다. As the feedback step (S130), the learning step (S140), and the modifying step (S150) are performed, a scenario (SN) for providing a service based on the feedback of users in a state in which the service using the shared resource 10 is provided ) can be changed more conveniently. In addition, even if the administrator does not update the scenario SN by individually analyzing the user's feedback, the scenario SN may be continuously updated based on the feedback collected through the user terminal 32 .

상술한 본 발명의 일실시예에 따르면, 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원(10)을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.According to an embodiment of the present invention described above, it is possible to change the conditions and operation of the smart contract, so that it is possible to create and use the smart contract of various conditions necessary to provide various types of shared resources 10 to the shared service.

또한, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있으므로, 공유서비스를 제공하기 위하여 필요한 스마트 컨트랙트의 지속적인 업데이트가 가능하다.In addition, since the conditions and operation of the smart contract can be changed based on user feedback, it is possible to continuously update the smart contract necessary to provide a shared service.

이상 본 발명을 구체적인 실시예를 통하여 상세히 설명하였으나, 이는 본 발명을 구체적으로 설명하기 위한 것으로, 본 발명은 이에 한정되지 않으며, 본 발명의 기술적 사상 내에서 당해 분야의 통상의 지식을 가진 자에 의해 그 변형이나 개량이 가능함은 명백하다고 할 것이다. Although the present invention has been described in detail through specific examples, this is for the purpose of describing the present invention in detail, and the present invention is not limited thereto, and by those of ordinary skill in the art within the technical spirit of the present invention. It will be clear that the transformation or improvement is possible.

본 발명의 단순한 변형 내지 변경은 모두 본 발명의 영역에 속하는 것으로 본 발명의 구체적인 보호 범위는 첨부된 특허청구범위에 의하여 명확해질 것이다.All simple modifications and variations of the present invention fall within the scope of the present invention, and the specific scope of protection of the present invention will be made clear by the appended claims.

10: 공유자원
20: 복합 IoT 디바이스
21: 잠금모듈
22: 통신모듈
23: 컨트롤러모듈
24: 입력모듈
25: 표시모듈
26: 전원모듈
27: 게이트웨이모듈
31: 관리자 단말
32: 사용자 단말
41: 관리자용 dApp
42: 사용자용 dApp
50: 블록체인 네트워크
51: 노드
51a: 통신부
51b: 제어부
51c: 저장부
60: 블록체인
61: 블록
70: 분산형 데이터베이스
90: 시나리오 관리서버
10: Shared Resources
20: Composite IoT Devices
21: lock module
22: communication module
23: controller module
24: input module
25: display module
26: power module
27: gateway module
31: manager terminal
32: user terminal
41: dApps for administrators
42: dApp for users
50: Blockchain Network
51: node
51a: communication department
51b: control
51c: storage
60: Blockchain
61: block
70: Distributed Database
90: scenario management server

Claims (9)

공유자원을 이용한 서비스를 블록체인 네트워크를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오에 기초하여 상기 서비스를 제공하는 서비스 제공단계;
사용자 단말 또는 관리자 단말이 상기 시나리오를 편집하는 피드백을 제공하는 피드백단계;
상기 피드백에 기초하여 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계; 및
상기 인공지능 학습모델이 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계를 포함하는, 지능형 스마트 컨트랙트 제공방법.
A service providing step of providing the service based on a scenario including one or more smart contracts necessary to provide a service using a shared resource through a block chain network;
a feedback step in which a user terminal or an administrator terminal provides feedback for editing the scenario;
a learning step of learning an artificial intelligence learning model that changes the contents of one or more smart contracts included in the scenario based on the feedback; and
A method for providing an intelligent smart contract, comprising a scenario modification step in which the AI learning model changes the contents of one or more smart contracts included in the scenario.
청구항 1에 있어서,
상기 시나리오는
상기 블록체인 네트워크를 통해 상기 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 상기 스마트 컨트랙트의 동작순서를 포함하고,
상기 스마트 컨트랙트는
상기 공유자원을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 상기 조건을 만족하면 수행하는 동작을 포함하는, 지능형 스마트 컨트랙트 제공방법.
The method according to claim 1,
The scenario is
One or more smart contracts necessary to provide the service through the blockchain network, and an operation sequence of the smart contract,
The smart contract is
Implementing at least some functions necessary for providing a service using the shared resource, comprising one or more conditions and an operation performed when the conditions are satisfied.
청구항 2에 있어서,
상기 피드백단계는
상기 사용자 단말 또는 관리자 단말이 상기 시나리오의 적어도 일부를 편집하여 피드백으로 제공하는 것인, 지능형 스마트 컨트랙트 제공방법.
3. The method according to claim 2,
The feedback step is
The intelligent smart contract providing method, wherein the user terminal or the manager terminal edits at least a part of the scenario and provides it as feedback.
청구항 3에 있어서,
상기 학습단계는
입력데이터가 상기 시나리오이고 정답데이터가 상기 사용자 단말 또는 관리자 단말로부터 수신한 편집된 시나리오인 학습데이터를 이용하여, 상기 인공지능 학습모델을 훈련하는, 지능형 스마트 컨트랙트 제공방법.
4. The method according to claim 3,
The learning step is
An intelligent smart contract providing method for training the artificial intelligence learning model by using the learning data in which the input data is the scenario and the correct answer data is the edited scenario received from the user terminal or the manager terminal.
청구항 4에 있어서,
상기 수정단계는
정해진 기간동안 수집된 피드백에 기초하여 훈련된 상기 인공지능 학습모델에 상기 시나리오를 입력하여 출력되는 수정된 시나리오를 획득하고, 상기 수정된 시나리오를 상기 공유자원을 이용한 서비스에 적용하는 것인, 지능형 스마트 컨트랙트 제공방법.
5. The method according to claim 4,
The correction step is
Intelligent smart to obtain a modified scenario output by inputting the scenario to the trained artificial intelligence learning model based on the feedback collected for a predetermined period, and applying the modified scenario to a service using the shared resource How to provide a contract.
청구항 3에 있어서,
상기 피드백은
상기 사용자 단말로부터 수집되는 위치정보, 상기 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함하는, 지능형 스마트 컨트랙트 제공방법.
4. The method according to claim 3,
The feedback is
The method for providing an intelligent smart contract further comprising location information collected from the user terminal, an answer input to a pop-up question provided according to the location information, and a conversation history between the chatbot and the user.
청구항 3에 있어서,
상기 피드백단계는
사용자 또는 관리자가 사용자 단말 또는 관리자 단말을 통해 상기 시나리오에서 사용자 또는 관리자가 입력하여야 동작하는 기능들을 수정하면, 그에 따라 상기 시나리오의 기능들을 제공하기 위하여 포함된 복수의 스마트 컨트랙트의 동작순서, 스마트 컨트랙트의 조건 또는 동작을 자동으로 수정하는, 지능형 스마트 컨트랙트 제공방법.
4. The method according to claim 3,
The feedback step is
When a user or administrator modifies functions that require input by a user or administrator in the scenario through a user terminal or administrator terminal, the operation sequence of a plurality of smart contracts included to provide the functions of the scenario, A method of providing an intelligent smart contract that automatically modifies a condition or action.
청구항 1에 있어서,
상기 서비스 제공단계 이전에, 관리자 단말이 상기 공유자원을 이용한 서비스를 제공하기 위하여 상기 공유자원을 블록체인 네트워크에 등록하고 상기 공유자원을 이용할 서비스에 적용될 시나리오를 결정하는 공유자원 등록단계를 더 포함하며,
상기 서비스 제공단계는
상기 공유자원 등록단계에서 결정된 시나리오에 의해 상기 서비스가 제공되는 것인, 지능형 스마트 컨트랙트 제공방법.
The method according to claim 1,
Prior to the service providing step, the manager terminal further comprises a shared resource registration step of registering the shared resource in a block chain network to provide a service using the shared resource and determining a scenario to be applied to a service using the shared resource, ,
The service provision step is
The method of providing an intelligent smart contract that the service is provided by the scenario determined in the shared resource registration step.
청구항 8에 있어서,
상기 공유자원 등록단계는
상기 관리자 단말이 상기 공유자원에 관한 정보, 상기 공유자원에 결합된 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 제공하는 정보전송단계;
상기 공유자원과 기존에 등록된 다른 공유자원을 비교하여 종류가 유사한 경우 기존에 등록된 다른 공유자원을 이용한 서비스에 이용되는 시나리오를 관리자 단말에 제공하고, 상기 공유자원이 기존에 등록된 다른 공유자원과 다른 새로운 종류인 경우 예시적인 시나리오들을 관리자 단말에 제공하는 예시제공단계; 및
상기 관리자 단말이 상기 다른 공유자원을 이용한 서비스에 이용되는 시나리오에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오들 중에서 사용자가 선택한 하나의 시나리오와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계를 포함하는, 지능형 스마트 컨트랙트 제공방법.
9. The method of claim 8,
The shared resource registration step is
an information transmission step in which the manager terminal provides information about the shared resource and information about a composite IoT device coupled to the shared resource to the block chain network;
Comparing the shared resource with another previously registered shared resource, if the type is similar, a scenario used for a service using another previously registered shared resource is provided to the manager terminal, and the shared resource is registered with another shared resource. an example providing step of providing exemplary scenarios to the manager terminal in case of a new type different from the above; and
A scenario selection step in which the manager terminal receives and provides a user's edit of a scenario used for a service using the other shared resource, or receives and provides a user's edit and one selected scenario from among exemplary scenarios Including, intelligent smart contract providing method.
KR1020190143556A 2019-11-11 2019-11-11 Method for providing intelligent smart contract KR102283503B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190143556A KR102283503B1 (en) 2019-11-11 2019-11-11 Method for providing intelligent smart contract
PCT/KR2019/015545 WO2021095927A1 (en) 2019-11-11 2019-11-14 Method for recommending total service linked to shared service, and method for providing intelligent smart contract

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190143556A KR102283503B1 (en) 2019-11-11 2019-11-11 Method for providing intelligent smart contract

Publications (2)

Publication Number Publication Date
KR20210056745A KR20210056745A (en) 2021-05-20
KR102283503B1 true KR102283503B1 (en) 2021-07-29

Family

ID=76143107

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190143556A KR102283503B1 (en) 2019-11-11 2019-11-11 Method for providing intelligent smart contract

Country Status (1)

Country Link
KR (1) KR102283503B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT202100022982A1 (en) * 2021-09-06 2023-03-06 Chainplug Ip S R L METHOD AND SYSTEM FOR AUTOMATED MANAGEMENT OF IOT DEVICES AND DATA GENERATED BY IOT DEVICES
KR20240014270A (en) 2022-07-25 2024-02-01 배민효 Contract system though providing verification and agreement of the contract model through sharing of the node
KR20240014271A (en) 2022-07-25 2024-02-01 배민효 System for composite contract model though combining of unit contracts selectively

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101962290B1 (en) 2018-12-31 2019-03-26 주식회사 미탭스플러스 Distributed Ledger Device for Supporting Sharing Economy

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130047915A (en) 2011-11-01 2013-05-09 홍기섭 System and method for unifying management of sharing car
KR20170110330A (en) * 2016-03-23 2017-10-11 에스케이플래닛 주식회사 Apparatus for advertisement platform and control method thereof
KR20190124938A (en) * 2018-04-27 2019-11-06 안 데이비드 Decentralized peer to peer ride share system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101962290B1 (en) 2018-12-31 2019-03-26 주식회사 미탭스플러스 Distributed Ledger Device for Supporting Sharing Economy

Also Published As

Publication number Publication date
KR20210056745A (en) 2021-05-20

Similar Documents

Publication Publication Date Title
CN106134143B (en) Method, apparatus and system for dynamic network access-in management
KR102283503B1 (en) Method for providing intelligent smart contract
CN107111710B (en) Method and arrangement for secure and reliable identification based computation
US10572640B2 (en) System for identity verification
EP3350736B1 (en) Device enabled identity authentication
CN102067555B (en) Improved biometric authentication and identification
CN107786538B (en) Gate inhibition's authentication control method, device and computer readable storage medium
CN100583114C (en) System and method for remote security enablement
MX2007015897A (en) Provisioning of wireless connectivity for devices using nfc.
CN113767613B (en) Managing data and data usage in IOT networks
US20100169219A1 (en) Pluggable health-related data user experience
CN103793656A (en) Security implemented through metadata orchestrators
JP7013711B2 (en) Digital community system
CN110021092A (en) A kind of lessee's access permission control method based on openid
CN110199281A (en) Multi-user login session
US20140270124A1 (en) Individual location tracking in detention environments
CN109952752A (en) For the authorization of having ready conditions of isolation set
CN106203028B (en) Method and device for setting screen locking password and electronic equipment
CN108920919A (en) Control method, the device and system of interactive intelligence equipment
US20210160234A1 (en) Centralized biometric user profile setup in internet gateway device for network access
US20070002367A1 (en) Methods and apparatuses for selectively controlling a remote device
KR20210022532A (en) Information processing device, information processing method and program
CN107391987A (en) Application guard method, device and electronic equipment based on living things feature recognition
KR102365675B1 (en) Complex IoT device and share service providing method using the same
de Lima et al. Efficient App Based Smart Door Lock System Using Bluetooth

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right