WO2021095927A1 - 공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법 - Google Patents

공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법 Download PDF

Info

Publication number
WO2021095927A1
WO2021095927A1 PCT/KR2019/015545 KR2019015545W WO2021095927A1 WO 2021095927 A1 WO2021095927 A1 WO 2021095927A1 KR 2019015545 W KR2019015545 W KR 2019015545W WO 2021095927 A1 WO2021095927 A1 WO 2021095927A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
user
shared resource
scenario
shared
Prior art date
Application number
PCT/KR2019/015545
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020190143556A external-priority patent/KR102283503B1/ko
Priority claimed from KR1020190143557A external-priority patent/KR102283504B1/ko
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Publication of WO2021095927A1 publication Critical patent/WO2021095927A1/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Definitions

  • the present invention relates to a method for recommending a total service linked to a shared service and a method for providing an intelligent smart contract.
  • the current sharing service is performed in the form of a company brokering an individual and an individual and receiving a fee, and the service is provided based on a centralized sharing service provision system operated by the company.
  • the current shared service has a form of providing a service to share a single item. For example, Uber provides a vehicle-sharing service, and Airbnb provides a lodging-sharing service.
  • Blockchain networks can provide smart contracts in which contracts are programmed to automatically execute predetermined actions when conditions are satisfied. Smart contracts are programmed to execute a predetermined contract and can operate on a blockchain network, but there is a problem in that it is difficult to change the conditions of a smart contract that is already running.
  • Patent Document 1 KR 10-2013-0047915 A
  • An object according to an embodiment of the present invention is to provide a total service recommendation method that recommends various types of services and products different from the services or products used by users while providing various types of services and products as a blockchain-based shared service. To provide.
  • an object according to an embodiment of the present invention is to provide a platform that provides a shared service and recommends a total service using a blockchain network.
  • An object according to an embodiment of the present invention is to provide an intelligent smart contract capable of changing the condition and operation of the smart contract based on user feedback.
  • An object according to an embodiment of the present invention is to provide a method for generating an intelligent smart contract to have conditions and actions necessary to provide a shared service using various types of shared resources.
  • the method for recommending a total service linked to a shared service receives a service usage record from a complex IoT device, an administrator terminal, or a user terminal that is combined with a shared resource to allow or block the use of the service through a blockchain network. And storing the service information, and a curation step of recommending a service used by a user who is recommended for the service and another user having a similar service use pattern based on the service use record.
  • the service information collection step is a usage record transmission step in which the complex IoT device, the administrator terminal, and the user terminal transmit the service usage record to the blockchain network, and de-identification before storing the personal information included in the service usage record.
  • the blockchain network compares the service use record provided by the complex IoT device with the service use record provided by the user terminal, and stores the collected service use record when they do not match. May not be saved.
  • the curation step is a pattern analysis step of analyzing the user's service use pattern by analyzing the user's past service use record, and the service use pattern of another user analyzed based on the past service use record of another user and the user's
  • the service use record includes a description of the use of the service provided using the shared resource and preference information in which the user inputs the satisfaction of the service as a score from preference to non-preference, and the curation step includes the similar pattern. It may further include a preference-based recommendation step of recommending services used by other users in order of higher preference scores.
  • a service with an unfavorable score is classified among services used by other users having a similar pattern, and a characteristic service corresponding to a positive response is extracted and presented by analyzing the review of the classified service. It may further include a non-preference-based recommendation step recommended as.
  • the pattern analysis step recognizes a sequential pattern using various types of services in chronological order within a predetermined period, based on the user's past service use record, and the pattern comparison step compares the sequential patterns, Another user having a similar pattern may be identified by comparing sequential patterns from the first service to the most recently used service by a user who is recommended for a service within a predetermined period.
  • the complex IoT device includes a locking module that physically or electrically opens and closes the shared resource by being coupled to various types of shared resources, a communication module that transmits and receives data to and from the user terminal or a blockchain network, and the user terminal is the shared resource. It may include a controller module that determines whether or not to have the right to use a resource based on a key received from the blockchain network, and controls to open and close the lock module.
  • the method for recommending a total service linked to a shared service uses the service by registering information for the administrator terminal to provide the service and information on the complex IoT device in the blockchain network. It may further include a step of registering a service provided to the blockchain network.
  • An intelligent smart contract providing method 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 shared resources through a blockchain network, A feedback step in which a user terminal or a manager terminal provides feedback for editing the scenario, a learning step for 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
  • the intelligent learning model may include a scenario modification step of changing the contents of one or more smart contracts included in the scenario.
  • 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 that implement at least some necessary functions, and an operation performed when the conditions are satisfied.
  • the user terminal or the manager terminal may edit at least a part of the scenario and provide the feedback.
  • 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.
  • a modified scenario outputted by inputting the scenario into the artificial intelligence learning model trained based on the feedback collected for a predetermined period is obtained, and the modified scenario is applied to the service using the shared resource. can do.
  • the feedback may further include location information collected from the user terminal, a response input to a pop-up question provided according to the location information, and details of a conversation between the chatbot and the user.
  • the function of a plurality of smart contracts included to provide the functions of the scenario accordingly The order of operation, the condition or operation of the smart contract can be automatically modified.
  • the administrator terminal registers the shared resource in the blockchain network in order to provide a service using the shared resource, and a shared resource registration step of determining a scenario to be applied to the service using the shared resource is further performed. It may include, and the service providing step may be that the service is provided according to a scenario determined in the shared resource registration step.
  • the shared resource registration step includes an information transmission step in which the manager terminal provides information on the shared resource and information on the complex IoT device coupled to the shared resource to the blockchain network, and the shared resource and the existing registration Compare other shared resources and provide a scenario used for a service using other shared resources previously registered to the manager terminal if they are similar, and if the shared resources are new and different from other previously registered shared resources, an exemplary scenario An example providing step of providing the information to the manager terminal, and the manager terminal receiving and providing the user's edit of the scenario used for the service using the other shared resource, or one scenario and the user selected by the user from among example scenarios It may include a scenario selection step of receiving and providing the edit of.
  • the user can recommend various types of services or products expected to be preferred by the user based on the record using the service or product, the user can provide information on various services and products. Can be provided.
  • the process of providing a shared service and recommending a total service is provided through a platform using a blockchain network, so that the person providing the service and the person using it can freely enter the market.
  • the sharing economy can be activated.
  • the smart contract it is possible to change the condition and operation of the smart contract, so that it is possible to create and use a smart contract with various conditions necessary to provide various types of shared resources to a shared service.
  • the condition and operation of the smart contract can be changed based on user feedback, it is possible to continuously update the smart contract required to provide a shared service.
  • FIG. 1 is a diagram illustrating a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating an environment in which a method for recommending a total service linked to a shared service according to an embodiment of the present invention is performed.
  • FIG 3 is a diagram illustrating a composite IoT device according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating a service that can be provided by a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating each step of a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating a state-based recommendation step according to an embodiment of the present invention.
  • FIG. 7 is a diagram illustrating a preference-based recommendation step according to an embodiment of the present invention.
  • FIG. 8 is a diagram illustrating a non-preference-based recommendation step according to an embodiment of the present invention.
  • FIG. 9 is a diagram illustrating a sequential pattern recognition and sequential pattern comparison process according to an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating an environment in which a method for providing an intelligent smart contract according to an embodiment of the present invention is performed.
  • FIG. 11 is a diagram illustrating a composite IoT device according to an embodiment of the present invention.
  • FIG. 12 is a diagram showing each step of a method for providing an intelligent smart contract according to an embodiment of the present invention.
  • FIG. 13 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.
  • FIG. 14 is a diagram illustrating scenario editing according to an embodiment of the present invention.
  • 15 is a diagram showing learning data for an artificial intelligence learning model according to an embodiment of the present invention.
  • 16 is a diagram illustrating a neural network structure of an artificial intelligence learning model according to an embodiment of the present invention.
  • FIG. 1 is a diagram illustrating a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • the method for recommending a total service linked to a shared service is based on a blockchain network 50 so that anyone can provide and use various shared resources 10 as a target for sharing. It may be performed in connection with a method of providing a shared service using the provided composite IoT device 20.
  • the administrator combines the complex IoT device 20 with various types of shared resources 10 and registers the information on the shared resource 10 and the complex IoT device 20 in the blockchain network 50. If (10) is provided to the shared service, the user obtains the right to use the shared resource 10 through the blockchain network 50, and opens the lock of the complex IoT device 20 based on the permission to use the shared resource ( 10) can be used.
  • a service use record including details of the use of various types of shared resources 10 by a plurality of users is provided to the blockchain network 50, and the accumulated service use record is analyzed by a big data analysis method.
  • a user to be recommended for a service may receive a recommendation for a service selected from among services used by other users having a pattern similar to that of his or her use pattern.
  • the shared resource 10 may include a device or a system necessary to provide a specific service.
  • the shared resource 10 may be a resource such as a car or accommodation necessary to provide a rental service, and a card reader, POS (Point It may be a resource such as a payment system such as an Of Sale) system.
  • POS Point It may be a resource such as a payment system such as an Of Sale
  • a service in which a service usage record can be collected and a service that can be recommended may include not only a shared service through rental, but also a transaction service in which ownership is transferred through trading. Accordingly, in an embodiment of the present invention, since all types of services can be recommended, a total service can be recommended.
  • FIG. 2 is a diagram illustrating an environment in which a method for recommending a total service linked to a shared service according to an embodiment of the present invention is performed.
  • a method for recommending a total service linked to a shared service includes a complex IoT device 20, a manager terminal 31, a user terminal 32, a blockchain network 50, a distributed database 70, and matching. This can be done using the server 80.
  • the blockchain network 50 is a network in which a plurality of nodes 51 are connected in a peer-to-peer (P2P) method.
  • the blockchain network 50 may perform a method of recommending a total service linked to a shared service based on information processing between a plurality of nodes 51 and information processing of each node 51.
  • the blockchain network 50 is composed of a plurality of nodes 51 that provide shared resources 10 to shared services, use the shared resources 10, and perform at least part of a function for performing a total service recommendation method. I can.
  • 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, a PC, a notebook PC, a tablet PC, and a smart phone.
  • the communication unit 51a may transmit and receive data with the other node 51, the manager terminal 31, the user terminal 32, the complex IoT device 20, the distributed database 70, and the matching server 80.
  • the communication unit 51a may configure the block chain network 50 by connecting the node 51 and another node 51.
  • the storage unit 51c may store all or part of the block chain 60.
  • the storage unit 51c may store a program code for performing a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • the shared service or service referred to in an embodiment of the present invention is not only a service that shares the shared resource 10, but also sells a product using the shared resource 10, provides various types of services, or provides a shared resource 10. It may also include services that sell itself.
  • the control unit 51b may include a processor capable of executing a program code for performing a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • the block chain 60 may be composed of a continuous connection of blocks 61 including the hash value of the previous block 61 as a configuration of the magnetic block 61.
  • the block 61 includes 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.
  • information about the shared resource 10 information about the complex IoT device 20, information about the administrator, information about users, service usage records using the shared resource 10, etc. are stored.
  • such information may be stored in the distributed database 70 and the storage history may be stored in the storage space of the block 61.
  • the manager terminal 31 and the user terminal 32 are information processing devices that can connect to the blockchain network 50 to transmit and receive data.
  • the manager terminal 31 and the user terminal 32 may include portable electronic devices such as a smart phone, a notebook PC, a tablet PC, and a wearable computer.
  • the manager terminal 31 and the user terminal 32 may transmit and receive data to and from the blockchain network 50 through a dApp.
  • the dApp (distributed application) is a front-end interface that users and managers access through the manager terminal 31 and the user terminal 32 in order to use a method of providing a shared service using a complex IoT device.
  • the dApp may be installed and executed on the administrator terminal 31 and the user terminal 32, or provided to the administrator terminal 31 and the user terminal 32 in the form of a web page operated on a server separate from the blockchain network 50 It can be, and it can also be executed on 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 dApp 41 for the manager provides information on the shared resource 10, the registration function of the information on the complex IoT device 20, the monitoring function of the shared resource 10, and various management permission functions to the manager terminal 31. Can provide.
  • the user dApp 42 may provide functions such as a search function of the shared resource 10, a request for use permission, a request to unlock the complex IoT device 20, and a total service recommendation to the manager terminal 31.
  • 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.
  • Smart contracts running on the blockchain network 50 include smart contracts for administrators and smart contracts for users.
  • the manager smart contract may operate based on data and commands received from the manager dApp 41.
  • the user's smart contract may operate based on data and commands received from the user's dApp 42.
  • FIG 3 is a diagram illustrating a composite IoT device 20 according to an embodiment of the present invention.
  • the complex IoT device 20 is coupled to various types of shared resources 10 to physically or electrically open and close the shared resources 10, a locking module 21, a user terminal 32, or Based on the key received from the blockchain network 50, whether the communication module 22 for transmitting and receiving data with the blockchain network 50, and whether the user terminal 32 has the right to use the shared resource 10 It may include a controller module 23 that determines and controls to open and close the locking module 21.
  • the complex IoT device 20 includes a display module 25 capable of visually or aurally providing information to a user or manager, an input module 24 capable of receiving a user's or manager's touch, etc., a complex IoT device It may include a power module 26 such as a battery that supplies power to the components of (20).
  • a power module 26 such as a battery that supplies power to the components of (20).
  • Each of the modules 21 to 27 included in the composite IoT device 20 may be configured as a physically independent device, or some modules may be configured as a single device.
  • the locking module 21 may be opened or closed under the control of the controller module 23.
  • the locking module 21 may be physically coupled to the sharing object to physically or electrically block a user from accessing some components of the sharing object required when using the sharing object.
  • the lock module 21 may be physically coupled to a door lock or lock of a door to block the user from arbitrarily opening the door.
  • the locking 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.
  • the locking module 21 may be coupled to a card reader or a POS system that provides a payment service at the time of transaction, and restricts the user to perform the payment service based on the use permission.
  • the locking module 21 may be integrally formed with a door lock or a lock.
  • the locking module 21 may be coupled to various sharing objects.
  • the communication module 22 can transmit and receive data with the manager terminal 31, the user terminal 32, and the blockchain network 50.
  • the communication module 22 may use a short-range communication method such as Wi-Fi, Bluetooth, and NFC.
  • the communication module 22 may recognize its own location using GPS information.
  • the controller module 23 may control opening and closing of the locking module 21.
  • the controller module 23 may check the usage rights 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 blockchain network 50 with the key transmitted through the communication module 22 by the user terminal 32 according to the one-time authentication protocol to determine the right to use the user terminal 32. I can confirm. If the key received from the blockchain 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 permission to use it. can do.
  • the controller module 23 controls to open the locking module 21 when the existence of the right to use the user terminal 32 is confirmed.
  • the controller module 23 may control to lock the locking module 21 when a predetermined period of use has elapsed or a necessary condition is satisfied.
  • the controller module 23 may start a procedure to determine whether the user terminal 32 has the right to use only when the user terminal 32 approaches a predetermined distance using GPS information or short-range communication between the communication module 22 and the user terminal 32. have.
  • the proximity determination is an additional safety device in that the user terminal 32 and the communication module 22 must be unlocked when the user terminal 32 and the communication module 22 are approached by a predetermined distance to prevent the use of a person without permission.
  • the communication module 22 performs a distance determination based on the intensity of radio waves such as Wi-Fi, Bluetooth, and NFC, or compares its GPS coordinates with the GPS information of the user terminal 32 received from the user terminal 32 to provide proximity. You can judge whether or not.
  • the controller module 23 may request the block chain network 50 to check usage rights based on a one-time authentication protocol.
  • the locking module 21 of the complex IoT device 20 requires that the user opens the locking module 21 on the basis of the permission to use the shared resource 10, so that another locking device that is previously installed on the shared resource 10 (for example, a door lock) may be installed in an add-on manner to the locking device so as to be accessible.
  • another locking device that is previously installed on the shared resource 10 for example, For example, a door lock
  • the locking device installed on the shared resource 10 is maintained as it is, and the complex IoT device 20 is additionally coupled to the locking device.
  • the locking module 21 of the complex IoT device 20 is coupled to cover a keypad, a keyhole, a dial, etc. necessary to open the locking device, and when the locking module 21 is opened, the user can use a keypad, a keyhole, a dial, etc. It can be formed in a way that opens an accessible space.
  • the controller module 23 may further perform a procedure required to use 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 opening the locking module 21 based on the right to use the shared resource 10.
  • 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. It can be provided to the user.
  • the controller module 23 controls to open the lock module 21 when the user terminal 32 is authorized to use the door lock and opens the door lock.
  • the door lock password required for this may be provided to the user terminal 32 or may be provided to the user through the display module 25.
  • the gateway module 27 monitors the usage status of the shared resource 10 using at least one of a motion sensor, a human body detection 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 a person using the shared resource 10 exists.
  • the gateway module 27 may be physically formed as a separate device, and may be coupled to the shared resource 10 at a location suitable for monitoring the state of use of the shared resource 10.
  • 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 state of use of the shared resource 10 detected by the gateway module 27 is determined by the controller module 23 through the communication module 22. ) Can be passed on.
  • the controller module 23 may determine whether a person who uses the shared resource 10 is an intruder or a legitimate user based on the use right.
  • the controller module 23 may provide an alarm to the administrator terminal 31 when it is determined as an intruder.
  • the controller module 23 checks whether no one uses the shared resource 10 based on the usage state received from the gateway module 27, and the person using the shared resource 10 If not, the locking module 21 can be controlled to be locked. In the case of a transaction service for purchasing a product, the gateway module 27 may be unnecessary since the shared resource 10 is used once.
  • the complex IoT device 20 may be coupled to various shared resources 10, and the locking 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).
  • a method for recommending a total service linked to a shared service includes a composite IoT device 20, a manager terminal 31, or a user terminal 32 that is combined with the shared resource 10 to allow or block the use of the service.
  • FIG. 4 is a diagram illustrating a service that can be provided by a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • the method for recommending a total service linked to a shared service may provide various services and may be provided through a dApp capable of recommending various services. Since the composite IoT device 20 can be coupled to various types of shared resources 10, the services that can be provided by the present invention are not limited to the types shown in FIG. 4.
  • the user dApp 42 may include a plurality of distinct dApps according to the type of service therein.
  • the user dApp 42 may be provided as one dApp regardless of the type of service.
  • An embodiment of the present invention may provide and recommend services such as transportation service, accommodation service, tourism service, financial service, food service, and rental service.
  • a user may install and execute a transportation service providing dApp on the user terminal 32 to use the transportation service registered in the blockchain network 50.
  • the transportation service provision dApp installed by the user can recommend transportation services to users, and can recommend other types of services in addition to transportation services.
  • FIG. 5 is a flowchart illustrating each step of a method for recommending a total service linked to a shared service according to an embodiment of the present invention.
  • the method for recommending a total service linked to a shared service may be performed based on a service usage record, which is a description of a user's use of a'shared service using the IoT device 20'.
  • a step of providing a shared service using the composite IoT device 20 will be described first.
  • the manager terminal 31 transfers the information of the shared resource 10 and the information of the complex IoT device 20 coupled to the shared resource 10 through the manager dApp to a blockchain network.
  • Shared resource registration step (S10) of providing the shared resource 10 to be shared by providing it to 50, the user terminal 32 of the shared resource 10 registered in the blockchain network 50 through the user dApp.
  • the use right acquisition step (S20) in which the use right is granted based on the smart contract previously designated by the manager terminal 31 after requesting the use right, and the complex IoT device 20 receives the use right to the user terminal 32.
  • It may include a use start step (S30) of opening the lock to access the shared resource 10 by determining whether it exists, and when the use time set based on the use permission expires, the state of use of the shared resource 10 If it is determined that the use is terminated by checking, the use termination step (S40) of controlling the locking module 21 to be locked may be further included.
  • the method of providing a shared service using the complex IoT device 20 may be performed in a system including the complex IoT device 20, the manager terminal 31, the user terminal 32, and the blockchain network 50.
  • the administrator and the user may register as a member and register predetermined information.
  • the shared resource registration step (S10) is a step in which the manager terminal 31 provides the information of the shared resource 10 and the information of the complex IoT device 20 to the blockchain network 50 through the dApp 41 for the manager, And information of the shared resource 10 and the information of the complex IoT device 20 based on the smart contract for the administrator of the blockchain network 50 are recorded in the block 61 generated by the blockchain network 50, and the block ( 61) may include a shared step.
  • the administrator installs the composite IoT device 20 on the shared resource 10.
  • the manager executes the manager dApp using the manager terminal 31 or accesses the manager dApp and inputs information about the shared resource 10 and information about the complex IoT device 20.
  • the information on the shared resource 10 includes information necessary for the user to use the shared resource 10, such as the type, characteristics, rental cost, available rental time, minimum available rental time of the shared resource 10.
  • Information on the complex 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 complex IoT device 20. And includes information that enables data to be transmitted and received.
  • Information about the shared resource 10 and information about the complex IoT device 20 input to the manager terminal 31 are transmitted to the smart contract for the manager of the blockchain network 50 through the dApp.
  • the manager dApp 41 provides information on the shared resource 10 and information on the complex IoT device 20 received by calling the smart contract for the manager of the network.
  • the dApp 41 for administrators can transmit and receive data with the blockchain network 50 using Restful API.
  • the manager's smart contract performs the shared resource 10 information management function and registers the shared resource 10 on the blockchain network 50 so that the user can use it.
  • the manager's smart contract is a node 51 that configures the blockchain network 50 to store information about the shared resource 10 and information about the complex IoT device 20 in the storage space of the block 61 in a table format. Can share to the field.
  • Information on the shared resource 10 and information on the complex IoT device 20 are stored in the block 61 through a verification and consensus process.
  • the user terminal 32 requests the search for the shared resource 10 recorded in the block chain 60 that is distributed and stored in the block chain network 50 through the user's dApp 42 in the use right acquisition step (S20), , The step of providing a list of available shared resources 10 to the user terminal 32 by searching for the shared resources 10 recorded in the block chain 60 by the user dApp 42, the user terminal 32 The step of selecting a shared resource (10) from the list of available shared resources (10) and requesting the acquisition of usage rights, and whether the requested shared resource (10) is available for the smart contract for the administrator of the blockchain network (50). It may include the step of determining in the block chain 60 that the user terminal 32 has been granted permission to use if available.
  • the user In order to use the shared resource 10, the user must first obtain the right to use.
  • the user may request a search of the shared resource 10 registered in the blockchain network 50 by executing the dApp 42 for the user on the user terminal 32 or by accessing the dApp 42 for the user.
  • the dApp may provide an interface for searching the shared resource 10 by selecting conditions such as the type, location, usage period, 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 a user and return a result.
  • the user terminal 32 may receive a result of performing a search in a node 51 through the dApp 42 for a user.
  • the user terminal 32 displays the received search result to the user.
  • the user may select the shared resource 10 from the list of shared resources 10 provided as a result of the search and request the acquisition of permission to use the shared resource 10.
  • the user terminal 32 may request a smart contract for an administrator of the blockchain network 50 to obtain permission to use the shared resource 10 selected by the user through the dApp 42 for the user.
  • the manager's smart contract When the manager's smart contract receives the request for acquiring the permission to use the shared resource 10 received from the dApp 42 for the user, it determines whether the shared resource 10 is available. Whether or not the shared resource 10 is available may be determined based on conditions included in the request for obtaining use rights of the shared resource 10. It is possible to determine whether there is another user already reserved at the time requested by the user, and to determine whether the user is registered in the blacklist and is not entitled to obtain use rights. When the requested shared resource 10 is available, the manager's smart contract records in the block chain 60 that the user terminal 32 requesting the permission is given the permission to use it.
  • the manager's smart contract shares the content that the user terminal 32 has the right to use it at the requested time to the blockchain network 50, and the blockchain network 50 provides the block 61 through verification and consensus. Stores that the permission has been granted.
  • the manager's smart contract may provide the user terminal 32 that the use right has been granted through the user dApp.
  • the user terminal 32 When the user terminal 32 obtains the use right, the user can open the lock of the complex IoT module through the user terminal 32 and start using the shared resource 10.
  • the user terminal 32 requests the block chain network 50 to unlock the complex IoT device 20 based on the usage rights through the user dApp 42, the complex IoT device Determining whether the user terminal 32 is located within a predetermined distance, when the complex IoT device 20 and the user terminal 32 are located within a predetermined distance, the complex IoT device 20 and the user terminal ( 32) each requesting execution of a one-time authentication protocol to the blockchain network 50, the blockchain network 50 generates a one-time key according to the one-time authentication protocol, and the composite IoT device 20 and the user Delivering each to the terminal 32, and permission to use the user terminal 32 when the disposable key received by the composite IoT device 20 and the disposable key received from the user terminal 32 match. It may include the step of opening the lock by determining that there is.
  • the user may request the unlocking of the complex IoT device 20 coupled to the shared resource 10 that has obtained the use right through the user terminal 32.
  • the user terminal 32 may request the complex IoT device 20 to open the lock directly or through a dApp or a blockchain network 50.
  • 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 is not near the shared resource 10 and the lock module 21 is opened based on the use right, there is a risk that another person without the use right will use the shared resource 10, This is a process of determining whether the user is located within a predetermined distance to the shared resource 10. Determination of proximity has been described in the process of describing the controller module 23 of the composite IoT device 20, and therefore, overlapping content will be omitted.
  • the user terminal 32 may transmit and receive signals to the complex IoT device 20 using short-range communication such as Wi-Fi, bluetooth, and NFC. The user terminal 32 transmits its GPS coordinates to the complex IoT device 20 so that the complex IoT device 20 can determine whether or not the complex IoT device 20 is in proximity.
  • the complex IoT device 20 may provide a signal indicating that the proximity determination has passed to the user terminal 32.
  • the complex IoT device 20 and the user terminal 32 may request the blockchain network 50 to execute a one-time authentication protocol.
  • the execution request of the one-time authentication protocol received from the composite IoT device 20 and the user terminal 32 match, the blockchain network 50 executes the one-time authentication protocol.
  • the one-time authentication protocol searches for the use permission record stored in the block chain 60, determines whether the user terminal 32 has permission to use the shared resource 10 at a predetermined time, and if the use permission exists, the one-time authentication protocol Generates and provides a one-time key to the composite IoT device 20 and the user terminal 32.
  • the disposable key may be a randomly generated value, and may be encrypted with public keys of the composite IoT device 20 and the user terminal 32 and transmitted.
  • the composite IoT device 20 determines that the user terminal 32 has the right to use the lock module. (21)
  • the lock can be opened.
  • the user can use the shared resource 10 when the lock module 21 is opened.
  • the complex IoT device 20 provides the password of the existing locking device to the user terminal 32, and the user You can use the shared resource 10 by entering the password displayed in) into the existing locking device.
  • the gateway module 27 may monitor the state of the shared resource 10 while the user uses the shared resource 10.
  • the gateway module 27 can sense whether a person enters or exits the space that is the shared resource 10. .
  • the gateway module 27 may continuously sense the state of use of the shared resource 10 at a predetermined period or when the lock module 21 is opened.
  • the gateway module 27 may transmit the state of use of the shared resource 10 to the complex IoT device 20.
  • 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 use status of the shared resource 10, and the use record and reservation record of the shared resource 10. have.
  • the manager's dApp (41) can request the manager's smart contract to monitor the current status of the shared resource (10), and the manager's smart contract is a shared resource (10) provided by the gateway module (27) from the complex IoT device (20). It is possible to receive the usage status of and provide it to the manager terminal 31 through the dApp 41 for managers.
  • the complex IoT device 20 receives information on the state of use of the shared resource 10 from the gateway module 27 when the usage time based on the usage permission ends, and operates the lock module 21 to enable the user and the shared resource ( Determine if it is okay to block 10).
  • the gateway module 27 can sense whether a user exists in the space that is the shared resource 10, and the space that is the shared resource 10
  • the composite IoT device 20 may perform a use end step (S40) of controlling the locking module 21 to be locked.
  • the composite IoT device 20 transmits the end of use fact to the blockchain network 50.
  • the service usage details are transmitted to the blockchain network 50.
  • the user's service usage history may be stored in the block chain 60 or the distributed database 70.
  • a method for recommending a total service linked to a shared service includes a composite IoT device 20, a manager terminal 31, or a user terminal 32 that is combined with the shared resource 10 to allow or block the use of the service.
  • the service information collection step (S50) is a usage record transmission step (S51) in which the complex IoT device 20, the manager terminal 31, and the user terminal 32 transmit the service usage record to the blockchain network 50, and the service use.
  • De-identification step (S52) of de-identifying personal information included in the record before storing, and the process of storing the service use record in the distributed database 70 and storing the service use record in the blockchain network 50 It may include a storage step (S53) of storing.
  • the usage record transmission step S51 is a step of collecting information related to service provision using the shared resource 10.
  • the service usage record may include a service type, location, cost, usage start and end time, a user's preference or non-preference score, a user's service review, and the like.
  • the blockchain network 50 may collect service usage records from the complex IoT device 20, the manager terminal 31, and the user terminal 32.
  • the service information collection step (S50) when the blockchain network 50 compares the service use record provided by the complex IoT device 20 and the service use record provided by the user terminal 32, the collected service is used. Save the record and may not save if it doesn't match.
  • the complex IoT device 20 and the user terminal 32 have the same service use record, and if the service use record received by both sides coincides, it means that normal data that is not forged or altered has been received. Received data can be trusted.
  • the personal information included in the service use record is de-identified (S52).
  • De-identification of personal information included in service use records can be performed through de-identification algorithms such as anonymization, categorization, and aggregate processing.
  • Anonymization is the modification or removal of some or all of the names of people in the data so that they cannot be recognized. For example, a part of the name “Hong Gil-dong” may be transformed into “Hong*Dong", or all may be transformed, such as "Customer 1".
  • Total processing is to calculate the total amount when there are multiple values of a specific item. For example, if the number of transactions of "Hong*Dong" is "20/40/10", the total number of transactions can be counted as "70".
  • Categorization is the aggregation according to the range in which a specific value is included. For example, if the number of transactions for "Hong*Dong” is "13", it can be counted as "10 ⁇ 20" in advance.
  • a storage step (S53) of storing the service use record is performed.
  • the service use record may be stored in a convex chain stored in the node 51 of the block chain network 50, or may be stored in the distributed database 70 through the block chain network 50. Since the service usage records collected through the blockchain network 50 may include records using various types of services by multiple users, various usage records for various services can be collected.
  • the service information collection step (S50) is continuously repeatedly performed while the shared service is being performed, so that the service usage record may be continuously collected.
  • the matching server 80 may perform a curation step (S60) based on big data collected from a plurality of service usage records.
  • the matching server 80 may read and analyze the service usage record stored in the distributed database 70.
  • the curation step S60 is executed when the user executes the dApp 42 for the user, the user terminal requests a recommendation, or terminates the use of the shared service, and may recommend a total service to the user.
  • the curation step (S60) is a pattern analysis step (S61) of analyzing the user's service use pattern by analyzing the user's past service use record, and the service use pattern of another user analyzed based on the past service use record of another user.
  • the collected service use record is analyzed to analyze the user's service use pattern.
  • the pattern analysis step (S61) is performed for each user, and the services used by the user can be analyzed by various criteria and methods to recognize the pattern.
  • a pattern using a shared service is generated for each user.
  • a method of patterning the user's past service use record in the pattern analysis step (S61) a method of converting data of the service use record into a scatter plot, a tree diagram, multidimensional coordinates, or feature vector may be used.
  • a different patterning method may be selected according to an algorithm used when comparing patterns in the pattern comparison step S62 of comparing the patterns.
  • the pattern comparison step (S62) is a process of comparing the past service use pattern of the user who will be recommended for the service with the service use pattern of other users. By performing the pattern comparison step S62, it is possible to identify other users having a usage pattern similar to a user who will be recommended for a service. Since users with similar service use patterns in the past have similar tastes, a total service with high satisfaction can be provided when recommending services of other users with similar use patterns.
  • the pattern comparison step (S62) includes matrix factorization, k-Nearest Neighbor algorithm (kNN), clustering analysis, artificial neural network, and deep learning. ) And other algorithms can be used.
  • the step of selecting and recommending a service to be recommended from among the services used by other users is a state-based recommendation step of recommending a suitable service based on the current state of the user (S63), and services are recommended in the order of higher preference of other users.
  • the state-based recommendation step (S63) is performed together with the preference-based recommendation step (S64) or the non-preference-based recommendation step (S65), and the preference-based recommendation step (S64) or the non-preference-based recommendation step (S65) is performed to provide the extracted services.
  • the state-based recommendation step (S63) may be further performed as a target.
  • FIG. 6 is a view showing a state-based recommendation step (S63) according to an embodiment of the present invention.
  • a service suitable for the current state of the user may be recommended from among services used in the past by other users with similar usage patterns.
  • the user's current state may be recognized by the user terminal 32 and provided to the matching server 80 through the blockchain network 50.
  • the user's current state may include various information related to the user, such as current location, current time, biosignal, companion information, weather information, and search information.
  • the availability at the time of recommendation may be first determined based on the current state of the user (S63a). For example, it is possible to extract four services available from among ten services used by other users based on whether they are available at the current time or at a time selected by the user.
  • the available services may be listed in the order of high accessibility based on the current state of the user, and services may be recommended in the order of good accessibility (S63b). For example, a service close to the user's current location can be extracted and recommended to the user in the order of close proximity.
  • FIG. 7 is a diagram illustrating a preference-based recommendation step (S64) according to an embodiment of the present invention.
  • the curation step (S60) may further include a preference-based recommendation step (S64) of recommending services used by other users having a similar pattern in the order of a high preference score.
  • a preference-based recommendation step (S64) of recommending services used by other users having a similar pattern in the order of a high preference score.
  • a service preferred by another user may be recommended.
  • the service use record includes the details of the use of the service provided by using the shared resource 10 and the preference information that the user inputs the satisfaction of the service as a score from preference to non-preference. I can.
  • the user can input a preference or non-preference for the service he has used through the user terminal 32, and can input the intensity of preference and non-preference as a score. If the preference or non-preference for the service included in the service use record is shown in a drawing, it can be shown as shown in FIG. 7. A service preferred by other users having a similar usage pattern is highly likely to be preferred by a user who will be recommended for a service. Therefore, if the service is recommended in the order of the highest preference score, a service suitable for the user's taste can be provided. A user who is recommended for a service may be provided with a list of services listed in the order preferred by other users.
  • FIG. 8 is a diagram illustrating a non-preference-based recommendation step (S65) according to an embodiment of the present invention.
  • a feature service may be provided to the user. If a service is recommended only on a preference basis, various services may not be recommended, and recommendations may be concentrated only on a few specific services. For example, the earlier the point in time when the shared resource 10 is provided to the blockchain network 50 is more likely to accumulate a preference score, and accordingly, a recommendation may occur in which a service registered first is continuously recommended.
  • non-preference-based recommendation step (S65) a review of a service that has received a non-preference score is analyzed.
  • a service in which a non-preference score exists among services is classified and a review related to the service is analyzed. For example, among services, service 3 having an unfavorable score is selected, and reviews existing in service 3 are analyzed.
  • service 3 having an unfavorable score is selected, and reviews existing in service 3 are analyzed.
  • Service 3 there is an unfavorable score in Service 3, but as a result of analyzing Review 2 among reviews, it is possible to recognize a negative reaction that the customer was not friendly and a positive reaction that a new kind of food can be experienced. In this case, if a positive reaction is recognized in the category of food type, service 3 can be provided as a feature service with positive information that the kind of food is new as a feature service.
  • Analysis target reviews are not limited to reviews left by users with similar usage patterns, but analyzes all reviews left on the service. If only reviews left by users with similar usage patterns are analyzed, it is highly likely that users will evaluate them with similar criteria, so it is difficult to have reviews that evaluate the same service from a new perspective, and only certain types of services are recommended to certain types of people. The problem occurs. Since the non-preference-based recommendation step (S65) has an advantage in that the user can recommend a service with a new characteristic, the scope of the review target for analysis is the review left by all users, and affirmative reaction based on the reviews of people with different inclinations. Analyzing is the way to recommend a new service.
  • FIG. 9 is a diagram illustrating a sequential pattern recognition and sequential pattern comparison process according to an embodiment of the present invention.
  • the pattern analysis step (S61) and the pattern comparison step (S62) may be performed based on the order of service use.
  • the pattern analysis step (S61) recognizes a sequential pattern using various types of services in chronological order within a predetermined period based on the user's past service use record, and the pattern comparison step (S62) is in comparing the sequential patterns.
  • another user having a similar pattern may be identified by comparing sequential patterns from the first service to the most recently used service by a user who is recommended for a service within a predetermined period.
  • the predetermined period range may be determined as one day or one week, and may be determined as a period set by a user who will be recommended for a service. For example, if a user who is to be recommended for a service determines the period of each day, the pattern of the user's past service use can be analyzed on a daily basis, and the past service usage records of other users are also determined on a daily basis. Patterns can be analyzed.
  • the sequential pattern is a service use pattern related to the order of using the service.
  • the sequential pattern can be generated based on the type of service. For example, if the services used by the user are listed in chronological order in the range of 1 day, service 1 (transportation), service 2 (tourism), service 3 (food), service 4 (tourism), service 5 (transportation), service 4 (Finance) ... It may be a service No. (accommodation).
  • 'No.' is an arbitrary serial number for classifying services.
  • a sequential pattern is analyzed from the past service use record of a user to be recommended for a service, and the sequential pattern is analyzed from the past service use record of another user.
  • a pattern comparison step (S62) is performed.
  • a sequential pattern of a user who is to be recommended for a service is compared with a sequential pattern of other users.
  • service 1 and service 2 since service 3 does not exist in the sequential pattern
  • a service may be recommended from among services corresponding to the next order in the sequential pattern of the other user. Even though users having similar sequential patterns based on services 1 and 2, service 3 corresponding to the following order is diverse. Accordingly, among various types of services 3, the above-described state-based recommendation step (S63), preference-based recommendation step (S64), and non-preference-based recommendation step (S65) may be performed.
  • a state-based recommendation step (S63) may be performed based on services used by other users having similar sequential patterns to the user to whom the service is to be recommended. At this time, in the state-based recommendation step (S63), various current states of the user may be considered. Whether there is a companion to use the service with the user, the user's physical condition (bio signals, exercise, fatigue, etc.), weather conditions such as weather or temperature in the area where the user is located and the area where the service is provided, and the user's past preferences Information and the like can be considered as the current state.
  • the user's physical condition bio signals, exercise, fatigue, etc.
  • weather conditions such as weather or temperature in the area where the user is located and the area where the service is provided
  • the user's past preferences Information and the like can be considered as the current state.
  • the user can recommend various types of services or products expected to be preferred by the user based on the record using the service or product.
  • the user can Information can be provided.
  • the process of providing shared services and recommending total services is provided through the platform using the blockchain network 50, so that the person providing the service and the person using it can freely enter the market, thereby activating the sharing economy. have.
  • FIG. 10 is a diagram illustrating an environment in which a method for providing an intelligent smart contract according to an embodiment of the present invention is performed.
  • An intelligent smart contract providing method is a'sharing service using a complex IoT device' provided based on the blockchain network 50 so that anyone can provide and use various shared resources 10 as a shared object. It can be performed in connection with the'providing method'.
  • the administrator combines the complex IoT device 20 with various types of shared resources 10 and registers the information on the shared resource 10 and the complex IoT device 20 in the blockchain network 50. If (10) is provided to the shared service, the user obtains the right to use the shared resource 10 through the blockchain network 50, and opens the lock of the complex IoT device 20 based on the permission to use the shared resource ( 10) can be used.
  • the shared service or service is not only a service that shares the shared resource 10, but also sells a product using the shared resource 10, provides various types of services, or provides the shared resource 10 itself. It may also include services that sell and sell.
  • the method for providing an intelligent smart contract includes a complex IoT device 20, a manager terminal 31, a user terminal 32, a blockchain network 50, and a distributed type. It can be performed using the database 70 and the scenario management server 90.
  • the blockchain network 50 is a network in which a plurality of nodes 51 are connected in a peer-to-peer (P2P) method.
  • the blockchain network 50 may perform a method of providing an intelligent smart contract 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.
  • 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, a PC, a notebook PC, a tablet PC, and a smart phone.
  • the communication unit 51a can transmit and receive data with the other node 51, the manager terminal 31, the user terminal 32, the complex 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 another node 51.
  • the storage unit 51c may store all or part of the block chain 60.
  • the storage unit 51c may store program code that performs 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 that performs some functions of the method for providing an intelligent smart contract according to an embodiment of the present invention.
  • the block chain 60 may be composed of a continuous connection of blocks 61 including the hash value of the previous block 61 as a configuration of the magnetic block 61.
  • the block 61 includes 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.
  • information about the shared resource 10 information about the complex IoT device 20, information about the administrator, information about the user, service usage records using the shared resource 10, and edited
  • the scenario SN or 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.
  • the manager terminal 31 and the user terminal 32 are information processing devices that can connect to the blockchain network 50 to transmit and receive data.
  • the manager terminal 31 and the user terminal 32 may include portable electronic devices such as a smart phone, a notebook PC, a tablet PC, and a wearable computer.
  • the manager terminal 31 and the user terminal 32 may transmit and receive data to and from the blockchain network 50 through a dApp.
  • the dApp (distributed application) is a front-end interface that users and administrators access to use the intelligent smart contract provision method.
  • the dApp may be installed and executed on the administrator terminal 31 and the user terminal 32, or provided to the administrator terminal 31 and the user terminal 32 in the form of a web page operated on a server separate from the blockchain network 50 It can be, and it can also be executed on 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 dApp 41 for managers is a registration function of information on the shared resource 10 and information on the complex IoT device 20, a monitoring function of the shared resource 10, a scenario (SN) editing function, and various management permission functions. Can be provided to the manager terminal 31.
  • the dApp for users 42 provides functions such as a search function for shared resources 10, a request for use authorization, a request for unlocking the complex IoT device 20, a total service recommendation, and a scenario (SN) editing function, to the manager terminal 31. Can provide.
  • 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.
  • Smart contracts running on the blockchain network 50 include smart contracts for administrators and smart contracts for users.
  • the manager smart contract may operate based on data and commands received from the manager dApp 41.
  • the user's smart contract may operate based on data and commands received from the user's dApp 42.
  • FIG. 11 is a diagram illustrating a composite IoT device 20 according to an embodiment of the present invention.
  • the complex IoT device 20 is coupled to various types of shared resources 10 to physically or electrically open and close the shared resources 10, a locking module 21, a user terminal 32, or Based on the key received from the blockchain network 50, whether the communication module 22 for transmitting and receiving data with the blockchain network 50, and whether the user terminal 32 has the right to use the shared resource 10 It may include a controller module 23 that determines and controls to open and close the locking module 21.
  • the complex IoT device 20 includes a display module 25 capable of visually or aurally providing information to a user or manager, an input module 24 capable of receiving a user's or manager's touch, etc., a complex IoT device It may include a power module 26 such as a battery that supplies power to the components of (20).
  • the locking module 21 may be opened or closed under the control of the controller module 23.
  • the locking module 21 may be physically coupled to the sharing object to physically or electrically block a user from accessing some components of the sharing object required when using the sharing object.
  • the lock module 21 may be physically coupled to a door lock or lock of a door to block the user from arbitrarily opening the door.
  • the locking 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.
  • the locking module 21 may be coupled to a card reader or a POS system that provides a payment service at the time of transaction, and restricts the user to perform the payment service based on the use permission.
  • the locking module 21 may be integrally formed with a door lock or a lock.
  • the locking module 21 may be coupled to various sharing objects.
  • the communication module 22 can transmit and receive data with the manager terminal 31, the user terminal 32, and the blockchain network 50.
  • the communication module 22 may use a short-range communication method such as Wi-Fi, Bluetooth, and NFC.
  • the communication module 22 may recognize its own location using GPS information.
  • the controller module 23 may control opening and closing of the locking module 21.
  • the controller module 23 may check the usage rights 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 blockchain network 50 with the key transmitted through the communication module 22 by the user terminal 32 according to the one-time authentication protocol to determine the right to use the user terminal 32. I can confirm. If the key received from the blockchain 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 permission to use it. can do.
  • the controller module 23 controls to open the locking module 21 when the existence of the right to use the user terminal 32 is confirmed.
  • the controller module 23 may control to lock the locking module 21 when a predetermined period of use has elapsed or a necessary condition is satisfied.
  • the controller module 23 may start a procedure to determine whether the user terminal 32 has the right to use only when the user terminal 32 approaches a predetermined distance using GPS information or short-range communication between the communication module 22 and the user terminal 32. have.
  • the proximity determination is an additional safety device in that the user terminal 32 and the communication module 22 must be unlocked when the user terminal 32 and the communication module 22 are approached by a predetermined distance to prevent the use of a person without permission.
  • the communication module 22 performs a distance determination based on the intensity of radio waves such as Wi-Fi, Bluetooth, and NFC, or compares its GPS coordinates with the GPS information of the user terminal 32 received from the user terminal 32 to provide proximity. You can judge whether or not.
  • the controller module 23 may request the block chain network 50 to check usage rights based on a one-time authentication protocol.
  • the locking module 21 of the complex IoT device 20 requires that the user opens the locking module 21 on the basis of the permission to use the shared resource 10, so that another locking device that is previously installed on the shared resource 10 (for example, a door lock) may be installed in an add-on manner to the locking device so as to be accessible.
  • another locking device that is previously installed on the shared resource 10 for example, For example, a door lock
  • the locking device installed on the shared resource 10 is maintained as it is, and the complex IoT device 20 is additionally coupled to the locking device.
  • the locking module 21 of the complex IoT device 20 is coupled to cover a keypad, a keyhole, a dial, etc. necessary to open the locking device, and when the locking module 21 is opened, the user can use a keypad, a keyhole, a dial, etc. It can be formed in a way that opens an accessible space.
  • the controller module 23 may further perform a procedure required to use 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 opening the locking module 21 based on the right to use the shared resource 10.
  • 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. It can be provided to the user.
  • the controller module 23 controls to open the lock module 21 when the user terminal 32 is authorized to use the door lock and opens the door lock.
  • the door lock password required for this may be provided to the user terminal 32 or may be provided to the user through the display module 25.
  • the gateway module 27 monitors the usage status of the shared resource 10 using at least one of a motion sensor, a human body detection 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 a person using the shared resource 10 exists.
  • the gateway module 27 may be physically formed as a separate device, and may be coupled to the shared resource 10 at a location suitable for monitoring the state of use of the shared resource 10.
  • 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 state of use of the shared resource 10 detected by the gateway module 27 is determined by the controller module 23 through the communication module 22. ) Can be passed on.
  • the controller module 23 may determine whether a person who uses the shared resource 10 is an intruder or a legitimate user based on the use right.
  • the controller module 23 may provide an alarm to the administrator terminal 31 when it is determined as an intruder.
  • the controller module 23 checks whether no one uses the shared resource 10 based on the usage state received from the gateway module 27, and the person using the shared resource 10 If not, the locking module 21 can be controlled to be locked. In the case of a transaction service for purchasing a product, the gateway module 27 may be unnecessary since the shared resource 10 is used once.
  • the complex IoT device 20 may be coupled to various shared resources 10, and the locking 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).
  • FIG. 12 is a diagram showing each step of a method for providing an intelligent smart contract according to an embodiment of the present invention.
  • the intelligent smart contract providing method in order to provide a service using the shared resource 10 by the manager terminal 31, the shared resource 10 is a blockchain network.
  • the shared resource registration step (S110) may be performed before the service providing step (S120).
  • the manager terminal 31 provides information on the shared resource 10 and information on the complex IoT device 20 coupled to the shared resource 10 to the blockchain network 50, and , This is the process of determining the scenario (SN) necessary to provide the service.
  • SN scenario
  • the manager terminal 31 provides information on the shared resource 10 and information on the complex IoT device 20 coupled to the shared resource 10 to the blockchain network 50.
  • the shared resource 10 is compared with the other previously registered shared resource 10, and if similar, the scenario (SN) used for the service using the other previously registered shared resource 10 is managed.
  • the information transmission step (S111) is a process in which the manager terminal 31 provides information on the shared resource 10 and information on the complex IoT device 20 coupled to the shared resource 10 to the blockchain network 50 to be.
  • the blockchain network 50 may store information about the shared resource 10 received from the manager terminal 31 and information about the complex IoT device 20 coupled to the shared resource 10 in the block 61. .
  • the example providing step (S112) is a process of providing a scenario (SN) required to provide a service using the shared resource 10 to the manager terminal 31.
  • a scenario (SN) required to provide a service using the shared resource 10.
  • cooperation between the manager terminal 31, the user terminal 32, the complex IoT device 20, and the blockchain network 50 is required according to a predetermined procedure.
  • the shared resource 10 is a house
  • accommodation sharing services can be provided using the house, and in order to provide accommodation sharing services, reservations are made, payments are made, users are identified, and locks are unlocked.
  • a series of procedures are required to confirm access and to lock when the specified period has expired.
  • Smart contracts can be used to provide these procedures or functions using the blockchain network 50, and a plurality of smart contracts combined in combination to perform these procedures and their operation sequence can be referred to as a scenario (SN). have.
  • Scenario may include one or more smart contracts necessary to provide services through the blockchain network 50, and the operation sequence of the smart contract, and the smart contract provides a service using the shared resource 10 It may include an operation performed when one or more conditions and conditions are satisfied, which implements at least some functions necessary for the purpose.
  • FIG. 13 is a diagram illustrating a scenario SN of a method for providing an intelligent smart contract according to an embodiment of the present invention as a smart contract and a function.
  • the scenario (contract) SN may include a plurality of smart contracts, and includes an operation sequence of a plurality of smart contracts. can do.
  • 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. have.
  • the scenario (SN) is smart contract 1, 2, 3, ... No. (SC-1, SC-2, SC-3, ... SC-No.) can be combined to operate in sequence.
  • the function to check the current status of the shared resource (SC-1), the use authorization function (SC-2), the use start function (SC-3), ... end of use The function (SC-No.) can operate.
  • Two or more smart contracts may operate in combination in order to perform one function necessary for providing a service according to the shared resource 10 or the characteristics of the service.
  • the blockchain network 50 includes information on the shared resource 10 received in the information transmission step (S111) and information and services on the complex IoT device 20.
  • An appropriate scenario SN can be provided to the manager terminal 31 according to the type of. It is expected that the service will be provided according to a scenario (SN) similar to the service provided by using the other shared resource (10) if it is similar by comparing the shared resource (10) to be registered with the other shared resource (10) previously registered. I can. Therefore, the blockchain network 50 compares whether or not the shared resources 10 are similar, and selects one or more scenarios (SN) used for the services provided by using the other shared resources 10 registered previously, and selects the manager terminal. (31) can be provided.
  • the blockchain network 50 compares the shared resource 10 to be registered with the previously registered shared resource 10, and the shared resource 10 to be registered is not similar as a result of a new type.
  • exemplary scenarios (SN) used for various types of services may be provided to the manager terminal 31.
  • a new scenario (SN) is required in order to provide a new kind of shared resource 10 and a new kind of service, but it is difficult for an administrator to create a completely new scenario (SN) from the beginning.
  • SN) is to provide exemplary scenarios (SN) so that an appropriate scenario (SN) can be selected and edited and used.
  • the manager terminal 31 displays the scenario (SN) to the manager upon receiving the scenario (SN), receives an input for the manager to select and edit the scenario (SN), and select Or edited scenario (SN) may be provided to the blockchain network 50.
  • scenario selection step (S113) when the manager terminal 31 receives scenarios (SN) used for a service using another shared resource 10 having a similar type of the shared resource 10, among the displayed scenarios (SN)
  • the administrator may receive an input for selecting a random scenario SN, and may provide the selected scenario SN to the blockchain 60.
  • scenario selection step S113 when exemplary scenarios (SN) are received because the shared resource 10 is a new type or a service is a new type, one scenario selected by the administrator 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 by which the administrator edits the scenario SN will be described later.
  • the method for providing an intelligent smart contract includes the step of directly editing the scenario SN by the administrator or the user or automatically correcting the scenario SN by the artificial intelligence learning model.
  • a new type of shared resource 10 and a new type of service can be provided.
  • the administrator can edit the scenario (SN) through the manager terminal 31, so that the administrator can use the new shared resource (10). New services can be easily provided by using.
  • a service providing step (S120) in which the user searches for the shared resource 10 through the user terminal 32 and obtains and uses the use right may be performed.
  • the method of providing an intelligent smart contract 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 IoT device 20'.
  • a service providing step (S120) of providing a shared service using the composite IoT device 20 will be described first.
  • the manager terminal 31 transfers the information of the shared resource 10 and the information of the complex IoT device 20 coupled to the shared resource 10 through the manager dApp to a blockchain network.
  • the use right acquisition step (S121) in which the use right is granted based on the smart contract previously designated by the manager terminal 31 after requesting the use right, and the complex IoT device 20 has the use right to the user terminal 32 It may include a use start step (S122) of opening the lock to access the shared resource 10 by determining whether it exists, and when the usage time set based on the usage permission expires, the usage state of the shared resource 10 If it is determined that the use is terminated by checking, the use termination step (S123) of controlling the locking module 21 to be locked may be further included.
  • the shared resource registration step (S110) 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.
  • the method of providing a shared service using the complex IoT device 20 may be performed in a system including the complex IoT device 20, the manager terminal 31, the user terminal 32, and the blockchain network 50.
  • the administrator and the user may register as a member and register predetermined information.
  • the manager terminal 31 provides the information of the shared resource 10 and the information of the complex IoT device 20 to the blockchain 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 complex IoT device 20 are recorded in the block 61 generated by the blockchain network 50, and the block 61 ) May include the step of being shared.
  • the administrator installs the composite IoT device 20 on the shared resource 10.
  • the manager executes the manager dApp using the manager terminal 31 or accesses the manager dApp and inputs information about the shared resource 10 and information about the complex IoT device 20.
  • the information on the shared resource 10 includes information necessary for the user to use the shared resource 10, such as the type, characteristics, rental cost, available rental time, minimum available rental time of the shared resource 10.
  • Information on the complex 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 complex IoT device 20. And includes information that enables data to be transmitted and received.
  • Information about the shared resource 10 and information about the complex IoT device 20 input to the manager terminal 31 are transmitted to the smart contract for the manager of the blockchain network 50 through the dApp.
  • the manager dApp 41 provides information on the shared resource 10 and information on the complex IoT device 20 received by calling the smart contract for the manager of the network.
  • the dApp 41 for administrators can transmit and receive data with the blockchain network 50 using Restful API.
  • the manager's smart contract performs the shared resource 10 information management function and registers the shared resource 10 on the blockchain network 50 so that the user can use it.
  • the manager's smart contract is a node 51 that configures the blockchain network 50 to store information about the shared resource 10 and information about the complex IoT device 20 in the storage space of the block 61 in a table format. Can share to the field.
  • Information on the shared resource 10 and information on the complex IoT device 20 are stored in the block 61 through a verification and consensus process.
  • the service providing step (S120) may include a use permission acquisition step (S121), a use start step, and a use end step (S123).
  • the user terminal 32 requests the search of the shared resource 10 recorded in the block chain 60 that is distributed and stored in the block chain network 50 through the user's dApp 42 in the use permission acquisition step (S121), , The step of providing a list of available shared resources 10 to the user terminal 32 by searching for the shared resources 10 recorded in the block chain 60 by the user dApp 42, the user terminal 32 The step of selecting a shared resource (10) from the list of available shared resources (10) and requesting the acquisition of usage rights, and whether the requested shared resource (10) is available for the smart contract for the administrator of the blockchain network (50). It may include the step of determining in the block chain 60 that the user terminal 32 has been granted permission to use if available.
  • the user In order to use the shared resource 10, the user must first obtain the right to use.
  • the use right acquisition step (S121) the user executes the dApp 42 for the user on the user terminal 32 or accesses the dApp 42 for the user to access the shared resource 10 registered in the blockchain network 50.
  • the dApp may provide an interface for searching the shared resource 10 by selecting conditions such as the type, location, usage period, 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 a user and return a result.
  • the user terminal 32 may receive a result of performing a search in a node 51 through the dApp 42 for a user.
  • the user terminal 32 displays the received search result to the user.
  • the user may select the shared resource 10 from the list of shared resources 10 provided as a search result and request the acquisition of the use right of the shared resource 10.
  • the user terminal 32 may request a smart contract for an administrator of the blockchain network 50 to obtain permission to use the shared resource 10 selected by the user through the dApp 42 for the user.
  • the manager smart contract determines whether the shared resource 10 is available. Whether or not the shared resource 10 is available may be determined based on conditions included in the request for obtaining use rights of the shared resource 10. It is possible to determine whether there is another user already reserved at the time requested by the user, and to determine whether the user is registered in the blacklist and is not entitled to obtain use rights.
  • the manager's smart contract records in the block chain 60 that the user terminal 32 requesting the permission is given the permission to use it.
  • the manager's smart contract shares the content that the user terminal 32 has the right to use it at the requested time to the blockchain network 50, and the blockchain network 50 provides the block 61 through verification and consensus. Stores that the permission has been granted.
  • the manager's smart contract may provide the user terminal 32 that the use right has been granted through the user dApp.
  • the user terminal 32 When the user terminal 32 obtains the use right, the user can open the lock of the complex IoT module through the user terminal 32 and start using the shared resource 10.
  • the user terminal 32 requests the blockchain network 50 to unlock the complex IoT device 20 based on the usage rights through the user dApp 42, the complex IoT device Determining whether the user terminal 32 is located within a predetermined distance, when the complex IoT device 20 and the user terminal 32 are located within a predetermined distance, the complex IoT device 20 and the user terminal ( 32) each requesting execution of a one-time authentication protocol to the blockchain network 50, the blockchain network 50 generates a one-time key according to the one-time authentication protocol, and the composite IoT device 20 and the user Delivering each to the terminal 32, and permission to use the user terminal 32 when the disposable key received by the composite IoT device 20 and the disposable key received from the user terminal 32 match. It may include the step of opening the lock by determining that there is.
  • the user may request the unlocking of the complex IoT device 20 coupled to the shared resource 10 that has obtained the use right through the user terminal 32.
  • the user terminal 32 may request the complex IoT device 20 to open the lock directly or through a dApp or a blockchain network 50.
  • 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 is not near the shared resource 10 and the lock module 21 is opened based on the use right, there is a risk that another person without the use right will use the shared resource 10, This is a process of determining whether the user is located within a predetermined distance to the shared resource 10. Determination of proximity has been described in the process of describing the controller module 23 of the composite IoT device 20, and therefore, overlapping content will be omitted.
  • the user terminal 32 may transmit and receive signals to the complex IoT device 20 using short-range communication such as Wi-Fi, bluetooth, and NFC. The user terminal 32 transmits its GPS coordinates to the complex IoT device 20 so that the complex IoT device 20 can determine whether or not the complex IoT device 20 is in proximity.
  • the complex IoT device 20 may provide a signal indicating that the proximity determination has passed to the user terminal 32.
  • the complex IoT device 20 and the user terminal 32 may request the blockchain network 50 to execute a one-time authentication protocol.
  • the execution request of the one-time authentication protocol received from the composite IoT device 20 and the user terminal 32 match, the blockchain network 50 executes the one-time authentication protocol.
  • the one-time authentication protocol searches for the use permission record stored in the block chain 60, determines whether the user terminal 32 has permission to use the shared resource 10 at a predetermined time, and if the use permission exists, the one-time authentication protocol Generates and provides a one-time key to the composite IoT device 20 and the user terminal 32.
  • the disposable key may be a randomly generated value, and may be encrypted with public keys of the composite IoT device 20 and the user terminal 32 and transmitted.
  • the composite IoT device 20 determines that the user terminal 32 has the right to use the lock module. (21)
  • the lock can be opened.
  • the user can use the shared resource 10 when the lock module 21 is opened.
  • the complex IoT device 20 provides the password of the existing locking device to the user terminal 32, and the user You can use the shared resource 10 by entering the password displayed in) into the existing locking device.
  • the gateway module 27 may monitor the state of the shared resource 10 while the user uses the shared resource 10.
  • the gateway module 27 can sense whether a person enters or exits the space that is the shared resource 10. .
  • the gateway module 27 may continuously sense the state of use of the shared resource 10 at a predetermined period or when the lock module 21 is opened.
  • the gateway module 27 may transmit the state of use of the shared resource 10 to the complex IoT device 20.
  • 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 use status of the shared resource 10, and the use record and reservation record of the shared resource 10. have.
  • the manager's dApp (41) can request the manager's smart contract to monitor the current status of the shared resource (10), and the manager's smart contract is a shared resource (10) provided by the gateway module (27) from the complex IoT device (20). It is possible to receive the usage status of and provide it to the manager terminal 31 through the dApp 41 for managers.
  • the complex IoT device 20 receives information on the state of use of the shared resource 10 from the gateway module 27 when the usage time based on the usage permission ends, and operates the lock module 21 to enable the user and the shared resource ( Determine if it is okay to block 10).
  • the gateway module 27 can sense whether a user exists in the space that is the shared resource 10, and the space that is the shared resource 10
  • the composite IoT device 20 may control the locking module 21 to be locked.
  • the composite IoT device 20 transmits the end of use fact to the blockchain network 50.
  • the service usage details are transmitted to the blockchain network 50.
  • a service using the shared resource 10 may be provided through the service providing step (S120).
  • the user can feed back content that is inconvenient, has errors, or needs to be corrected.
  • 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 first edit the scenario SN in the scenario selection step S113 of the process of registering the shared resource 10, and even when a service is provided using the shared resource 10, the scenario You can provide feedback provided by editing (SN).
  • FIG. 14 is a diagram illustrating scenario (SN) editing according to an embodiment of the present invention.
  • the condition or operation of the smart contract may be automatically modified.
  • 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 -4)
  • the administrator or user has a pause function (SC-3a).
  • the pause function (SC-3a) can be edited, called insertion between the use start function (SC-3) and the use end function (SC-4).
  • the manager terminal 31 or the user terminal 32 displays a scenario (SN-0) indicating a function, and receives an input for inserting a pause function (SC-3a) at a position selected by the administrator or the user. .
  • the manager terminal 31 or the user terminal 32 converts the smart contract 3a (SC-3a) that can perform the pause function (SC-3a) into the smart contract 3 (SC-3) and the smart contract 4 (SC-). 4)
  • the edited scenario SN-1 can be generated.
  • Functions that can be added to the scenario (SN) can be imported from the smart contract included in the other scenario (SN).
  • the functions included in the scenario SN may be divided into detailed functions, and a smart contract that performs the detailed functions may be combined as shown in the block 61 to generate an arbitrary function.
  • the manager terminal 31 or the user terminal 32 may use the pause function (SC-3a) included in the other scenario (SN). -3a), or by combining the function of checking the current status of the shared resource included in other scenarios (SN), the function of confirming the existence of the next reservation of the shared resource, the function of paying additional expenses, the function of changing the usage time, etc. If you are using (10) and the next reservation does not exist, you can create a pause function (SC-3a) by combining it to change the time to start again after paying a fixed fee additionally. have.
  • the manager terminal 31 or the user terminal 32 may receive an input for selecting and deleting the function to be deleted.
  • the administrator terminal 31 or the user terminal 32 may receive an input for changing the operation order by selecting the function to change the operation order and changing the position. have.
  • the manager terminal 31 or the user terminal 32 may change the condition 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.
  • the conditions and actions of the smart contract may be displayed as details of the function, and may be edited in such a way that the conditions and actions of the smart contract are modified when a user or an 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.
  • 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 details of a conversation between the chatbot and the user.
  • the user terminal 32 may automatically display a pop-up question when the user and the complex IoT device 20 are adjacent to each other.
  • the pop-up question may include a recommendation of a service existing in an adjacent location, a preference question about a service being used, a question about a correction point or an inconvenient point about the service being used, and the like.
  • the user terminal 32 may provide the answer to the blockchain network 50 as a feedback.
  • the user can 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 items that the user feels uncomfortable with or that require correction. User opinions recognized using this method may be included as feedback.
  • a learning step (S140) of learning an artificial intelligence learning model may be performed using the feedback.
  • the feedback is synthesized to generate learning data (TD) for training the artificial intelligence learning model.
  • TD 15 is a diagram showing learning data (TD) for an artificial intelligence learning model according to an embodiment of the present invention.
  • the input data is the scenario SN and the correct answer data is the training data TD, which is the edited scenario SNe received from the user terminal 32 or the manager terminal 31.
  • Learning data is a scenario learning data (TD-S) generated using the edited scenario (SNe-1) received from the manager terminal 31 or the user terminal 32 (TD-S), received from the user terminal 32. It may include the location information of the user terminal 32 (TD-L), the chatbot and the user's conversation history (TD-C), and a pop-up question answer (TD-A).
  • 16 is a diagram illustrating a neural network structure of an artificial intelligence learning model according to an embodiment of the present invention.
  • the artificial intelligence learning model 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 scenario learning data TD-S.
  • the scenario SN is a structure in which a plurality of smart contracts are sequentially combined, the conditions and actions of each smart contract are vectorized, and the order of the smart contracts is vectorized to form a complex vector and input to the input layer.
  • Information input to the input layer becomes encoding information through an encoder, and is restored through a decoder and output to an output layer.
  • the AI learning model can be trained by comparing the feature vector output from the output layer with the edited scenario SNe, which is the correct answer data, in a direction to reduce the error.
  • the artificial intelligence learning model does not operate on the blockchain network 50 and may exist in the scenario management server 90.
  • the artificial intelligence learning model when a new type of shared resource 10 is registered, a new artificial intelligence learning model that is responsible for modifying the scenario SN of a service using the corresponding type of shared resource 10 is generated.
  • An artificial intelligence learning model that modifies the scenario (SN) is allocated for each type of service using the shared resource 10 provided by using the blockchain network 50, and the scenario management server 90 provides a plurality of artificial intelligence learning models. Can be operated.
  • the artificial intelligence learning model can be learned using scenario learning data (TD-S).
  • TD-S scenario learning data
  • TD-A pop-up question
  • TD-C conversation history of the chatbot and the user
  • the scenario learning data (TD-S ) Owned Scenario (SN)-Edited Scenario (SNe)
  • SNe scenario learning data
  • Learning can be reinforced by using a method in which a weight is added to the part where the pause function is trained in the model.
  • the learning step (S140) of training the artificial intelligence learning model is repeatedly performed when feedback is received while a service is provided, so that the feedback can be immediately reflected.
  • a scenario correction step S150 may be performed.
  • the artificial intelligence 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. It is used as a scenario (SN) of the service using (10).
  • a modified scenario (SN) is obtained by inputting a 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 with the It can be applied to the service using the resource (10).
  • the correction step S150 may be performed according to various criteria. In the correction step S150, a period is determined, feedback is collected during the period, and then, when training of the artificial intelligence learning model is completed, the correction step S150 may be performed. 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 may 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 begins, feedback is collected from the beginning and new learning data (TD) is created.
  • the correction step (S150) may be performed.
  • the probability of outputting a specific edited scenario SN of the artificial intelligence learning model exceeds a predetermined value, it is recognized that the learning has been sufficiently performed, and the correction step S150 may be performed.
  • a correction step (S150) may be performed in which the specific edited scenario SN, which is statistically output most often, is reflected as a scenario SN used for a service in the blockchain network 50.
  • a scenario for providing a service based on user feedback in a state in which a service using the shared resource 10 is provided can be changed more conveniently.
  • the scenario SN may be continuously updated based on the feedback collected through the user terminal 32.
  • condition and operation of the smart contract can be changed based on user feedback, it is possible to continuously update the smart contract required to provide a shared service.
  • control unit 51b control unit

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Resources & Organizations (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일실시예에 따르면, 공유서비스 연계 토탈서비스 추천 방법을 제공하여, 사용자가 선호할 것으로 예상되는 다른 종류의 다양한 서비스 또는 상품을 추천할 수 있으므로, 사용자가 다양한 서비스 및 상품에 관한 정보를 제공받을 수 있고, 지능형 스마트 컨트랙트를 제공하여, 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.

Description

공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법
본 발명은 공유서비스 연계 토탈서비스 추천 방법 및 지능형 스마트 컨트랙트 제공방법에 관한 것이다.
현재의 공유서비스는 기업이 개인과 개인을 중개하고 수수료를 받는 형태로 이루어지고 있으며, 기업이 운영하는 중앙집중화된 공유서비스 제공 시스템에 기초하여 서비스가 제공되고 있다. 현재의 공유서비스는 하나의 품목을 공유하기 위한 서비스 제공형태를 갖고 있다. 예를 들어, 우버(Uber)는 차량공유 서비스를 제공하고, 에어비엔비(Airbnb)는 숙박공유 서비스를 제공한다. 이러한 기존 공유서비스는 다양한 종류의 제품이나 서비스를 제공하지 못하는 한계가 있다.
최근 미디어 콘텐츠 분야에서는 사용자의 취향에 따른 영화나 드라마를 추천해주는 기능이 도입되고 있고, 이러한 기능에 따라 사용자는 자신의 취향에 맞는 다른 콘텐츠를 추천받아 이용할 수 있게 되었다. 이러한 추천서비스의 발전에 비추어 보면, 기존의 공유서비스는 단일한 품목만을 제공하므로 해당 품목에 대한 사용자의 취향 또는 선호도를 알 수 있을 뿐이고, 추천 기능을 수행하더라도 해당 품목 범위 내로 한정되는 한계가 있다.
또한, 현재의 공유서비스는 공유서비스를 제공하기 위한 중앙집중화된 시스템을 이용하므로, 해킹이나 서버에 대한 공격을 받는 경우 서비스의 제공이 어려워지는 단일실패지점이 존재하는 문제가 있다.
블록체인 네트워크는 조건이 만족되면 자동으로 정해진 동작이 실행되도록 계약을 프로그램화한 스마트 컨트랙트를 제공할 수 있다. 스마트 컨트랙트는 정해진 계약을 수행하기 위하여 프로그램화되어 블록체인 네트워크에서 동작할 수 있으나, 이미 동작하고 있는 스마트 컨트랙트는 조건을 변경하기 어려운 문제가 있다.
[선행기술문헌]
[특허문헌]
(특허문헌 1) KR 10-2013-0047915 A
본 발명의 일실시예에 따른 목적은, 다양한 종류의 서비스 및 상품을 블록체인 기반의 공유서비스로 제공하면서, 사용자가 이용한 서비스 또는 상품과 다른 종류의 다양한 서비스 및 상품을 추천하는 토탈서비스 추천방법을 제공하는 것이다.
또한, 본 발명의 일실시예에 따른 목적은, 블록체인 네트워크를 이용하여 공유서비스를 제공하고 토탈서비스를 추천하는 과정을 수행하는 플랫폼을 제공하는 것이다.
본 발명의 일실시예에 따른 목적은, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있는 지능형 스마트 컨트랙트를 제공하기 위한 것이다.
본 발명의 일실시예에 따른 목적은, 다양한 종류의 공유자원을 이용하여 공유서비스를 제공하기 위하여 필요한 조건과 동작을 갖도록 지능형 스마트 컨트랙트를 생성할 수 있는 방법을 제공하기 위한 것이다.
본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 공유자원에 결합되어 서비스의 이용을 허용하거나 차단하는 복합 IoT 디바이스, 관리자 단말 또는 사용자 단말로부터 서비스 이용기록을 블록체인 네트워크를 통해 수신하여 저장하는 서비스정보 수집단계, 및 상기 서비스 이용기록에 기초하여, 서비스를 추천받는 사용자와 서비스 이용패턴이 유사한 다른 사용자가 이용한 서비스를 추천하는 큐레이션단계를 포함할 수 있다.
또한, 상기 서비스정보 수집단계는 상기 복합 IoT 디바이스, 관리자 단말, 사용자 단말이 서비스 이용기록을 블록체인 네트워크로 전송하는 이용기록 전송단계, 상기 서비스 이용기록에 포함된 개인정보를 저장하기 전에 비식별화하는 비식별화 단계, 및 상기 서비스 이용기록을 분산형 데이터베이스에 저장하고 서비스 이용기록의 저장과정을 블록체인 네트워크에 저장하는 저장단계를 포함할 수 있다.
또한, 상기 서비스정보 수집단계는 블록체인 네트워크가 상기 복합 IoT 디바이스가 제공하는 서비스 이용기록과 상기 사용자 단말이 제공하는 서비스 이용기록을 비교하여 일치하는 경우 수집된 서비스 이용기록을 저장하고 일치하지 않는 경우 저장하지 않을 수 있다.
또한, 상기 큐레이션단계는 사용자의 과거 서비스 이용기록을 분석하여 사용자의 서비스 이용패턴을 분석하는 패턴분석단계, 다른 사용자의 과거 서비스 이용기록에 기초하여 분석된 다른 사용자의 서비스 이용패턴과 상기 사용자의 서비스 이용패턴을 비교하여, 유사한 패턴을 갖는 다른 사용자를 식별하는 패턴비교단계, 및 상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들 중에서 상기 사용자 단말로부터 수신하는 사용자의 현재상태와 관련된 서비스를 추천하는 상태기반 추천단계를 포함할 수 있다.
또한, 상기 서비스 이용기록은 상기 공유자원을 이용하여 제공되는 서비스를 이용한 내역 및 사용자가 상기 서비스의 만족도를 선호부터 비선호까지 점수로 입력한 선호도 정보를 포함하고, 상기 큐레이션단계는 상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들을 선호 점수가 높은 순서대로 추천하는 선호기반 추천단계를 더 포함할 수 있다.
또한, 상기 큐레이션단계는 상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들 중에서 비선호 점수가 존재하는 서비스를 분류하고, 분류된 서비스의 리뷰를 분석하여 긍정 반응에 해당하는 특징을 추출하여 제시하면서 특색 서비스로 추천하는 비선호기반 추천단계를 더 포함할 수 있다.
또한, 상기 패턴분석단계는 사용자의 과거 서비스 이용기록에 기초하여, 정해진 기간 범위 내에서 다양한 종류의 서비스를 시간순서대로 이용한 순차패턴을 인식하고, 상기 패턴비교단계는 상기 순차패턴을 비교함에 있어서, 정해진 기간 범위 내에서 서비스를 추천받는 사용자가 가장 처음에 이용한 서비스부터 최근에 이용한 서비스까지의 순차패턴을 비교하여 유사한 패턴을 갖는 다른 사용자를 식별할 수 있다.
또한, 상기 복합 IoT 디바이스는 다양한 종류의 공유자원에 결합되어 물리적 또는 전기적으로 상기 공유자원을 개폐하는 잠금모듈, 상기 사용자 단말 또는 블록체인 네트워크와 데이터를 송수신하는 통신모듈, 및 상기 사용자 단말이 상기 공유자원의 이용권한을 갖는지 여부를 상기 블록체인 네트워크로부터 수신하는 키에 기초하여 판단하고, 상기 잠금모듈을 개폐하도록 제어하는 컨트롤러모듈을 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 상기 관리자 단말이 상기 서비스를 제공하기 위한 정보 및 상기 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 등록하여 상기 서비스를 이용가능하게 블록체인 네트워크에 제공하는 서비스 등록단계를 더 포함할 수 있다.
본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 공유자원을 이용한 서비스를 블록체인 네트워크를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오에 기초하여 상기 서비스를 제공하는 서비스 제공단계, 사용자 단말 또는 관리자 단말이 상기 시나리오를 편집하는 피드백을 제공하는 피드백단계, 상기 피드백에 기초하여 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계, 및 상기 인공지능 학습모델이 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계를 포함할 수 있다.
또한, 상기 시나리오는 상기 블록체인 네트워크를 통해 상기 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 상기 스마트 컨트랙트의 동작순서를 포함할 수 있고, 상기 스마트 컨트랙트는 상기 공유자원을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 상기 조건을 만족하면 수행하는 동작을 포함할 수 있다.
또한, 상기 피드백단계는 상기 사용자 단말 또는 관리자 단말이 상기 시나리오의 적어도 일부를 편집하여 피드백으로 제공할 수 있다.
또한, 상기 학습단계는 입력데이터가 상기 시나리오이고 정답데이터가 상기 사용자 단말 또는 관리자 단말로부터 수신한 편집된 시나리오인 학습데이터를 이용하여, 상기 인공지능 학습모델을 훈련시킬 수 있다.
또한, 상기 수정단계는 정해진 기간동안 수집된 피드백에 기초하여 훈련된 상기 인공지능 학습모델에 상기 시나리오를 입력하여 출력되는 수정된 시나리오를 획득하고, 상기 수정된 시나리오를 상기 공유자원을 이용한 서비스에 적용할 수 있다.
또한, 상기 피드백은 상기 사용자 단말로부터 수집되는 위치정보, 상기 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함할 수 있다.
또한, 상기 피드백단계는 사용자 또는 관리자가 사용자 단말 또는 관리자 단말을 통해 상기 시나리오에서 사용자 또는 관리자가 입력하여야 동작하는 기능들을 수정하면, 그에 따라 상기 시나리오의 기능들을 제공하기 위하여 포함된 복수의 스마트 컨트랙트의 동작순서, 스마트 컨트랙트의 조건 또는 동작을 자동으로 수정할 수 있다.
또한, 상기 서비스 제공단계 이전에, 관리자 단말이 상기 공유자원을 이용한 서비스를 제공하기 위하여 상기 공유자원을 블록체인 네트워크에 등록하고 상기 공유자원을 이용할 서비스에 적용될 시나리오를 결정하는 공유자원 등록단계를 더 포함할 수 있고, 상기 서비스 제공단계는 상기 공유자원 등록단계에서 결정된 시나리오에 의해 상기 서비스가 제공되는 것일 수 있다.
또한, 상기 공유자원 등록단계는 상기 관리자 단말이 상기 공유자원에 관한 정보, 상기 공유자원에 결합된 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 제공하는 정보전송단계, 상기 공유자원과 기존에 등록된 다른 공유자원을 비교하여 유사한 경우 기존에 등록된 다른 공유자원을 이용한 서비스에 이용되는 시나리오를 관리자 단말에 제공하고, 상기 공유자원이 기존에 등록된 다른 공유자원과 다른 새로운 것인 경우 예시적인 시나리오들을 관리자 단말에 제공하는 예시제공단계, 및 상기 관리자 단말이 상기 다른 공유자원을 이용한 서비스에 이용되는 시나리오에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오들 중에서 사용자가 선택한 하나의 시나리오와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계를 포함할 수 있다.
본 발명의 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다.
이에 앞서 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이고 사전적인 의미로 해석되어서는 아니 되며, 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야만 한다.
본 발명의 일실시예에 따르면, 사용자가 서비스 또는 상품을 이용한 기록에 기초하여 사용자가 선호할 것으로 예상되는 다른 종류의 다양한 서비스 또는 상품을 추천할 수 있으므로, 사용자가 다양한 서비스 및 상품에 관한 정보를 제공받을 수 있다.
또한, 본 발명의 일실시예에 따르면, 공유서비스를 제공하고 토탈서비스를 추천하는 과정을 블록체인 네트워크를 이용한 플랫폼을 통해 제공하여, 서비스를 제공하는 사람과 이용하는 사람이 자유롭게 시장에 진입할 수 있으므로 공유경제를 활성화할 수 있다.
본 발명의 일실시예에 따르면, 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.
또한, 본 발명의 일실시예에 따르면, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있으므로, 공유서비스를 제공하기 위하여 필요한 스마트 컨트랙트의 지속적인 업데이트가 가능하다.
도 1은 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법을 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법이 수행되는 환경을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 복합 IoT 디바이스를 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법이 제공할 수 있는 서비스를 나타내는 도면이다.
도 5는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법의 각 단계를 나타내는 흐름도이다.
도 6은 본 발명의 일실시예에 따른 상태기반 추천단계를 나타내는 도면이다.
도 7은 본 발명의 일실시예에 따른 선호기반 추천단계를 나타내는 도면이다.
도 8은 본 발명의 일실시예에 따른 비선호기반 추천단계를 나타내는 도면이다.
도 9는 본 발명의 일실시예에 따른 순차패턴 인식 및 순차패턴 비교과정을 나타내는 도면이다.
도 10은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법이 수행되는 환경을 나타내는 도면이다.
도 11은 본 발명의 일실시에에 따른 복합 IoT 디바이스를 나타내는 도면이다.
도 12는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 각 단계를 나타내는 도면이다.
도 13은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 시나리오를 스마트 컨트랙트와 기능으로 나타내는 도면이다.
도 14는 본 발명의 일실시예에 따른 시나리오 편집을 나타내는 도면이다.
도 15는 본 발명의 일실시예에 따른 인공지능 학습모델을 위한 학습데이터를 나타내는 도면이다.
도 16은 본 발명의 일실시예에 따른 인공지능 학습모델의 신경망 네트워크 구조를 예시적으로 나타내는 도면이다.
본 발명의 일실시예의 목적, 특정한 장점들 및 신규한 특징들은 첨부된 도면들과 연관되어지는 이하의 상세한 설명과 바람직한 실시예들로부터 더욱 명백해질 것이다. 본 명세서에서 각 도면의 구성요소들에 참조번호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 번호를 가지도록 하고 있음에 유의하여야 한다. 또한, "일면", "타면", "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 상기 용어들에 의해 제한되는 것은 아니다. 이하, 본 발명의 일실시예를 설명함에 있어서, 본 발명의 일실시예의 요지를 불필요하게 흐릴 수 있는 관련된 공지 기술에 대한 상세한 설명은 생략한다.
이하, 첨부된 도면을 참조하여, 본 발명의 일실시예를 상세히 설명한다.
도 1은 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법을 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 다양한 공유자원(10)을 누구나 공유대상으로 제공하고 이용할 수 있도록 블록체인 네트워크(50)에 기반하여 제공되는 복합 IoT 디바이스(20)를 이용한 공유서비스 제공방법과 연계되어 수행될 수 있다.
관리자가 복합 IoT 디바이스(20)를 다양한 종류의 공유자원(10)에 결합하고 공유자원(10)에 관한 정보와 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 등록함으로써 공유자원(10)을 공유서비스에 제공하면, 사용자는 블록체인 네트워크(50)를 통해 공유자원(10)의 이용권한을 획득하고 이용권한에 기초하여 복합 IoT 디바이스(20)의 잠금을 개방하여 공유자원(10)을 이용할 수 있다.
복수의 사용자들이 다양한 종류의 공유자원(10)을 이용한 내역을 포함하는 서비스 이용기록은 블록체인 네트워크(50)로 제공되고, 누적된 복수의 서비스 이용기록은 빅데이터 분석방법에 의해 분석된다. 서비스를 추천받을 사용자는 자신의 이용패턴과 유사한 패턴의 다른 사용자가 이용한 서비스들 중에서 선택된 서비스를 추천받을 수 있다.
본 발명의 일실시예에서 공유자원(10)은 특정 서비스를 제공하기 위하여 필요한 장치나 시스템 등을 포함할 수 있다. 예를 들어, 공유자원(10)은 대여 서비스를 제공하기 위해 필요한 자동차나 숙박시설과 같은 자원일 수 있고, 관광 서비스에서 입장료를 구매하거나 음식 서비스에서 음식을 구매하기 위하여 필요한 카드리더기, POS(Point Of Sale) 시스템 등의 결제시스템과 같은 자원일 수 있다. 즉, 본 발명의 일실시예에 따라 서비스 사용기록이 수집될 수 있는 서비스와 추천될 수 있는 서비스는 대여를 통한 공유서비스 뿐만 아니라, 매매를 통해 소유권이 이전되는 거래서비스도 포함할 수 있다. 따라서 본 발명의 일실시예는 모든 종류의 서비스를 추천할 수 있으므로 토탈서비스를 추천할 수 있는 것이다.
이하에서 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법을 제공하는 환경에 대하여 설명한다.
도 2는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법이 수행되는 환경을 나타내는 도면이다.
본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50), 분산형 데이터베이스(70), 매칭서버(80)를 이용하여 수행될 수 있다.
블록체인 네트워크(50)는 복수의 노드(51)가 피어 투 피어(P2P, Peer to Peer) 방식으로 연결된 네트워크이다. 블록체인 네트워크(50)는 복수의 노드(51)들 사이의 정보처리와 각 노드(51)의 정보처리에 기초하여 공유서비스 연계 토탈서비스 추천 방법을 수행할 수 있다. 블록체인 네트워크(50)는 공유자원(10)을 공유서비스에 제공하고 공유자원(10)을 이용하며 토탈서비스 추천 방법을 수행하기 위한 기능의 적어도 일부를 수행하는 복수의 노드(51)로 구성될 수 있다.
노드(51)는 통신부(51a), 제어부(51b), 저장부(51c)를 포함할 수 있다. 노드(51)는 서버 컴퓨터, PC, 노트북 PC, 태블릿 PC, 스마트폰 등의 정보처리장치를 포함한다. 통신부(51a)는 다른 노드(51), 관리자 단말(31), 사용자 단말(32), 복합 IoT 디바이스(20), 분산형 데이터베이스(70), 매칭서버(80)와 데이터를 송수신할 수 있다. 통신부(51a)는 노드(51)와 다른 노드(51)를 연결하여 블록체인 네트워크(50)를 구성할 수 있다. 저장부(51c)는 블록체인(60)의 전부 또는 일부를 저장할 수 있다. 저장부(51c)는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법을 수행하는 프로그램 코드를 저장할 수 있다. 본 발명의 일실시예에서 말하는 공유서비스 또는 서비스는, 공유자원(10)을 공유하는 서비스 뿐만 아니라, 공유자원(10)을 이용하여 물건을 판매하거나 다양한 종류의 서비스를 제공하거나 공유자원(10) 자체를 매매하는 서비스도 포함할 수 있다. 제어부(51b)는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법을 수행하는 프로그램 코드를 실시할 수 있는 프로세서(processor)를 포함할 수 있다.
블록체인(60)은 이전 블록(61)의 해시값을 자기 블록(61)의 구성으로 포함하는 블록(61)들의 연속적인 연결로 구성될 수 있다. 블록(61)은 이전 블록(61)의 해시값 및 저장공간을 포함한다. 블록체인(60)은 블록체인 네트워크(50)를 구성하는 복수의 노드(51)에 각각 저장되고, 복수의 노드(51)에 저장된 블록체인(60)들은 서로 동일한 데이터를 갖는다. 블록(61)의 저장공간에는 공유자원(10)에 관한 정보, 복합 IoT 디바이스(20)에 관한 정보, 관리자에 관한 정보, 사용자에 관한 정보, 공유자원(10)을 이용한 서비스 이용기록 등이 저장될 수 있거나, 이러한 정보들은 분산형 데이터베이스(70)에 저장하고 저장내역을 블록(61)의 저장공간에 저장할 수 있다.
관리자 단말(31) 및 사용자 단말(32)은 블록체인 네트워크(50)에 접속하여 데이터를 송수신할 수 있는 정보처리장치이다. 관리자 단말(31) 및 사용자 단말(32)은 스마트폰, 노트북 PC, 태블릿 PC, 웨어러블 컴퓨터 등의 휴대용 전자기기를 포함할 수 있다. 관리자 단말(31) 및 사용자 단말(32)은 dApp을 통하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다.
dApp(distributed Application)은 사용자 및 관리자가 복합 IoT 디바이스를 이용한 공유서비스 제공방법을 이용하기 위하여 관리자 단말(31) 및 사용자 단말(32)을 통해 접속하는 프론트엔드 인터페이스(Frontend Interface)이다. dApp은 관리자 단말(31) 및 사용자 단말(32)에 설치되어 실행될 수도 있고, 블록체인 네트워크(50)와 별도의 서버에서 운영되는 웹페이지 형태로 관리자 단말(31) 및 사용자 단말(32)에 제공될 수 있으며, 블록체인 네트워크(50)의 노드(51)에서 실행될 수도 있다. dApp은 관리자용 dApp(41) 및 사용자용 dApp(42)을 포함할 수 있다. 관리자용 dApp(41)은 공유자원(10)에 관한 정보, 및 복합 IoT 디바이스(20)에 관한 정보의 등록기능, 공유자원(10)의 모니터링 기능, 각종 관리 허가 기능들을 관리자 단말(31)에 제공할 수 있다. 사용자용 dApp(42)은 공유자원(10) 검색기능, 이용권한 신청, 복합 IoT 디바이스(20)의 잠금해제 요청, 토탈서비스 추천 등의 기능들을 관리자 단말(31)에 제공할 수 있다.
dApp은 관리자 단말(31) 및 사용자 단말(32)로부터 수신한 데이터나 명령을 블록체인 네트워크(50)에 존재하는 스마트 컨트랙트에 전달한다. 블록체인 네트워크(50)에서 구동되는 스마트 컨트랙트는 관리자용 스마트 컨트랙트 및 사용자용 스마트 컨트랙트를 포함한다. 관리자용 스마트 컨트랙트는 관리자용 dApp(41)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다. 사용자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다.
도 3은 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)를 나타내는 도면이다.
도 3에 도시된 바와 같이, 복합 IoT 디바이스(20)는 다양한 종류의 공유자원(10)에 결합되어 물리적 또는 전기적으로 공유자원(10)을 개폐하는 잠금모듈(21), 사용자 단말(32) 또는 블록체인 네트워크(50)와 데이터를 송수신하는 통신모듈(22), 및 사용자 단말(32)이 공유자원(10)의 이용권한을 갖는지 여부를 상기 블록체인 네트워크(50)로부터 수신하는 키에 기초하여 판단하고, 잠금모듈(21)을 개폐하도록 제어하는 컨트롤러모듈(23)을 포함할 수 있다.
또한, 복합 IoT 디바이스(20)는 사용자 또는 관리자에게 정보를 시각적 또는 청각적으로 제공할 수 있는 표시모듈(25), 사용자 또는 관리자의 터치 등을 입력받을 수 있는 입력모듈(24), 복합 IoT 디바이스(20)의 구성들에게 전원을 공급하는 배터리 등의 전원모듈(26)을 포함할 수 있다. 복합 IoT 디바이스(20)가 포함하는 각 모듈들(21 내지 27)은 물리적으로 독립된 디바이스로 구성될 수도 있고, 일부 모듈들이 하나의 디바이스로 구성될 수도 있다.
잠금모듈(21)은 컨트롤러모듈(23)의 제어에 따라 개폐될 수 있다. 잠금모듈(21)은 공유대상에 물리적으로 결합되어 공유대상을 이용할 때 필요한 공유대상의 일부 구성에 사용자가 접근하는 것을 물리적으로 또는 전기적으로 차단할 수 있다. 예를 들어, 공유대상이 회의실이나 숙박시설인 경우 잠금모듈(21)은 문의 도어락이나 자물쇠에 물리적으로 결합되어 사용자가 문을 임의로 개방할 수 없도록 차단할 수 있다. 또는, 공유대상이 전자기기일 때 잠금모듈(21)은 전자기기의 입력장치나 출력장치에 결합되어 사용자가 전자기기의 전부 또는 일부를 사용할 수 없도록 물리적 또는 전기적인 제한을 수행할 수 있다. 또는, 잠금모듈(21)은 거래시의 결제서비스를 제공하는 카드리더기 또는 POS 시스템에 결합되어 사용자가 이용권한에 기초하여 결제서비스를 수행하도록 제한할 수 있다. 또는, 잠금모듈(21)은 도어락이나 자물쇠 등에 일체로 형성될 수 있다. 잠금모듈(21)은 다양한 공유대상에 결합될 수 있다.
통신모듈(22)은 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)와 데이터를 송수신할 수 있다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 근거리 통신방식을 이용할 수 있다. 통신모듈(22)은 GPS 정보를 이용하여 자신의 위치를 인식할 수도 있다.
컨트롤러모듈(23)은 잠금모듈(21)의 개폐를 제어할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용을 요청한 사용자 단말(32)의 이용권한을 확인할 수 있다. 컨트롤러모듈(23)은 일회용 인증 프로토콜에 따라 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키를 비교하여 사용자 단말(32)의 이용권한을 확인할 수 있다. 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키가 일치하는 경우 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)의 이용권한의 존재가 확인되면 잠금모듈(21)을 개방하도록 제어한다. 컨트롤러모듈(23)은 정해진 사용기간이 경과하거나, 필요한 조건이 만족되는 경우 잠금모듈(21)을 잠그도록 제어할 수 있다.
컨트롤러모듈(23)은 통신모듈(22)과 사용자 단말(32) 사이의 근거리 통신 또는 GPS 정보를 이용하여 사용자 단말(32)이 정해진 거리만큼 접근하여야 이용권한을 갖는지 여부를 판단하는 절차를 시작할 수도 있다. 사용자 단말(32)과 통신모듈(22)이 정해진 거리만큼 접근한 상태에서 잠금이 개방되어야 이용권한이 없는 사람의 이용을 방지할 수 있는 점에서 근접여부 판단은 추가적인 안전장치가 된다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 전파 강도에 기초한 거리판단을 수행하거나, 자신의 GPS 좌표와 사용자 단말(32)로부터 수신하는 사용자 단말(32)의 GPS 정보를 비교하여 근접 여부를 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)이 통신모듈(22)과 정해진 거리만큼 접근한 것으로 판단되면, 블록체인 네트워크(50)에 일회용 인증 프로토콜에 기초한 이용권한 확인을 요청할 수 있다.
복합 IoT 디바이스(20)의 잠금모듈(21)은 사용자가 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하여야 공유자원(10)에 미리 설치되어 있는 다른 잠금장치(예를 들어, 도어락)에 접근가능하도록, 잠금장치에 애드온 방식으로 설치될 수 있다. 애드온(add on) 방식이란 공유자원(10)에 설치되어 있는 잠금장치는 그대로 유지하고, 잠금장치에 복합 IoT 디바이스(20)를 추가로 결합하는 것이다. 복합 IoT 디바이스(20)의 잠금모듈(21)은 잠금장치를 개방하기 위해 필요한 키패드, 열쇠구멍, 다이얼 등을 커버하도록 결합되고, 잠금모듈(21)이 개방되면 사용자가 키패드, 열쇠구멍, 다이얼 등에 접근할 수 있는 공간을 오픈하는 방식으로 형성될 수 있다.
컨트롤러모듈(23)은 사용자 또는 관리자가 입력모듈(24)로 입력하는 정보에 기초하여 공유자원(10)의 이용에 필요한 절차를 더 수행할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하는 경우, 잠금장치를 개방할 수 있는 키를 상기 사용자 단말(32)로 제공할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단되면, 공유자원(10)을 이용하는데 필요한 비밀번호 등의 정보를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다. 예를 들어, 잠금모듈(21)이 도어락에 물리적으로 연결되어 있는 경우, 사용자 단말(32)의 이용권한이 확인되면 컨트롤러모듈(23)은 잠금모듈(21)을 개방하도록 제어하면서, 도어락을 개방하는데 필요한 도어락 비밀번호를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다.
게이트웨이모듈(27)은 모션센서, 인체감지센서, 적외선센서, 초음파센서, 터치센서 중에서 적어도 하나를 이용하여 공유자원(10)의 이용상태를 감시하여 이용상태정보를 생성하고 상기 컨트롤러모듈(23)에 제공할 수 있다. 게이트웨이모듈(27)은 공유자원(10)을 이용하는 사람이 존재하는지 여부를 감시한다. 게이트웨이모듈(27)은 물리적으로 별도의 디바이스로 형성되고, 공유자원(10)의 이용상태를 감시하기 적합한 위치의 공유자원(10)에 결합될 수 있다.
예를 들어, 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 게이트웨이모듈(27)은 공간에 사람이 존재하는지 여부를 확인할 수 있는 위치에 설치될 수 있다. 이때 게이트웨이모듈(27)은 잠금모듈(21)과 물리적으로 별도의 디바이스로 형성되어, 게이트웨이모듈(27)이 감지한 공유자원(10)의 이용상태는 통신모듈(22)을 통해 컨트롤러모듈(23)에 전달될 수 있다. 컨트롤러모듈(23)은 이용권한에 기초하여 공유자원(10)을 이용하는 사람이 침입자인지 정당한 사용자인지 판단할 수 있다. 컨트롤러모듈(23)은 침입자로 판단되는 경우 관리자 단말(31)에 경보를 제공할 수 있다. 컨트롤러모듈(23)은 이용권한에 기초한 사용시간이 만료되면 게이트웨이모듈(27)로부터 수신한 이용상태에 기초하여 공유자원(10)을 이용하는 사람이 없는지 확인하고, 공유자원(10)을 이용하는 사람이 없는 경우 잠금모듈(21)이 잠궈지도록 제어할 수 있다. 상품을 구매하는 거래 서비스의 경우 공유자원(10)을 일회적으로 이용하는 것이므로 게이트웨이모듈(27)이 불필요할 수 있다.
상술한 바와 같은 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)는 다양한 공유자원(10)에 결합될 수 있고, 공유자원(10)의 이용권한이 존재하는 사용자에게만 잠금모듈(21)을 개방하여 공유자원(10)의 이용을 제공할 수 있다.
본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 공유자원(10)에 결합되어 서비스의 이용을 허용하거나 차단하는 복합 IoT 디바이스(20), 관리자 단말(31) 또는 사용자 단말(32)로부터 서비스 이용기록을 블록체인 네트워크(50)를 통해 수신하여 저장하는 서비스정보 수집단계(S50), 및 서비스 이용기록에 기초하여, 서비스를 추천받는 사용자와 서비스 이용패턴이 유사한 다른 사용자가 이용한 서비스를 추천하는 큐레이션단계(S60)를 포함할 수 있다.
도 4는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법이 제공할 수 있는 서비스를 나타내는 도면이다.
도 4에 도시된 바와 같이, 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은 다양한 서비스를 제공할 수 있고 다양한 서비스를 추천할 수 있는 dApp을 통해 제공될 수 있다. 복합 IoT 디바이스(20)는 다양한 종류의 공유자원(10)에 결합될 수 있기 때문에, 본 발명이 제공할 수 있는 서비스는 도 4에 도시한 종류로 제한되지 않는다.
사용자용 dApp(42)은 내부에 서비스 종류에 따라 복수의 구별되는 dApp을 포함할 수 있다. 사용자용 dApp(42)은 서비스의 종류와 무관하게 하나의 dApp으로 제공될 수도 있다. 본 발명의 일실시예는 교통 서비스, 숙박 서비스, 관광 서비스, 금융 서비스, 음식 서비스, 렌트 서비스 등의 서비스를 제공할 수 있고 추천할 수 있다. 예를 들어, 사용자는 교통 서비스 제공 dApp을 사용자 단말(32)에 설치하고 실행하여 블록체인 네트워크(50)에 등록된 교통 서비스를 이용할 수 있다. 사용자가 설치한 교통 서비스 제공 dApp은 사용자에게 교통 서비스를 추천할 수 있고, 교통 서비스 이외에 다른 종류의 서비스도 추천할 수 있다.
도 5는 본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법의 각 단계를 나타내는 흐름도이다.
본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 사용자가 '복합 IoT 디바이스(20)를 이용한 공유서비스'를 이용한 내역인 서비스 이용기록에 기초하여 수행될 수 있다. 복합 IoT 디바이스(20)를 이용한 공유서비스를 제공하는 단계를 먼저 설명한다.
복합 IoT 디바이스(20)를 이용한 공유서비스는, 관리자 단말(31)이 관리자 dApp을 통하여 공유자원(10)의 정보 및 공유자원(10)에 결합된 복합 IoT 디바이스(20)의 정보를 블록체인 네트워크(50)에 제공하여 공유자원(10)을 공유가능하도록 제공하는 공유자원 등록단계(S10), 사용자 단말(32)이 사용자 dApp을 통하여 블록체인 네트워크(50)에 등록된 공유자원(10)의 이용권한을 요청하고 관리자 단말(31)이 사전에 지정해놓은 스마트 컨트랙트에 기초하여 이용권한이 부여되는 이용권한 획득단계(S20), 및 복합 IoT 디바이스(20)가 사용자 단말(32)에 이용권한이 존재하는지 판단하여 공유자원(10)에 접근가능하도록 잠금을 개방하는 이용 시작단계(S30)를 포함할 수 있고, 이용권한에 기초하여 정해진 사용시간이 만료되는 경우, 공유자원(10)의 이용상태를 점검하여 이용이 종료된 것으로 판단되면 잠금모듈(21)이 잠궈지도록 제어하는 이용 종료단계(S40)를 더 포함할 수 있다.
복합 IoT 디바이스(20)를 이용한 공유서비스 제공방법은, 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)를 포함하는 시스템에서 수행될 수 있다. 관리자와 사용자는 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)를 이용한 공유서비스를 이용하기 위하여 회원가입을 하고 정해진 정보를 등록할 수 있다.
공유자원 등록단계(S10)는 관리자 단말(31)이 관리자용 dApp(41)을 통하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보를 블록체인 네트워크(50)에 제공하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 기초하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보가 블록체인 네트워크(50)가 생성하는 블록(61)에 기록되고 블록(61)이 공유되는 단계를 포함할 수 있다.
먼저 관리자는 복합 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)의 관리자용 스마트 컨트랙트에 전달된다.
관리자용 dApp(41)은 네트워크의 관리자용 스마트 컨트랙트를 호출하여 입력받은 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 제공한다. 관리자용 dApp(41)은 Restful API를 이용하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다.
관리자용 스마트 컨트랙트는 공유자원(10) 정보관리 기능을 수행하여 공유자원(10)을 사용자가 이용가능하도록 블록체인 네트워크(50) 상에 등록한다. 관리자용 스마트 컨트랙트는 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 블록(61)의 저장공간에 테이블 형식으로 저장하도록 블록체인 네트워크(50)를 구성하는 노드(51)들에 공유할 수 있다. 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보는 검증 및 합의과정을 통해 블록(61)에 저장된다.
이용권한 획득단계(S20)는, 사용자 단말(32)이 사용자용 dApp(42)을 통해 블록체인 네트워크(50)에 분산 저장된 블록체인(60)에 기록된 공유자원(10)의 검색을 요청하면, 사용자용 dApp(42)이 블록체인(60)에 기록된 공유자원(10)을 검색하여 제공가능한 공유자원(10)의 목록을 사용자 단말(32)로 제공하는 단계, 사용자 단말(32)이 제공가능한 공유자원(10)의 목록 중에서 공유자원(10)을 선택하여 이용권한 획득을 요청하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트는 요청된 공유자원(10)의 이용가능여부를 판단하고 이용가능한 경우 사용자 단말(32)에 이용권한을 부여하였음을 블록체인(60)에 기록하는 단계를 포함할 수 있다.
사용자는 공유자원(10)을 이용하기 위하여 먼저 이용권한을 획득하여야 한다. 사용자는 사용자 단말(32)에서 사용자용 dApp(42)을 실행하거나 사용자용 dApp(42)에 접속하여 블록체인 네트워크(50)에 등록된 공유자원(10)의 검색을 요청할 수 있다. dApp은 공유자원(10)의 종류, 위치, 사용기간, 대여비용 등의 조건을 선택하여 공유자원(10)을 검색할 수 있는 인터페이스를 제공할 수 있다. dApp은 사용자 단말(32)로부터 수신한 검색조건에 기초하여 블록체인 네트워크(50)를 구성하는 임의의 노드(51)에 검색을 요청할 수 있다. 복수의 노드(51)들 각각은 동일한 블록체인(60)을 저장하고 있으므로, 사용자용 dApp(42)에 의해 요청된 검색을 수행하고 결과를 회신할 수 있다. 사용자 단말(32)은 임의의 노드(51)에서 검색을 수행한 결과를 사용자용 dApp(42)을 통해 전달받을 수 있다. 사용자 단말(32)은 수신한 검색결과를 사용자에게 표시한다.
사용자는 검색결과로 제공된 공유자원(10) 목록에서 공유자원(10)을 선택하고 공유자원(10)의 이용권한 획득을 요청할 수 있다. 사용자 단말(32)은 사용자용 dApp(42)을 통해 사용자가 선택한 공유자원(10)의 이용권한 획득을 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 요청할 수 있다.
관리자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신한 공유자원(10)의 이용권한 획득요청을 수신하면, 공유자원(10)의 이용가능 여부를 판단한다. 공유자원(10)의 이용가능 여부는 공유자원(10)의 이용권한 획득요청에 포함된 조건들에 기초하여 판단될 수 있다. 사용자가 요청한 시간에 이미 예약되어 있는 다른 사용자가 존재하는지 여부를 판단하고, 사용자가 블랙리스트에 등록되어 있어서 이용권한을 획득할 자격이 없는 사람인지 판단할 수 있다. 관리자용 스마트 컨트랙트는 요청된 공유자원(10)이 이용가능한 경우 이용권한을 요청한 사용자 단말(32)에 이용권한을 부여함을 블록체인(60)에 기록한다. 관리자용 스마트 컨트랙트는 요청된 시간에 해당 사용자 단말(32)에 이용권한이 존재한다는 내용을 블록체인 네트워크(50)에 공유하고, 블록체인 네트워크(50)는 검증 및 합의를 통해 블록(61)에 이용권한이 부여되었음을 저장한다. 관리자용 스마트 컨트랙트는 이용권한이 부여되었음을 사용자 dApp을 통해 사용자 단말(32)에 제공할 수 있다.
사용자 단말(32)이 이용권한을 획득하면, 사용자는 사용자 단말(32)을 통해 복합 IoT 모듈의 잠금을 개방하고 공유자원(10)의 이용을 시작할 수 있다. 이용 시작단계(S30)는 사용자 단말(32)이 사용자용 dApp(42)을 통하여 블록체인 네트워크(50)에 이용권한에 기초한 상기 복합 IoT 디바이스(20)의 잠금 개방을 요청하는 단계, 복합 IoT 디바이스(20)가 사용자 단말(32)이 정해진 거리 이내에 위치하는지 판단하는 단계, 복합 IoT 디바이스(20)와 사용자 단말(32)이 정해진 거리 이내에 위치하는 경우, 복합 IoT 디바이스(20)와 상기 사용자 단말(32)이 각각 상기 블록체인 네트워크(50)에 일회용 인증 프로토콜의 실행을 요청하는 단계, 블록체인 네트워크(50)는 일회용 인증 프로토콜에 따라, 일회용 키를 생성하여 상기 복합 IoT 디바이스(20)와 상기 사용자 단말(32)에 각각 전달하는 단계, 및 상기 복합 IoT 디바이스(20)가 수신한 상기 일회용 키와 상기 사용자 단말(32)로부터 수신한 상기 일회용 키가 일치하는 경우 상기 사용자 단말(32)에 이용권한이 있는 것으로 판단하여 잠금을 개방하는 단계를 포함할 수 있다.
사용자는 사용자 단말(32)을 통해 이용권한을 획득한 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 잠금 개방을 요청할 수 있다. 사용자 단말(32)은 복합 IoT 디바이스(20)에 직접 또는 dApp이나 블록체인 네트워크(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)가 근접 여부 판단을 수행할 수 있게 한다.
사용자 단말(32)이 복합 IoT 디바이스(20)에 정해진 거리 이내에 위치하는 것으로 판단되는 경우, 복합 IoT 디바이스(20)는 사용자 단말(32)에 근접 여부 판단을 통과하였다는 신호를 제공할 수 있다. 근접 여부 판단을 통과한 경우, 복합 IoT 디바이스(20)와 사용자 단말(32)은 블록체인 네트워크(50)에 일회용 인증 프로토콜의 실행을 요청할 수 있다. 복합 IoT 디바이스(20)와 사용자 단말(32)로부터 수신되는 일회용 인증 프로토콜의 실행 요청이 일치하는 경우 블록체인 네트워크(50)는 일회용 인증 프로토콜을 실행한다.
일회용 인증 프로토콜은 블록체인(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)을 이용할 수 있다.
게이트웨이모듈(27)은 사용자가 공유자원(10)을 이용하는 과정에서 공유자원(10)의 상태를 모니터링할 수 있다. 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 잠금모듈(21)이 개방되면 게이트웨이모듈(27)은 공유자원(10)인 공간에 사람이 들어오고 나가는지 여부를 센싱할 수 있다. 게이트웨이모듈(27)은 정해진 주기마다 또는 잠금모듈(21)이 개방되면 지속적으로 공유자원(10)의 이용상태를 센싱할 수 있다. 게이트웨이모듈(27)은 공유자원(10)의 이용상태를 복합 IoT 디바이스(20)에 전송할 수 있다.
관리자 단말(31)은 관리자용 dApp(41)을 통해 공유자원(10) 접근관리기능을 수행할 수 있다. 관리자 단말(31)은 공유자원(10)에 이용을 신청한 사용자들에 관한 정보, 공유자원(10)의 이용상태에 관한 정보, 공유자원(10)의 이용기록 및 예약 기록 등을 모니터링할 수 있다. 관리자용 dApp(41)은 관리자용 스마트 컨트랙트에 공유자원(10)의 현재 상태 모니터링을 요청할 수 있으며 관리자용 스마트 컨트랙트는 복합 IoT 디바이스(20)로부터 게이트웨이모듈(27)이 제공한 공유자원(10)의 이용상태를 수신하여 관리자용 dApp(41)을 통해 관리자 단말(31)에 제공할 수 있다.
사용자는 이용권한에 기초한 사용시간이 종료되는 경우 공유자원(10)의 이용을 중지한다. 복합 IoT 디바이스(20)는 이용권한에 기초한 사용시간이 종료되는 경우 게이트웨이모듈(27)로부터 공유자원(10)의 이용상태에 관한 정보를 수신하여 잠금모듈(21)을 동작시켜 사용자와 공유자원(10)을 차단해도 되는지 판단한다. 예를 들어, 공유자원(10)이 회의실이나 숙박시설과 같은 공간인 경우, 게이트웨이모듈(27)은 공유자원(10)인 공간 안에 사용자가 존재하는지 센싱할 수 있고, 공유자원(10)인 공간 안에 사용자가 존재하지 않게 되었을 때 복합 IoT 디바이스(20)는 잠금모듈(21)이 잠궈지도록 제어하는 이용 종료단계(S40)를 수행할 수 있다.
복합 IoT 디바이스(20)가 잠금모듈(21)을 잠그도록 제어하여 사용자의 이용이 종료되면, 복합 IoT 디바이스(20)는 블록체인 네트워크(50)에 사용종료 사실을 전송한다. 공유서비스 사용이 종료되면 서비스 이용내역이 블록체인 네트워크(50)에 전달된다. 사용자의 서비스 이용내역은 블록체인(60) 또는 분산형 데이터베이스(70)에 저장될 수 있다.
본 발명의 일실시예에 따른 공유서비스 연계 토탈서비스 추천 방법은, 공유자원(10)에 결합되어 서비스의 이용을 허용하거나 차단하는 복합 IoT 디바이스(20), 관리자 단말(31) 또는 사용자 단말(32)로부터 서비스 이용기록을 블록체인 네트워크(50)를 통해 수신하여 저장하는 서비스정보 수집단계(S50), 및 서비스 이용기록에 기초하여, 서비스를 추천받는 사용자와 서비스 이용패턴이 유사한 다른 사용자가 이용한 서비스를 추천하는 큐레이션단계(S60)를 포함할 수 있다.
서비스정보 수집단계(S50)는 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32)이 서비스 이용기록을 블록체인 네트워크(50)로 전송하는 이용기록 전송단계(S51), 서비스 이용기록에 포함된 개인정보를 저장하기 전에 비식별화하는 비식별화 단계(S52), 및 서비스 이용기록을 분산형 데이터베이스(70)에 저장하고 서비스 이용기록의 저장과정을 블록체인 네트워크(50)에 저장하는 저장단계(S53)를 포함할 수 있다.
이용기록 전송단계(S51)는 공유자원(10)을 이용한 서비스 제공에 관련된 정보를 수집하는 단계이다. 서비스 이용기록은 서비스의 종류, 위치, 비용, 이용 시작 및 종료시간, 사용자의 선호 또는 비선호 점수, 사용자의 서비스 리뷰, 등을 포함할 수 있다. 블록체인 네트워크(50)는 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32)로부터 서비스 이용기록을 수집할 수 있다.
서비스정보 수집단계(S50)는 블록체인 네트워크(50)가 상기 복합 IoT 디바이스(20)가 제공하는 서비스 이용기록과 사용자 단말(32)이 제공하는 서비스 이용기록을 비교하여 일치하는 경우 수집된 서비스 이용기록을 저장하고 일치하지 않는 경우 저장하지 않을 수 있다. 정상적으로 서비스의 이용이 시작되고 종료되면 복합 IoT 디바이스(20)와 사용자 단말(32)이 동일한 서비스 이용기록을 갖게 되며, 양쪽에서 수신하는 서비스 이용기록이 일치하는 경우 위변조되지 않은 정상적인 데이터를 수신한 것이므로 수신 데이터를 신뢰할 수 있다.
서비스 이용기록이 수신되면 서비스 이용기록에 포함된 개인정보를 비식별화한다(S52). 서비스 이용기록에 포함된 개인정보의 비식별화는 익명화, 범주화, 총계처리 등의 비식별화 알고리즘을 통해 수행될 수 있다. 익명화는 데이터에 포함된 사람의 성명을 인식할 수 없도록 일부나 전부를 변형하거나 제거하는 것이다. 예를 들어, "홍길동"이라는 이름을 "홍*동"으로 일부를 변형하거나, "고객 1"과 같이 전부를 변형할 수 있다. 총계처리는 특정 항목의 값이 복수개 존재하는 경우 총액을 계산하는 것이다. 예를 들어, "홍*동"의 거래 횟수가 "20회/40회/10회"인 경우 총 거래 횟수가 "70회"인 것으로 집계할 수 있다. 범주화는 특정 값이 포함되는 범위에 따라 집계하는 것이다. 예를 들어, "홍*동"의 거래 횟수가 "13회"인 경우 미리 "10~20회"로 집계할 수 있다.
서비스 이용기록의 비식별화가 수행되면 서비스 이용기록을 저장하는 저장단계(S53)를 수행한다. 서비스 이용기록은 블록체인 네트워크(50)의 노드(51)에 저장되는 볼록체인에 저장되거나, 블록체인 네트워크(50)를 통해 분산형 데이터베이스(70)에 저장될 수 있다. 블록체인 네트워크(50)를 통해 수집되는 서비스 이용기록은 다수의 사용자가 다양한 종류의 서비스를 이용한 기록을 포함할 수 있으므로, 다양한 서비스에 관한 다양한 사용기록을 수집할 수 있다. 서비스정보 수집단계(S50)는 공유서비스가 수행되는 동안 지속적으로 반복 수행되어 서비스 사용기록을 계속 수집할 수 있다.
매칭서버(80)는 다수의 서비스 사용기록을 수집한 빅데이터에 기초하여 큐레이션단계(S60)를 수행할 수 있다. 매칭서버(80)는 분산형 데이터베이스(70)에 저장된 서비스 사용기록을 읽어들여 분석할 수 있다. 큐레이션단계(S60)는 사용자가 사용자용 dApp(42)을 실행하거나, 사용자 단말이 추천을 요청하거나, 공유서비스의 이용을 종료한 경우에 실행되어 사용자에게 토탈서비스를 추천할 수 있다. 큐레이션단계(S60)는 사용자의 과거 서비스 이용기록을 분석하여 사용자의 서비스 이용패턴을 분석하는 패턴분석단계(S61), 다른 사용자의 과거 서비스 이용기록에 기초하여 분석된 다른 사용자의 서비스 이용패턴과 사용자의 서비스 이용패턴을 비교하여, 유사한 패턴을 갖는 다른 사용자를 식별하는 패턴비교단계(S62), 및 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들 중에서 사용자 단말(32)로부터 수신하는 사용자의 현재상태와 관련된 서비스를 추천하는 상태기반 추천단계(S63)를 포함할 수 있다.
패턴분석단계(S61)는 수집된 서비스 사용기록을 분석하여 사용자의 서비스 이용패턴을 분석한다. 패턴분석단계(S61)는 각각의 사용자마다 수행되어 사용자가 이용한 서비스들을 다양한 기준과 방법으로 분석하여 패턴을 인식할 수 있다. 패턴분석단계(S61)를 수행하면 사용자마다 공유서비스를 이용하는 패턴이 생성된다. 패턴분석단계(S61)에서 사용자의 과거 서비스 이용기록을 패턴화하는 방법으로는, 서비스 이용기록의 데이터를 산점도화하거나, 수형도 또는 다차원좌표화하거나 특성벡터화 하는 등의 방법을 이용할 수 있다. 사용자의 서비스 이용패턴을 패턴화하는 방식은 패턴을 비교하는 패턴비교단계(S62)에서 패턴을 비교할 때 이용되는 알고리즘에 따라 다른 패턴화 방법을 선택할 수 있다.
패턴비교단계(S62)는 서비스를 추천받을 사용자의 과거 서비스 이용패턴과 다른 사용자의 서비스 이용패턴을 비교하는 과정이다. 패턴비교단계(S62)를 수행하면 서비스를 추천받을 사용자와 유사한 이용패턴을 갖는 다른 사용자를 식별할 수 있다. 과거 서비스 이용패턴이 유사한 사용자들은 유사한 취향을 갖는 것이므로, 유사한 이용패턴을 갖는 다른 사용자의 서비스를 추천하는 경우 만족도 높은 토탈서비스를 제공할 수 있다. 패턴비교단계(S62)는 행렬분해(Matrix Factorization), k-최근접 이웃 알고리즘 (k-Nearest Neighbor algorithm; kNN), 군집분석(Clustering analysis), 인공신경망(Artificial neural network), 딥러닝 (Deep Learning) 등의 알고리즘을 이용할 수 있다.
서비스 이용패턴을 비교하여 유사한 패턴을 갖는 다른 사용자를 식별한 다음에는, 다른 사용자들이 이용한 서비스들 중에서 추천할 서비스를 선정할 수 있다. 다른 사용자들이 이용한 서비스들 중에서 추천할 서비스를 선정하여 추천하는 단계는, 사용자의 현재상태에 기초하여 알맞는 서비스를 추천하는 상태기반 추천단계(S63), 다른 사용자들의 선호가 높은 순서대로 서비스를 추천하는 선호기반 추천단계(S64), 다른 사용자들의 비선호가 존재하는 서비스의 긍정적인 부분을 분석하여 특색 서비스로서 추천하는 비선호기반 추천단계(S65)를 포함할 수 있다. 상태기반 추천단계(S63)는 선호기반 추천단계(S64) 또는 비선호기반 추천단계(S65)와 함께 수행되어, 선호기반 추천단계(S64) 또는 비선호기반 추천단계(S65)가 수행되어 추출된 서비스들을 대상으로 상태기반 추천단계(S63)를 더 수행할 수도 있다.
도 6은 본 발명의 일실시예에 따른 상태기반 추천단계(S63)를 나타내는 도면이다.
도 6의 도시된 바와 같이, 상태기반 추천단계(S63)는 유사한 이용패턴의 다른 사용자가 과거에 이용한 서비스들 중에서 사용자의 현재상태에 알맞는 서비스를 추천할 수 있다. 사용자의 현재상태는 사용자 단말(32)이 인식하여 블록체인 네트워크(50)를 통해 매칭서버(80)로 제공될 수 있다. 사용자의 현재상태는 현재위치, 현재시간, 생체신호, 동행자정보, 날씨정보, 검색정보 등 사용자에 관련된 다양한 정보를 포함할 수 있다. 상태기반 추천단계(S63)에서, 사용자의 현재상태에 기초하여 추천시 이용가능성을 먼저 판단할 수 있다(S63a). 예를 들어, 현재시간에 또는 사용자가 선택한 시간에 이용가능한지 여부를 기준으로 다른 사용자가 이용한 10개의 서비스들 중에서 이용가능한 4개의 서비스를 추출할 수 있다. 서비스의 종류에 따라 우천시에는 이용 불가능할 수 있으므로 날씨정보를 기준으로 이용가능성을 판단할 수도 있다. 다음으로, 사용자의 현재상태에 기초하여 접근가능성이 높은 순서대로 이용가능한 서비스들을 나열하여 접근성이 좋은 순서대로 서비스를 추천할 수 있다(S63b). 예를 들어, 사용자의 현재위치와 가까운 서비스를 추출하여 가까운 순서대로 사용자에게 추천할 수 있다.
도 7은 본 발명의 일실시예에 따른 선호기반 추천단계(S64)를 나타내는 도면이다.
큐레이션단계(S60)는 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들을 선호 점수가 높은 순서대로 추천하는 선호기반 추천단계(S64)를 더 포함할 수 있다. 도 7의 도시된 바와 같이, 선호기반 추천단계(S64)는 다른 사용자가 선호하는 서비스를 추천할 수 있다. 선호기반 추천단계(S64)를 수행하기 위하여, 서비스 이용기록은 공유자원(10)을 이용하여 제공되는 서비스를 이용한 내역 및 사용자가 서비스의 만족도를 선호부터 비선호까지 점수로 입력한 선호도 정보를 포함할 수 있다.
사용자는 자신이 이용한 서비스에 관하여 선호 또는 비선호를 사용자 단말(32)을 통하여 입력할 수 있고, 선호와 비선호의 강도를 점수로 입력할 수 있다. 서비스 이용기록에 포함된 서비스에 대한 선호 또는 비선호를 도면으로 나타내면 도 7과 같이 도시할 수 있다. 유사한 이용패턴을 갖는 다른 사용자가 선호하는 서비스는 서비스를 추천받을 사용자도 선호할 가능성이 높으므로, 선호 점수가 높은 순서대로 서비스를 추천하면 사용자의 취향에 적합한 서비스를 제공할 수 있다. 서비스를 추천받는 사용자는 다른 사용자가 선호하는 순서대로 나열된 서비스 목록을 제공받을 수 있다.
도 8은 본 발명의 일실시예에 따른 비선호기반 추천단계(S65)를 나타내는 도면이다.
도 8에 도시된 바와 같이, 비선호기반 추천단계(S65)는 사용자에게 특색 서비스를 제공할 수 있다. 선호 기반으로만 서비스를 추천하는 경우 다양한 서비스가 추천되지 못하고 특정 몇몇 서비스에만 추천이 쏠리는 문제가 발생할 수 있다. 예를 들면, 공유자원(10)이 블록체인 네트워크(50)에 제공되는 시점이 빠를수록 선호 점수가 누적될 가능성이 높고, 그에 따라 먼저 등록된 서비스가 계속 추천되는 추천 쏠림 현상이 발생할 수 있다.
사용자가 서비스를 평가함에 있어서, 비선호 점수를 입력하는 이유는 다양하게 존재한다. 서비스를 평가하는 항목은 음식의 맛, 고객 응대의 친절도, 편안함, 등의 다양한 기준이 존재할 수 있고, 사용자의 성향에 따라 동일한 서비스의 평가가 상이할 수 있다. 따라서 특정 사용자가 비선호 점수를 입력하였다고 하여, 다른 사용자가 동일한 서비스를 만족하지 않는다고 예상할 수는 없다. 따라서 비선호 점수를 받은 서비스라도 다른 사용자에게 좋은 평가를 받을 수 있으므로 추천할 수 있다. 다만 비선호 점수를 받은 경우라도 다른 사용자가 만족할 수 있는 요소가 필요하므로 서비스에 긍정적인 요소가 존재하는지 여부를 판단할 필요가 있다.
비선호기반 추천단계(S65)는 비선호 점수를 받은 서비스에 관한 리뷰를 분석한다. 도 8에 도시된 바와 같이, 비선호기반 추천단계(S65)는 서비스들 중에서 비선호 점수가 존재하는 서비스를 분류하고 서비스에 관련된 리뷰를 분석한다. 예를 들면, 서비스들 중에서 비선호 점수가 존재하는 서비스 3을 선택하고, 서비스 3에 존재하는 리뷰들을 분석한다. 복수의 리뷰들의 내용을 분석하면 사용자가 해당 서비스에 갖는 긍정반응을 인식할 수 있다. 인식된 긍정반응을 분석하여 어떤 평가항목에 관한 것인지 인식할 수 있다. 예를 들어, 서비스 3에 비선호 점수가 존재하지만 리뷰들 중에서 리뷰 2를 분석한 결과 고객 응대가 친절하지 않았다는 부정적 반응과, 새로운 종류의 음식을 경험할 수 있다는 긍적정 반응을 인식할 수 있다. 이러한 경우 음식의 종류라는 항목에서 긍정반응이 인식된 경우 특색 서비스로서 음식 종류의 새로움이라는 긍정적 정보와 함께 서비스 3을 특색 서비스로 제공할 수 있다.
분석대상 리뷰는 이용패턴이 유사한 사용자가 남긴 리뷰에 한정하지 않고, 서비스에 남겨진 모든 리뷰를 대상으로 분석한다. 이용패턴이 유사한 사용자들이 남긴 리뷰들만을 대상으로 분석한다면, 사용자들이 유사한 기준으로 평가할 가능성이 높기 때문에 같은 서비스를 새로운 시각으로 평가하는 리뷰가 존재하기 힘들고, 특정 유형의 사람들에게는 특정 유형의 서비스만 추천되는 문제가 발생한다. 비선호기반 추천단계(S65)는 사용자가 새로운 특성의 서비스를 추천받을 수 있는 점에서 이점이 있는 것이므로, 분석대상 리뷰의 범위를 모든 사용자들이 남긴 리뷰로 하여 성향이 다른 사람들의 리뷰에 근거하여 긍정반응을 분석하면 새로운 서비스를 추천할 수 있는 것이다.
도 9는 본 발명의 일실시예에 따른 순차패턴 인식 및 순차패턴 비교과정을 나타내는 도면이다.
본 발명의 일실시예에서 패턴분석단계(S61) 및 패턴비교단계(S62)는 서비스 사용 순서를 기준으로 수행될 수 있다. 패턴분석단계(S61)는 사용자의 과거 서비스 이용기록에 기초하여, 정해진 기간 범위 내에서 다양한 종류의 서비스를 시간순서대로 이용한 순차패턴을 인식하고, 패턴비교단계(S62)는 순차패턴을 비교함에 있어서, 정해진 기간 범위 내에서 서비스를 추천받는 사용자가 가장 처음에 이용한 서비스부터 최근에 이용한 서비스까지의 순차패턴을 비교하여 유사한 패턴을 갖는 다른 사용자를 식별할 수 있다.
정해진 기간 범위는 1일 또는 일주일 등으로 결정될 수 있고, 서비스를 추천받을 사용자가 설정하는 기간으로 결정될 수 있다. 예를 들어, 서비스를 추천받을 사용자가 1일 단위로 기간을 결정하는 경우, 사용자의 과거 서비스 사용기록을 1일 단위로 패턴을 분석할 수 있고, 다른 사용자의 과거 서비스 사용기록도 1일 단위로 패턴을 분석할 수 있다.
순차패턴은 서비스를 이용한 순서에 관한 서비스 이용패턴이다. 순차패턴은 서비스의 종류를 기준으로 생성될 수 있다. 예를 들어, 1일 범위에서 사용자가 이용한 서비스를 시간순서대로 나열하면, 서비스 1(교통), 서비스 2(관광), 서비스 3(음식), 서비스 4(관광), 서비스 5(교통), 서비스 4(금융) ... 서비스 No.(숙박) 등일 수 있다. 본 명세서에서 'No.'는 서비스를 구분하기 위한 임의의 일련번호이다.
패턴분석단계(S61)에서, 서비스를 추천받을 사용자의 과거 서비스 이용기록에서 순차패턴을 분석하고, 다른 사용자의 과거 서비스 이용기록에서 순차패턴을 분석한다. 패턴이 분석되면 패턴비교단계(S62)를 수행한다. 패턴비교단계(S62)에서 서비스를 추천받을 사용자의 순차패턴과 다른 사용자들의 순차패턴을 비교한다. 이때, 사용자의 가장 최근 순차패턴과 일치하거나 정해진 범위에서 유사한 순차패턴을 갖는 다른 사용자를 식별할 수 있다. 예를 들어, 현재 서비스를 추천받을 사용자가 서비스 1, 서비스 2를 이용한 상태라면 순차패턴에서 서비스 3은 존재하지 않으므로 순차패턴은 서비스 1과 2만으로 생성된다. 이때 서비스 1과 서비스 2만으로 생성된 순차패턴과 다른 사용자들의 순차패턴에서 서비스 1과 서비스 2를 비교하여 유사한 패턴을 갖는 다른 사용자를 식별할 수 있다.
정해진 범위에서 서비스를 추천받을 사용자가 현재까지 이용한 서비스에 기초하여 유사한 패턴을 갖는 다른 사용자를 식별하면, 다른 사용자의 순차패턴에서 다음 순서에 해당하는 서비스들 중에서 서비스를 추천할 수 있다. 서비스 1과 2에 기초한 순차패턴이 유사한 사용자들이라도 다음 순서에 해당하는 서비스 3은 다양하다. 따라서 다양한 종류의 서비스 3들 중에서 상술한 상태기반 추천단계(S63), 선호기반 추천단계(S64), 비선호기반 추천단계(S65)를 수행할 수 있다.
서비스를 추천받을 사용자와 순차패턴이 유사한 다른 사용자들이 이용한 서비스들에 기초하여, 상태기반 추천단계(S63)를 수행할 수 있다. 이때, 상태기반 추천단계(S63)에서 사용자의 다양한 현재 상태를 고려할 수 있다. 사용자와 함께 서비스를 이용할 동행자가 존재하는지 여부, 사용자의 신체 상태(생체 신호, 운동량, 피로도 등), 사용자가 위치하는 지역과 서비스가 제공되는 지역의 날씨나 기온과 같은 기상상태, 사용자의 과거 선호도 정보 등이 현재 상태로 고려될 수 있다.
상술한 본 발명의 일실시예에 따르면, 사용자가 서비스 또는 상품을 이용한 기록에 기초하여 사용자가 선호할 것으로 예상되는 다른 종류의 다양한 서비스 또는 상품을 추천할 수 있으므로, 사용자가 다양한 서비스 및 상품에 관한 정보를 제공받을 수 있다.
또한, 공유서비스를 제공하고 토탈서비스를 추천하는 과정을 블록체인 네트워크(50)를 이용한 플랫폼을 통해 제공하여, 서비스를 제공하는 사람과 이용하는 사람이 자유롭게 시장에 진입할 수 있으므로 공유경제를 활성화할 수 있다.
도 10은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법이 수행되는 환경을 나타내는 도면이다.
본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 다양한 공유자원(10)을 누구나 공유대상으로 제공하고 이용할 수 있도록 블록체인 네트워크(50)에 기반하여 제공되는 '복합 IoT 디바이스를 이용한 공유서비스 제공방법'과 연계되어 수행될 수 있다.
관리자가 복합 IoT 디바이스(20)를 다양한 종류의 공유자원(10)에 결합하고 공유자원(10)에 관한 정보와 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 등록함으로써 공유자원(10)을 공유서비스에 제공하면, 사용자는 블록체인 네트워크(50)를 통해 공유자원(10)의 이용권한을 획득하고 이용권한에 기초하여 복합 IoT 디바이스(20)의 잠금을 개방하여 공유자원(10)을 이용할 수 있다. 본 발명의 일실시예에서 공유서비스 또는 서비스는, 공유자원(10)을 공유하는 서비스 뿐만 아니라, 공유자원(10)을 이용하여 물건을 판매하거나 다양한 종류의 서비스를 제공하거나 공유자원(10) 자체를 매매하는 서비스도 포함할 수 있다.
다양한 종류의 공유자원(10)을 이용하여 서비스를 제공하는 과정에서, 공유자원(10)의 특성이나 서비스의 특성에 따라 서비스를 제공하는 세부 단계의 변경이 필요할 수 있다. 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 서비스를 제공하는 과정을 블록체인 네트워크(50)에서 구현하는 스마트 컨트랙트를 사용자 피드백에 기초하여 수정할 수 있기 때문에, 새로운 종류의 공유자원(10)을 이용해야 하거나 새로운 종류의 서비스를 제공하기 알맞은 스마트 컨트랙트를 제공할 수 있다.
이하에서 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법을 제공하는 환경에 대하여 설명한다.
도 10에 도시된 바와 같이, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50), 분산형 데이터베이스(70), 시나리오 관리서버(90)를 이용하여 수행될 수 있다.
블록체인 네트워크(50)는 복수의 노드(51)가 피어 투 피어(P2P, Peer to Peer) 방식으로 연결된 네트워크이다. 블록체인 네트워크(50)는 복수의 노드(51)들 사이의 정보처리와 각 노드(51)의 정보처리에 기초하여 지능형 스마트 컨트랙트 제공방법을 수행할 수 있다. 블록체인 네트워크(50)는 공유자원(10)을 이용하는 서비스를 제공하고, 지능형 스마트 컨트랙트 제공방법을 수행하기 위한 기능의 적어도 일부를 수행하는 복수의 노드(51)로 구성될 수 있다.
노드(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)를 포함할 수 있다.
블록체인(60)은 이전 블록(61)의 해시값을 자기 블록(61)의 구성으로 포함하는 블록(61)들의 연속적인 연결로 구성될 수 있다. 블록(61)은 이전 블록(61)의 해시값 및 저장공간을 포함한다. 블록체인(60)은 블록체인 네트워크(50)를 구성하는 복수의 노드(51)에 각각 저장되고, 복수의 노드(51)에 저장된 블록체인(60)들은 서로 동일한 데이터를 갖는다. 블록(61)의 저장공간에는 공유자원(10)에 관한 정보, 복합 IoT 디바이스(20)에 관한 정보, 관리자에 관한 정보, 사용자에 관한 정보, 공유자원(10)을 이용한 서비스 이용기록, 편집된 시나리오(SN) 등이 저장될 수 있거나, 이러한 정보들은 분산형 데이터베이스(70)에 저장하고 저장내역을 블록(61)의 저장공간에 저장할 수 있다.
관리자 단말(31) 및 사용자 단말(32)은 블록체인 네트워크(50)에 접속하여 데이터를 송수신할 수 있는 정보처리장치이다. 관리자 단말(31) 및 사용자 단말(32)은 스마트폰, 노트북 PC, 태블릿 PC, 웨어러블 컴퓨터 등의 휴대용 전자기기를 포함할 수 있다. 관리자 단말(31) 및 사용자 단말(32)은 dApp을 통하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다.
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은 관리자 단말(31) 및 사용자 단말(32)로부터 수신한 데이터나 명령을 블록체인 네트워크(50)에 존재하는 스마트 컨트랙트에 전달한다. 블록체인 네트워크(50)에서 구동되는 스마트 컨트랙트는 관리자용 스마트 컨트랙트 및 사용자용 스마트 컨트랙트를 포함한다. 관리자용 스마트 컨트랙트는 관리자용 dApp(41)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다. 사용자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신하는 데이터 및 명령에 기초하여 동작할 수 있다.
도 11은 본 발명의 일실시에에 따른 복합 IoT 디바이스(20)를 나타내는 도면이다.
도 11에 도시된 바와 같이, 복합 IoT 디바이스(20)는 다양한 종류의 공유자원(10)에 결합되어 물리적 또는 전기적으로 공유자원(10)을 개폐하는 잠금모듈(21), 사용자 단말(32) 또는 블록체인 네트워크(50)와 데이터를 송수신하는 통신모듈(22), 및 사용자 단말(32)이 공유자원(10)의 이용권한을 갖는지 여부를 상기 블록체인 네트워크(50)로부터 수신하는 키에 기초하여 판단하고, 잠금모듈(21)을 개폐하도록 제어하는 컨트롤러모듈(23)을 포함할 수 있다.
또한, 복합 IoT 디바이스(20)는 사용자 또는 관리자에게 정보를 시각적 또는 청각적으로 제공할 수 있는 표시모듈(25), 사용자 또는 관리자의 터치 등을 입력받을 수 있는 입력모듈(24), 복합 IoT 디바이스(20)의 구성들에게 전원을 공급하는 배터리 등의 전원모듈(26)을 포함할 수 있다.
잠금모듈(21)은 컨트롤러모듈(23)의 제어에 따라 개폐될 수 있다. 잠금모듈(21)은 공유대상에 물리적으로 결합되어 공유대상을 이용할 때 필요한 공유대상의 일부 구성에 사용자가 접근하는 것을 물리적으로 또는 전기적으로 차단할 수 있다. 예를 들어, 공유대상이 회의실이나 숙박시설인 경우 잠금모듈(21)은 문의 도어락이나 자물쇠에 물리적으로 결합되어 사용자가 문을 임의로 개방할 수 없도록 차단할 수 있다. 또는, 공유대상이 전자기기일 때 잠금모듈(21)은 전자기기의 입력장치나 출력장치에 결합되어 사용자가 전자기기의 전부 또는 일부를 사용할 수 없도록 물리적 또는 전기적인 제한을 수행할 수 있다. 또는, 잠금모듈(21)은 거래시의 결제서비스를 제공하는 카드리더기 또는 POS 시스템에 결합되어 사용자가 이용권한에 기초하여 결제서비스를 수행하도록 제한할 수 있다. 또는, 잠금모듈(21)은 도어락이나 자물쇠 등에 일체로 형성될 수 있다. 잠금모듈(21)은 다양한 공유대상에 결합될 수 있다.
통신모듈(22)은 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)와 데이터를 송수신할 수 있다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 근거리 통신방식을 이용할 수 있다. 통신모듈(22)은 GPS 정보를 이용하여 자신의 위치를 인식할 수도 있다.
컨트롤러모듈(23)은 잠금모듈(21)의 개폐를 제어할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용을 요청한 사용자 단말(32)의 이용권한을 확인할 수 있다. 컨트롤러모듈(23)은 일회용 인증 프로토콜에 따라 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키를 비교하여 사용자 단말(32)의 이용권한을 확인할 수 있다. 블록체인 네트워크(50)로부터 수신되는 키와 사용자 단말(32)이 통신모듈(22)을 통해 전송하는 키가 일치하는 경우 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)의 이용권한의 존재가 확인되면 잠금모듈(21)을 개방하도록 제어한다. 컨트롤러모듈(23)은 정해진 사용기간이 경과하거나, 필요한 조건이 만족되는 경우 잠금모듈(21)을 잠그도록 제어할 수 있다.
컨트롤러모듈(23)은 통신모듈(22)과 사용자 단말(32) 사이의 근거리 통신 또는 GPS 정보를 이용하여 사용자 단말(32)이 정해진 거리만큼 접근하여야 이용권한을 갖는지 여부를 판단하는 절차를 시작할 수도 있다. 사용자 단말(32)과 통신모듈(22)이 정해진 거리만큼 접근한 상태에서 잠금이 개방되어야 이용권한이 없는 사람의 이용을 방지할 수 있는 점에서 근접여부 판단은 추가적인 안전장치가 된다. 통신모듈(22)은 Wi-Fi, Bluetooth, NFC 등의 전파 강도에 기초한 거리판단을 수행하거나, 자신의 GPS 좌표와 사용자 단말(32)로부터 수신하는 사용자 단말(32)의 GPS 정보를 비교하여 근접 여부를 판단할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)이 통신모듈(22)과 정해진 거리만큼 접근한 것으로 판단되면, 블록체인 네트워크(50)에 일회용 인증 프로토콜에 기초한 이용권한 확인을 요청할 수 있다.
복합 IoT 디바이스(20)의 잠금모듈(21)은 사용자가 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하여야 공유자원(10)에 미리 설치되어 있는 다른 잠금장치(예를 들어, 도어락)에 접근가능하도록, 잠금장치에 애드온 방식으로 설치될 수 있다. 애드온(add on) 방식이란 공유자원(10)에 설치되어 있는 잠금장치는 그대로 유지하고, 잠금장치에 복합 IoT 디바이스(20)를 추가로 결합하는 것이다. 복합 IoT 디바이스(20)의 잠금모듈(21)은 잠금장치를 개방하기 위해 필요한 키패드, 열쇠구멍, 다이얼 등을 커버하도록 결합되고, 잠금모듈(21)이 개방되면 사용자가 키패드, 열쇠구멍, 다이얼 등에 접근할 수 있는 공간을 오픈하는 방식으로 형성될 수 있다.
컨트롤러모듈(23)은 사용자 또는 관리자가 입력모듈(24)로 입력하는 정보에 기초하여 공유자원(10)의 이용에 필요한 절차를 더 수행할 수 있다. 컨트롤러모듈(23)은 공유자원(10)의 이용권한에 기초하여 잠금모듈(21)을 개방하는 경우, 잠금장치를 개방할 수 있는 키를 상기 사용자 단말(32)로 제공할 수 있다. 컨트롤러모듈(23)은 사용자 단말(32)에 이용권한이 존재하는 것으로 판단되면, 공유자원(10)을 이용하는데 필요한 비밀번호 등의 정보를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다. 예를 들어, 잠금모듈(21)이 도어락에 물리적으로 연결되어 있는 경우, 사용자 단말(32)의 이용권한이 확인되면 컨트롤러모듈(23)은 잠금모듈(21)을 개방하도록 제어하면서, 도어락을 개방하는데 필요한 도어락 비밀번호를 사용자 단말(32)로 제공하거나 표시모듈(25)을 통해 사용자에게 제공할 수 있다.
게이트웨이모듈(27)은 모션센서, 인체감지센서, 적외선센서, 초음파센서, 터치센서 중에서 적어도 하나를 이용하여 공유자원(10)의 이용상태를 감시하여 이용상태정보를 생성하고 상기 컨트롤러모듈(23)에 제공할 수 있다. 게이트웨이모듈(27)은 공유자원(10)을 이용하는 사람이 존재하는지 여부를 감시한다. 게이트웨이모듈(27)은 물리적으로 별도의 디바이스로 형성되고, 공유자원(10)의 이용상태를 감시하기 적합한 위치의 공유자원(10)에 결합될 수 있다.
예를 들어, 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 게이트웨이모듈(27)은 공간에 사람이 존재하는지 여부를 확인할 수 있는 위치에 설치될 수 있다. 이때 게이트웨이모듈(27)은 잠금모듈(21)과 물리적으로 별도의 디바이스로 형성되어, 게이트웨이모듈(27)이 감지한 공유자원(10)의 이용상태는 통신모듈(22)을 통해 컨트롤러모듈(23)에 전달될 수 있다. 컨트롤러모듈(23)은 이용권한에 기초하여 공유자원(10)을 이용하는 사람이 침입자인지 정당한 사용자인지 판단할 수 있다. 컨트롤러모듈(23)은 침입자로 판단되는 경우 관리자 단말(31)에 경보를 제공할 수 있다. 컨트롤러모듈(23)은 이용권한에 기초한 사용시간이 만료되면 게이트웨이모듈(27)로부터 수신한 이용상태에 기초하여 공유자원(10)을 이용하는 사람이 없는지 확인하고, 공유자원(10)을 이용하는 사람이 없는 경우 잠금모듈(21)이 잠궈지도록 제어할 수 있다. 상품을 구매하는 거래 서비스의 경우 공유자원(10)을 일회적으로 이용하는 것이므로 게이트웨이모듈(27)이 불필요할 수 있다.
상술한 바와 같은 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)는 다양한 공유자원(10)에 결합될 수 있고, 공유자원(10)의 이용권한이 존재하는 사용자에게만 잠금모듈(21)을 개방하여 공유자원(10)의 이용을 제공할 수 있다.
도 12는 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 각 단계를 나타내는 도면이다.
도 12에 도시된 바와 같이, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 관리자 단말(31)이 공유자원(10)을 이용한 서비스를 제공하기 위하여 공유자원(10)을 블록체인 네트워크(50)에 등록하고 공유자원(10)을 이용할 서비스에 적용될 시나리오(SN)를 결정하는 공유자원 등록단계(S110), 공유자원(10)을 이용한 서비스를 블록체인 네트워크(50)를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오(SN)에 기초하여 서비스를 제공하는 서비스 제공단계(S120), 사용자 단말(32) 또는 관리자 단말(31)이 시나리오(SN)를 편집하는 피드백을 제공하는 피드백단계(S130), 피드백에 기초하여 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계(S140), 및 인공지능 학습모델이 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계(S150)를 포함할 수 있다.
공유자원 등록단계(S110)는 서비스 제공단계(S120) 이전에 수행될 수 있다. 공유자원 등록단계(S110)는 관리자 단말(31)이 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 제공하고, 서비스를 제공하기 위해 필요한 시나리오(SN)를 결정하는 과정이다. 공유자원(10)을 이용하여 서비스를 제공하기 위해서는 해당 공유자원(10)을 블록체인 네트워크(50)에 등록하는 공유자원 등록단계(S110)를 수행할 필요가 있다.
공유자원 등록단계(S110)는 관리자 단말(31)이 공유자원(10)에 관한 정보, 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)에 제공하는 정보전송단계(S111), 공유자원(10)과 기존에 등록된 다른 공유자원(10)을 비교하여 유사한 경우 기존에 등록된 다른 공유자원(10)을 이용한 서비스에 이용되는 시나리오(SN)를 관리자 단말(31)에 제공하고, 공유자원(10)이 기존에 등록된 다른 공유자원(10)과 다른 새로운 것인 경우 예시적인 시나리오(SN)들을 관리자 단말(31)에 제공하는 예시제공단계(S112), 관리자 단말(31)이 다른 공유자원(10)을 이용한 서비스에 이용되는 시나리오(SN)에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오(SN)들 중에서 사용자가 선택한 하나의 시나리오(SN)와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계(S113)를 포함할 수 있다.
정보전송단계(S111)는 관리자 단말(31)이 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록체인 네트워크(50)로 제공하는 과정이다. 블록체인 네트워크(50)는 관리자 단말(31)로부터 수신한 공유자원(10)에 관한 정보와 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 관한 정보를 블록(61)에 저장할 수 있다.
예시제공단계(S112)는 공유자원(10)을 이용하는 서비스를 제공하기 위하여 필요한 시나리오(SN)를 관리자 단말(31)에게 제공하는 과정이다. 공유자원(10)을 이용하여 서비스를 제공하기 위해서는 정해진 절차에 따라 관리자 단말(31), 사용자 단말(32), 복합 IoT 디바이스(20), 블록체인 네트워크(50)의 협업이 요구된다. 예를 들어, 공유자원(10)이 집인 경우 집을 이용하여 숙박 공유 서비스를 제공할 수 있고, 숙박 공유 서비스를 제공하기 위해서는 예약을 하고, 비용을 지불하며, 사용자를 확인하고, 잠금을 해제하며, 출입을 확인하고, 정해진 기간이 만료되면 잠금을 수행하는 일련의 절차가 필요하다. 이러한 절차 또는 기능을 블록체인 네트워크(50)를 이용하여 제공하기 위하여 스마트 컨트랙트를 이용할 수 있고, 이러한 절차를 수행하기 위하여 복합적으로 조합된 복수의 스마트 컨트랙트와 그 동작순서를 시나리오(SN)라고 할 수 있다.
시나리오(SN)는 블록체인 네트워크(50)를 통해 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 스마트 컨트랙트의 동작순서를 포함할 수 있고, 스마트 컨트랙트는 공유자원(10)을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 조건을 만족하면 수행하는 동작을 포함할 수 있다.
도 13은 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법의 시나리오(SN)를 스마트 컨트랙트와 기능으로 나타내는 도면이다.
도 13에 도시된 바와 같이, 시나리오(SN)를 스마트 컨트랙트의 집합인 계약으로 도시하면, 시나리오(계약)(SN)은 복수의 스마트 컨트랙트를 포함할 수 있고, 복수의 스마트 컨트랙트의 동작순서를 포함할 수 있다. 또한, 시나리오(SN)를 서비스를 제공하기 위해 필요한 기능으로 도시하면, 시나리오(기능)(SN)은 복수의 스마트 컨트랙트가 수행하는 기능들을 포함할 수 있고, 복수의 기능의 동작순서를 포함할 수 있다.
예를 들어, 공유자원(10)을 대여해주는 공유서비스를 제공하는 경우, 시나리오(SN)는 스마트 컨트랙트 1, 2, 3, ... No. (SC-1, SC-2, SC-3, ... SC-No.)가 순서대로 동작하도록 조합될 수 있다. 이때 시나리오(SN)를 따라 복수의 스마트 컨트랙트가 동작하면 공유자원 현재상태 확인기능(SC-1), 이용권한 부여기능(SC-2), 이용 시작 기능(SC-3), ... 이용 종료 기능(SC-No.)이 동작할 수 있다. 공유자원(10)이나 서비스의 특성에 따라 서비스의 제공에 필요한 하나의 기능을 수행하기 위하여 두개 이상의 스마트 컨트랙트가 복합적으로 동작할 수 있다.
다시 도 12를 참조하면, 예시제공단계(S112)에서 블록체인 네트워크(50)는 정보전송단계(S111)에서 수신한 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보 및 서비스의 종류에 따라 알맞은 시나리오(SN)를 관리자 단말(31)에 제공할 수 있다. 등록하려는 공유자원(10)과 기존에 등록된 다른 공유자원(10)을 비교하여 유사하다면 다른 공유자원(10)을 이용하여 제공하는 서비스와 유사한 시나리오(SN)를 따라 서비스가 제공될 것임을 예상할 수 있다. 따라서 블록체인 네트워크(50)는 공유자원(10)이 유사한지 여부를 비교하여 기존에 등록된 다른 공유자원(10)을 이용하여 제공되는 서비스에 이용되는 시나리오(SN)를 하나 이상 선택하여 관리자 단말(31)에 제공할 수 있다.
또는, 예시제공단계(S112)에서 블록체인 네트워크(50)는 등록하려는 공유자원(10)과 기존에 등록된 공유자원(10)을 비교한 결과 유사하지 않고 등록하려는 공유자원(10)이 새로운 종류인 경우 다양한 종류의 서비스에 사용되는 예시적인 시나리오(SN)들을 관리자 단말(31)에 제공할 수 있다. 새로운 종류의 공유자원(10)과 새로운 종류의 서비스를 제공하기 위해서는 새로운 시나리오(SN)가 필요하지만, 완전히 새로운 시나리오(SN)를 처음부터 관리자가 작성하는 것은 어려우므로, 다른 서비스에서 사용되는 시나리오(SN)들 중에서 적당한 시나리오(SN)를 선택하여 편집하여 사용할 수 있도록 예시적인 시나리오(SN)들을 제공하는 것이다.
다음으로, 시나리오 선택단계(S113)에서 관리자 단말(31)은 시나리오(SN)를 수신하면 관리자에게 시나리오(SN)를 표시하고, 관리자가 시나리오(SN)를 선택하고 편집하는 입력을 수신하며, 선택되거나 편집된 시나리오(SN)를 블록체인 네트워크(50)에 제공할 수 있다.
시나리오 선택단계(S113)에서 관리자 단말(31)은 공유자원(10)의 종류가 유사한 다른 공유자원(10)을 이용하는 서비스에 이용되는 시나리오(SN)들을 수신한 경우, 표시된 시나리오(SN)들 중에서 관리자가 임의의 시나리오(SN)를 선택하는 입력을 수신하고, 선택돤 시나리오(SN)를 블록체인(60)에 제공할 수 있다. 또는, 시나리오 선택단계(S113)에서 공유자원(10)이 새로운 종류이거나 서비스가 새로운 종류여서 예시적인 시나리오(SN)들을 수신한 경우, 표시된 예시적인 시나리오(SN)들 중에서 관리자가 선택한 하나의 시나리오(SN)와 관리자의 편집을 수신하여 블록체인 네트워크(50)에 제공할 수 있다. 관리자가 시나리오(SN)를 편집하는 과정에 대한 자세한 내용은 후술한다.
블록체인 네트워크(50)를 기반으로 동작하는 스마트 컨트랙트를 관리자가 직접 프로그램 코드를 작성하여 실행하는 것은 어려우므로, 블록체인 네트워크(50)를 이용하는 서비스가 널리 보급되기 어려운 문제가 있다. 또한, 기술이 발전하고 사회가 변화하면서 새로운 종류의 공유자원(10)과 새로운 종류의 서비스는 항상 발생하므로, 새로운 종류의 공유자원(10)과 이를 이용한 서비스를 제공하기 위한 시나리오(SN)를 매번 새로 만드는 것은 블록체인 네트워크(50)를 이용하는 서비스의 보급에 장애가 된다. 이러한 문제를 해결하기 위하여, 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은 관리자 또는 사용자가 시나리오(SN)를 직접 편집하거나 인공지능 학습모델이 시나리오(SN)를 자동으로 수정하는 단계를 포함하여, 새로운 종류의 공유자원(10)과 새로운 종류의 서비스를 제공할 수 있다. 공유자원(10)을 블록체인 네트워크(50)에 등록하는 과정의 시나리오 선택단계(S113)에서 관리자가 관리자 단말(31)을 통해 시나리오(SN)를 편집할 수 있으므로 관리자가 새로운 공유자원(10)을 이용하여 새로운 서비스를 용이하게 제공할 수 있다.
공유자원 등록단계(S110)가 수행되면, 사용자가 사용자 단말(32)을 통해 공유자원(10)을 검색하고 이용권한을 획득하여 이용하도록 하는 서비스 제공단계(S120)가 수행될 수 있다. 본 발명의 일실시예에 따른 지능형 스마트 컨트랙트 제공방법은, 관리자나 사용자가 '복합 IoT 디바이스(20)를 이용한 공유서비스'를 제공하고 이용하는 과정을 더 쉽게하기 위한 것이다. 이하에서 복합 IoT 디바이스(20)를 이용한 공유서비스를 제공하는 서비스 제공단계(S120)를 먼저 설명한다.
복합 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)에 관련된 기술내용은 상술하였으므로 이하에서는 생략한다.
복합 IoT 디바이스(20)를 이용한 공유서비스 제공방법은, 복합 IoT 디바이스(20), 관리자 단말(31), 사용자 단말(32), 블록체인 네트워크(50)를 포함하는 시스템에서 수행될 수 있다. 관리자와 사용자는 본 발명의 일실시예에 따른 복합 IoT 디바이스(20)를 이용한 공유서비스를 이용하기 위하여 회원가입을 하고 정해진 정보를 등록할 수 있다.
정보전송단계(S111)는 관리자 단말(31)이 관리자용 dApp(41)을 통하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보를 블록체인 네트워크(50)에 제공하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 기초하여 공유자원(10)의 정보 및 복합 IoT 디바이스(20)의 정보가 블록체인 네트워크(50)가 생성하는 블록(61)에 기록되고 블록(61)이 공유되는 단계를 포함할 수 있다.
먼저 관리자는 복합 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)의 관리자용 스마트 컨트랙트에 전달된다.
관리자용 dApp(41)은 네트워크의 관리자용 스마트 컨트랙트를 호출하여 입력받은 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 제공한다. 관리자용 dApp(41)은 Restful API를 이용하여 블록체인 네트워크(50)와 데이터를 송수신할 수 있다.
관리자용 스마트 컨트랙트는 공유자원(10) 정보관리 기능을 수행하여 공유자원(10)을 사용자가 이용가능하도록 블록체인 네트워크(50) 상에 등록한다. 관리자용 스마트 컨트랙트는 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보를 블록(61)의 저장공간에 테이블 형식으로 저장하도록 블록체인 네트워크(50)를 구성하는 노드(51)들에 공유할 수 있다. 공유자원(10)에 관한 정보 및 복합 IoT 디바이스(20)에 관한 정보는 검증 및 합의과정을 통해 블록(61)에 저장된다.
서비스 제공단계(S120)는, 이용권한 획득단계(S121), 이용 시작단계, 이용 종료단계(S123)를 포함할 수 있다.
이용권한 획득단계(S121)는, 사용자 단말(32)이 사용자용 dApp(42)을 통해 블록체인 네트워크(50)에 분산 저장된 블록체인(60)에 기록된 공유자원(10)의 검색을 요청하면, 사용자용 dApp(42)이 블록체인(60)에 기록된 공유자원(10)을 검색하여 제공가능한 공유자원(10)의 목록을 사용자 단말(32)로 제공하는 단계, 사용자 단말(32)이 제공가능한 공유자원(10)의 목록 중에서 공유자원(10)을 선택하여 이용권한 획득을 요청하는 단계, 및 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트는 요청된 공유자원(10)의 이용가능여부를 판단하고 이용가능한 경우 사용자 단말(32)에 이용권한을 부여하였음을 블록체인(60)에 기록하는 단계를 포함할 수 있다.
사용자는 공유자원(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)은 수신한 검색결과를 사용자에게 표시한다.
이용권한 획득단계(S121)에서, 사용자는 검색결과로 제공된 공유자원(10) 목록에서 공유자원(10)을 선택하고 공유자원(10)의 이용권한 획득을 요청할 수 있다. 사용자 단말(32)은 사용자용 dApp(42)을 통해 사용자가 선택한 공유자원(10)의 이용권한 획득을 블록체인 네트워크(50)의 관리자용 스마트 컨트랙트에 요청할 수 있다.
이용권한 획득단계(S121)에서, 관리자용 스마트 컨트랙트는 사용자용 dApp(42)으로부터 수신한 공유자원(10)의 이용권한 획득요청을 수신하면, 공유자원(10)의 이용가능 여부를 판단한다. 공유자원(10)의 이용가능 여부는 공유자원(10)의 이용권한 획득요청에 포함된 조건들에 기초하여 판단될 수 있다. 사용자가 요청한 시간에 이미 예약되어 있는 다른 사용자가 존재하는지 여부를 판단하고, 사용자가 블랙리스트에 등록되어 있어서 이용권한을 획득할 자격이 없는 사람인지 판단할 수 있다. 관리자용 스마트 컨트랙트는 요청된 공유자원(10)이 이용가능한 경우 이용권한을 요청한 사용자 단말(32)에 이용권한을 부여함을 블록체인(60)에 기록한다. 관리자용 스마트 컨트랙트는 요청된 시간에 해당 사용자 단말(32)에 이용권한이 존재한다는 내용을 블록체인 네트워크(50)에 공유하고, 블록체인 네트워크(50)는 검증 및 합의를 통해 블록(61)에 이용권한이 부여되었음을 저장한다. 관리자용 스마트 컨트랙트는 이용권한이 부여되었음을 사용자 dApp을 통해 사용자 단말(32)에 제공할 수 있다.
사용자 단말(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)에 이용권한이 있는 것으로 판단하여 잠금을 개방하는 단계를 포함할 수 있다.
사용자는 사용자 단말(32)을 통해 이용권한을 획득한 공유자원(10)에 결합된 복합 IoT 디바이스(20)에 잠금 개방을 요청할 수 있다. 사용자 단말(32)은 복합 IoT 디바이스(20)에 직접 또는 dApp이나 블록체인 네트워크(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)가 근접 여부 판단을 수행할 수 있게 한다.
사용자 단말(32)이 복합 IoT 디바이스(20)에 정해진 거리 이내에 위치하는 것으로 판단되는 경우, 복합 IoT 디바이스(20)는 사용자 단말(32)에 근접 여부 판단을 통과하였다는 신호를 제공할 수 있다. 근접 여부 판단을 통과한 경우, 복합 IoT 디바이스(20)와 사용자 단말(32)은 블록체인 네트워크(50)에 일회용 인증 프로토콜의 실행을 요청할 수 있다. 복합 IoT 디바이스(20)와 사용자 단말(32)로부터 수신되는 일회용 인증 프로토콜의 실행 요청이 일치하는 경우 블록체인 네트워크(50)는 일회용 인증 프로토콜을 실행한다.
일회용 인증 프로토콜은 블록체인(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)을 이용할 수 있다.
게이트웨이모듈(27)은 사용자가 공유자원(10)을 이용하는 과정에서 공유자원(10)의 상태를 모니터링할 수 있다. 공유자원(10)이 회의실이나 숙박시설 등의 공간인 경우, 잠금모듈(21)이 개방되면 게이트웨이모듈(27)은 공유자원(10)인 공간에 사람이 들어오고 나가는지 여부를 센싱할 수 있다. 게이트웨이모듈(27)은 정해진 주기마다 또는 잠금모듈(21)이 개방되면 지속적으로 공유자원(10)의 이용상태를 센싱할 수 있다. 게이트웨이모듈(27)은 공유자원(10)의 이용상태를 복합 IoT 디바이스(20)에 전송할 수 있다.
관리자 단말(31)은 관리자용 dApp(41)을 통해 공유자원(10) 접근관리기능을 수행할 수 있다. 관리자 단말(31)은 공유자원(10)에 이용을 신청한 사용자들에 관한 정보, 공유자원(10)의 이용상태에 관한 정보, 공유자원(10)의 이용기록 및 예약 기록 등을 모니터링할 수 있다. 관리자용 dApp(41)은 관리자용 스마트 컨트랙트에 공유자원(10)의 현재 상태 모니터링을 요청할 수 있으며 관리자용 스마트 컨트랙트는 복합 IoT 디바이스(20)로부터 게이트웨이모듈(27)이 제공한 공유자원(10)의 이용상태를 수신하여 관리자용 dApp(41)을 통해 관리자 단말(31)에 제공할 수 있다.
사용자는 이용권한에 기초한 사용시간이 종료되는 경우 공유자원(10)의 이용을 중지한다. 복합 IoT 디바이스(20)는 이용권한에 기초한 사용시간이 종료되는 경우 게이트웨이모듈(27)로부터 공유자원(10)의 이용상태에 관한 정보를 수신하여 잠금모듈(21)을 동작시켜 사용자와 공유자원(10)을 차단해도 되는지 판단한다. 예를 들어, 공유자원(10)이 회의실이나 숙박시설과 같은 공간인 경우, 게이트웨이모듈(27)은 공유자원(10)인 공간 안에 사용자가 존재하는지 센싱할 수 있고, 공유자원(10)인 공간 안에 사용자가 존재하지 않게 되었을 때 복합 IoT 디바이스(20)는 잠금모듈(21)이 잠궈지도록 제어할 수 있다.
복합 IoT 디바이스(20)가 잠금모듈(21)을 잠그도록 제어하여 사용자의 이용이 종료되면, 복합 IoT 디바이스(20)는 블록체인 네트워크(50)에 사용종료 사실을 전송한다. 공유서비스 사용이 종료되면 서비스 이용내역이 블록체인 네트워크(50)에 전달된다.
이러한 서비스 제공단계(S120)를 통해 공유자원(10)을 이용하는 서비스가 제공될 수 있다. 사용자는 서비스를 이용하는 과정에서 불편하거나 오류가 존재하거나 수정이 필요한 내용을 피드백할 수 있다.
피드백단계(S130)는 사용자 단말(32) 또는 관리자 단말(31)이 시나리오(SN)의 적어도 일부를 편집하여 피드백으로 제공하는 것이다. 관리자 단말(31)은 공유자원(10)을 등록하는 과정의 시나리오 선택단계(S113)에서 일차적으로 시나리오(SN)를 편집할 수 있고, 공유자원(10)을 이용하여 서비스가 제공되는 상태에서도 시나리오(SN)를 편집하여 제공하는 피드백을 제공할 수 있다.
도 14는 본 발명의 일실시예에 따른 시나리오(SN) 편집을 나타내는 도면이다.
도 14에 도시된 바와 같이, 피드백단계(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)를 생성할 수 있다.
시나리오(SN)에 추가할 수 있는 기능들은 다른 시나리오(SN)에 포함된 스마트 컨트랙트로부터 가져올 수 있다. 시나리오(SN)에 포함된 기능들은 세부 기능들로 나뉘어질 수 있으며, 세부 기능을 수행하는 스마트 컨트랙트를 블록(61)과 같이 조합하여 임의의 기능을 생성할 수 있다. 예를 들어, 일시정지 기능(SC-3a)을 시나리오(SN-0)에 추가하려는 경우, 관리자 단말(31) 또는 사용자 단말(32)은 다른 시나리오(SN)에 포함되어 있는 일시정지 기능(SC-3a)을 가져올 수도 있고, 다른 시나리오(SN)에 포함되어 있는 공유자원 현재상태 확인기능, 공유자원의 다음 예약 존재 확인 기능, 비용 추가결제 기능, 이용시간 변경기능 등을 조합하여, 현재 공유자원(10)을 자신이 이용하고 있고, 다음 예약이 존재하지 않는 경우 정해진 비용을 추가로 결제하고 이용시간을 일시정지 하였다가 다시 시작하도록 변경하도록 조합하여 일시정지 기능(SC-3a)을 생성할 수 있다.
시나리오(SN)에서 임의의 기능을 삭제하려는 경우 관리자 단말(31) 또는 사용자 단말(32)은 삭제하려는 기능을 선택하고 삭제하는 입력을 수신할 수 있다. 시나리오(SN)에서 임의의 기능의 동작순서를 변경하려는 경우 관리자 단말(31) 또는 사용자 단말(32)은 동작순서를 변경하려는 기능을 선택하고 위치를 변경하여 동작순서를 변경하는 입력을 수신할 수 있다.
관리자 단말(31) 또는 사용자 단말(32)은 시나리오(SN)에서 스마트 컨트랙트의 조건 및 동작을 변경할 수 있다. 스마트 컨트랙트의 조건 및 동작은 단말에서 프로그램 코드를 수정하는 방법으로 편집될 수 있다. 또는, 스마트 컨트랙트의 조건 및 동작이 기능의 세부사항으로 표시되고, 사용자 또는 관리자가 기능의 세부사항을 수정하면 스마트 컨트랙트의 조건 및 동작이 수정되는 방법으로 편집될 수 있다. 시나리오 선택단계(S113) 또는 피드백단계(S130)는 상술한 바와 같이 시나리오(SN)를 편집하는 과정을 수행할 수 있다.
그리고, 피드백은 사용자 단말(32)로부터 수집되는 위치정보, 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함할 수 있다. 사용자 단말(32)은 사용자와 복합 IoT 디바이스(20)가 인접한 경우 자동으로 팝업질문을 표시할 수 있다. 팝업질문은 인접한 위치에 존재하는 서비스 추천, 이용하고 있는 서비스에 관한 선호도 질문, 이용하고 있는 서비스에 관한 수정할 점 또는 불편한 점에 관한 질문 등을 포함할 수 있다. 사용자 단말(32)은 팝업질문에 대한 사용자의 답변을 입력받으면, 블록체인 네트워크(50)에 답변을 피드백으로서 제공할 수 있다. 또한, 사용자는 사용자 단말(32)을 통하여 챗봇과 대화할 수 있다. 챗봇은 공유자원(10)을 이용하는 서비스에 대한 질문에 답변을 제공하는 서비스를 포함한다. 챗봇과 사용자의 대화내역(TD-C)은 피드백으로서 블록체인 네트워크(50)에 제공될 수 있다. 챗봇과 사용자의 대화내역(TD-C)을 구문분석하면 사용자가 불편을 느낀 사항이나 수정을 요구하는 사항을 인식할 수 있다. 이러한 방법을 이용하여 인식한 사용자의 의견은 피드백으로 포함될 수 있다.
피드백이 수집되면, 피드백을 이용하여 인공지능 학습모델을 학습시키는 학습단계(S140)를 수행할 수 있다. 학습단계(S140)에서 먼저 피드백을 종합하여 인공지능 학습모델을 훈련시키기 위한 학습데이터(TD)를 생성한다.
도 15는 본 발명의 일실시예에 따른 인공지능 학습모델을 위한 학습데이터(TD)를 나타내는 도면이다.
학습단계(S140)는 입력데이터가 시나리오(SN)이고 정답데이터가 사용자 단말(32) 또는 관리자 단말(31)로부터 수신한 편집된 시나리오(SNe)인 학습데이터(TD)를 이용할 수 있다. 학습데이터(TD)는 관리자 단말(31) 또는 사용자 단말(32)로부터 수신한 편집된 시나리오(SNe-1)를 이용하여 생성되는 시나리오 학습데이터(TD-S), 사용자 단말(32)로부터 수신되는 사용자 단말(32)의 위치정보(TD-L), 챗봇과 사용자의 대화내역(TD-C), 팝업질문의 답변(TD-A)을 포함할 수 있다.
도 16은 본 발명의 일실시예에 따른 인공지능 학습모델의 신경망 네트워크 구조를 예시적으로 나타내는 도면이다.
도 16에 도시된 바와 같이, 본 발명의 일실시예에 따른 인공지능 학습모델은 입력층과 복수의 은닉층과 출력층을 포함하는 신경망 네트워크 구조를 이용할 수 있다. 학습단계(S140)에서 학습되는 인공지능 학습모델은 시나리오 학습데이터(TD-S)를 이용하여 학습될 수 있다. 인공지능 학습모델의 노드(N)들을 연결하는 방식은 다양하게 존재할 수 있다. 시나리오(SN)는 복수의 스마트 컨트랙트가 순서적으로 조합되어 있는 구조이므로, 각 스마트 컨트랙트의 조건과 동작을 특성벡터화 하고, 스마트 컨트랙트의 순서를 특성벡터화하여 복합벡터를 형성하여 입력층으로 입력한다. 입력층으로 입력된 정보는 인코더를 거치면서 인코딩 정보가 되고, 디코더를 거치면서 복원되어 출력층으로 출력된다. 출력층이 출력하는 특성벡터를 정답데이터인 편집된 시나리오(SNe)와 비교하여 오차를 감소시키는 방향으로 역전파하여 인공지능 학습모델을 학습시킬 수 있다.
인공지능 학습모델은 블록체인 네트워크(50) 상에서 동작하지 않고, 시나리오 관리서버(90)에 존재할 수 있다. 인공지능 학습모델은 새로운 종류의 공유자원(10)이 등록된 경우 해당 종류의 공유자원(10)을 이용하는 서비스의 시나리오(SN) 수정을 담당하는 새로운 인공지능 학습모델이 생성된다. 블록체인 네트워크(50)를 이용하여 제공되는 공유자원(10)을 이용하는 서비스의 종류마다 시나리오(SN)를 수정하는 인공지능 학습모델이 배정되어, 시나리오 관리서버(90)는 복수의 인공지능 학습모델을 운영할 수 있다.
인공지능 학습모델은 시나리오 학습데이터(TD-S)를 이용하여 학습될 수 있다. 이때, 피드백에 포함되는 팝업질문의 답변(TD-A)이나 챗봇과 사용자의 대화내역(TD-C)을 분석하여 획득된 수정이 필요한 항목이 존재하는 경우, 수정이 필요한 항목에 가중치를 더 부여할 수 있다. 예를 들어, 팝업질문의 답변(TD-A)이나 챗봇과 사용자의 대화내역(TD-C)을 분석한 결과, 일시정지가 불가능한 점이 수정이 필요하다고 인식된 경우, 시나리오 학습데이터(TD-S)가 보유하고 있는 시나리오(SN)-편집된 시나리오(SNe)로 구성된 복수의 데이터쌍들 중에서 일시정지 기능을 추가하는 편집이 수행된 데이터쌍을 정해진 횟수만큼 반복학습 시키거나, 학습된 인공지능 학습모델에서 일시정지 기능이 학습된 부분에 가중치를 더 부여하는 방식을 이용하여, 학습을 강화할 수 있다.
인공지능 학습모델을 학습시키는 학습단계(S140)는 서비스가 제공되는 상태에서 피드백이 수신되면 반복적으로 수행되어 피드백을 즉시 반영시킬 수 있다.
학습단계(S140) 이후에, 시나리오 수정단계(S150)를 수행할 수 있다. 시나리오 수정단계(S150)는 인공지능 학습모델이 시나리오(SN)에 포함된 하나 이상의 스마트 컨트랙트의 내용 및 동작순서를 변경하고, 수정된 시나리오(SN)를 블록체인 네트워크(50)에 제공하여 공유자원(10)을 이용하는 서비스의 시나리오(SN)로 사용하는 것이다.
수정단계(S150)는 정해진 기간동안 수집된 피드백에 기초하여 훈련된 인공지능 학습모델에 시나리오(SN)를 입력하여 출력되는 수정된 시나리오(SN)를 획득하고, 수정된 시나리오(SN)를 상기 공유자원(10)을 이용한 서비스에 적용할 수 있다. 수정단계(S150)는 다양한 기준에 따라 수행될 수 있다. 수정단계(S150)는 기간을 정하고 그 기간동안 피드백을 수집한 다음 인공지능 학습모델의 훈련이 완료되면 수정단계(S150)를 수행할 수도 있다. 이러한 경우 다음 기간이 경과하는 동안은 피드백을 계속 수집하는 것이고, 피드백의 수집이 완료되면 학습단계(S140)와 수정단계(S150)를 수행할 수 있다. 이때, 시나리오(SN)를 수정하여 이전 시나리오(SN)와 달라졌다면, 기존에 수집한 피드백을 학습데이터(TD)에서 제거할 수 있다. 새로운 피드백 수집기간이 시작되면 처음부터 피드백을 수집하여 새로운 학습데이터(TD)를 작성한다.
또는, 학습단계(S140)가 정해진 수준 이상으로 학습된 경우 수정단계(S150)를 수행할 수 있다. 예를 들어, 인공지능 학습모델이 특정한 편집된 시나리오(SN)를 출력할 확률이 정해진 값을 초과하는 경우 학습이 충분히 된 것으로 인정하고 수정단계(S150)를 수행할 수 있다. 이러한 경우 통계적으로 가장 많이 출력되는 특정한 편집된 시나리오(SN)를 블록체인 네트워크(50)에서 서비스에 이용되는 시나리오(SN)로 반영하는 수정단계(S150)를 수행할 수 있다.
이러한 피드백단계(S130), 학습단계(S140), 수정단계(S150)를 수행함에 따라, 공유자원(10)을 이용한 서비스가 제공되는 상태에서 사용자들의 피드백에 기초하여 서비스를 제공하기 위한 시나리오(SN)를 더 편리하게 변경할 수 있다. 또한, 관리자가 사용자의 피드백을 일일이 분석하여 시나리오(SN)를 업데이트하지 않더라도, 사용자 단말(32)을 통해 수집되는 피드백에 기초하여 시나리오(SN)를 지속적으로 업데이트할 수 있다.
상술한 본 발명의 일실시예에 따르면, 스마트 컨트랙트의 조건과 동작을 변경할 수 있어서 다양한 종류의 공유자원(10)을 공유서비스에 제공하기 위하여 필요한 다양한 조건의 스마트 컨트랙트를 생성하고 이용할 수 있다.
또한, 사용자 피드백에 기초하여 스마트 컨트랙트의 조건과 동작을 변경할 수 있으므로, 공유서비스를 제공하기 위하여 필요한 스마트 컨트랙트의 지속적인 업데이트가 가능하다.
이상 본 발명을 구체적인 실시예를 통하여 상세히 설명하였으나, 이는 본 발명을 구체적으로 설명하기 위한 것으로, 본 발명은 이에 한정되지 않으며, 본 발명의 기술적 사상 내에서 당해 분야의 통상의 지식을 가진 자에 의해 그 변형이나 개량이 가능함은 명백하다고 할 것이다.
본 발명의 단순한 변형 내지 변경은 모두 본 발명의 영역에 속하는 것으로 본 발명의 구체적인 보호 범위는 첨부된 특허청구범위에 의하여 명확해질 것이다.
[부호의 설명]
10: 공유자원
20: 복합 IoT 디바이스
21: 잠금모듈
22: 통신모듈
23: 컨트롤러모듈
24: 입력모듈
25: 표시모듈
26: 전원모듈
27: 게이트웨이모듈
31: 관리자 단말
32: 사용자 단말
41: 관리자용 dApp
42: 사용자용 dApp
50: 블록체인 네트워크
51: 노드
51a: 통신부
51b: 제어부
51c: 저장부
60: 블록체인
61: 블록
70: 분산형 데이터베이스
80: 매칭서버
90: 시나리오 관리서버

Claims (18)

  1. 공유자원에 결합되어 서비스의 이용을 허용하거나 차단하는 복합 IoT 디바이스, 관리자 단말 또는 사용자 단말로부터 서비스 이용기록을 블록체인 네트워크를 통해 수신하여 저장하는 서비스정보 수집단계; 및
    상기 서비스 이용기록에 기초하여, 서비스를 추천받는 사용자와 서비스 이용패턴이 유사한 다른 사용자가 이용한 서비스를 추천하는 큐레이션단계를 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  2. 청구항 1에 있어서,
    상기 서비스정보 수집단계는
    상기 복합 IoT 디바이스, 관리자 단말, 사용자 단말이 서비스 이용기록을 블록체인 네트워크로 전송하는 이용기록 전송단계;
    상기 서비스 이용기록에 포함된 개인정보를 저장하기 전에 비식별화하는 비식별화 단계; 및
    상기 서비스 이용기록을 분산형 데이터베이스에 저장하고 서비스 이용기록의 저장과정을 블록체인 네트워크에 저장하는 저장단계를 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  3. 청구항 1에 있어서,
    상기 서비스정보 수집단계는
    블록체인 네트워크가 상기 복합 IoT 디바이스가 제공하는 서비스 이용기록과 상기 사용자 단말이 제공하는 서비스 이용기록을 비교하여 일치하는 경우 수집된 서비스 이용기록을 저장하고 일치하지 않는 경우 저장하지 않는, 공유서비스 연계 토탈서비스 추천 방법.
  4. 청구항 1에 있어서,
    상기 큐레이션단계는
    사용자의 과거 서비스 이용기록을 분석하여 사용자의 서비스 이용패턴을 분석하는 패턴분석단계;
    다른 사용자의 과거 서비스 이용기록에 기초하여 분석된 다른 사용자의 서비스 이용패턴과 상기 사용자의 서비스 이용패턴을 비교하여, 유사한 패턴을 갖는 다른 사용자를 식별하는 패턴비교단계;
    상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들 중에서 상기 사용자 단말로부터 수신하는 사용자의 현재상태와 관련된 서비스를 추천하는 상태기반 추천단계를 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  5. 청구항 4에 있어서,
    상기 서비스 이용기록은
    상기 공유자원을 이용하여 제공되는 서비스를 이용한 내역 및 사용자가 상기 서비스의 만족도를 선호부터 비선호까지 점수로 입력한 선호도 정보를 포함하고,
    상기 큐레이션단계는
    상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들을 선호 점수가 높은 순서대로 추천하는 선호기반 추천단계를 더 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  6. 청구항 5에 있어서,
    상기 큐레이션단계는
    상기 유사한 패턴을 갖는 다른 사용자가 이용한 서비스들 중에서 비선호 점수가 존재하는 서비스를 분류하고, 분류된 서비스의 리뷰를 분석하여 긍정 반응에 해당하는 특징을 추출하여 제시하면서 특색 서비스로 추천하는 비선호기반 추천단계를 더 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  7. 청구항 4에 있어서,
    상기 패턴분석단계는
    사용자의 과거 서비스 이용기록에 기초하여, 정해진 기간 범위 내에서 다양한 종류의 서비스를 시간순서대로 이용한 순차패턴을 인식하고,
    상기 패턴비교단계는
    상기 순차패턴을 비교함에 있어서, 정해진 기간 범위 내에서 서비스를 추천받는 사용자가 가장 처음에 이용한 서비스부터 최근에 이용한 서비스까지의 순차패턴을 비교하여 유사한 패턴을 갖는 다른 사용자를 식별하는, 공유서비스 연계 토탈서비스 추천 방법.
  8. 청구항 1에 있어서,
    상기 복합 IoT 디바이스는
    다양한 종류의 공유자원에 결합되어 물리적 또는 전기적으로 상기 공유자원을 개폐하는 잠금모듈;
    상기 사용자 단말 또는 블록체인 네트워크와 데이터를 송수신하는 통신모듈; 및
    상기 사용자 단말이 상기 공유자원의 이용권한을 갖는지 여부를 상기 블록체인 네트워크로부터 수신하는 키에 기초하여 판단하고, 상기 잠금모듈을 개폐하도록 제어하는 컨트롤러모듈을 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  9. 청구항 8에 있어서,
    상기 관리자 단말이 상기 서비스를 제공하기 위한 정보 및 상기 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 등록하여 상기 서비스를 이용가능하게 블록체인 네트워크에 제공하는 서비스 등록단계를 더 포함하는, 공유서비스 연계 토탈서비스 추천 방법.
  10. 공유자원을 이용한 서비스를 블록체인 네트워크를 통해 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트를 포함하는 시나리오에 기초하여 상기 서비스를 제공하는 서비스 제공단계;
    사용자 단말 또는 관리자 단말이 상기 시나리오를 편집하는 피드백을 제공하는 피드백단계;
    상기 피드백에 기초하여 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 인공지능 학습모델을 학습시키는 학습단계; 및
    상기 인공지능 학습모델이 상기 시나리오에 포함된 하나 이상의 스마트 컨트랙트의 내용을 변경하는 시나리오 수정단계를 포함하는, 지능형 스마트 컨트랙트 제공방법.
  11. 청구항 10에 있어서,
    상기 시나리오는
    상기 블록체인 네트워크를 통해 상기 서비스를 제공하기 위하여 필요한 하나 이상의 스마트 컨트랙트, 및 상기 스마트 컨트랙트의 동작순서를 포함하고,
    상기 스마트 컨트랙트는
    상기 공유자원을 이용한 서비스를 제공하여 위해 필요한 적어도 일부의 기능을 구현하는, 하나 이상의 조건 및 상기 조건을 만족하면 수행하는 동작을 포함하는, 지능형 스마트 컨트랙트 제공방법.
  12. 청구항 11에 있어서,
    상기 피드백단계는
    상기 사용자 단말 또는 관리자 단말이 상기 시나리오의 적어도 일부를 편집하여 피드백으로 제공하는 것인, 지능형 스마트 컨트랙트 제공방법.
  13. 청구항 12에 있어서,
    상기 학습단계는
    입력데이터가 상기 시나리오이고 정답데이터가 상기 사용자 단말 또는 관리자 단말로부터 수신한 편집된 시나리오인 학습데이터를 이용하여, 상기 인공지능 학습모델을 훈련하는, 지능형 스마트 컨트랙트 제공방법.
  14. 청구항 13에 있어서,
    상기 수정단계는
    정해진 기간동안 수집된 피드백에 기초하여 훈련된 상기 인공지능 학습모델에 상기 시나리오를 입력하여 출력되는 수정된 시나리오를 획득하고, 상기 수정된 시나리오를 상기 공유자원을 이용한 서비스에 적용하는 것인, 지능형 스마트 컨트랙트 제공방법.
  15. 청구항 12에 있어서,
    상기 피드백은
    상기 사용자 단말로부터 수집되는 위치정보, 상기 위치정보에 따라 제공되는 팝업질문에 대하여 입력되는 답변, 챗봇과 사용자가 대화한 내역을 더 포함하는, 지능형 스마트 컨트랙트 제공방법.
  16. 청구항 12에 있어서,
    상기 피드백단계는
    사용자 또는 관리자가 사용자 단말 또는 관리자 단말을 통해 상기 시나리오에서 사용자 또는 관리자가 입력하여야 동작하는 기능들을 수정하면, 그에 따라 상기 시나리오의 기능들을 제공하기 위하여 포함된 복수의 스마트 컨트랙트의 동작순서, 스마트 컨트랙트의 조건 또는 동작을 자동으로 수정하는, 지능형 스마트 컨트랙트 제공방법.
  17. 청구항 10에 있어서,
    상기 서비스 제공단계 이전에, 관리자 단말이 상기 공유자원을 이용한 서비스를 제공하기 위하여 상기 공유자원을 블록체인 네트워크에 등록하고 상기 공유자원을 이용할 서비스에 적용될 시나리오를 결정하는 공유자원 등록단계를 더 포함하며,
    상기 서비스 제공단계는
    상기 공유자원 등록단계에서 결정된 시나리오에 의해 상기 서비스가 제공되는 것인, 지능형 스마트 컨트랙트 제공방법.
  18. 청구항 17에 있어서,
    상기 공유자원 등록단계는
    상기 관리자 단말이 상기 공유자원에 관한 정보, 상기 공유자원에 결합된 복합 IoT 디바이스에 관한 정보를 상기 블록체인 네트워크에 제공하는 정보전송단계;
    상기 공유자원과 기존에 등록된 다른 공유자원을 비교하여 유사한 경우 기존에 등록된 다른 공유자원을 이용한 서비스에 이용되는 시나리오를 관리자 단말에 제공하고, 상기 공유자원이 기존에 등록된 다른 공유자원과 다른 새로운 것인 경우 예시적인 시나리오들을 관리자 단말에 제공하는 예시제공단계;
    상기 관리자 단말이 상기 다른 공유자원을 이용한 서비스에 이용되는 시나리오에 대한 사용자의 편집을 수신하여 제공하거나, 예시적인 시나리오들 중에서 사용자가 선택한 하나의 시나리오와 사용자의 편집을 수신하여 제공하는 시나리오 선택단계를 포함하는, 지능형 스마트 컨트랙트 제공방법.
PCT/KR2019/015545 2019-11-11 2019-11-14 공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법 WO2021095927A1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020190143556A KR102283503B1 (ko) 2019-11-11 2019-11-11 지능형 스마트 컨트랙트 제공방법
KR10-2019-0143556 2019-11-11
KR1020190143557A KR102283504B1 (ko) 2019-11-11 2019-11-11 공유서비스 연계 토탈서비스 추천 방법
KR10-2019-0143557 2019-11-11

Publications (1)

Publication Number Publication Date
WO2021095927A1 true WO2021095927A1 (ko) 2021-05-20

Family

ID=75912455

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/015545 WO2021095927A1 (ko) 2019-11-11 2019-11-14 공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법

Country Status (1)

Country Link
WO (1) WO2021095927A1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170110330A (ko) * 2016-03-23 2017-10-11 에스케이플래닛 주식회사 광고플랫폼장치 및 그 동작 방법
KR101941785B1 (ko) * 2017-11-01 2019-01-28 주식회사 알티캐스트 블록체인기술을 이용한 컨텐츠 유통 관리 시스템 및 방법
KR101962290B1 (ko) * 2018-12-31 2019-03-26 주식회사 미탭스플러스 블록체인 기반의 공유경제를 위해 공유재화의 unlock 및 lock을 제어하는 분산 원장 장치
US20190236598A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing machine learning models for smart contracts using distributed ledger technologies in a cloud based computing environment
JP2019153260A (ja) * 2018-03-05 2019-09-12 メタップス・プラス・インコーポレイテッドMetaps Plus Inc. 共有経済のための分散型台帳装置及び分散型台帳方法
KR20190124938A (ko) * 2018-04-27 2019-11-06 안 데이비드 탈 중앙 집중형 p2p 라이드쉐어 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170110330A (ko) * 2016-03-23 2017-10-11 에스케이플래닛 주식회사 광고플랫폼장치 및 그 동작 방법
KR101941785B1 (ko) * 2017-11-01 2019-01-28 주식회사 알티캐스트 블록체인기술을 이용한 컨텐츠 유통 관리 시스템 및 방법
US20190236598A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing machine learning models for smart contracts using distributed ledger technologies in a cloud based computing environment
JP2019153260A (ja) * 2018-03-05 2019-09-12 メタップス・プラス・インコーポレイテッドMetaps Plus Inc. 共有経済のための分散型台帳装置及び分散型台帳方法
KR20190124938A (ko) * 2018-04-27 2019-11-06 안 데이비드 탈 중앙 집중형 p2p 라이드쉐어 시스템
KR101962290B1 (ko) * 2018-12-31 2019-03-26 주식회사 미탭스플러스 블록체인 기반의 공유경제를 위해 공유재화의 unlock 및 lock을 제어하는 분산 원장 장치

Similar Documents

Publication Publication Date Title
WO2021008017A1 (zh) 联邦学习方法、***、终端设备及存储介质
WO2020091278A1 (ko) 사용증명방식 블록체인 기반의 일회용 개인키를 이용한 개인정보 제공 시스템 및 방법
WO2020149454A1 (ko) 사용자에 대한 인증을 수행하는 전자 장치 및 그 동작 방법
US20040128557A1 (en) User information control device
WO2014084498A2 (ko) 웹사이트와 어플에서의 회원 간 만남주선 시스템
CN105763547B (zh) 第三方授权方法和第三方授权***
WO2017171167A1 (ko) 구인 및 구직 정보를 제공하기 위한 장치 및 이를 위한 방법
WO2015174777A1 (ko) 단말 장치, 클라우드 장치, 단말 장치의 구동방법, 데이터 협업처리 방법 및 컴퓨터 판독가능 기록매체
WO2018093229A1 (en) Method and device applying artificial intelligence to send money by using voice input
EP2888711A1 (en) Method and apparatus for sharing content
EP3533015A1 (en) Method and device applying artificial intelligence to send money by using voice input
WO2014065444A1 (ko) 개방형 공중망을 이용한 협업 시스템
WO2024029922A1 (ko) 소프트웨어 기반 기업 esg 경영 관리 장치 및 그 수행 방법
KR102283503B1 (ko) 지능형 스마트 컨트랙트 제공방법
WO2020153525A1 (ko) 인공지능 개체에 대한 정보를 블록체인으로 관리하는 방법 및 그 플랫폼
WO2021020843A1 (ko) 공유 차량 인증 방법, 장치 및 시스템
WO2016006831A1 (ko) 홍채 인식을 이용한 도어록과 그 시스템 및 그에 사용되는 이동통신단말기와 네트워크 게이트웨이 및 사용자 인증 방법
WO2019107674A1 (en) Computing apparatus and information input method of the computing apparatus
WO2021095926A1 (ko) 복합 iot 디바이스 및 이를 이용한 공유서비스 제공방법, 및 블록체인 응용 외부 정보 인식 및 정보 제공방법
WO2021095927A1 (ko) 공유서비스 연계 토탈서비스 추천 방법, 및 지능형 스마트 컨트랙트 제공방법
WO2013036035A2 (ko) 객체 태깅을 위한 플랫폼 시스템 및 그 방법
WO2023132657A1 (ko) 상품 트렌드 예측 서비스 제공 장치, 방법 및 프로그램
WO2023054979A1 (ko) 리뷰 신뢰도 평가 방법 및 시스템
WO2019160269A1 (en) Method and interactive device for providing social interaction
WO2022158730A1 (ko) 블록체인 기반 개인 신상 증명을 위한 서비스 제공 장치 및 방법

Legal Events

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

Ref document number: 19952914

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19952914

Country of ref document: EP

Kind code of ref document: A1