KR102561252B1 - Blockchain-based crowdsensing method providing automatic quality verification - Google Patents

Blockchain-based crowdsensing method providing automatic quality verification Download PDF

Info

Publication number
KR102561252B1
KR102561252B1 KR1020210035292A KR20210035292A KR102561252B1 KR 102561252 B1 KR102561252 B1 KR 102561252B1 KR 1020210035292 A KR1020210035292 A KR 1020210035292A KR 20210035292 A KR20210035292 A KR 20210035292A KR 102561252 B1 KR102561252 B1 KR 102561252B1
Authority
KR
South Korea
Prior art keywords
job
worker
execution environment
trusted execution
sensing data
Prior art date
Application number
KR1020210035292A
Other languages
Korean (ko)
Other versions
KR20220130429A (en
Inventor
신병석
량이화이
이연
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020210035292A priority Critical patent/KR102561252B1/en
Publication of KR20220130429A publication Critical patent/KR20220130429A/en
Application granted granted Critical
Publication of KR102561252B1 publication Critical patent/KR102561252B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06398Performance of employee with respect to a job function
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06395Quality analysis or management
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Educational Administration (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Accounting & Taxation (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Investigation Of Foundation Soil And Reinforcement Of Foundation Soil By Compacting Or Drainage (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

자동품질확인이 가능한 블록체인기반 크라우드 소싱방법이 개시된다. 크라우드 소싱 시스템에 의해 수행되는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법은, 작업 요청자의 작업 요청을 수신하는 단계; 및 상기 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 블록체인 기반의 신뢰실행환경을 통해 평가하는 단계를 포함할 수 있다. A blockchain-based crowdsourcing method capable of automatic quality check is disclosed. A blockchain-based crowdsourcing method capable of automatic quality check performed by a crowdsourcing system includes receiving a job request from a job requester; and evaluating the quality of the sensing data transmitted from the worker in response to the work request through a blockchain-based trusted execution environment.

Description

자동품질확인이 가능한 블록체인기반 크라우드 소싱방법{BLOCKCHAIN-BASED CROWDSENSING METHOD PROVIDING AUTOMATIC QUALITY VERIFICATION}Blockchain-based crowdsourcing method capable of automatic quality verification {BLOCKCHAIN-BASED CROWDSENSING METHOD PROVIDING AUTOMATIC QUALITY VERIFICATION}

아래의 설명은 품질을 자동으로 확인하기 위한 크라우드 소싱 기술에 관한 것이다.The description below is about a crowdsourcing technique for automatically checking quality.

작업자(worker)가 업로드 한 센싱 데이터의 품질을 자동 평가하는 것은 크라우드 소싱(CS) 시스템의 중요한 작업이다. 블록체인 기반 크라우드 소싱(CS) 시스템에서 기존 기법들은 작업자의 센싱 데이터를 블록체인에 저장하거나 블록체인의 스마트 계약을 사용하여 센싱 데이터의 품질을 평가하는데 이러한 기법들은 블록체인 시스템에 심각한 네트워크 및 저장 부담을 발생시킨다. 또한 실시간 크라우드 소싱(CS) 시스템 애플리케이션에 적합하지 않다.Automatically evaluating the quality of sensing data uploaded by workers is an important task of a crowd sourcing (CS) system. In a blockchain-based crowdsourcing (CS) system, existing techniques store worker's sensing data in a blockchain or evaluate the quality of sensing data using smart contracts in a blockchain. These techniques place a serious network and storage burden on the blockchain system causes It is also not suitable for real-time crowdsourcing (CS) system applications.

신뢰실행환경(TEE: Trusted Execution Environments)을 적용하여 자동으로 작업자의 센싱 데이터의 품질을 평가하는 블록체인 기반의 크라우드 소싱 방법 및 시스템을 제공할 수 있다.By applying Trusted Execution Environments (TEE), it is possible to provide a block-chain-based crowdsourcing method and system that automatically evaluates the quality of worker sensing data.

크라우드 소싱 시스템에 의해 수행되는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법은, 작업 요청자의 작업 요청을 수신하는 단계; 및 상기 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 블록체인 기반의 신뢰실행환경을 통해 평가하는 단계를 포함할 수 있다. A blockchain-based crowdsourcing method capable of automatic quality check performed by a crowdsourcing system includes receiving a job request from a job requester; and evaluating the quality of the sensing data transmitted from the worker in response to the work request through a blockchain-based trusted execution environment.

상기 수신하는 단계는, 상기 작업 요청자로부터 작업이 등록됨에 따라 작업과 관련된 태스크 계약(Task Contract; TC)을 블록체인에 기반하여 배포하고, 상기 작업 요청자로부터 등록된 작업에 사용할 지불금에 대한 예치금이 신뢰실행환경에 전송되고, 상기 신뢰실행환경의 엔클레이브(enlave)에 태스크 계약 및 작업에 사용할 지불금에 대한 예치금을 저장하여 작업자의 응답을 대기하는 단계를 포함하고, 상기 태스크 계약은, 작업 요청자의 공개키, 태스크 데이터의 품질 요구사항 및 작업 보수, 요청 기간, 작업자의 최대 수를 포함하는 기타 요구사항을 포함할 수 있다. In the receiving step, as the job is registered from the job requester, a task contract (TC) related to the job is distributed based on the blockchain, and the deposit for the payment to be used for the job registered from the job requester is trusted. and waiting for a response from a worker by storing a task contract and a deposit for a payment to be used for a job in an enclave of the trusted execution environment, wherein the task contract is disclosed by the job requester. It may include quality requirements for keys, task data, and other requirements, including job pay, request duration, and maximum number of workers.

상기 평가하는 단계는, 상기 작업자로부터 신뢰실행환경을 통해 작업을 수행하기 위한 작업 정보가 검색 및 등록됨에 따라 상기 작업자에게 상기 작업자의 정보가 부가된 작업 요청자의 태스크 계약을 포함하는 블록체인 주소를 전달하고, 상기 작업 요청자의 작업 요청에 응답하여 상기 작업자로부터 작업이 수행됨에 따라 획득된 센싱 데이터를 신뢰실행환경을 통해 전달받는 단계를 포함할 수 있다. In the step of evaluating, as job information for performing a job is retrieved and registered from the worker through the trusted execution environment, the block chain address including the task contract of the job requester to which the information of the worker is added is transmitted to the worker. and receiving, through a trusted execution environment, sensing data obtained as a job is performed from the worker in response to the job request of the job requester.

상기 평가하는 단계는, 상기 신뢰실행환경에서 상기 작업자의 자격을 확인하고, 상기 확인된 자격에 따른 작업 가용성을 확인하고, 상기 작업 요청자의 요구 사항에 따라 센싱 데이터의 품질을 평가하는 단계를 포함할 수 있다. The evaluating may include checking the worker's qualifications in the trusted execution environment, checking job availability according to the checked qualifications, and evaluating the quality of the sensing data according to the requirements of the job requester. can

상기 평가하는 단계는, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하면, 신뢰실행환경에서 작업자의 공개키를 사용하여 센싱 데이터를 암호화하고, 클라우드에 상기 작업자의 공개키를 사용하여 암호화된 센싱 데이터를 저장하고, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하지 않을 경우, 신뢰실행환경에서 엔클레이브의 데이터를 삭제하는 단계를 포함할 수 있다. In the step of evaluating, if the quality of the sensing data meets the requirements of the task requester, the sensing data is encrypted using the public key of the operator in a trusted execution environment and encrypted using the public key of the operator in the cloud. and storing the sensed data, and deleting enclave data from a trusted execution environment when the quality of the sensed data does not meet the requirements of the task requester.

상기 평가하는 단계는, 상기 신뢰실행환경에서 상기 작업자로부터 수행된 작업의 센싱 데이터에 대한 보수 금액을 합산하고 합계를 업데이트하는 단계를 포함할 수 있다. The evaluating may include summing reward amounts for sensing data of jobs performed by the worker in the trusted execution environment and updating the sum.

상기 평가하는 단계는, 상기 작업자가 수행하고 있는 작업의 참여를 종료하는 경우, 상기 신뢰실행환경에 대한 종료 요청을 하고, 상기 신뢰실행환경에서 블록체인에 기반하여 상기 작업자로부터 수행된 작업에 대한 보수를 지불하는 단계를 포함할 수 있다. In the step of evaluating, when the participation in the work being performed by the worker is terminated, a termination request is made to the trusted execution environment, and a reward for the work performed by the worker is based on a block chain in the trusted execution environment. It may include the step of paying.

상기 평가하는 단계는, 상기 작업 요청자로부터 클라우드를 통해 신뢰실행환경에서 암호화된 센싱 데이터를 다운로드하고 상기 작업 요청자의 보증금을 반환하는 단계를 포함할 수 있다. The evaluating may include downloading encrypted sensing data in a trusted execution environment from the task requester through a cloud and returning a deposit of the task requestor.

크라우드 소싱 시스템은, 작업 요청자의 작업 요청을 수신하는 작업 요청 수신부; 및 상기 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 블록체인 기반의 신뢰실행환경을 통해 평가하는 품질 평가부를 포함할 수 있다. The crowd sourcing system includes a work request receiver receiving a work request from a work requester; and a quality evaluation unit that evaluates the quality of the sensing data transmitted from the worker in response to the work request through a blockchain-based trusted execution environment.

블록체인 기반 크라우드 소싱 시스템에 신뢰실행환경을 적용하여 자동으로 작업자의 센싱 데이터의 품질을 평가함에 따라 시스템 처리 성능을 향상시키고 실시간 처리 지연을 감소시킬 수 있다. By applying a trusted execution environment to a blockchain-based crowdsourcing system, it is possible to improve system processing performance and reduce real-time processing delay by automatically evaluating the quality of the worker's sensing data.

전체 크라우드 소싱 작업을 장기간 진행하면서 센싱 데이터를 간헐적으로 시스템에 전송해야 할 경우, 시스템의 인증 작업을 회차마다 진행하지 않고 블록체인의 접속 시작 및 접속 종료를 포함하는 두 번의 인증 과정만을 진행하여 데이터 교환 비용을 감소시킬 수 있다. If sensing data needs to be transmitted to the system intermittently while the whole crowdsourcing operation is carried out for a long period of time, the system authentication process is not carried out every round, but only two authentication processes, including the start and end of the connection to the blockchain, are performed to exchange data. can reduce cost.

크라우드 소싱 시스템의 자동 품질 검증을 통해 제 3자의 참여 없이 작업자의 센싱 데이터의 품질에 따라 작업자가 보상을 받을 수 있다. 데이터 품질이 높을수록 작업자는 더 많은 보상을 받을 수 있으며 작업 요청자는 요구 사항을 충족하는 센서 데이터를 얻을 수 있게 된다.Through automatic quality verification of the crowd sourcing system, workers can be compensated according to the quality of their sensing data without the participation of a third party. The higher the data quality, the more compensation the worker can receive, and the job requester can obtain sensor data that meets the requirements.

시스템의 대기 시간을 줄이고 성능을 개선하는 것 이외에 센싱 데이터의 공정성과 보안을 보장할 수 있다. 작업자로부터 업로드된 센싱 데이터가 보상을 지불한 작업 요청자만 획득할 수 있도록 하여 데이터의 보안성을 보장할 수 있다.In addition to reducing system latency and improving performance, it can ensure the fairness and security of sensing data. Security of data may be guaranteed by enabling sensing data uploaded from a worker to be obtained only by a requestor who has paid a reward.

도 1은 일 실시예에 따른 크라우드 소싱 시스템의 개괄적인 동작을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 크라우드 소싱 시스템의 동작을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 크라우드 소싱 시스템에서 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법을 상세 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 크라우드 소싱 시스템의 구성을 설명하기 위한 블록도이다.
도 5는 일 실시예에 따른 크라우드 소싱 시스템에서 수행되는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법을 설명하기 위한 흐름도이다.
1 is a diagram for explaining a general operation of a crowd sourcing system according to an embodiment.
2 is a diagram for explaining the operation of a crowd sourcing system according to an embodiment.
3 is a flowchart for explaining in detail a block chain-based crowd sourcing method capable of automatic quality check in a crowd sourcing system according to an embodiment.
Figure 4 is a block diagram for explaining the configuration of a crowd sourcing system according to an embodiment.
5 is a flowchart for explaining a block-chain-based crowdsourcing method capable of automatic quality check performed in a crowdsourcing system according to an embodiment.

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

도 1은 일 실시예에 따른 크라우드 소싱 시스템의 개괄적인 동작을 설명하기 위한 도면이다. 1 is a diagram for explaining a general operation of a crowd sourcing system according to an embodiment.

크라우드 소싱 시스템은 작업 요청자(Requester)의 작업 요청을 수신할 수 있다. 예를 들면, 작업 요청자로부터 환경 모너티링, 헬스케어, 지능형 교통, 인도어 맵 등의 작업을 위한 작업 요청이 이루어질 수 있다. The crowd sourcing system may receive a job request from a job requester. For example, a task request for tasks such as environment monitoring, health care, intelligent transportation, and indoor maps may be made from a task requester.

크라우드 소싱 시스템은 작업 요청자의 작업 요청에 대응하여 작업자(Worker)로부터 센싱 데이터를 전달받을 수 있다. 이때, 센싱 데이터는 환경 데이터, 건강 메트릭 데이터, 교통 데이터, GPS 데이터 등을 포함할 수 있다.The crowd sourcing system may receive sensing data from a worker in response to a work request from a work requester. In this case, the sensing data may include environmental data, health metric data, traffic data, GPS data, and the like.

블록체인 기반의 크라우드 소싱 시스템에 신뢰실행환경(TEE: Trusted Execution Environments)을 적용하여 자동으로 작업자(Worker)의 센싱 데이터의 품질이 평가될 수 있다. 이에, 크라우드 소싱 시스템의 처리 성능을 향상시켜 실시간 처리 지연을 감소시킬 수 있다. By applying Trusted Execution Environments (TEE) to a blockchain-based crowdsourcing system, the quality of worker sensing data can be automatically evaluated. Accordingly, real-time processing delay may be reduced by improving processing performance of the crowd sourcing system.

도 2는 일 실시예에 따른 크라우드 소싱 시스템의 동작을 설명하기 위한 도면이다. 2 is a diagram for explaining the operation of a crowd sourcing system according to an embodiment.

작업 요청자의 태스크 계약(task contract; TC)이 블록체인에 기반하여 배포될 수 있다. 태스크 계약에는 작업 요청자의 공개키, 작업 데이터의 품질 요구사항(평가 프로그램 코드) 및 작업 보수, 요청 기간, 작업자의 최대 수 등의 기타 요구사항을 포함할 수 있다.The task contract (TC) of the task requestor can be distributed based on the blockchain. The task contract may include the public key of the task requester, the quality requirements of the task data (evaluation program code), and other requirements such as task remuneration, request period, and maximum number of workers.

동시에, 작업 요청자는 작업에 사용할 지불금에 대한 예치금을 미리 신뢰실행환경에 전송할 수 있다. 신뢰실행환경은 태스크 계약 및 예치금과 관련된 정보를 엔클레이브에 저장하여 작업자의 작업 요청을 대기할 수 있다. At the same time, the job requester may transfer the deposit for the payment to be used for the job to the trusted execution environment in advance. The trusted execution environment can wait for work requests from workers by storing information related to task contracts and deposits in the enclave.

작업자(Worker)는 센싱 데이터를 신뢰실행환경에 전달할 수 있다. 작업자는 신뢰실행환경을 통해 원하는 작업을 검색하고 등록할 수 있다. 예를 들면, 크라우드 소신 시스템에 적어도 하나 이상의 작업자가 등록될 수 있다. 복수의 작업자는 작업 요청자로부터 요청된 동일한 작업을 수행할 수 있고, 또는, 서로 다른 작업 요청자로부터 요청된 작업을 각각 수행할 수 있다. A worker can transmit sensing data to a trusted execution environment. Workers can search for and register desired jobs through the trusted execution environment. For example, at least one worker may be registered in the crowd source system. A plurality of workers may perform the same job requested by the job requester, or may each perform jobs requested by different job requesters.

도 2의 크라우드 소싱 시스템의 프로토콜 아키텍처를 참고하여 도 3의 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법을 설명하기로 한다. Referring to the protocol architecture of the crowd sourcing system of FIG. 2, a block chain-based crowd sourcing method capable of automatic quality check of FIG. 3 will be described.

(1) 과정은 작업 요청자로부터 작업이 등록되는 과정이고, (2), (3), (4)과정은 작업자가 작업을 획득하고, 작업에서 요청하는 데이터를 센싱하여 전송하여 작업을 마무리하는 과정을 나타낸 것이다. 다시 말해서, 작업자와 블록체인 사이의 교류는 (2), (4) 과정을 포함하는 두 번만 진행하고, 센싱 데이터를 전송하는 과정에서는 블록체인을 거치지 않으므로 시스템 딜레이가 줄어든다. Process (1) is a process in which a job is registered by a job requester, and processes (2), (3), and (4) are processes in which a worker obtains a job, senses and transmits the data requested by the job, and completes the job. is shown. In other words, the exchange between the operator and the block chain only proceeds twice, including steps (2) and (4), and the process of transmitting sensing data does not go through the block chain, reducing system delay.

(1) 과정에 대하여 설명하기로 한다. 작업 요청자로부터 작업이 등록될 수 있다. 작업 요청자로부터 작업이 등록됨에 따라 작업과 관련된 태스크 계약(Task Contract; TC)이 블록체인에 기반하여 배포될 수 있다. 이때, 태스크 계약은 작업 요청자의 공개키, 태스크 데이터의 품질 요구사항 및 작업 보수, 요청 기간, 작업자의 최대 수를 포함하는 기타 요구사항을 포함할 수 있다. 동시에, 작업 요청자로부터 등록된 작업에 사용할 지불금에 대한 예치금이 미리 신뢰실행환경에 전송될 수 있다. 신뢰실행환경의 엔클레이브(enlave)에 태스크 계약 및 작업에 사용할 지불금에 대한 예치금이 저장되어 작업자의 응답을 대기할 수 있다. 예를 들면, 태스크 계약 및 예치금에 대한 정보가 블록체인화될 수 있다.(1) The process will be explained. A job may be registered by a job requester. As the work is registered from the work requester, the task contract (TC) related to the work can be distributed based on the blockchain. In this case, the task contract may include the public key of the task requester, quality requirements of task data, and other requirements including task compensation, request period, and maximum number of workers. At the same time, a deposit for a payment to be used for a registered job from a job requester may be transmitted to the trusted execution environment in advance. The task contract and the deposit for the payment to be used for the job are stored in the enclave of the trusted execution environment, so that the worker's response can be awaited. For example, information on task contracts and deposits can be blockchainized.

(2) 과정에 대하여 설명하기로 한다. 작업자(Worker)로부터 신뢰실행환경을 통해 작업을 수행하기 위한 작업 정보가 검색 및 등록될 수 있다. 예를 들면 블록체인 네트워크를 통해 태스크 계약에 작업자의 정보가 부가되어 블록체인화될 수 있다. 작업자에게 작업자의 정보가 부가된 작업 요청자의 태스크 계약을 포함하는 블록체인 주소가 전달될 수 있다. (2) The process will be explained. Job information for performing a job can be retrieved and registered from a worker through a trusted execution environment. For example, worker information can be added to a task contract through a blockchain network to be blockchainized. The block chain address including the task contract of the job requester to which the worker's information is added can be delivered to the worker.

(3) 과정에 대하여 설명하기로 한다. 작업 요청자의 작업 요청에 응답하여 작업자로부터 작업이 수행됨에 따라 획득된 센싱 데이터가 신뢰실행환경에 전달될 수 있다. 신뢰실행환경에서 작업자의 자격을 확인하고, 확인된 자격에 따른 작업 가용성을 확인하고, 작업 요청자의 요구 사항에 따라 센싱 데이터의 품질을 자동으로 평가할 수 있다.(3) The process will be explained. Sensing data obtained as a task is performed by the worker in response to the task requester's task request may be transmitted to the trusted execution environment. In a trusted execution environment, it is possible to check the qualifications of workers, check the availability of work according to the verified qualifications, and automatically evaluate the quality of sensing data according to the requirements of the work requester.

센싱 데이터의 품질이 작업 요청자의 요구 사항을 충족하면, 신뢰실행환경에서 작업자의 공개키를 사용하여 센싱 데이터를 암호화하고, 클라우드에 작업자의 공개키를 사용하여 암호화된 센싱 데이터를 저장할 수 있다. 또한, 센싱 데이터의 품질이 작업 요청자의 요구 사항을 충족하지 않을 경우, 신뢰실행환경에서 엔클레이브의 데이터를 삭제할 수 있다. 이때, 작업자는 반복적으로 센싱 데이터를 제출할 수 있다. 신뢰실행환경에서 작업자로부터 수행된 작업의 센싱 데이터에 대한 보수 금액을 합산하고 합계를 업데이트할 수 있다. If the quality of the sensing data meets the requirements of the task requester, the sensing data can be encrypted using the worker's public key in the trusted execution environment and the encrypted sensing data can be stored in the cloud using the worker's public key. In addition, if the quality of the sensing data does not meet the requirements of the task requester, enclave data can be deleted in the trusted execution environment. At this time, the operator may repeatedly submit sensing data. In the trusted execution environment, the amount of compensation for the sensing data of the work performed by the worker can be summed up and the sum can be updated.

(4) 과정에 대하여 설명하기로 한다. 작업자가 수행하고 있는 작업의 참여를 종료하는 경우, 신뢰실행환경에 대한 종료 요청을 하고, 신뢰실행환경에서 블록체인에 기반하여 작업자로부터 수행된 작업에 대한 보수를 지불할 수 있다. 이때, 신뢰실행환경은 한꺼번에 작업자의 작업에 대한 보수를 지불할 수 있다. (4) The process will be explained. When the worker terminates participation in the work being performed, a termination request is made to the trusted execution environment, and in the trusted execution environment, a reward for the work performed by the worker can be paid based on the block chain. At this time, the trusted execution environment can pay the worker's work at once.

(5) 과정에 대하여 설명하기로 한다. 작업 요청자로부터 클라우드를 통해 신뢰실행환경에서 암호화된 센싱 데이터를 다운로드하고 작업 요청자의 보증금을 반환할 수 있다. 예를 들면, 작업 요청자의 예치금에서 작업자에게 지불된 보수금을 제외한 나머지 금액을 보증금으로 반환할 수 있다. 또는, 작업 요청자의 예치금은 작업이 종료될 때까지 예치되는 금액이기 때문에 작업 요청자는 예치금 이외에 추가로 작업자의 작업에 대한 보수를 추가적으로 지불할 수 있다. (5) The process will be explained. It is possible to download encrypted sensing data from the task requester through the cloud in a trusted execution environment and return the task requester's deposit. For example, the remaining amount excluding the remuneration paid to the worker from the deposit of the work requester may be returned as a deposit. Alternatively, since the deposit of the job requester is an amount deposited until the job is completed, the job requester may additionally pay compensation for the worker's work in addition to the deposit.

실시예에 따르면, 블록체인 기반의 프로토콜을 통해 크라우드 소싱 시스템의 신뢰도를 향상시킬 수 있다. 기존에 센싱 데이터를 모두 블록체인에 업로드하여 처리하는 대신, 실시예에서는 오프 체인 방식으로 신뢰실행환경을 사용하여 센싱 데이터의 품질을 평가한다. 크라우드 소싱의 전체 과정에서 장기간 작업을 진행하면서 센싱 데이터를 간헐적으로 시스템에 전송해야 할 경우, 시스템의 인증(authentication) 작업을 회차마다 진행하지 않고 블록체인 접속 시작 및 접속 종료를 포함하는 두 번 만 진행하여 데이터 교환 비용을 줄일 수 있다. According to the embodiment, the reliability of the crowdsourcing system can be improved through a blockchain-based protocol. Instead of uploading and processing all of the existing sensing data to the blockchain, in the embodiment, the quality of the sensing data is evaluated using a trusted execution environment in an off-chain manner. If sensing data needs to be transmitted intermittently to the system while working for a long time throughout the whole process of crowdsourcing, authentication of the system is not carried out every round, but only twice, including the start and end of the connection to the blockchain. This can reduce the data exchange cost.

실시예에 따르면, 시스템 대기 시간을 줄이고 성능을 개선하는 것 외에도 센서 데이터의 공정성과 보안을 보장할 수 있다.According to the embodiment, in addition to reducing system latency and improving performance, fairness and security of sensor data may be ensured.

실시예에 따르면, 크라우드 소싱 시스템의 공정성을 향상시킬 수 있다. 크라우드 소싱 시스템의 자동 품질 검증 시스템을 통해 제 3자의 참여가 없이 작업자가 센싱된 데이터의 품질에 따라 보상을 받을 수 있다. 데이터 품질이 높을수록 더 많은 보상을 받을 수 있으며 작업 요청자는 요구 사항을 충족하는 센서 데이터를 획득할 수 있다. 작업 요청자가 작업자에게 비용을 지불하지 않으면 데이터 품질이 요구 사항을 충족하지 않더라도 센서 데이터를 획득할 수 없다.According to the embodiment, it is possible to improve the fairness of the crowd sourcing system. Through the automatic quality verification system of the crowd sourcing system, workers can be compensated according to the quality of the sensed data without the participation of a third party. The higher the data quality, the more compensation can be received, and the job requester can acquire sensor data that meets the requirements. If the job requester does not pay the operator, sensor data cannot be obtained even if the data quality does not meet the requirements.

또한, 작업자가 업로드한 센싱 데이터는 보상을 지불한 작업 요청자만 획득 할 수 있도록 하여 데이터의 보안성을 보장할 수 있다. In addition, the security of the data can be guaranteed by ensuring that the sensing data uploaded by the operator can be obtained only by the requestor who has paid the reward.

도 4는 일 실시예에 따른 크라우드 소싱 시스템의 구성을 설명하기 위한 블록도이고, 도 5는 일 실시예에 따른 크라우드 소싱 시스템에서 수행되는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법을 설명하기 위한 흐름도이다. 4 is a block diagram for explaining the configuration of a crowd sourcing system according to an embodiment, and FIG. 5 is a block-chain-based crowd sourcing method capable of automatic quality check performed in the crowd sourcing system according to an embodiment. It is a flow chart for

크라우드 소싱 시스템(100)의 프로세서는 작업 요청 수신부(410) 및 품질 평가부(420)를 포함할 수 있다. 이러한 프로세서의 구성요소들은 크라우드 소싱 시스템에 저장된 프로그램 코드가 제공하는 제어 명령에 따라 프로세서에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 프로세서 및 프로세서의 구성요소들은 도 5의 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법이 포함하는 단계들(510 내지 520)을 수행하도록 크라우드 소싱 시스템을 제어할 수 있다. 이때, 프로세서 및 프로세서의 구성요소들은 메모리가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.The processor of the crowd sourcing system 100 may include a work request receiving unit 410 and a quality evaluation unit 420 . Components of such a processor may be representations of different functions performed by the processor according to control instructions provided by program codes stored in the crowd sourcing system. The processor and components of the processor may control the crowd sourcing system to perform the steps 510 to 520 included in the block chain-based crowd sourcing method capable of automatic quality check of FIG. 5 . In this case, the processor and components of the processor may be implemented to execute instructions according to the code of an operating system included in the memory and the code of at least one program.

프로세서는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법을 위한 프로그램의 파일에 저장된 프로그램 코드를 메모리에 로딩할 수 있다. 예를 들면, 크라우드 소싱 시스템에서 프로그램이 실행되면, 프로세서는 운영체제의 제어에 따라 프로그램의 파일로부터 프로그램 코드를 메모리에 크라우드 소싱 시스템을 제어할 수 있다. 이때, 작업 요청 수신부(410) 및 품질 평가부(420) 각각은 메모리에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(510 내지 520)을 실행하기 위한 프로세서의 서로 다른 기능적 표현들일 수 있다.The processor may load program codes stored in a file of a program for a block-chain-based crowdsourcing method capable of automatic quality check into memory. For example, when a program is executed in a crowd sourcing system, a processor may control the crowd sourcing system by storing program codes from program files in memory under the control of an operating system. At this time, each of the task request receiving unit 410 and the quality evaluation unit 420 executes a command of a corresponding part of the program code loaded into the memory to perform the subsequent steps 510 to 520 with different functional expressions of the processor. can be picked up

단계(510)에서 작업 요청 수신부(410)는 작업 요청자의 작업 요청을 수신할 수 있다. 작업 요청 수신부(410)는 작업 요청자로부터 작업이 등록됨에 따라 작업과 관련된 태스크 계약(Task Contract; TC)을 블록체인에 기반하여 배포하고, 작업 요청자로부터 등록된 작업에 사용할 지불금에 대한 예치금이 신뢰실행환경에 전송되고, 신뢰실행환경의 엔클레이브(enlave)에 태스크 계약 및 작업에 사용할 지불금에 대한 예치금을 저장하여 작업자의 응답을 대기할 수 있다. In step 510, the job request receiving unit 410 may receive a job request from a job requester. As the work is registered from the work requester, the work request receiving unit 410 distributes the task contract (TC) related to the work based on the block chain, and the deposit for the payment to be used for the work registered from the work requester is trusted. It is sent to the environment, and the task contract and the deposit for the payment to be used for the job are stored in the enclave of the trusted execution environment to wait for the worker's response.

단계(520)에서 품질 평가부(420)는 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 블록체인 기반의 신뢰실행환경을 통해 평가할 수 있다. 품질 평가부(420)는 작업자로부터 신뢰실행환경을 통해 작업을 수행하기 위한 작업 정보가 검색 및 등록됨에 따라 작업자에게 작업자의 정보가 부가된 작업 요청자의 태스크 계약을 포함하는 블록체인 주소를 전달하고, 작업 요청자의 작업 요청에 응답하여 작업자로부터 작업이 수행됨에 따라 획득된 센싱 데이터를 신뢰실행환경을 통해 전달받을 수 있다. 품질 평가부(420)는 신뢰실행환경에서 작업자의 자격을 확인하고, 확인된 자격에 따른 작업 가용성을 확인하고, 작업 요청자의 요구 사항에 따라 센싱 데이터의 품질을 평가할 수 있다. 품질 평가부(420)는 센싱 데이터의 품질이 작업 요청자의 요구 사항을 충족하면, 신뢰실행환경에서 작업자의 공개키를 사용하여 센싱 데이터를 암호화하고, 클라우드에 작업자의 공개키를 사용하여 암호화된 센싱 데이터를 저장하고, 센싱 데이터의 품질이 작업 요청자의 요구 사항을 충족하지 않을 경우, 신뢰실행환경에서 엔클레이브의 데이터를 삭제할 수 있다. 품질 평가부(420)는 신뢰실행환경에서 작업자로부터 수행된 작업의 센싱 데이터에 대한 보수 금액을 합산하고 합계를 업데이트할 수 있다. 품질 평가부(420)는 작업자가 수행하고 있는 작업의 참여를 종료하는 경우, 신뢰실행환경에 대한 종료 요청을 하고, 신뢰실행환경에서 블록체인에 기반하여 작업자로부터 수행된 작업에 대한 보수를 지불할 수 있다. 품질 평가부(420)는 작업 요청자로부터 클라우드를 통해 신뢰실행환경에서 암호화된 센싱 데이터를 다운로드하고 작업 요청자의 보증금을 반환할 수 있다. In step 520, the quality evaluation unit 420 may evaluate the quality of the sensing data transmitted from the worker in response to the work request through a blockchain-based trusted execution environment. The quality evaluation unit 420 transmits the blockchain address including the task contract of the task requester to which the information of the worker is added to the worker as the task information for performing the task is retrieved and registered from the worker through the trusted execution environment, Sensing data obtained as the work is performed from the worker in response to the work request of the work requester may be delivered through the trusted execution environment. The quality evaluation unit 420 may check the qualification of the worker in the trusted execution environment, check the availability of the job according to the confirmed qualification, and evaluate the quality of the sensing data according to the requirements of the job requester. When the quality of the sensing data meets the requirements of the job requester, the quality evaluation unit 420 encrypts the sensing data using the public key of the operator in the trusted execution environment, and uses the public key of the operator in the cloud to perform encrypted sensing. Data is saved, and if the quality of the sensing data does not meet the requirements of the task requestor, the enclave data can be deleted in the trusted execution environment. The quality evaluation unit 420 may add up reward amounts for sensing data of jobs performed by workers in the trusted execution environment and update the sum. When the participation in the work being performed by the worker is terminated, the quality evaluation unit 420 requests termination of the trusted execution environment and pays a reward for the work performed by the worker based on the block chain in the trusted execution environment. can The quality evaluation unit 420 may download the sensing data encrypted in the trusted execution environment from the job requester through the cloud and return the job requester's deposit.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The devices described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may run an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. You can command the device. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. can be embodied in Software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer readable media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.

Claims (9)

크라우드 소싱 시스템에 의해 수행되는 자동품질확인이 가능한 블록체인 기반의 크라우드 소싱 방법에 있어서,
작업 요청자의 작업 요청을 수신하는 단계; 및
상기 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 오프체인 방식으로 블록체인 기반의 신뢰실행환경을 통해 평가하는 단계
를 포함하고,
상기 수신하는 단계는,
상기 작업 요청자로부터 작업이 등록됨에 따라 작업과 관련된 태스크 계약(Task Contract; TC)을 블록체인에 기반하여 배포하고, 상기 작업 요청자로부터 등록된 작업에 사용할 지불금에 대한 예치금이 신뢰실행환경에 전송되고, 상기 신뢰실행환경의 엔클레이브(enlave)에 태스크 계약 및 작업에 사용할 지불금에 대한 예치금을 저장하여 작업자의 응답을 대기하는 단계
를 포함하고,
상기 평가하는 단계는,
상기 작업자로부터 신뢰실행환경을 통해 작업을 수행하기 위한 작업 정보가 검색 및 등록됨에 따라 상기 작업자에게 상기 작업자의 정보가 부가된 작업 요청자의 태스크 계약을 포함하는 블록체인 주소를 전달하고, 상기 작업 요청자의 작업 요청에 응답하여 상기 작업자로부터 작업이 수행됨에 따라 획득된 센싱 데이터를 신뢰실행환경을 통해 전달받고, 상기 신뢰실행환경에서 상기 작업자의 자격을 확인하고, 상기 확인된 자격에 따른 작업 가용성을 확인하고, 상기 작업 요청자의 요구 사항에 따라 센싱 데이터의 품질을 평가하고, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하면, 신뢰실행환경에서 작업 요청자의 공개키를 사용하여 센싱 데이터를 암호화하고, 클라우드에 상기 작업 요청자의 공개키를 사용하여 암호화된 센싱 데이터를 저장하고, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하지 않을 경우, 신뢰실행환경에서 엔클레이브의 데이터를 삭제하고, 상기 신뢰실행환경에서 상기 작업자로부터 수행된 작업의 센싱 데이터에 대한 보수 금액을 합산하고 합계를 업데이트하고, 상기 작업자가 수행하고 있는 작업의 참여를 종료하는 경우, 상기 신뢰실행환경에 대한 종료 요청을 하고, 상기 신뢰실행환경에서 블록체인에 기반하여 상기 작업자로부터 수행된 작업에 대한 보수를 지불하는 단계
를 포함하고,
상기 블록체인은, 상기 작업자의 작업 요청 과정과 작업 참여 종료 과정에서 상기 작업자와 교류되는 것
을 포함하는 크라우드 소싱 방법.
In a block-chain-based crowdsourcing method capable of automatic quality check performed by a crowdsourcing system,
Receiving a job request from a job requester; and
Evaluating the quality of the sensing data transmitted from the worker in response to the work request in an off-chain manner through a blockchain-based trusted execution environment.
including,
In the receiving step,
As the job is registered by the job requester, the task contract (TC) related to the job is distributed based on the block chain, and the deposit for the payment to be used for the job registered by the job requester is transmitted to the trusted execution environment, Waiting for a response from a worker by storing a task contract and a deposit for a payment to be used for a job in an enclave of the trusted execution environment.
including,
The evaluation step is
As the job information for performing the job is retrieved and registered from the worker through the trusted execution environment, the blockchain address including the task contract of the job requester to which the information of the worker is added is transmitted to the worker, and the job requester's In response to a job request, sensing data acquired as a job is performed from the worker is received through a trusted execution environment, the qualification of the worker is verified in the trusted execution environment, and job availability according to the confirmed qualification is confirmed. , Evaluate the quality of the sensing data according to the requirements of the task requestor, and if the quality of the sensing data meets the requirements of the task requestor, encrypt the sensing data using the public key of the task requestor in a trusted execution environment , Store the encrypted sensing data using the public key of the task requestor in the cloud, and delete the enclave data from the trusted execution environment when the quality of the sensing data does not meet the requirements of the task requestor, In the trusted execution environment, the reward amount for the sensing data of the work performed by the worker is summed and the sum is updated, and when the worker's participation in the work being performed is terminated, a request to terminate the trusted execution environment is made. , Paying a reward for the work performed by the worker based on the block chain in the trusted execution environment
including,
The blockchain is exchanged with the worker during the worker's job request process and work participation termination process.
Crowdsourcing method including.
제1항에 있어서,
상기 태스크 계약은, 작업 요청자의 공개키, 태스크 데이터의 품질 요구사항 및 작업 보수, 요청 기간, 작업자의 최대 수를 포함하는 기타 요구사항을 포함하는
것을 특징으로 하는 크라우드 소싱 방법.
According to claim 1,
The task contract includes the public key of the work requester, the quality requirements of the task data, and other requirements including work compensation, request period, and maximum number of workers.
Crowdsourcing method characterized in that.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 평가하는 단계는,
상기 작업 요청자로부터 클라우드를 통해 신뢰실행환경에서 암호화된 센싱 데이터를 다운로드하고 상기 작업 요청자의 보증금을 반환하는 단계
를 포함하는 크라우드 소싱 방법.
According to claim 1,
The evaluation step is
Downloading encrypted sensing data in a trusted execution environment from the job requester through the cloud and returning the deposit of the job requester.
Crowdsourcing method including.
크라우드 소싱 시스템에 있어서,
작업 요청자의 작업 요청을 수신하는 작업 요청 수신부; 및
상기 작업 요청에 응답하여 작업자로부터 전달된 센싱 데이터의 품질을 오프체인 방식으로 블록체인 기반의 신뢰실행환경을 통해 평가하는 품질 평가부
를 포함하고,
상기 작업 요청 수신부는,
상기 작업 요청자로부터 작업이 등록됨에 따라 작업과 관련된 태스크 계약(Task Contract; TC)을 블록체인에 기반하여 배포하고, 상기 작업 요청자로부터 등록된 작업에 사용할 지불금에 대한 예치금이 신뢰실행환경에 전송되고, 상기 신뢰실행환경의 엔클레이브(enlave)에 태스크 계약 및 작업에 사용할 지불금에 대한 예치금을 저장하여 작업자의 응답을 대기하는 것을 포함하고,
상기 품질 평가부는,
상기 작업자로부터 신뢰실행환경을 통해 작업을 수행하기 위한 작업 정보가 검색 및 등록됨에 따라 상기 작업자에게 상기 작업자의 정보가 부가된 작업 요청자의 태스크 계약을 포함하는 블록체인 주소를 전달하고, 상기 작업 요청자의 작업 요청에 응답하여 상기 작업자로부터 작업이 수행됨에 따라 획득된 센싱 데이터를 신뢰실행환경을 통해 전달받고, 상기 신뢰실행환경에서 상기 작업자의 자격을 확인하고, 상기 확인된 자격에 따른 작업 가용성을 확인하고, 상기 작업 요청자의 요구 사항에 따라 센싱 데이터의 품질을 평가하고, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하면, 신뢰실행환경에서 작업 요청자의 공개키를 사용하여 센싱 데이터를 암호화하고, 클라우드에 상기 작업 요청자의 공개키를 사용하여 암호화된 센싱 데이터를 저장하고, 상기 센싱 데이터의 품질이 상기 작업 요청자의 요구 사항을 충족하지 않을 경우, 신뢰실행환경에서 엔클레이브의 데이터를 삭제하고, 상기 신뢰실행환경에서 상기 작업자로부터 수행된 작업의 센싱 데이터에 대한 보수 금액을 합산하고 합계를 업데이트하고, 상기 작업자가 수행하고 있는 작업의 참여를 종료하는 경우, 상기 신뢰실행환경에 대한 종료 요청을 하고, 상기 신뢰실행환경에서 블록체인에 기반하여 상기 작업자로부터 수행된 작업에 대한 보수를 지불하는 것을 포함하고,
상기 블록체인은, 상기 작업자의 작업 요청 과정과 작업 참여 종료 과정에서 상기 작업자와 교류되는
크라우드 소싱 시스템.
In the crowd sourcing system,
a work request receiver receiving a work request from a work requester; and
A quality evaluation unit that evaluates the quality of the sensing data transmitted from the worker in response to the work request in an off-chain manner through a blockchain-based trusted execution environment.
including,
The work request receiving unit,
As the job is registered by the job requester, the task contract (TC) related to the job is distributed based on the block chain, and the deposit for the payment to be used for the job registered by the job requester is transmitted to the trusted execution environment, Waiting for a response from a worker by storing a task contract and a deposit for payment to be used for a job in an enclave of the trusted execution environment;
The quality evaluation unit,
As the job information for performing the job is retrieved and registered from the worker through the trusted execution environment, the blockchain address including the task contract of the job requester to which the information of the worker is added is transmitted to the worker, and the job requester's In response to a job request, sensing data acquired as a job is performed from the worker is received through a trusted execution environment, the qualification of the worker is verified in the trusted execution environment, and job availability according to the confirmed qualification is confirmed. , Evaluate the quality of the sensing data according to the requirements of the task requestor, and if the quality of the sensing data meets the requirements of the task requestor, encrypt the sensing data using the public key of the task requestor in a trusted execution environment , Store the encrypted sensing data using the public key of the task requestor in the cloud, and delete the enclave data from the trusted execution environment when the quality of the sensing data does not meet the requirements of the task requestor, In the trusted execution environment, the reward amount for the sensing data of the work performed by the worker is summed and the sum is updated, and when the worker's participation in the work being performed is terminated, a request to terminate the trusted execution environment is made. , Paying a reward for the work performed by the worker based on the block chain in the trusted execution environment,
The block chain is exchanged with the worker in the process of requesting the work of the worker and ending the participation in the work.
Crowdsourcing system.
KR1020210035292A 2021-03-18 2021-03-18 Blockchain-based crowdsensing method providing automatic quality verification KR102561252B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210035292A KR102561252B1 (en) 2021-03-18 2021-03-18 Blockchain-based crowdsensing method providing automatic quality verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210035292A KR102561252B1 (en) 2021-03-18 2021-03-18 Blockchain-based crowdsensing method providing automatic quality verification

Publications (2)

Publication Number Publication Date
KR20220130429A KR20220130429A (en) 2022-09-27
KR102561252B1 true KR102561252B1 (en) 2023-07-28

Family

ID=83451861

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210035292A KR102561252B1 (en) 2021-03-18 2021-03-18 Blockchain-based crowdsensing method providing automatic quality verification

Country Status (1)

Country Link
KR (1) KR102561252B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240065940A (en) * 2022-11-07 2024-05-14 주식회사 애브체인 Method for managing user data using data processing of trust execution environment based on smart contract

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101383238B1 (en) * 2011-03-07 2014-04-08 케이비에이2, 인코포레이티드 Systems and methods for analytic data gathering from image providers at an event or geographic location
JP2020522034A (en) * 2019-03-26 2020-07-27 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited Program execution and data certification scheme with multiple key pair signatures

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
프라이빗 블록체인 및 스마트 컨트랙트 기반 고신뢰도 크라우드센싱 보상 메커니즘(정보보호학회논문지, 2018.08.31.) 1부.*

Also Published As

Publication number Publication date
KR20220130429A (en) 2022-09-27

Similar Documents

Publication Publication Date Title
WO2021121029A1 (en) Training model updating method and system, and agent, server and computer-readable storage medium
CN103248680B (en) Method and system for sharing network disk data
CN109479005A (en) Method and system for realizing block chain
US10901785B2 (en) Task deployment method, task deployment apparatus, and storage medium
US20230122720A1 (en) Systems and method for management of computing nodes
KR102561252B1 (en) Blockchain-based crowdsensing method providing automatic quality verification
García-Valls et al. Pragmatic cyber physical systems design based on parametric models
JPWO2019213488A5 (en)
JP6889389B2 (en) Operation management system and operation information disclosure method
WO2017199605A1 (en) Information terminal, communication terminal, server, license transfer system and license transfer method
KR101982783B1 (en) Method and system for managing attendance using messenger
WO2016048344A1 (en) Caching nodes
US20170228408A1 (en) Data management apparatus and method therefor
JP6351812B1 (en) Determination apparatus, determination method, and determination program
US20160381036A1 (en) Resource restriction
US20150112739A1 (en) Method and system for monetization of applications and services in communication devices
US10855743B1 (en) Efficient video transfer system
JP4563403B2 (en) Usage method and system in communication network
US11799864B2 (en) Computer systems for regulating access to electronic content using usage telemetry data
KR102077061B1 (en) Method and system for automatic load balancing of server channels based on user movement
KR20220106435A (en) Method and system for collecting user inforamtion according to providing virtual desktop infrastructure service
KR20210119736A (en) Blockchain and trusted execution environment based fairness incentive mechanism in crowdsensing
KR102359467B1 (en) Method and system for billing based on storage utilization history
KR100721407B1 (en) Method And System For Integratedly Managing Service
JP6815975B2 (en) API management system and API management method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant