KR20230053990A - Survey methods and system on blockchain that perform personal information collection of respondents using survey token - Google Patents
Survey methods and system on blockchain that perform personal information collection of respondents using survey token Download PDFInfo
- Publication number
- KR20230053990A KR20230053990A KR1020210137492A KR20210137492A KR20230053990A KR 20230053990 A KR20230053990 A KR 20230053990A KR 1020210137492 A KR1020210137492 A KR 1020210137492A KR 20210137492 A KR20210137492 A KR 20210137492A KR 20230053990 A KR20230053990 A KR 20230053990A
- Authority
- KR
- South Korea
- Prior art keywords
- survey
- token
- respondent
- blockchain
- issuer
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000004931 aggregating effect Effects 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 18
- 238000012797 qualification Methods 0.000 description 12
- 230000002776 aggregation Effects 0.000 description 7
- 238000004220 aggregation Methods 0.000 description 7
- 230000003111 delayed effect Effects 0.000 description 7
- 239000000284 extract Substances 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0203—Market surveys; Market polls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Abstract
Description
본 발명은 설문조사 토큰을 이용하여 블록체인 상에서 응답자의 메타데이터 수집이 가능한 설문조사 방법 및 이를 수행하는 시스템에 관한 것으로, 더욱 구체적으로는 개인정보 및 메타데이터가 포함된 설문조사 토큰을 이용하여 블록체인 상의 트랜잭션으로 기록함으로써 보안이 확보된 설문조사를 수행할 수 있는 방법 및 시스템에 관한 것이다.The present invention relates to a survey method capable of collecting metadata of a respondent on a blockchain using a survey token and a system for performing the same, and more specifically, to a block using a survey token containing personal information and metadata. It relates to a method and system capable of conducting a survey secured by recording it as an on-chain transaction.
블록체인은 2008년 사토시 나카모토의 Bitcoin: A Peer-to-Peer Electronic Cash System에서 블록과 블록을 연결하는 방법에서 유래하였다. 블록체인은 다수의 네트워크 노드로 구성된 분산 네트워크 상에서 해쉬링크로 묶인 데이터를 공유하는 분산 데이터베이스를 총칭한다.Blockchain originated from Satoshi Nakamoto's Bitcoin: A Peer-to-Peer Electronic Cash System in 2008, where blocks are connected to each other. Blockchain is a generic term for a distributed database that shares data bound by hash links on a distributed network composed of multiple network nodes.
블록체인에 기록된 데이터는 위변조가 사실상 불가능하고, 누구든지 블록체인에 연결함으로써 무결성(integrity)이 보장된 데이터를 확인할 수 있다는 특성을 이용하여 신뢰성 및 투명성이 요구되는 데이터의 운용 분야에 도입이 진행되고 있다. Data recorded in the blockchain is virtually impossible to forge and alter, and by using the characteristics that anyone can check the data with guaranteed integrity by connecting to the blockchain, the introduction is progressing in the field of data operation that requires reliability and transparency. It is becoming.
이러한 블록체인의 신뢰성 및 투명성은 복수의 응답자로부터 의견 또는 응답을 수집하기 위한 설문조사에도 활용될 수 있다. 특히 응답자의 답변을 블록체인에 기록하여 투명하게 공개하는 한편, 익명성이 요구되는 개인정보 등에는 설문조사의 발행자만이 접근할 수 있도록 암호화를 적용하여 설문조사 토큰을 이용한 설문조사를 수행하는 방법의 개발이 요구된다.The reliability and transparency of these blockchains can also be used in surveys to collect opinions or responses from multiple respondents. In particular, a method of conducting a survey using a survey token by recording respondents' answers in a blockchain and transparently disclosing them, while applying encryption so that only the issuer of the survey can access personal information that requires anonymity. development is required.
본 발명이 해결하고자 하는 기술적 과제는 개인정보 및 메타데이터가 포함된 설문조사 토큰을 이용하여 블록체인 상의 트랜잭션으로 기록함으로써 보안이 확보된 설문조사를 수행할 수 있는 방법 및 시스템을 제공하는 것이다.The technical problem to be solved by the present invention is to provide a method and system capable of conducting a survey with security secured by recording it as a transaction on a blockchain using a survey token containing personal information and metadata.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.
상술한 기술적 과제를 해결하기 위한 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 방법은, 설문조사를 생성하여 블록체인에 기록하는 단계, 상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계, 상기 응답자의 개인 키로 서명된 설문조사 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계, 및 상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계를 포함한다.A method of conducting a survey on a blockchain using a survey token to solve the above-described technical problem includes generating and recording a survey in a blockchain, identifying a respondent from respondents participating in the survey. Receiving the data, generating a survey token signed with the issuer's private key and providing it to the respondent, providing the survey token signed with the respondent's private key to the blockchain along with the survey results as a transaction; and verifying that the transactions are valid, recording them in the blockchain, and aggregating survey results.
본 발명의 몇몇 실시예에서, 상기 설문조사는 공개 설문조사를 포함하고, 상기 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는, 응답자의 공개 키의 해시를 상기 발행자의 개인 키로 서명한 결과를 이용하여 설문조사 토큰을 생성하는 것을 포함할 수 있다.In some embodiments of the present invention, the survey includes a public survey, and generating the survey token and providing the survey token to the respondent results in signing a hash of the respondent's public key with the issuer's private key. It may include generating a survey token using
본 발명의 몇몇 실시예에서, 상기 응답자의 개인 키로 서명된 설문조사 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계는, 상기 설문조사 토큰을 포함하는 트랜잭션 데이터를 응답자의 개인 키로 서명하여 생성한 트랜잭션을 상기 블록체인에 제공하는 것을 포함할 수 있다.In some embodiments of the present invention, providing the survey token signed with the respondent's private key to the blockchain along with the survey results as a transaction includes signing the transaction data including the survey token with the respondent's private key. and providing the generated transaction to the blockchain.
본 발명의 몇몇 실시예에서, 상기 설문조사는 익명 설문조사를 포함하고, 상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는, 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시를 상기 응답자의 식별을 위한 데이터와 함께 제공받고, 상기 블라인드된 해시를 상기 발행자의 개인 키로 서명하여 생성한 설문조사 토큰을 상기 응답자에게 제공하는 것을 포함할 수 있다.In some embodiments of the present invention, the survey includes an anonymous survey, data for identification of the respondent is provided from a respondent participating in the survey, and a survey token signed with an issuer's private key is generated to In the step of providing the responder, a hash of the responder's public key blinded with a nonce is provided together with data for identification of the responder, and the blinded hash is generated by signing with the issuer's private key. and providing a survey token to the respondent.
본 발명의 몇몇 실시예에서, 상기 설문조사 토큰을 상기 응답자에 제공하는 단계 이후에, 상기 응답자가 상기 설문조사 토큰을 상기 논스로 언블라인드(unblind)하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, the method may further include, after providing the survey token to the respondent, unblinding the survey token to the nonce by the respondent.
본 발명의 몇몇 실시예에서, 상기 응답자의 식별을 위한 데이터는 상기 응답자의 메타데이터(metadata)를 포함하고, 상기 설문조사 토큰은 상기 메타데이터에 관한 정보를 포함하는 퍼즐드(puzzled) 설문조사 토큰일 수 있다.In some embodiments of the invention, the data for identification of the respondent includes metadata of the respondent, and the survey token includes information about the metadata. can be
본 발명의 몇몇 실시예에서, 상기 설문조사는 공개 설문조사를 포함하고, 상기 퍼즐드 설문조사 토큰은 상기 메타데이터가 저장된 내부 데이터베이스 주소를 암호화한 결과를 포함할 수 있다.In some embodiments of the present invention, the survey may include an open survey, and the puzzled survey token may include a result of encrypting an internal database address in which the metadata is stored.
본 발명의 몇몇 실시예에서, 상기 설문조사는 익명 설문조사를 포함하고,In some embodiments of the invention, the survey comprises an anonymous survey;
상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는, 응답자로부터 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시와 상기 응답자의 메타데이터를 포함한 패키지를 제공받고, 상기 블라인드된 해시와 메타데이터를 상기 발행자의 개인 키로 서명하여 생성한 설문조사 토큰을 상기 응답자에게 제공하는 것을 포함할 수 있다.The step of receiving data for identification of the respondent from the respondent participating in the survey, generating a survey token signed with the issuer's private key, and providing the survey token to the respondent is blinded with a nonce from the respondent. Receiving a package including a hash of the public key of the respondent and metadata of the respondent, and providing the respondent with a survey token generated by signing the blinded hash and metadata with the private key of the issuer. .
본 발명의 몇몇 실시예에서, 상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계는, 상기 트랜잭션에 포함된 상기 응답자의 개인 키로 서명된 설문조사 토큰을 상기 발행자의 공개 키로 검증하는 것을 포함할 수 있다.In some embodiments of the present invention, the step of verifying that the transaction is valid, recording it in the blockchain, and aggregating the survey results includes providing a survey token signed with the respondent's private key included in the transaction to the issuer. This may include verifying with a public key.
본 발명의 몇몇 실시예에서, 상기 서명된 설문조사 토큰을 블록체인에 트랜잭션으로 제공한 결과를 상기 설문조사의 결과로 벤더에게 제공하는 단계; 및 상기 설문조사 참여 증거를 검증하고, 검증이 완료된 응답자에 대해 보상을 제공하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, providing a result of providing the signed survey token as a transaction to a blockchain to a vendor as a result of the survey; and verifying the survey participation evidence and providing a reward to a respondent whose verification is completed.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Details of other embodiments are included in the detailed description and drawings.
본 발명의 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 방법 및 시스템에 따르면, 설문조사 토큰에 포함된 개인 정보 또는 메타데이터가 발행자를 제외한 외부에 노출되지 않은 상태로 설문조사에 대한 답변 제출 및 집계가 가능하므로 설문조사의 익명성이 보장될 수 있으며, 설문조사의 답변이 블록체인에 트랜잭션으로 기록되므로 답변의 무결성이 보장될 수 있다.According to the method and system for conducting a survey on a blockchain using a survey token according to an embodiment of the present invention, personal information or metadata included in the survey token is not exposed to the outside world except for the issuer. Since it is possible to submit and aggregate answers to surveys, the anonymity of surveys can be guaranteed, and since survey responses are recorded as transactions in the blockchain, the integrity of answers can be guaranteed.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
도 1은 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 시스템의 블록도이다.
도 2는 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상에서 수행되는 설문조사 방법을 설명하기 위한 데이터 흐름도이다.
도 3은 본 발명의 몇몇 실시예에 따른 설문조사 초기화를 설명하기 위한 도면이다.
도 4a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 4b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 퍼즐드 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 퍼즐드 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 6a는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 즉각적인 답변 제출을 설명하기 위한 도면이다.
도 6b는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 지연된 답변 제출을 설명하기 위한 도면이다.1 is a block diagram of a system for conducting a survey on a blockchain using a survey token, in accordance with some embodiments of the present invention.
2 is a data flow diagram illustrating a survey method performed on a blockchain using a survey token according to some embodiments of the present invention.
3 is a diagram for explaining initialization of a survey according to some embodiments of the present invention.
4A is a diagram for explaining generation of a survey token for an open survey according to some embodiments of the present invention.
4B is a diagram for explaining generation of a survey token for an anonymous survey according to some embodiments of the present invention.
5A is a diagram for explaining generation of a puzzled survey token for an open survey according to some embodiments of the present invention.
5B is a diagram for explaining generation of a puzzled survey token for an anonymous survey according to some embodiments of the present invention.
6A is a diagram for explaining immediate response submission of a respondent included in a survey method according to some embodiments of the present invention.
6B is a diagram for explaining a respondent's delayed response submission included in a survey method according to some embodiments of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention, and methods of achieving them, will become clear with reference to the detailed description of the following embodiments taken in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in various different forms, only these embodiments make the disclosure of the present invention complete, and common knowledge in the art to which the present invention belongs. It is provided to fully inform the holder of the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numbers designate like elements throughout the specification.
하나의 구성 요소가 다른 구성 요소와 "연결된(connected to)" 또는 "커플링된(coupled to)" 이라고 지칭되는 것은, 다른 구성 요소와 직접 연결 또는 커플링된 경우 또는 중간에 다른 구성 요소를 개재한 경우를 모두 포함한다. 반면, 하나의 구성 요소가 다른 구성 요소와 "직접 연결된(directly connected to)" 또는 "직접 커플링된(directly coupled to)"으로 지칭되는 것은 중간에 다른 구성 요소를 개재하지 않은 것을 나타낸다. "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다. A component is said to be "connected to" or "coupled to" another component when it is directly connected or coupled to the other component or through another component in between. include all cases. On the other hand, when one component is referred to as “directly connected to” or “directly coupled to” another component, it indicates that another component is not intervened. “And/or” includes each and every combination of one or more of the recited items.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.Terminology used herein is for describing the embodiments and is not intended to limit the present invention. In this specification, singular forms also include plural forms unless specifically stated otherwise in a phrase. As used herein, "comprises" and/or "comprising" means that a stated component, step, operation, and/or element is present in the presence of one or more other components, steps, operations, and/or elements. or do not rule out additions.
비록 제1, 제2 등이 다양한 구성 요소들을 서술하기 위해서 사용되나, 이들 구성 요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성 요소를 다른 구성 요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성 요소는 본 발명의 기술적 사상 내에서 제2 구성 요소 일 수도 있음은 물론이다.Although first, second, etc. are used to describe various constituent elements, these constituent elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Accordingly, it goes without saying that the first component mentioned below may also be the second component within the technical spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used in a meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined.
도 1은 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 시스템(1)의 블록도이다.1 is a block diagram of a
도 1을 참조하면, 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 시스템(1)은 발행자(100), 응답자(200), 벤더(300) 및 블록체인(500)을 포함할 수 있다. 이하에서 설명되는 발행자(100), 응답자(200), 벤더(300) 등의 구성 요소는 스마트폰, 개인용 컴퓨터(Personal Computer; PC), 서버 컴퓨터, 태블릿 PC, 하드웨어 지갑(wallet) 등의 블록체인(500) 상에서 설문조사의 생성 또는 답변 제출을 진행할 수 있는 컴퓨팅 장치를 포함할 수 있다.Referring to FIG. 1, a
발행자(100)는 본 발명에서 수행되는 설문조사(110)의 전체적인 프로세스를 관리할 수 있다. 발행자(100)는 설문조사(110)를 생성하고, 설문조사에 참여하고자 하는 응답자(200)를 인증하며, 설문조사(110)의 결과를 집계할 수 있다.The
발행자(100)에 의하여 생성되는 설문조사(110)는 그 목적에 따라 다양한 특성을 갖도록 정의될 수 있다. 예를 들어 설문조사(110)는 공개 설문조사(Open survey)이거나 익명 설문조사(Anonymous survey)일 수 있으며, 투표 즉시 집계가 가능한 즉각적인(immediate) 답변 제출이거나 지연된(delayed) 집계가 가능한 암호화된 답변 제출일 수도 있다.The
또한, 설문조사(110)는 응답자(200)의 식별을 위한 개인 정보 만을 포함한 설문조사 토큰이 이용되는 투표이거나, 응답자(200)의 메타데이터(metadata)를 포함하는 퍼즐드(puzzled) 설문조사 토큰이 이용되는 투표일 수도 있다.In addition, the
퍼즐드(puzzled) 설문조사 토큰은 설문조사(110)를 진행하는 발행자(100)가 필요로 하는 정보만을 퍼즐처럼 결합하여 생성할 수 있는 설문조사 토큰을 의미한다. 응답자(200)는 사전에 발행자(100)에 대하여 입력한 정보를 기초로 자격을 인증받아 퍼즐드 설문조사 토큰을 제공받을 수 있다. 발행자(100)가 퍼즐드 설문조사 토큰을 생성할 때 응답자의 식별을 위한 개인 정보 중 필요로 하는 정보만을 결합하여 생성할 수 있으므로, 퍼즐드 설문조사 토큰을 제공받는 응답자(200)마다 고유의 토큰을 제공받게 된다. 후술하는 것과 같이 퍼즐드 설문조사 토큰의 생성을 위해 결합된 개인 정보는 암호화될 수 있다.A puzzled survey token refers to a survey token that can be generated by combining only information required by the
응답자(200)는 제공된 퍼즐드 설문조사 토큰을 이용하여 이하에서 설명되는 설문조사에 이용할 수 있을 뿐만 아니라, 응답자는 퍼즐드 설문조사 토큰을 제3자에게 제공함으로써 응답자(200) 고유의 자격 또는 신분을 검증받을 수 있는 일종의 ID로 활용할 수 있다.Not only can the respondent 200 use the puzzled survey token provided to the survey described below, but also the respondent 200's unique qualification or identity by providing the puzzled survey token to a third party. can be used as a kind of ID that can be verified.
이 때 발행자(100)로부터 발행되는 퍼즐드 설문조사 토큰에는 응답자(200)와 관련된 개인 정보는 포함되지 않는다.At this time, the puzzled survey token issued by the
또한 응답자(200)는 퍼즐드 설문조사 토큰에 설문조사 결과와 함께 메타데이터(metadata)로 표현되는 응답자(200)에 관한 개인 정보를 결합하여 설문에 참여할 수 있다. 발행자(100)는 퍼즐드 설문조사 토큰에 포함된 설문 조사 결과와 함께 메타데이터를 분석함으로써 설문조사에 대한 더욱 자세한 결과를 얻을 수 있다. In addition, the
발행자(100)는 발행자 고유의 개인 키(PrivI), 고유 키(PubI) 등을 생성할 수 있다. 뒤에서 설명하는 것과 같이 설문조사(110)에 사용되는 설문조사 토큰(120)이 퍼즐드 설문조사 토큰인 경우, 발행자(100)는 퍼즐드 설문조사 토큰을 암호화 및 복호화하기 위한 대칭 키(KeyI)와, 이에 포함되는 메타데이터의 암호화 및 복호화에 필요한 한 쌍의 키(EncM, DecM)를 생성할 수 있다.The
발행자(100)는 응답자(200)로부터 개인 식별 데이터 또는 메타데이터가 포함된 설문조사 참여 요청에 대해 응답자(200)의 자격을 검증(verify)하는 한편, 검증을 성공적으로 통과한 응답자(200)에 대해 설문조사 토큰(120)을 제공할 수 있다.The
이 과정에서 설문조사 토큰(120)의 생성 등을 위해 키를 이용하여 하나 이상의 서명을 생성할 수 있다.In this process, one or more signatures may be generated by using a key to generate the survey token 120 or the like.
또한, 발행자(100)는 설문조사(110)의 시작과 끝을 알리거나, 블록체인(500) 상에 트랜잭션의 형태로 기록된 설문조사 결과에 대하여, 유효한 트랜잭션을 집계하고 블록체인에 게시함으로써 설문조사의 집계를 수행할 수 있다.In addition, the
응답자(200)는 발행자(100)에 대하여 개인 식별 데이터 또는 메타데이터가 포함된 설문조사 참여 요청을 제공하고, 요청에 대응하여 제공된 설문조사 토큰(120)을 이용하여 설문조사를 수행할 수 있다. 설문조사는 설문조사 토큰(120)을 블록체인(500) 상의 주소로 전송하기 위한 트랜잭션(transaction)을 블록체인에 기록함으로써 수행될 수 있다.The
도 1의 실시예에서, 응답자(200)가 설문조사(110)의 수행을 위해 설문조사 애플리케이션(400)을 이용하는 것이 예시적으로 도시된다. 설문조사 애플리케이션(400)은 설문조사(110)의 수행 및 답변의 제출을 위해 스마트폰, 태블릿 PC, 데스크탑 컴퓨터, 노트북 컴퓨터 등의 컴퓨팅 장치 상에서 수행되는 응용 프로그램을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.In the embodiment of FIG. 1 ,
비록 도 1에는 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 시스템(1)이 하나의 응답자(200)를 포함하는 것으로 도시되었으나 본 발명이 이에 제한되는 것은 아니다. 본 시스템(1)이 수행하는 설문조사의 목적에 부합하도록, 복수의 응답자(200)에 대한 설문조사가 수행될 수 있는 것은 물론이다.Although FIG. 1 shows a
또한, 응답자(200)는 설문조사 참여의 증거를 벤더(300)에게 제시하고, 상기 증거의 검증이 완료되면 제공된 보상을 수령하고, 이를 저장할 수 있다. 벤더(300)는 응답자(200)로부터 제공된 보상의 청구를 검증하고, 청구가 유효한 경우 응답자(200)의 지갑 주소 또는 청구에 지정된 주소로 보상을 제공할 수 있다.In addition, the
블록체인(500)은 복수의 컴퓨팅 장치로 구성된 노드가 서로 연결되어 성립하는 네트워크를 포함할 수 있다. 블록체인(500)을 구성하는 복수의 노드는 설문조사의 전 과정을 진행 및 기록하기 위해 실행되는 트랜잭션 또는 스마트 컨트랙트를 상호 검증할 수 있다. 블록체인(500)에는 발행자(100)에 의해 생성된 설문조사(110), 응답자(200)에 의해 생성된 설문조사의 답변 및 답변들을 집계한 결과 등이 기록될 수 있다.The
도 2는 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상에서 수행되는 설문조사 방법을 설명하기 위한 데이터 흐름도이다.2 is a data flow diagram illustrating a survey method performed on a blockchain using a survey token according to some embodiments of the present invention.
도 2를 참조하면, 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상에서 수행되는 설문조사 방법은, 발행자(100)로부터 설문조사가 생성 및 발표되는 단계(S110), 응답자(200)가 개인 식별 데이터 또는 메타데이터를 이용하여 발행자(100) 측에 설문조사를 위한 등록을 수행하는 단계(S120), 발행자(100)가 응답자(200)의 자격을 검증하고, 검증 결과 응답자(200)가 유효한 자격을 가진 경우 설문조사 토큰을 생성하여 응답자(200)에게 제공하는 단계(S130), 응답자(200)로부터 설문조사 토큰을 이용하여 설문조사 답변이 블록체인(500)에 제출되는 단계(S140), 발행자(100)가 블록체인(500) 상에 기록된 설문조사 답변을 집계하는 단계(S150), 집계된 설문조사 답변에 기초하여 발행자(100)가 블록체인(500)에 설문조사 결과를 기록하는 단계(S160), 응답자(200)가 설문조사 참여 증거를 벤더(300)에 제공하는 단계(S170), 벤더(300)가 설문조사 참여 증거를 검증하고 블록체인 상의 응답자 지갑에 보상을 제공하는 단계(S180) 등을 포함할 수 있다. 이하의 도면들을 참조하여 본 발명의 실시예에 따른 설문조사 방법의 각 단계들을 설명하도록 한다.Referring to FIG. 2 , a survey method performed on a blockchain using a survey token according to some embodiments of the present invention includes generating and announcing a survey from an issuer 100 (S110), a respondent 200 ) performs registration for a survey with the
도 3은 본 발명의 몇몇 실시예에 따른 설문조사 초기화를 설명하기 위한 도면이다.3 is a diagram for explaining initialization of a survey according to some embodiments of the present invention.
도 3을 참조하면, 발행자(100)는 설문조사(110)의 생성 및 발표를 통한 설문조사 초기화를 진행할 수 있다. 발행자(100)는 설문조사 토큰(120)의 서명에 사용할 하나 이상의 공개 키 및 개인 키 쌍(PubI, PrivI)을 생성할 수 있다.Referring to FIG. 3 , the
또한, 뒤에서 설명하는 것과 같이 설문조사 토큰(120)이 응답자(200)의 메타데이터를 포함하는 퍼즐드 설문조사 토큰인 경우, 퍼즐드 설문조사 토큰을 암호화 및 복호화하기 위한 키(KeyI)를 생성할 수 있다. 상기 키(KeyI)는 대칭키 암호화 알고리즘에 사용될 수 있으며, 이러한 알고리즘은 AES(Advanced Encryption Standard) 알고리즘을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.In addition, as described later, when the
발행자(100)는 설문조사(110)의 생성을 위해 설문조사를 식별하기 위한 식별자(SurveyID)를 선언할 수 있다. 상기 식별자(SurveyID)는 예를 들어 설문조사의 문자열 식별자에 포함된 스트링의 해시를 포함할 수 있으며, 해시를 연산하는 알고리즘은 예를 들어 SHA-2, SHA-3 등을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.The
발행자(100)로부터 생성된 설문조사(110)는 예를 들어 JSON, YAML, TOML, XML 또는 설문조사 앱(400)에 의해 처리될 수 있는 형식의 구조화된 문서를 포함할 수 있다. 이러한 문서에는 적어도 하나 이상의 질문이 포함될 수 있다. 또한, 설문조사(110)는 참여하고자 하는 응답자가 개인 데이터 등과 함께 설문조사 토큰을 요청하기 위해 접속하는 연락처(contact point) 정보를 포함할 수 있다.The
또한, 설문조사(110)는 응답자(200)에 관한 개인 정보(이하에서 메타데이터(metadata)로 설명한다.)를 기록할 수 있는 구조화된 쿼리 문서(RespondentDoc)를 포함할 수 있다. 발행자(100)로부터 상기 문서(RespondentDoc)을 포함하는 설문조사(110)가 응답자(200)로 제공되면, 응답자(200)는 상기 문서(RespondentDoc)의 양식을 작성함으로써 메타데이터를 생성할 수 있다. 상기 메타데이터는 예를 들어 응답자(200)의 나이, 출생 지역, 성별과 같은 개인 정보에 관한 다양한 질문들을 포함할 수 있다.In addition, the
이 때 발행자(100)는 설문조사(110)의 참여 자격에 일정한 조건을 부여할 수 있다. 예를 들어, 특정 성별, 연령대, 거주지역 등에 관한 제한을 추가하고, 이후 응답자(200)로부터 메타데이터가 포함된 설문조사 토큰이 제공되면 상기 일정한 조건에 따라 응답 결과를 필터링하고, 설문조사 집계에 이용할 수 있다.In this case, the
발행자(100)는 설문조사(110)의 생성과 함께 설문조사(110)의 조사 방식을 규정할 수 있다. 설문조사(110)는 예를 들어 응답자(200)의 신원이 공개되며 답변이 추적 가능한 공개 설문조사이거나, 응답자에 대한 추적이 불가능한 익명 설문조사를 포함할 수 있다.The
또한, 발행자(100)는 설문조사(110)의 생성과 함께 설문조사(110)의 집계 방식을 규정할 수 있다. 설문조사(110)의 답변의 집계는 응답자(200)에 의해 제출된 직후 집계되는 즉각적인 집계와, 모든 응답자(200)에 의해 답변 제출이 완료된 후에만 확인할 수 있는 지연된 집계를 포함할 수 있다.In addition, the
만약 설문조사(110)가 지연된 집계에 의해 답변이 집계되는 경우, 응답자(200)는 응답자(200)의 답변을 암호화하기 위한 키 쌍(EncI, DecI)을 생성할 수 있다.If the answers of the
발행자(100)는 설문조사(110)의 생성을 완료하고, 생성된 설문조사(110)를 블록체인(500)에 기록함으로써 설문조사(110)를 발표할 수 있다. 블록체인(500)에 기록된 설문조사(110)는 공개됨으로써 임의의 응답자에 의하여 접근이 가능할 수 있다.The
본 발명의 몇몇 실시예에서, 발행자(100)에 의해 설문조사(110)가 생성되기 이전에, 설문조사(110)의 대상이 되는 불특정 다수의 참여자, 즉 설문조사 토큰을 제공받을 수 있는 응답자(200) 후보로부터 소정의 정보를 제공받을 수 있다. 제공된 응답자(200) 후보들의 소정의 정보는 발행자(100)에 대하여 응답자(200)가 설문조사 참여 요청을 제공한 경우 응답자 자격의 검증을 수행하기 위해 활용될 수 있다.In some embodiments of the present invention, before the
도 4a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.4A is a diagram for explaining generation of a survey token for an open survey according to some embodiments of the present invention.
도 4a를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 공개 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다.Referring to FIG. 4A , the
응답자(200)는 블록체인(500)에 기록된 설문조사(110)로부터 발행자(100)에 접근할 수 있는 연락처를 추출할 수 있다. 해당 연락처를 통해 응답자(200)는 개인데이터 및 해시 등을 전송함으로써 발행자(100)에게 설문조사 토큰(120)을 요청할 수 있다. 한편, 응답자(200)는 설문조사 토큰(120)을 요청하기 이전에, 트랜잭션의 출발지 주소로 사용되는 블록체인(500) 상의 지갑 주소를 생성할 수 있다. 이후에 응답자(200)의 지갑 주소로 벤더(300)가 설문조사 참여에 대한 보상을 제공할 수 있다.
응답자(200)는 설문조사(110)의 트랜잭션을 검증하기 위한 공개 키(PubV)와, 설문조사(110)의 트랜잭션에 서명하는 것에 사용되는 개인 키(PrivV)를 생성할 수 있다. 응답자(200)의 공개 키(PubV)와 개인 키(PrivV)는 서로 대응(match)될 수 있다.
응답자(200)는 응답자(200)의 신원을 식별할 수 있는 개인 식별 데이터 와 함께 응답자의 공개 키(PubV)를 발행자(100)에게 제공할 수 있다. 이와 함께, 응답자(200)는 상기 개인 식별 데이터를 포함하는 설문조사 참여 요청을 응답자의 개인 키(PrivV)로 서명하여 발행자(100)에게 제공할 수 있다.The
응답자(200)의 개인 식별 데이터는 예를 들어, 응답자(200)의 지갑 주소, 소속, 직함, 보안 등급 등을 포함할 수 있다.Personal identification data of the respondent 200 may include, for example, the respondent's 200 wallet address, affiliation, title, security level, and the like.
응답자(200)로부터 설문조사 참여 요청을 제공받은 발행자(100)는 요청에 포함된 응답자(200)의 응답자(200)의 개인 식별 데이터를 확인하고, 설문 조사에 참가할 수 있는 자격을 평가할 수 있다. 이러한 평가는 예를 들어, 응답자(200)의 개인 식별 데이터가 발행자(100)가 미리 저장하고 있는 응답자 명부와 일치하는지 여부 등에 기초할 수 있으나 본 발명이 이에 제한되는 것은 아니다.Upon receiving the survey participation request from the
발행자(100)는 응답자(200)에 대한 평가가 종료되면, 설문조사 토큰을 생성할 수 있다. 설문조사 토큰(SurveyTokenI)은 응답자의 공개 키(PubV)의 해시를 발행자의 개인 키(PrivI)로 서명한 결과(SurveyTokenI = Sign(hash(PubV), PrivI)을 포함할 수 있다. 여기서 바이트 스트링 bytes를 개인 키 privKey로 서명하는 연산을 수행하는 Sign(bytes, privKey)은 예를 들어 DSA(Digital Signature Algorithm) 서명, ECDSA(Elliptic Curve Digital Signature Algorithm) 서명 또는 Ed25519 또는 기타 공지된 디지털 서명 알고리즘을 사용할 수 있다.When the evaluation of the
또한, 발행자(100)는 앞서 제공된 응답자(200)의 개인 식별 데이터를 조합하여 설문조사 토큰을 생성할 수 있다. 이와 같이 생성된 토큰은 응답자(200) 고유의 토큰이 됨으로써 일종의 NFT로 기능할 수 있다.In addition, the
생성된 설문조사 토큰(120)은 보안 채널을 통해 응답자(200)에게 제공될 수 있다. 응답자(200)는 이후 단계를 위해 제공된 토큰(120)을 별도의 처리 없이 그대로 보관하고 있을 수 있다.The generated survey token 120 may be provided to the respondent 200 through a secure channel. The
도 4b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.4B is a diagram for explaining generation of a survey token for an anonymous survey according to some embodiments of the present invention.
도 4b에 의해 설명되는 익명 설문조사는, 응답자(200)의 신원이 발행자(100)에 의해서도 노출되지 않는 설문조사 과정이 포함된다. 즉, 이하에서는 발행자(100)는 응답자(200)가 제공한 응답자의 개인키에 관한 정보를 알지 못한 채 자신의 개인 키로 서명하여 응답자(200)에게 제공하는 일련의 과정이 설명된다.The anonymous survey illustrated by FIG. 4B includes a survey process in which the identity of the
도 4b를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 익명 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다. 이후에 설명하는 것과 같이, 공개 설문조사와는 다르게 익명 설문조사를 수행하는 경우 응답자의 식별을 방지하기 위한 별도의 단계들이 추가적으로 수행될 수 있다.Referring to FIG. 4B, the
응답자(200)가 발행자(100)의 연락처를 추출하고, 개인 키/공개 키(PrivV, PubV)를 생성하는 것은 앞서 설명한 공개 설문조사의 경우와 동일할 수 있다.Extracting the contact information of the
한편, 응답자(200)는 응답자의 공개 키의 블라인드(blind) 해시를 생성하고, 응답자(200)의 개인 식별 데이터와 함께 발행자(100)에 제공할 수 있다.Meanwhile, the
구체적으로, 응답자(200)는 응답자의 공개 키(PubV)의 해시(hpk)를 연산할 수 있다(hpk = hash(PubV)). 또한, 응답자(200)는 발행자의 공개 키(PubI)와 랜덤하게 생성된 논스(nonce)를 이용하여 공개 키의 해시(hpk)를 블라인드한 결과(bpk)를 연산할 수 있다(bpk = Blind(hpk, PubI, nonce)).Specifically, the
여기서 블라인드(blind)는 Blind RSA signature와 같이 바이트 문자열의 내용을 공개하지 않고 바이트 문자열에 안전하게 서명할 수 있는 프로토콜을 의미할 수 있다. 이러한 블라인드 서명에서 보낸 사람의 메시지는 수신자가 서명하기 전에는 블라인드되며, 서명 당사자는 메시지 내용을 알지 못한다. 보낸 사람은 서명된 메시지를 언블라인드(unblind)함으로써 적절하게 서명된 메시지를 얻을 수 있다.Here, "blind" may refer to a protocol capable of safely signing a byte string without disclosing the contents of the byte string, such as Blind RSA signature. In such a blind signature, the sender's message is blinded until the recipient signs it, and the signing party does not know the contents of the message. The sender can obtain a properly signed message by unblinding the signed message.
응답자(200)는 응답자의 공개 키의 블라인드 해시(bpk)를 응답자의 개인 식별 데이터와 함께 보안 통신 채널을 통해 발행자(100)에게 제공할 수 있다. 발행자(100)는 응답자(200)에 대한 평가가 종료되면, 설문조사 토큰(SurveyTokenI)을 생성할 수 있다. 설문조사 토큰(SurveyTokenI)은 제공된 블라인드 해시(bpk)를 발행자의 개인 키(PrivI)로 RSA 서명한 결과(SurveyTokenI = SignRSA(bpk, PrivI))를 포함할 수 있다. 여기서 바이트 스트링 bytes를 개인 키 privKey로 RSA 서명하는 연산을 수행하는 SignRSA(bytes, privKey)는, 바이트 스트링의 배열로부터 얻어진 큰 정수 m을 지수 e와 모듈로 N으로 연산(num(bytes)^e mod N)하는 것을 의미할 수 있다.
응답자(200)는 발행자로부터 제공된 설문조사 토큰(SurveyTokenI)을 언블라인드(unblind)할 수 있다. 즉, 앞서 공개 키의 블라인드 해시(bpk) 생성 시 사용한 논스(nonce)를 이용하여 언블라인드된 설문조사 토큰(SurveyTokneV)을 생성(SurveyTokenV = Unblind(SurveyTokenI, nonce)하는 것이다.The
위와 같은 블라인드 및 언블라인드 연산을 통한 일련의 과정의 핵심 특징은 응답자(200)가 얻은 언블라인드된 설문조사 토큰(SurveyTokenV)이 SignRSA(hash(PubV), PrivI), 즉 응답자의 공개 키(PubV)에 대한 발행자의 서명과 동일하다는 것에 있다. 블라인드 서명 과정 덕분에 발행자(100)는 응답자의 공개 키(PubV)의 값을 알지 못한 채 서명하게 된다. 응답자(200)가 설문조사 트랜잭션에 서명하기 위해 자신의 키(PrivV)를 사용하는 경우 발행자(100)를 포함한 어느 누구도 실제 응답자를 추적할 수 없게 된다.The key feature of the series of processes through the above blind and unblind operations is that the unblinded survey token (SurveyToken V ) obtained by the
도 5a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 퍼즐드 설문조사 토큰의 생성을 설명하기 위한 도면이다. 도 5a 및 하기 5b에서 설명하는 퍼즐드 설문조사 토큰은 연령, 출신 지역, 성별 등과 같이 응답자(200)에 대한 몇 가지 추가 정보, 즉 메타데이터를 포함하는 설문조사 토큰을 의미할 수 있다. 상기 퍼즐드 설문조사 토큰이 이와 같은 메타데이터를 포함함으로써, 응답자(200)의 개인 정보를 침해하지 않고 응답자에 대한 검증 가능한 정보가 발행자(100)에게 제공될 수 있다. 즉, 응답자(200)가 자발적으로 제공한 최소한의 개인 정보에 기초하여 설문조사 진행이 가능하며, 이후 설명되는 것과 같이 발행자(100)만이 식별 및 복호화할 수 있는 메타데이터를 이용함으로써 개인정보 유출 방지 및 개인정보 주체의 데이터 주궝 확보가 가능하다.5A is a diagram for explaining generation of a puzzled survey token for an open survey according to some embodiments of the present invention. The puzzled survey token described in FIGS. 5A and 5B may refer to a survey token including some additional information about the
메타데이터는 예를 들어, JSON, YAML, TOML, XML 등과 같은 구조화된 형식의 문서로 구성될 수 있다.Metadata may be composed of documents in a structured format such as, for example, JSON, YAML, TOML, XML, and the like.
메타데이터는 발행자(100)의 내부 데이터베이스에 저장될 수 있으며, 내부 데이터베이스는 저장된 메타데이터를 고유하게 식별하기 위한 EntryID를 포함할 수 있다. 또한 퍼즐드 설문조사 토큰에는 해당 메타데이터에 대한 불투명한(opaque) 참조로 암호화된 EntryID, 즉 oeid가 포함될 수 있다.The metadata may be stored in an internal database of the
도 5a를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 공개 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 퍼즐드 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다.Referring to FIG. 5A, a
설문조사(110)가 공개 설문조사인 경우, 응답자(200)는 식별을 위한 개인 데이터와 함께 메타데이터에 포함될 수 있는 개인 정보를 발행자(100)에게 제공할 수 있다. 발행자(100)는 제공된 개인 정보를 참조하여 응답자(200)의 메타데이터를 완성시키고, 내부 데이터베이스에 저장할 수 있다.If
응답자(200)가 설문조사(110)에 포함된 발행자(100)의 연락처를 추출하는 한편, 응답자(200)에 관한 개인 정보를 기록할 수 있는 구조화된 쿼리 문서(RespondentDoc)를 완성할 수 있다.While the respondent 200 extracts the contact information of the
응답자(200)는 자신의 공개 키(PubV), 개인 식별 데이터, 메타데이터가 포함된 문서(RespondentDoc)와 함께, 설문조사 참여의 요청을 응답자의 개인 키(PrivV)로 서명하여 발행자(100)에게 제공할 수 있다.The respondent 200 signs the request to participate in the survey with the respondent's private key (Priv V ) along with a document (RespondentDoc) including his/her public key (PubV), personal identification data, and metadata, and the issuer (100) can be provided to
발행자(100)는 제공된 데이터 중 응답자(200)의 개인 데이터를 확인하고, 설문 조사에 참가할 수 있는 자격을 평가할 수 있다. 이와 함께 응답자(200)의 메타데이터는 고유의 EntryID로 식별될 수 있도록 발행자(100)의 내부 데이터베이스에 저장될 수 있다.The
발행자(100)는 EntryID를 암호화하여 불투명한(opaque) 메타데이터 ID(oeid)를 생성할 수 있다(oeid = Enc(EntryID, KeyI). 여기서 지정된 key를 사용하여 bytes 문자열의 비대칭 암호화를 연산하는 Enc(bytes, key)는 공지된 암호화 알고리즘을 이용하는 것을 포함할 수 있다.The
또한, 발행자(100)는 응답자의 공개 키(PubV)의 해시를 발행자의 개인 키(PrivI)로 서명하고(sk = Sign(hash(PubV), PrivI) 공개 설문조사의 진행을 위한 퍼즐드 설문조사 키(sk)의 데이터 구조의 해시(hd)를 연산할 수 있다(hd = hash(oeid || sk). 마지막으로, 발행자(100)는 발행자의 디지털 서명이 기재된 데이터의 쌍을 포함하는 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)을 생성할 수 있다(PuzzSurveyTokenI = [oeid, sk, Sign(hd, PrivI).In addition, the
발행자(100)는 생성된 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)을 그대로 발행자의 퍼즐드 설문조사 토큰(PuzzSurveyTokenV = PuzzSurveyTokenI)으로 하여 보관할 수 있다.The
도 5b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 퍼즐드 설문조사 토큰의 생성을 설명하기 위한 도면이다.5B is a diagram for explaining generation of a puzzled survey token for an anonymous survey according to some embodiments of the present invention.
메타데이터를 포함하는 퍼즐드 설문조사 토큰을 이용한 익명의 설문조사를 수행하기 위하여, 응답자(200)에 의해 블라인드된 해시를 이용하는 것은 앞서 도 4b를 이용한 설명과 유사하다.Using the hash blinded by the respondent 200 to perform an anonymous survey using a puzzled survey token including metadata is similar to the description of FIG. 4B above.
구체적으로, 도 5b를 참조하면, 응답자(200)가 설문조사(110)에 포함된 발행자(100)의 연락처를 추출하는 한편, 응답자(200)에 관한 개인 정보를 이용하여 메타데이터(md)를 직접 생성할 수 있다. 즉, 앞서 공개 설문조사에서 발행자(100)가 응답자(200)의 개인 정보로부터 메타데이터를 구성한 것과는 달리, 퍼즐드 설문조사 토큰을 이용한 익명 설문조사에서는 응답자(200)가 자신의 메타데이터(md)를 직접 생성할 수 있다.Specifically, referring to FIG. 5B , the respondent 200 extracts the contact information of the
이어서, 응답자(200)는 메타데이터(md)와 응답자의 공개 키(PubV)를 이용하여 머클 트리(merkel tree; mt)를 구성할 수 있다(mt = hash(hash(PubV) || hash(md))). 즉, 응답자(200)는 응답자의 공개 키(PubV)의 해시와 메타데이터(md)의 해시를 합친 값을 다시 해시로 구성하여 머클 트리(mt)를 구성하는 것이다. Subsequently, the
응답자(200)는 응답자의 공개 키(PubV)와 메타데이터(md)의 머클 트리(mt)를 블라인드한 값(bmt)을 생성한다. 구체적으로, 응답자는 두 개의 랜덤한 논스(nonce1, nonce2)를 생성하고, 발행자의 공개 키(PubI)와 논스(nonce1)를 이용하여 응답자의 공개 키의 해시(hpk)를 블라인드한 결과(bpk)를 연산할 수 있다(bpk = Blind(hpk, PubI, nonce1).The
이어서, 응답자(200)는 발행자의 공개 키(PubI)와 논스(nonce2)를 이용하여 머클 트리 루트(mt)를 블라인드한 결과(bmt)를 연산할 수 있다(bmt = Blind(mt, PubI, nonce2). Subsequently, the
응답자(200)는 공개 키의 블라인드된 해시(bpk), 블라인드된 머클 트리 루트(bmt), 메타데이터(md) 및 응답자의 개인 데이터를 포함하는 패키지를 보안 통신 채널을 통해 발행자(100)에게 제공할 수 있다.
발행자(100)는 응답자(200)의 개인 식별 데이터를 확인하고, 제공된 메타 데이터(md)와 비교하여 응답자(200)의 자격을 평가할 수 있다. 응답자(200)의 자격이 검증되면, 발행자(100)는 발행자로부터 서명된 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)을 발행하여 응답자(200)에게 제공할 수 있다. 서명된 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)은 발행자의 개인 키(PrivI)를 이용하여 각각 RSA 서명된 해시(sbpk = SignRSA(bpk, PrivI)), 머클 트리(sbmt = SignRSA(bmt, PrivI)) 및 서명된 메타데이터(smd = Sign(hash(md), PrivI)) 및 상기 3개 값을 합친 값의 서명(Sign(hash(sbpk || sbmt || smd), PrivI))을 포함할 수 있다.The
응답자(200)는 발행자로부터 서명된 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)을 이용하여 퍼즐드 설문조사 토큰(PuzzSurveyTokenV)을 생성할 수 있다.The
구체적으로, 퍼즐드 설문조사 토큰(PuzzSurveyTokenV)은, 블라인드 시 사용했던 논스(nonce1, nonce2)를 이용하여 RSA 서명된 공개키의 해시(sbpk) 및 블라인드 머클 트리 루트(sbmt)를 언블라인드한 결과(spk = Unblind(sbpk, nonce1), smt = Unblind(sbmt, nonce2))와, 서명된 메타데이터(smd)와, 메타데이터를 읽기 위한 임의의 AES 키(KeyV)를 발행자의 암호화 키(EncM)로 암호화한 결과(ekey = Enc(KeyV, EncM))와, AES 키(KeyV)를 이용하여 대칭키 암호화된 결과(emd = EncSym(md, KeyV))를 포함할 수 있다.Specifically, the puzzled survey token (PuzzSurveyToken V ) is the result of unblinding the hash (sbpk) of the RSA signed public key and the blind Merkle tree root (sbmt) using the nonces (nonce1, nonce2) used during blinding. The issuer 's encryption key (Enc It may include the result of encryption with M ) (ekey = Enc(Key V , Enc M )) and the result of symmetric key encryption using AES key (Key V ) (emd = EncSym(md, Key V )). .
여기서 주목할만한 것은, 응답자(200)에 의해 생성된 퍼즐드 설문조사 토큰(PuzzSurveyTokenV)의 spk, smt, smd, ekey, emd의 값이 SignRSA(hpk, PrivI), SignRSA(mt, PrivI) 및 Sign(hash(md), PrivI)와, 발행자(100)만이 해독할 수 있는 암호화된 메타데이터에 해당한다는 것에 있다. 즉, 발행자에 의한 응답자의 공개 키 서명과 메타데이터와 결합된 공개 키의 머클 트리 루트의 서명이 퍼즐드 설문조사 토큰(PuzzSurveyTokenV)에 포함된다. 블라인드 서명 덕분에, 발행자(100)는 데이터 자체를 알지 못한 채 응답자와 발행자의 공개 키의 해시에 서명할 수 있다. 이에 따라 응답자(200)가 설문조사 트랜잭션에 서명하기 위해 응답자의 개인 키(PrivV)로 서명하면, 아무도 실제 응답자를 추적할 수 없다.What is noteworthy here is that the values of spk, smt, smd, ekey, and emd of the puzzled survey token (PuzzSurveyToken V ) generated by the respondent 200 are SignRSA (hpk, Priv I ), SignRSA (mt, Priv I ) and Sign(hash(md), PrivI), corresponding to encrypted metadata that can only be decrypted by the
메타데이터 암호화의 근거는 발행자(100)만이 응답자(200)의 메타데이터에 액세스할 수 있도록 외부의 관찰자로부터 메타데이터를 비공개로 유지하는 것에 있다. 이를 위해, 발행자(100)는 발행자의 개인 키(PrivI)를 사용하여 ekey를 복호화한 결과(key')를 생성한다(key' = Dec(ekey, PrivI)).The rationale for metadata encryption is to keep the metadata private from outside observers so that only the
이어서, 발행자(100)는 복호화된 키(key')를 사용하여 메타데이터를 복호화한 결과(md')를 생성한다(md' = DecSym(emd, key')). Subsequently, the
발행자(100)는 복호화된 메타데이터(md')를 검증할 수 있다. 구체적으로, 발행자(100)는 발행자의 공개 키(PubI)를 이용하여 확인한 발행자의 퍼즐드 설문조사 토큰(PuzzSurveyTokenI)의 smd(개인 키(PrivI)를 사용하여 서명된 메타데이터(md)의 해시)가 복호화된 메타데이터(md')의 해시와 일치하는지 여부를 검증할 수 있다(Verify(hash(md'), smd, PubI). 검증 결과가 일치하면 발행자(100)는 복호화된 메타데이터(md')를 내부 데이터베이스에 저장할 수 있다.The
정리하면, 응답자(200)의 공개 키(PubV)에서 실제 응답자(200)의 개인 정보 또는 메타데이터로 연결될 수 있는 링크가 존재하지 않기 때문에, 메타데이터(md')는 익명이며, 응답자(200)의 신원을 특정할 수 있는 정보를 드러내지 않을 수 있다.In summary, since there is no link from the public key (Pub V ) of the respondent 200 to the personal information or metadata of the
응답자(200)는 설문조사의 답변을 결합하여 구조화된 문서로 구성하는 한편, 설문조사 토큰(SurveyTokenV 또는 PuzzSurveyTokenV)이 첨부된 결과 데이터 구조에 서명하고 블록체인(500)에 트랜잭션으로 기록할 수 있다. 이 때 답변의 제출은 제출 즉시 집계가 가능한 즉각적인 답변 제출이거나 지연된 집계가 가능한 암호화된 답변 제출 두 가지로 분류될 수 있다.The respondent 200 may combine survey responses to form a structured document, sign the resulting data structure to which the survey token (SurveyToken V or PuzzSurveyToken V ) is attached, and record it as a transaction in the
도 6a는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 즉각적인 답변 제출을 설명하기 위한 도면이다.6A is a diagram for explaining immediate response submission of a respondent included in a survey method according to some embodiments of the present invention.
도 6a를 참조하면, 응답자(200)는 설문조사 토큰(SurveyTokenV) 등을 포함하는 트랜잭션 데이터(VoteTx_Data)와, 이를 응답자의 개인키(PrivV)로 서명한 결과를 함께 포함하는 트랜잭션(VoteTx)을 생성할 수 있다. 응답자(200)는 트랜잭션(VoteTx)을 블록체인(500)에 제공할 수 있다.Referring to FIG. 6A, the
블록체인(500)에 포함된 각 노드들은 응답자(200)로부터 제출된 트랜잭션(VoteTx)의 유효성을 검증할 수 있다. Each node included in the
우선, 식별자(SurveyID)를 갖는 설문조사가 현재 진행 중인지 여부가 확인될 수 있다. 만약 트랜잭션(VoteTx)이 진행 기간보다 앞서 제출되거나, 진행 기간이 끝난 후 제출되는 경우 트랜잭션(VoteTx)은 거절될 수 있다.First, it may be checked whether a survey having an identifier (SurveyID) is currently in progress. If the transaction (VoteTx) is submitted before the progress period or submitted after the progress period ends, the transaction (VoteTx) may be rejected.
또한, 트랜잭션(VoteTx)에 포함된 답변이 응답자가 발표한 설문조사(110)에 포함된 문서(SurveyDoc)에 대응되는지 여부와, 트랜잭션 데이터(VoteTx_Data)에 포함된 공개 키(pk = PubV)에 의해 트랜잭션(VoteTx)의 서명이 검증될 수 있는지 여부가 확인될 수 있다(Verify(data, sign, pk)).In addition, whether the answer included in the transaction (VoteTx) corresponds to the document (SurveyDoc) included in the
또는, 응답자(200)의 공개 키(PubV)가 발행자(100)에 의해 승인되는 과정이 진행될 수 있다. 구체적으로, 공개 설문조사의 경우 설문조사 토큰(SurveyTokenV)은 응답자의 공개 키(PubV)의 해시의 서명이므로, 발행자가 발표한 공개 키(PubI)에 의하여 검증될 수 있다. 익명 설문조사의 경우, 설문조사 토큰(SurveyTokenV)에는 발행자의 키(PrivI)에 의한 응답자의 공개 키(PubV)의 RSA 서명(SignRSA(hash(PubV), PrivI)이 포함될 수 있으며, 이는 발행자의 공개 키(PubI)에 의하여 검증될 수 있다.Alternatively, a process in which the public key (Pub V ) of the
마지막으로, 트랜잭션(VoteTx)은 응답자의 개인 키(PrivV)에 의하여 서명된 첫 번째 트랜잭션(VoteTx)이어야 한다. 주어진 설문조사 식별자(SurveyID)에 대하여 이 키(PrivV)로 서명된 다른 트랜잭션이 존재하는 경우 이중 응답(double answering)에 해당되는 경우로, 거절될 수 있다.Finally, the transaction (VoteTx) must be the first transaction (VoteTx) signed by the responder's private key (Priv V ). If there is another transaction signed with this key (Priv V ) for a given survey identifier (SurveyID), this corresponds to double answering and can be rejected.
트랜잭션(VoteTx)이 상술한 절차에 의한 유효성 검증을 완료한 경우, 블록체인(500)은 해당 트랜잭션(VoteTx)을 기록할 수 있다.When the transaction (VoteTx) completes validation by the above-described procedure, the
도 6b는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 암호화된 답변 제출을 설명하기 위한 도면이다.6B is a diagram for explaining submission of an encrypted answer by a respondent included in a survey method according to some embodiments of the present invention.
도 6b를 참조하면, 응답자(200)는 설문조사 토큰(SurveyTokenV)와 등을 포함하는 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)와, 이를 응답자의 개인키(PrivV)로 서명한 결과를 함께 포함하는 암호화된 트랜잭션(EncryptedVoteTx)을 생성할 수 있다.Referring to FIG. 6B, the
여기서 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)는 응답자(200)의 암호화된 답변을 포함할 수 있다. 응답자의 답변(answers)은 답변 암호화를 위해 설문조사 생성 단계에서 발행자(100)로부터 생성된 키 쌍(EncI, DecI) 중 하나(EncI)에 의하여 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)에 포함될 수 있다. 암호화된 답변이 제출되면, 설문조사의 종료된 이후 지연된(delayed) 집계가 시작된다. 암호화된 답변이 제출됨에 따라 투표 도중에는 투표와 관련된 주체들이 집계 상황을 알 수 없게 된다.Here, the encrypted transaction data (EncryptedVoteTx_Data) may include an encrypted answer of the
응답자(200)는 암호화된 트랜잭션(EncryptedVoteTx)을 블록체인(500)에 제공할 수 있다. The
블록체인(500)에 포함된 각 노드들은 응답자(200)로부터 제출된 암호화된 트랜잭션(EncryptedVoteTx)의 유효성을 검증할 수 있다. 즉, 앞서 도 6a을 이용하여 설명한 트랜잭션(VoteTx)의 유효성 검증 단계인 설문조사 진행 기간, 답변의 형식, 지연된 트랜잭션의 서명 검증, 응답자의 공개 키(PubV)의 발행자(100)에 의한 승인, 암호화된 트랜잭션(EncryptedVoteTx)이 응답자의 개인 키(PrivV)로 서명된 첫 번째 트랜잭션인지 여부가 검증될 수 있다.Each node included in the
발행자(100)는 응답자(200)들로부터 제출되어 블록체인(500)에 기록된 답변들의 트랜잭션을 집계함으로써 설문조사의 집계를 수행할 수 있다(S150).The
도 6a를 통해 설명한 즉각적인 답변 제출의 경우, 설문조사 진행 기간이 종료되면 발행자(100)는 유효한 트랜잭션을 집계하고 트랜잭션에 포함된 답변 문서를 수집하여 처리할 수 있다.In the case of immediate answer submission described with reference to FIG. 6A , when the survey period ends, the
도 6b를 통해 설명한 지연된 답변 제출의 경우, 답변이 키(EncI)에 의하여 암호화되었으므로 이를 복호화하기 위한 절차가 필요하다. 발행자(100)는 설문조사 기간이 종료되면 다른 키(DecI)를 블록체인(500)에 기록하여 블록체인(500)에 액세스할 수 있는 다른 참가자들이 암호화된 답변을 복호화할 수 있도록 할 수 있다. 블록체인(500)에 액세스할 수 있는 다른 참가자들은 블록체인에서 모든 암호화된 트랜잭션(EncryptedVoteTx)을 반복하고, 각 트랜잭션에 포함된 암호화된 답변 문서를 키(DecI)를 이용하여 복호화할 수 있다. 발행자(100)는 복호화된 답변 문서를 수집하고, 집계 결과를 생성할 수 있다. 집계 결과는 발행자(100)에 의하여 서명되어 블록체인(500)에 기록될 수 있다(S160).In the case of the delayed answer submission described with reference to FIG. 6B, since the answer is encrypted by the key (Enc I ), a procedure for decrypting it is required.
또한, 발행자(100)는 복호화된 답변 문서를 통해 수집된 집계 결과를 비로하여, 설문조사 토큰에 포함된 메타데이터를 집계할 수 있다. 위에서 설명한 것과 같이, 발행자(100)는 설문조사(110) 생성 시 특정 성별, 연령대, 거주지역 등에 관한 조건을 부여할 수 있고, 설문조사 결과 집계 시 상기 조건에 기초하여 설문조사 결과를 필터링할 수 있다. 또한 발행자(100)는 설문조사에 참여한 응답자(200)의 메타데이터를 별도로 집계하고, 일종의 빅데이터로 활용할 수 있으며, 설문조사 결과 분석 시 참여자가 사전에 입력한 정보를 추가적으로 활용함으로써 더욱 정확한 응답자 데이터 분석 및 설문조사 결과 분석을 수행할 수 있다.In addition, the
응답자(200)는 설문조사에 참여한 증거를 벤더(300)에 제시할 수 있다(S170). 공개 설문조사가 진행된 경우 응답자(200)는 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)이 블록체인(500)에 기록됨으로써 생성된 식별자(txID)와 이를 자신의 개인 키(PrivV)로 서명한 메시지를 벤더(300)에 제공할 수 있다. 벤더(300)는 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)에 포함된 응답자(200)의 공개 키(pk = PubV)를 이용하여 서명된 메시지를 검증할 수 있다. 검증이 완료되면, 벤더(300)는 사용자의 공개 키(PubV)와 연결된 블록체인(500) 상의 지갑으로 보상을 전송할 수 있다.The respondent 200 may present evidence of participation in the survey to the vendor 300 (S170). When the public survey was conducted, the respondent 200 sent an identifier (txID) generated by recording the survey transaction (VoteTx or DelayedVoteTx) on the
익명 설문조사가 진행된 경우, 단순히 응답자(200)가 자신의 공개 키(PubV)와 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)을 벤더(300)에게 제시한다면, 응답자(200)와 답변 사이에 직접적인 링크가 노출되므로 익명성이 사라질 수 있다. 따라서 익명성을 보장하기 위해 그룹 서명(group signature)이 이용될 수 있다.In the case of an anonymous survey, if the respondent 200 simply presents his/her public key (Pub V ) and the survey transaction (VoteTx or DelayedVoteTx) to the
그룹 서명은 서명의 ID를 공개하지 않고 안전한 그룹 구성원 관계를 보장하는 암호화 프로토콜 클래스이다. 그룹 서명은 공개 키(Pub1, Pub2, ??, Pubn) 및 해당 공개 키 중 하나와 대응하는 개인 키(Privi)의 세트로 이루어진다. 그룹 서명(GS(Privi, Pub1, ??, Pubn)(bytes))은 바이트 문자열(bytes)이 공개 키(Pub1, Pub2, ??, Pubn) 중 하나에 대응하는 개인 키(Privi)에 의하여 서명되었는지 여부를 확인할 수 있지만 어느 것에 의한 것인지는 공개되지 않는다. 만약 서명이 공개 키 중 하나에 대응하는 개인 키에 의해 구성된 경우 서명의 유효성이 검증될 수 있다.Group signatures are a class of cryptographic protocols that ensure secure group membership relationships without disclosing the signature's identity. A group signature consists of a set of public keys (Pub 1 , Pub 2 , ??, Pub n ) and a private key (Priv i ) corresponding to one of the corresponding public keys. A group signature (GS(Privi, Pub1, ??, Pubn)(bytes)) is a string of bytes (bytes) that corresponds to one of the public keys (Pub 1 , Pub 2 , ??, Pub n ) and a private key (Priv i) . ), but it is not disclosed by which. The validity of the signature can be verified if the signature is constructed by a private key corresponding to one of the public keys.
응답자(200)는 블록체인(500)에 기록된 무작위 트랜잭션(tx1, ??, txn)을 읽고 다른 응답자들의 공개 키(Pub1, ??, Pubn)을 추출할 수 있다. n은 예를 들어 약 20개 내외일 수 있다. 응답자(200)는 무작위 트랜잭션(tx1, ??, txn)에 자신의 트랜잭션(tx)을 추가하고, 이들의 트랜잭션을 셔플(shuffle)하여 벤더(300)에 제공한다. The
벤더(300)에 제공되는 보상 요청은 보상을 제공할 지갑 주소(dst), 셔플된 트랜잭션 집합(tx0, tx1, ??, txn), 보상을 제공할 지갑 주소와 트랜잭션 집합을 응답자의 개인 키를 이용한 그룹 서명 (sign=GS(PrivV, PubV, Pub1, ??, Pubn)(hash(dst||tx0, ??, txn))))을 포함할 수 있다.The reward request provided to the
벤더(300)는 청구에 포함된 트랜잭션 집합(tx0, tx1, ??, txn)을 각각 검증하고, 트랜잭션들이 동일한 설문조사에 포함된 것인지를 확인하는 한편, 청구에 포함된 공개 키(Pub0, ??, Pubn)를 추출하여 그룹 서명을 검증한다(GV(hash(dst, txs), sign, {Pub0, ??, Pubn}).The
이러한 과정을 통해 벤더(300)는 응답자(200)의 실제 답변에 전혀 알지 못하는 상태에서 응답자(200)가 트랜잭션을 통해 설문조사에 참여했음을 확인하고, 보상을 제공할 수 있다.Through this process, the
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 하드디스크, ROM, RAM, CD-ROM, 하드 디스크, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The present invention can also be implemented as computer readable codes on a computer readable recording medium. A computer-readable recording medium includes all types of recording devices in which data that can be read by a computer device is stored. Examples of computer-readable recording media include hard disks, ROMs, RAMs, CD-ROMs, hard disks, magnetic tapes, floppy disks, and optical data storage devices. It also includes what is implemented in the form of.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features of the present invention. you will be able to understand Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting.
100: 발행자
200: 응답자
300: 벤더
400: 설문조사 애플리케이션100: Issuer 200: Responder
300: vendor 400: survey application
Claims (10)
상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계;
상기 응답자의 개인 키로 서명된 설문조사 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계; 및
상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계를 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.Creating a survey and recording it on the blockchain;
receiving data for identification of the respondent from a respondent participating in the survey, generating a survey token signed with an issuer's private key, and providing it to the respondent;
providing a survey token signed with the respondent's private key along with survey results to the blockchain as a transaction; and
Including verifying that the transaction is valid, recording it in the blockchain, and aggregating the survey results,
Survey method using survey token and blockchain.
상기 설문조사는 공개 설문조사를 포함하고,
상기 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는,
응답자의 공개 키의 해시를 상기 발행자의 개인 키로 서명한 결과를 이용하여 설문조사 토큰을 생성하는 것을 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 1,
The survey includes an open survey,
Generating the survey token and providing it to the respondent,
Generating a survey token using a result of signing the hash of the respondent's public key with the issuer's private key,
Survey method using survey token and blockchain.
상기 응답자의 개인 키로 서명된 설문조사 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계는,
상기 설문조사 토큰을 포함하는 트랜잭션 데이터를 응답자의 개인 키로 서명하여 생성한 트랜잭션을 상기 블록체인에 제공하는 것을 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 2,
The step of providing the survey token signed with the respondent's private key together with the survey results to the blockchain as a transaction,
Including providing a transaction generated by signing the transaction data including the survey token with the respondent's private key to the blockchain,
Survey method using survey token and blockchain.
상기 설문조사는 익명 설문조사를 포함하고,
상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는,
논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시를 상기 응답자의 식별을 위한 데이터와 함께 제공받고,
상기 블라인드된 해시를 상기 발행자의 개인 키로 서명하여 생성한 설문조사 토큰을 상기 응답자에게 제공하는 것을 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 1,
The survey includes an anonymous survey,
The step of receiving data for identification of a respondent from a respondent participating in the survey, generating a survey token signed with an issuer's private key, and providing the survey token to the respondent,
Receiving a hash of a public key of a responder blinded with a nonce together with data for identification of the responder,
And providing the respondent with a survey token generated by signing the blinded hash with the issuer's private key.
Survey method using survey token and blockchain.
상기 설문조사 토큰을 상기 응답자에 제공하는 단계 이후에,
상기 응답자가 상기 설문조사 토큰을 상기 논스로 언블라인드(unblind)하는 단계를 더 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 4,
After providing the survey token to the respondent,
Further comprising the responder unblinding the survey token with the nonce.
Survey method using survey token and blockchain.
상기 응답자의 식별을 위한 데이터는 상기 응답자의 메타데이터(metadata)를 포함하고,
상기 설문조사 토큰은 상기 메타데이터에 관한 정보를 포함하는 퍼즐드(puzzled) 설문조사 토큰인,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 1,
The data for identification of the respondent includes metadata of the respondent,
The survey token is a puzzled survey token containing information about the metadata,
Survey method using survey token and blockchain.
상기 설문조사는 공개 설문조사를 포함하고,
상기 퍼즐드 설문조사 토큰은 상기 메타데이터가 저장된 내부 데이터베이스 주소를 암호화한 결과를 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 6,
The survey includes an open survey,
The puzzled survey token includes a result of encrypting an internal database address in which the metadata is stored.
Survey method using survey token and blockchain.
상기 설문조사는 익명 설문조사를 포함하고,
상기 설문조사에 참여하는 응답자로부터 응답자의 식별을 위한 데이터를 제공받고, 발행자의 개인 키로 서명된 설문조사 토큰을 생성하여 상기 응답자에게 제공하는 단계는,
응답자로부터 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시와 상기 응답자의 메타데이터를 포함한 패키지를 제공받고, 상기 블라인드된 해시와 메타데이터를 상기 발행자의 개인 키로 서명하여 생성한 설문조사 토큰을 상기 응답자에게 제공하는 것을 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 6,
The survey includes an anonymous survey,
The step of receiving data for identification of a respondent from a respondent participating in the survey, generating a survey token signed with an issuer's private key, and providing the survey token to the respondent,
A survey generated by receiving a package including a hash of the respondent's public key blinded with a nonce and metadata of the respondent from the respondent, and signing the blinded hash and metadata with the private key of the issuer. Including providing a token to the responder,
Survey method using survey token and blockchain.
상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계는,
상기 트랜잭션에 포함된 상기 응답자의 개인 키로 서명된 설문조사 토큰을 상기 발행자의 공개 키로 검증하는 것을 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 1,
The step of verifying that the transaction is valid, recording it in the blockchain, and aggregating the survey results,
verifying, with the issuer's public key, a survey token signed with the respondent's private key included in the transaction;
Survey method using survey token and blockchain.
상기 서명된 설문조사 토큰을 블록체인에 트랜잭션으로 제공한 결과를 상기 설문조사의 결과로 벤더에게 제공하는 단계; 및
상기 섦문조사 참여 증거를 검증하고, 검증이 완료된 응답자에 대해 보상을 제공하는 단계를 더 포함하는,
설문조사 토큰 및 블록체인을 이용한 설문조사 방법.According to claim 1,
providing a result of providing the signed survey token as a transaction to a blockchain to a vendor as a result of the survey; and
Further comprising the step of verifying the evidence of participation in the questionnaire survey and providing a reward to a respondent whose verification has been completed.
Survey method using survey token and blockchain.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210137492A KR20230053990A (en) | 2021-10-15 | 2021-10-15 | Survey methods and system on blockchain that perform personal information collection of respondents using survey token |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210137492A KR20230053990A (en) | 2021-10-15 | 2021-10-15 | Survey methods and system on blockchain that perform personal information collection of respondents using survey token |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230053990A true KR20230053990A (en) | 2023-04-24 |
Family
ID=86142005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210137492A KR20230053990A (en) | 2021-10-15 | 2021-10-15 | Survey methods and system on blockchain that perform personal information collection of respondents using survey token |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230053990A (en) |
-
2021
- 2021-10-15 KR KR1020210137492A patent/KR20230053990A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232478B2 (en) | Methods and system for collecting statistics against distributed private data | |
US11496312B2 (en) | Collecting surveys with secure identities via a blockchain | |
US20230216669A1 (en) | Systems and methods for communication, storage and processing of data provided by an entity over a blockchain network | |
RU2652443C1 (en) | Voters votes quantity collected by electronic voting determining system and method | |
US11777706B2 (en) | Systems and methods for communication, storage and processing of data provided by an entity over a blockchain net work | |
US20220141020A1 (en) | Blockchain e-voting system and operating method thereof | |
Bernhard et al. | Security proofs for participation privacy, receipt-freeness and ballot privacy for the helios voting scheme | |
CN115147975B (en) | Encryption network voting method based on block chain | |
EP3474241A1 (en) | Electronic balloting | |
KR20230053990A (en) | Survey methods and system on blockchain that perform personal information collection of respondents using survey token | |
Buyukbaskin et al. | Requirement analysis of some blockchain-based e-voting schemes | |
KR20230159087A (en) | Method for using token on blockchain where recombined information is stored and system performing the same | |
KR102208763B1 (en) | Electronic voting system using election names | |
KR102179421B1 (en) | Electronic voting method using election names | |
Emami et al. | A scalable decentralized privacy-preserving e-voting system based on zero-knowledge off-chain computations | |
KR102430835B1 (en) | Bolckchain e-voting system and manipulation method | |
TW202402009A (en) | Proof of ownership | |
Metaxopoulos et al. | A Distributed Bulletin Board Implementation for Practical Use in eVoting Systems | |
WO2024002756A1 (en) | Proof of ownership | |
TW202416296A (en) | Proof of ownership | |
Gauns Dessai | Study of Public Examination System and Proposed E-examination to Control Malpractices and Evaluation Anomalies | |
Grewal | Voting on the internet | |
Taheri Boshrooyeh | A framework of privacy preserving services for distributed online social networks | |
WO2015176015A1 (en) | Large-scale anonymous survey system and methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |