KR20230159087A - 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템 - Google Patents

조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템 Download PDF

Info

Publication number
KR20230159087A
KR20230159087A KR1020220059021A KR20220059021A KR20230159087A KR 20230159087 A KR20230159087 A KR 20230159087A KR 1020220059021 A KR1020220059021 A KR 1020220059021A KR 20220059021 A KR20220059021 A KR 20220059021A KR 20230159087 A KR20230159087 A KR 20230159087A
Authority
KR
South Korea
Prior art keywords
survey
puzzled
token
respondent
blockchain
Prior art date
Application number
KR1020220059021A
Other languages
English (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 KR1020220059021A priority Critical patent/KR20230159087A/ko
Priority to PCT/KR2023/006568 priority patent/WO2023219478A1/ko
Publication of KR20230159087A publication Critical patent/KR20230159087A/ko

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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0203Market surveys; Market polls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

조합된 정보가 저장된 블록체인 상의 토큰 이용 방법이 제공된다. 상기 방법은, 발행 요청자 단말로부터 퍼즐화된 토큰(puzzled token)의 발행 요청과 함께 개인 정보를 제공받는 단계, 상기 발행 요청자 단말로부터, 상기 개인 정보 중 적어도 일부에 대한 선택을 제공받는 단계, 상기 선택된 개인 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터를 포함하는 블록체인 상의 퍼즐화된 토큰을 생성하는 단계, 및 상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계를 포함한다.

Description

조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템{METHOD FOR USING TOKEN ON BLOCKCHAIN WHERE RECOMBINED INFORMATION IS STORED AND SYSTEM PERFORMING THE SAME}
본 발명은 조합조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템에 관한 것으로, 더욱 구체적으로는 개인정보 및 메타데이터가 조합되어 포함된 퍼즐화된 토큰을 블록체인 상에서 생성하여 이용함으로써 보안이 확보된 토큰 이용 방법 및 그 시스템에 관한 것이다.
블록체인은 2008년 사토시 나카모토의 Bitcoin: A Peer-to-Peer Electronic Cash System에서 블록과 블록을 연결하는 방법에서 유래하였다. 블록체인은 다수의 네트워크 노드로 구성된 분산 네트워크 상에서 해쉬링크로 묶인 데이터를 공유하는 분산 데이터베이스를 총칭한다.
블록체인에 기록된 데이터는 위변조가 사실상 불가능하고, 누구든지 블록체인에 연결함으로써 무결성(integrity)이 보장된 데이터를 확인할 수 있다는 특성을 이용하여 신뢰성 및 투명성이 요구되는 데이터의 운용 분야에 도입이 진행되고 있다.
이러한 블록체인의 신뢰성 및 투명성은 복수의 응답자로부터 의견 또는 응답을 수집하기 위한 설문조사에도 활용될 수 있다. 특히 응답자의 답변을 블록체인에 기록하여 투명하게 공개하는 한편, 익명성이 요구되는 개인정보 등에는 설문조사의 발행자만이 접근할 수 있도록 암호화를 적용하여 설문조사 토큰을 이용한 설문조사를 수행하는 방법의 개발이 요구된다.
본 발명이 해결하고자 하는 기술적 과제는 개인정보 및 메타데이터가 조합된 형태로 저장된 블록체인 상의 퍼즐화된(puzzled) 토큰을 이용하여 보안이 확보된 데이터 수집을 수행할 수 있는 방법 및 시스템을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 해결하기 위한 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법은, 발행 요청자 단말로부터 퍼즐화된 토큰(puzzled token)의 발행 요청과 함께 개인 정보를 제공받는 단계, 상기 발행 요청자 단말로부터, 상기 개인 정보 중 적어도 일부에 대한 선택을 제공받는 단계, 상기 선택된 개인 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터를 포함하는 블록체인 상의 퍼즐화된 토큰을 생성하는 단계, 및 상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계를 포함한다.
본 발명의 몇몇 실시예에서, 상기 발행 요청자 단말로부터 퍼즐화된 토큰의 발행 요청을 받기 이전에, 설문조사를 생성하여 블록체인에 기록하는 단계를 더 포함하고, 상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계는, 상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계를 포함하고, 상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계 이후에, 응답자의 개인 키로 서명된 퍼즐화된 토큰을 상기 발행 요청자 단말로부터 제공받고, 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계; 및 상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계를 더 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 설문조사는 공개 설문조사를 포함하고,
상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계는, 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시를 응답자의 식별을 위한 데이터와 함께 제공받고, 상기 블라인드된 해시를 상기 발행자의 개인 키로 서명하여 생성한 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 응답자의 개인 키로 서명된 퍼즐화된 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계는, 상기 퍼즐화된 토큰을 포함하는 트랜잭션 데이터를 응답자의 개인 키로 서명하여 생성한 트랜잭션을 상기 블록체인에 제공하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 설문조사는 익명 설문조사를 포함하고, 상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계는, 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시를 응답자의 식별을 위한 데이터와 함께 제공받고, 상기 블라인드된 해시를 상기 발행자의 개인 키로 서명하여 생성한 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 퍼즐화된 토큰을 상기 응답자에 제공하는 단계 이후에, 상기 발행 요청자 단말이 상기 퍼즐화된 토큰을 상기 논스로 언블라인드(unblind)하는 단계를 더 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 설문조사는 공개 설문조사를 포함하고, 상기 퍼즐화된 설문조사 토큰은 응답자의 메타데이터가 저장된 내부 데이터베이스 주소를 암호화한 결과를 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 설문조사는 익명 설문조사를 포함하고, 상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계는,상기 발행 요청자 단말로부터 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시와 상기 응답자의 메타데이터를 포함한 패키지를 제공받고, 상기 블라인드된 해시와 메타데이터를 상기 발행자의 개인 키로 서명하여 생성한 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계는, 상기 트랜잭션에 포함된 상기 응답자의 개인 키로 서명된 설문조사 토큰을 상기 발행자의 공개 키로 검증하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 서명된 퍼즐화된 토큰을 블록체인에 트랜잭션으로 제공한 결과를 상기 설문조사의 결과로 벤더에게 제공하는 단계; 및 상기 설문조사의 결과를 검증하고, 검증이 완료된 응답자에 대해 보상을 제공하는 단계를 더 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 메타데이터에 관한 정보를 포함하는 퍼즐화된 토큰은, 상기 메타데이터의 항목별로 할당된 코드에 대응하는 컬러를 포함하는 시각화된 데이터로서의 이미지 파일을 포함할 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 실시예에 따른 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 시스템에 따르면, 설문조사 토큰에 포함된 개인 정보 또는 메타데이터가 발행자를 제외한 외부에 노출되지 않은 상태로 설문조사에 대한 답변 제출 및 집계가 가능하므로 설문조사의 익명성이 보장될 수 있으며, 설문조사의 답변이 블록체인에 트랜잭션으로 기록되므로 답변의 무결성이 보장될 수 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상의 설문조사를 수행하는 시스템의 블록도이다.
도 2는 본 발명의 몇몇 실시예에 따른 설문조사 토큰을 이용하여 블록체인 상에서 수행되는 설문조사 방법을 설명하기 위한 데이터 흐름도이다.
도 3은 본 발명의 몇몇 실시예에 따른 설문조사 초기화를 설명하기 위한 도면이다.
도 4a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 4b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 퍼즐화된 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 퍼즐화된 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 6a는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 즉각적인 답변 제출을 설명하기 위한 도면이다.
도 6b는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 지연된 답변 제출을 설명하기 위한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
하나의 구성 요소가 다른 구성 요소와 "연결된(connected to)" 또는 "커플링된(coupled to)" 이라고 지칭되는 것은, 다른 구성 요소와 직접 연결 또는 커플링된 경우 또는 중간에 다른 구성 요소를 개재한 경우를 모두 포함한다. 반면, 하나의 구성 요소가 다른 구성 요소와 "직접 연결된(directly connected to)" 또는 "직접 커플링된(directly coupled to)"으로 지칭되는 것은 중간에 다른 구성 요소를 개재하지 않은 것을 나타낸다. "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
비록 제1, 제2 등이 다양한 구성 요소들을 서술하기 위해서 사용되나, 이들 구성 요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성 요소를 다른 구성 요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성 요소는 본 발명의 기술적 사상 내에서 제2 구성 요소 일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
도 1a 내지 1c는 본 발명의 실시예에 따른 시스템에 의해 생성될 수 있는 블록체인 상에서 퍼즐화된 토큰을 설명하기 위한 도면이다.
도 1a를 참조하면, 퍼즐화된 토큰(T)은 발행 요청자(200)의 개인 정보, 예를 들어 성별, 나이, 나라, 지역, 직업, 학력 등과 같은 개인 식별 데이터 중 적어도 일부에 대해 선택된 데이터를 포함하도록 발행자(100)로부터 생성될 수 있다. 이와 같이 생성된 토큰은 발행 요청자(200)의 고유의 토큰이 됨으로써 일종의 NFT(Non Fungible Token)으로 기능할 수 있다.
예를 들어, 퍼즐화된 토큰(T)은 도 1b와 같이, 발행 요청자(200)의 개인 식별 데이터에 코드를 할당하여 생성된 데이터를 포함할 수 있다. 발행 요청자(200)가 성별, 나이, 국적, 지역, 직업 및 학력 등의 개인 정보를 발행자(100)에 제공하면, 발행자(100)는 각각의 정보에 할당된 코드와, 임의의 수(Random No.)를 부여하여 조합된 개인 식별 데이터를 포함하는 퍼즐화된 토큰(T)을 생성할 수 있다.
본 발명의 몇몇 실시예에서, 발행자(100)는 퍼즐화된 토큰(T)을 시각화된 데이터로서의 이미지 파일을 생성할 수 있다. 도 1c를 참조하면, 발행 요청자(200)가 제공한 성별, 연령, 출생지역 등의 정보에 할당된 코드에 대응되도록 발행자(100)는 컬러 테이블을 생성하고, 퍼즐화된 토큰(T)을 개인 식별 데이터의 종류에 대응되도록 섹터를 나눈 후 나눠진 섹터에 코드에 대응되는 컬러를 채움으로써 퍼즐화된 토큰(T)이 시각화된 데이터로서의 이미지 파일을 생성할 수 있다.
예를 들어, 퍼즐화된 토큰(T)은 6개의 개인 식별 데이터의 종류와, 하나의 임의의 수에 대응되도록 복수의 섹터(t1~t7)로 나눠질 수 있다. 복수의 섹터(t1~t7)는 개인 식별 데이터와, 임의의 수에 할당되는 코드에 대응된 컬러로 채워져 시각화된 이미지로 표현될 수 있다.
다만 위와 같은 시각화 방법은 예시적인 것으로, 퍼즐화된 토큰(T)은 원을 균등하게 분할한 도 1a 및 1c와는 다른 시각화 방법을 통해 이미지로 표현될 수 있다. 예를 들어 퍼즐화된 토큰(T)은 다각형을 기반으로 개인 식별 데이터에 할당된 코드에 대응하도록 분할된 영역에 컬러를 채워 이미지로 표현하거나, 할당된 코드에 대응하는 이미지 파일이나 형상을 포함하도록 표현될 수도 있다.
이와 같이 생성된 퍼즐화된 토큰(T)은 발행 요청자(200)의 개인 식별 데이터를 포함하고 있으므로, 발행 요청자(200)의 접속 또는 이용을 위해 사용자 증명이 필요한 시스템에서 이용될 수 있다. 예를 들어, 퍼즐화된 토큰(T)은 온라인 상에서 서비스에 접속하기 위한 개인의 ID 및 패스워드로 발급되거나, 오프라인에서 개인의 식별을 위한 시큐리티 키, 신분증, 등록증을 포함하는 DID(Digital ID)로 발급되어 사용될 수 있다.
또한, 뒤에서 설명하는 것과 같이 퍼즐화된 토큰(T)은 발행 요청자(200)가 참여할 수 있는 설문조사와 같은 데이터 수집 과정에도 사용될 수 있다.
도 2는 본 발명의 몇몇 실시예에 따른 조합된 정보가 저장된 블록체인 상의 토큰 이용 시스템(1)의 블록도이다. 이하에서 설명되는 데이터 수집 과정은 블록체인 상에서 생성된 퍼즐화된 토큰을 이용하여 수행되는 설문조사를 의미할 수 있다.
도 2를 참조하면, 본 발명의 몇몇 실시예에 따른 조합된 정보가 저장된 블록체인 상의 토큰 이용 시스템(1)은 발행자(100), 응답자(200), 벤더(300) 및 블록체인(500)을 포함할 수 있다. 여기서 응답자(200)는 도 1a 내지 1c에서 설명한 퍼즐화된 토큰(T)의 발행 요청자(200)와 유사한 기능을 수행하는 것으로 이해될 수 있다.
이하에서 설명되는 발행자(100), 응답자(200), 벤더(300) 등의 구성 요소는 스마트폰, 개인용 컴퓨터(Personal Computer; PC), 서버 컴퓨터, 태블릿 PC, 하드웨어 지갑(wallet) 등의 블록체인(500) 상에서 설문조사의 생성 또는 답변 제출을 진행할 수 있는 컴퓨팅 장치를 포함할 수 있다.
발행자(100)는 본 발명에서 수행되는 설문조사(110)의 전체적인 프로세스를 관리할 수 있다. 발행자(100)는 설문조사(110)를 생성하고, 설문조사에 참여하고자 하는 응답자(200)를 인증하며, 설문조사(110)의 결과를 집계할 수 있다.
발행자(100)에 의하여 생성되는 설문조사(110)는 그 목적에 따라 다양한 특성을 갖도록 정의될 수 있다. 예를 들어 설문조사(110)는 공개 설문조사(Open survey)이거나 익명 설문조사(Anonymous survey)일 수 있으며, 투표 즉시 집계가 가능한 즉각적인(immediate) 답변 제출이거나 지연된(delayed) 집계가 가능한 암호화된 답변 제출일 수도 있다.
또한, 설문조사(110)는 응답자(200)의 식별을 위한 개인 정보 만을 포함하거나, 응답자(200)의 메타데이터(metadata)를 포함하는 퍼즐화된(puzzled) 설문조사 토큰이 이용되는 투표일 수도 있다.
퍼즐화된(puzzled) 설문조사 토큰은 설문조사(110)를 진행하는 발행자(100)가 도 1a 내지 1c를 이용하여 설명된 것과 같이 필요로 하는 정보만을 퍼즐처럼 결합하여 생성할 수 있는 설문조사 토큰을 의미한다. 응답자(200)는 사전에 발행자(100)에 대하여 입력한 정보를 기초로 자격을 인증받아 퍼즐화된 설문조사 토큰을 제공받을 수 있다. 발행자(100)가 퍼즐화된 설문조사 토큰을 생성할 때 응답자의 식별을 위한 개인 정보 중 필요로 하는 정보만을 결합하여 생성할 수 있으므로, 퍼즐화된 설문조사 토큰을 제공받는 응답자(200)마다 고유의 토큰을 제공받게 된다. 이때 응답자(200)가 제공받는 토큰은 도 1a 내지 1c에서 설명된 것과 같이 시각화된 데이터로서의 이미지파일을 포함할 수 있다.
후술하는 것과 같이 퍼즐화된 설문조사 토큰의 생성을 위해 결합된 개인 정보는 암호화될 수 있다.
응답자(200)는 제공된 퍼즐화된 설문조사 토큰을 이용하여 이하에서 설명되는 설문조사에 이용할 수 있을 뿐만 아니라, 응답자는 퍼즐화된 설문조사 토큰을 제3자에게 제공함으로써 응답자(200) 고유의 자격 또는 신분을 검증받을 수 있는 일종의 ID로 활용할 수 있다.
이때 발행자(100)로부터 발행되는 퍼즐화된 설문조사 토큰은 각각의 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터를 포함하지만 이러한 토큰의 발행이 기록되는 블록체인(500)의 블록체인 데이터에는 개인 식별 데이터가 저장되지 않을 수 있다.
구체적으로, 응답자(200)는 퍼즐화된 설문조사 토큰에 설문조사 결과와 함께 메타데이터(metadata)로 표현되는 응답자(200)에 관한 개인 정보를 결합하여 설문에 참여할 수 있다. 발행자(100)는 퍼즐화된 설문조사 토큰에 포함된 설문 조사 결과와 함께 메타데이터를 분석함으로써 설문조사에 대한 더욱 자세한 결과를 얻을 수 있다. 응답자(200)로부터 제공된 메타데이터는 토큰은 각각의 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터의 형태로 생성될 수 있다.
발행자(100)는 발행자 고유의 개인 키(PrivI), 공개 키(PubI) 등을 생성할 수 있다. 뒤에서 설명하는 것과 같이 설문조사(110)에 사용되는 설문조사 토큰(120)이 퍼즐화된 설문조사 토큰인 경우, 발행자(100)는 퍼즐화된 설문조사 토큰을 암호화 및 복호화하기 위한 대칭 키(KeyI)와, 이에 포함되는 메타데이터의 암호화 및 복호화에 필요한 한 쌍의 키(EncM, DecM)를 생성할 수 있다.
발행자(100)는 응답자(200)로부터 개인 식별 데이터 또는 메타데이터가 포함된 설문조사 참여 요청에 대해 응답자(200)의 자격을 검증(verify)하는 한편, 검증을 성공적으로 통과한 응답자(200)에 대해 설문조사 토큰(120)을 제공할 수 있다.
이 과정에서 설문조사 토큰(120)의 생성 등을 위해 키를 이용하여 하나 이상의 서명을 생성할 수 있다.
또한, 발행자(100)는 설문조사(110)의 시작과 끝을 알리거나, 블록체인(500) 상에 트랜잭션의 형태로 기록된 설문조사 결과에 대하여, 유효한 트랜잭션을 집계하고 블록체인에 게시함으로써 설문조사의 집계를 수행할 수 있다.
응답자(200)는 발행자(100)에 대하여 개인 식별 데이터 또는 메타데이터가 포함된 설문조사 참여 요청을 제공하고, 요청에 대응하여 제공된 설문조사 토큰(120)을 이용하여 설문조사를 수행할 수 있다. 설문조사는 설문조사 토큰(120)을 블록체인(500) 상의 주소로 전송하기 위한 트랜잭션(transaction)을 블록체인에 기록함으로써 수행될 수 있다.
도 2의 실시예에서, 응답자(200)가 설문조사(110)의 수행을 위해 설문조사 애플리케이션(400)을 이용하는 것이 예시적으로 도시된다. 설문조사 애플리케이션(400)은 설문조사(110)의 수행 및 답변의 제출을 위해 스마트폰, 태블릿 PC, 데스크탑 컴퓨터, 노트북 컴퓨터 등의 컴퓨팅 장치 상에서 수행되는 응용 프로그램을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.
비록 도 2에는 조합된 정보가 저장된 블록체인 상의 토큰 이용 시스템(1)이 하나의 응답자(200)를 포함하는 것으로 도시되었으나 본 발명이 이에 제한되는 것은 아니다. 본 시스템(1)이 수행하는 설문조사의 목적에 부합하도록, 복수의 응답자(200)에 대한 설문조사가 수행될 수 있는 것은 물론이다.
또한, 응답자(200)는 설문조사 참여의 증거를 벤더(300)에게 제시하고, 상기 증거의 검증이 완료되면 제공된 보상을 수령하고, 이를 저장할 수 있다. 벤더(300)는 응답자(200)로부터 제공된 보상의 청구를 검증하고, 청구가 유효한 경우 응답자(200)의 지갑 주소 또는 청구에 지정된 주소로 보상을 제공할 수 있다.
블록체인(500)은 복수의 컴퓨팅 장치로 구성된 노드가 서로 연결되어 성립하는 네트워크를 포함할 수 있다. 블록체인(500)을 구성하는 복수의 노드는 설문조사의 전 과정을 진행 및 기록하기 위해 실행되는 트랜잭션 또는 스마트 컨트랙트를 상호 검증할 수 있다. 블록체인(500)에는 발행자(100)에 의해 생성된 설문조사(110), 응답자(200)에 의해 생성된 설문조사의 답변 및 답변들을 집계한 결과 등이 기록될 수 있다.
도 3은 본 발명의 몇몇 실시예에 따른 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법을 설명하기 위한 데이터 흐름도이다.
도 3을 참조하면, 본 발명의 몇몇 실시예에 따른 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법은, 발행자(100)로부터 설문조사가 생성 및 발표되는 단계(S110), 응답자(200)가 개인 식별 데이터 또는 메타데이터를 이용하여 발행자(100) 측에 설문조사를 위한 등록을 수행하는 단계(S120), 발행자(100)가 응답자(200)의 자격을 검증하고, 검증 결과 응답자(200)가 유효한 자격을 가진 경우 설문조사 토큰을 생성하여 응답자(200)에게 제공하는 단계(S130), 응답자(200)로부터 설문조사 토큰을 이용하여 설문조사 답변이 블록체인(500)에 제출되는 단계(S140), 발행자(100)가 블록체인(500) 상에 기록된 설문조사 답변을 집계하는 단계(S150), 집계된 설문조사 답변에 기초하여 발행자(100)가 블록체인(500)에 설문조사 결과를 기록하는 단계(S160), 응답자(200)가 설문조사 참여 증거를 벤더(300)에 제공하는 단계(S170), 벤더(300)가 설문조사 참여 증거를 검증하고 블록체인 상의 응답자 지갑에 보상을 제공하는 단계(S180) 등을 포함할 수 있다. 이하의 도면들을 참조하여 본 발명의 실시예에 따른 데이터 수집 방법의 각 단계들을 설명하도록 한다.
도 4는 본 발명의 몇몇 실시예에 따른 설문조사 초기화를 설명하기 위한 도면이다.
도 4를 참조하면, 발행자(100)는 설문조사(110)의 생성 및 발표를 통한 설문조사 초기화를 진행할 수 있다. 발행자(100)는 설문조사 토큰(120)의 서명에 사용할 하나 이상의 공개 키 및 개인 키 쌍(PubI, PrivI)을 생성할 수 있다.
또한, 뒤에서 설명하는 것과 같이 설문조사 토큰(120)이 응답자(200)의 메타데이터를 포함하는 퍼즐화된 설문조사 토큰인 경우, 퍼즐화된 설문조사 토큰을 암호화 및 복호화하기 위한 키(KeyI)를 생성할 수 있다. 상기 키(KeyI)는 대칭키 암호화 알고리즘에 사용될 수 있으며, 이러한 알고리즘은 AES(Advanced Encryption Standard) 알고리즘을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.
발행자(100)는 설문조사(110)의 생성을 위해 설문조사를 식별하기 위한 식별자(SurveyID)를 선언할 수 있다. 상기 식별자(SurveyID)는 예를 들어 설문조사의 문자열 식별자에 포함된 스트링의 해시를 포함할 수 있으며, 해시를 연산하는 알고리즘은 예를 들어 SHA-2, SHA-3 등을 포함할 수 있으나 본 발명이 이에 제한되는 것은 아니다.
발행자(100)로부터 생성된 설문조사(110)는 예를 들어 JSON, YAML, TOML, XML 또는 설문조사 앱(400)에 의해 처리될 수 있는 형식의 구조화된 문서를 포함할 수 있다. 이러한 문서에는 적어도 하나 이상의 질문이 포함될 수 있다. 또한, 설문조사(110)는 참여하고자 하는 응답자가 개인 데이터 등과 함께 설문조사 토큰을 요청하기 위해 접속하는 연락처(contact point) 정보를 포함할 수 있다.
또한, 설문조사(110)는 응답자(200)에 관한 개인 정보(이하에서 메타데이터(metadata)로 설명한다.)를 기록할 수 있는 구조화된 쿼리 문서(RespondentDoc)를 포함할 수 있다. 발행자(100)로부터 상기 문서(RespondentDoc)을 포함하는 설문조사(110)가 응답자(200)로 제공되면, 응답자(200)는 상기 문서(RespondentDoc)의 양식을 작성함으로써 메타데이터를 생성할 수 있다. 상기 메타데이터는 예를 들어 응답자(200)의 나이, 출생 지역, 성별과 같은 개인 정보에 관한 다양한 질문들을 포함할 수 있다.
이 때 발행자(100)는 설문조사(110)의 참여 자격에 일정한 조건을 부여할 수 있다. 예를 들어, 특정 성별, 연령대, 거주지역 등에 관한 제한을 추가하고, 이후 응답자(200)로부터 메타데이터가 포함된 설문조사 토큰이 제공되면 상기 일정한 조건에 따라 응답 결과를 필터링하고, 설문조사 집계에 이용할 수 있다.
발행자(100)는 설문조사(110)의 생성과 함께 설문조사(110)의 조사 방식을 규정할 수 있다. 설문조사(110)는 예를 들어 응답자(200)의 신원이 공개되며 답변이 추적 가능한 공개 설문조사이거나, 응답자에 대한 추적이 불가능한 익명 설문조사를 포함할 수 있다.
또한, 발행자(100)는 설문조사(110)의 생성과 함께 설문조사(110)의 집계 방식을 규정할 수 있다. 설문조사(110)의 답변의 집계는 응답자(200)에 의해 제출된 직후 집계되는 즉각적인 집계와, 모든 응답자(200)에 의해 답변 제출이 완료된 후에만 확인할 수 있는 지연된 집계를 포함할 수 있다.
만약 설문조사(110)가 지연된 집계에 의해 답변이 집계되는 경우, 응답자(200)는 응답자(200)의 답변을 암호화하기 위한 키 쌍(EncI, DecI)을 생성할 수 있다.
발행자(100)는 설문조사(110)의 생성을 완료하고, 생성된 설문조사(110)를 블록체인(500)에 기록함으로써 설문조사(110)를 발표할 수 있다. 블록체인(500)에 기록된 설문조사(110)는 공개됨으로써 임의의 응답자에 의하여 접근이 가능할 수 있다.
본 발명의 몇몇 실시예에서, 발행자(100)에 의해 설문조사(110)가 생성되기 이전에, 설문조사(110)의 대상이 되는 불특정 다수의 참여자, 즉 설문조사 토큰을 제공받을 수 있는 응답자(200) 후보로부터 소정의 정보를 제공받을 수 있다. 제공된 응답자(200) 후보들의 소정의 정보는 발행자(100)에 대하여 응답자(200)가 설문조사 참여 요청을 제공한 경우 응답자 자격의 검증을 수행하기 위해 활용될 수 있다.
도 5a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5a를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 공개 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다.
응답자(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)에게 제공할 수 있다.
응답자(200)의 개인 식별 데이터는 예를 들어, 응답자(200)의 지갑 주소, 소속, 직함, 보안 등급 등을 포함할 수 있다.
응답자(200)로부터 설문조사 참여 요청을 제공받은 발행자(100)는 요청에 포함된 응답자(200)의 개인 식별 데이터를 확인하고, 설문 조사에 참가할 수 있는 자격을 평가할 수 있다. 이러한 평가는 예를 들어, 응답자(200)의 개인 식별 데이터가 발행자(100)가 미리 저장하고 있는 응답자 명부와 일치하는지 여부 등에 기초할 수 있으나 본 발명이 이에 제한되는 것은 아니다.
발행자(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 또는 기타 공지된 디지털 서명 알고리즘을 사용할 수 있다.
또한, 발행자(100)는 앞서 제공된 응답자(200)의 개인 식별 데이터 및 메타데이터를 조합하여 설문조사 토큰을 생성할 수 있다. 이와 같이 생성된 토큰은 앞서 설명된 퍼즐화된 설문조사 토큰을 포함할 수 있다.
생성된 설문조사 토큰(120)은 블록체인을 통해 응답자(200)에게 제공될 수 있다. 응답자(200)는 이후 단계를 위해 제공된 토큰(120)을 별도의 처리 없이 그대로 보관하고 있을 수 있다.
도 5b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 설문조사 토큰의 생성을 설명하기 위한 도면이다.
도 5b에 의해 설명되는 익명 설문조사는, 응답자(200)의 신원이 발행자(100)에 의해서도 노출되지 않는 설문조사 과정이 포함된다. 즉, 이하에서는 발행자(100)는 응답자(200)가 제공한 응답자의 개인키에 관한 정보를 알지 못한 채 자신의 개인 키로 서명하여 응답자(200)에게 제공하는 일련의 과정이 설명된다.
도 5b를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 익명 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다. 이후에 설명하는 것과 같이, 공개 설문조사와는 다르게 익명 설문조사를 수행하는 경우 응답자의 식별을 방지하기 위한 별도의 단계들이 추가적으로 수행될 수 있다.
응답자(200)가 발행자(100)의 연락처를 추출하고, 개인 키/공개 키(PrivV, PubV)를 생성하는 것은 앞서 설명한 공개 설문조사의 경우와 동일할 수 있다.
한편, 응답자(200)는 응답자의 공개 키의 블라인드(blind) 해시를 생성하고, 응답자(200)의 개인 식별 데이터와 함께 발행자(100)에 제공할 수 있다.
구체적으로, 응답자(200)는 응답자의 공개 키(PubV)의 해시(hpk)를 연산할 수 있다(hpk = hash(PubV)). 또한, 응답자(200)는 발행자의 공개 키(PubI)와 랜덤하게 생성된 논스(nonce)를 이용하여 공개 키의 해시(hpk)를 블라인드한 결과(bpk)를 연산할 수 있다(bpk = Blind(hpk, PubI, nonce)).
여기서 블라인드(blind)는 Blind RSA signature와 같이 바이트 문자열의 내용을 공개하지 않고 바이트 문자열에 안전하게 서명할 수 있는 프로토콜을 의미할 수 있다. 이러한 블라인드 서명에서 보낸 사람의 메시지는 수신자가 서명하기 전에는 블라인드되며, 서명 당사자는 메시지 내용을 알지 못한다. 보낸 사람은 서명된 메시지를 언블라인드(unblind)함으로써 적절하게 서명된 메시지를 얻을 수 있다.
응답자(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)하는 것이다.
위와 같은 블라인드 및 언블라인드 연산을 통한 일련의 과정의 핵심 특징은 응답자(200)가 얻은 언블라인드된 설문조사 토큰(SurveyTokenV)이 SignRSA(hash(PubV), PrivI), 즉 응답자의 공개 키(PubV)에 대한 발행자의 서명과 동일하다는 것에 있다. 블라인드 서명 과정 덕분에 발행자(100)는 응답자의 공개 키(PubV)의 값을 알지 못한 채 서명하게 된다. 응답자(200)가 설문조사 트랜잭션에 서명하기 위해 자신의 키(PrivV)를 사용하는 경우 발행자(100)를 포함한 어느 누구도 실제 응답자를 추적할 수 없게 된다.
도 6a는 본 발명의 몇몇 실시예에 따른 공개 설문조사를 위한 퍼즐화된 설문조사 토큰의 생성을 설명하기 위한 도면이다. 도 6a 및 하기 6b에서 설명하는 퍼즐화된 설문조사 토큰은 연령, 출신 지역, 성별 등과 같이 응답자(200)에 대한 몇 가지 추가 정보, 즉 메타데이터를 포함하는 설문조사 토큰을 의미할 수 있다. 상기 퍼즐화된 설문조사 토큰이 이와 같은 메타데이터를 포함함으로써, 응답자(200)의 개인 정보를 침해하지 않고 응답자에 대한 검증 가능한 정보가 발행자(100)에게 제공될 수 있다. 즉, 응답자(200)가 자발적으로 제공한 최소한의 개인 정보에 기초하여 설문조사 진행이 가능하며, 이후 설명되는 것과 같이 발행자(100)만이 식별 및 복호화할 수 있는 메타데이터를 이용함으로써 개인정보 유출 방지 및 개인정보 주체의 데이터 주권 확보가 가능하다.
메타데이터는 예를 들어, JSON, YAML, TOML, XML 등과 같은 구조화된 형식의 문서에 포함된 항목과, 각각의 항목에 할당된 코드를 포함하도록 구성될 수 있다.
메타데이터는 발행자(100)의 내부 데이터베이스에 저장될 수 있으며, 내부 데이터베이스는 저장된 메타데이터를 고유하게 식별하기 위한 EntryID를 포함할 수 있다. 또한 퍼즐화된 설문조사 토큰에는 해당 메타데이터에 대한 불투명한(opaque) 참조로 암호화된 EntryID, 즉 oeid가 포함될 수 있다.
도 6a를 참조하면, 발행자(100)로부터 생성된 설문조사(110)를 응답자(200)가 인식하고, 공개 설문조사에 대하여 발행자(100)에 대해 설문조사 참여 요청을 제공하며 응답자 자격에 대한 검증이 완료되면 퍼즐화된 설문조사 토큰이 응답자(200)에게 제공되는 것이 도시된다.
설문조사(110)가 공개 설문조사인 경우, 응답자(200)는 식별을 위한 개인 데이터와 함께 메타데이터에 포함될 수 있는 개인 정보를 발행자(100)에게 제공할 수 있다. 발행자(100)는 제공된 개인 정보를 참조하여 응답자(200)의 메타데이터를 완성시키고, 내부 데이터베이스에 저장할 수 있다.
응답자(200)가 설문조사(110)에 포함된 발행자(100)의 연락처를 추출하는 한편, 응답자(200)에 관한 개인 정보를 기록할 수 있는 구조화된 쿼리 문서(RespondentDoc)를 완성할 수 있다.
응답자(200)는 자신의 공개 키(PubV), 개인 식별 데이터, 메타데이터가 포함된 문서(RespondentDoc)와 함께, 설문조사 참여의 요청을 응답자의 개인 키(PrivV)로 서명하여 발행자(100)에게 제공할 수 있다. 상기 문서(RespondentDoc)에 포함된 메타데이터는 앞에서 설명한 것과 같이 각각의 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 데이터를 포함할 수 있다.
발행자(100)는 제공된 데이터 중 응답자(200)의 개인 데이터를 확인하고, 설문 조사에 참가할 수 있는 자격을 평가할 수 있다. 이와 함께 응답자(200)의 메타데이터는 고유의 EntryID로 식별될 수 있도록 발행자(100)의 내부 데이터베이스에 저장될 수 있다.
발행자(100)는 EntryID를 암호화하여 불투명한(opaque) 메타데이터 ID(oeid)를 생성할 수 있다(oeid = Enc(EntryID, KeyI). 여기서 지정된 key를 사용하여 bytes 문자열의 비대칭 암호화를 연산하는 Enc(bytes, key)는 공지된 암호화 알고리즘을 이용하는 것을 포함할 수 있다.
또한, 발행자(100)는 응답자의 공개 키(PubV)의 해시를 발행자의 개인 키(PrivI)로 서명하고(sk = Sign(hash(PubV), PrivI) 공개 설문조사의 진행을 위한 퍼즐화된 설문조사 키(sk)의 데이터 구조의 해시(hd)를 연산할 수 있다(hd = hash(oeid || sk). 마지막으로, 발행자(100)는 발행자의 디지털 서명이 기재된 데이터의 쌍을 포함하는 퍼즐화된 설문조사 토큰(PuzzSurveyTokenI)을 생성할 수 있다(PuzzSurveyTokenI = [oeid, sk, Sign(hd, PrivI).
발행자(100)는 생성된 퍼즐화된 설문조사 토큰(PuzzSurveyTokenI)을 그대로 발행자의 퍼즐화된 설문조사 토큰(PuzzSurveyTokenV = PuzzSurveyTokenI)으로 하여 보관할 수 있다.
도 6b는 본 발명의 몇몇 실시예에 따른 익명 설문조사를 위한 퍼즐화된 설문조사 토큰의 생성을 설명하기 위한 도면이다.
메타데이터를 포함하는 퍼즐화된 설문조사 토큰을 이용한 익명의 설문조사를 수행하기 위하여, 응답자(200)에 의해 블라인드된 해시를 이용하는 것은 앞서 도 5b를 이용한 설명과 유사하다.
구체적으로, 도 6b를 참조하면, 응답자(200)가 설문조사(110)에 포함된 발행자(100)의 연락처를 추출하는 한편, 응답자(200)에 관한 개인 정보를 이용하여 메타데이터(md)를 직접 생성할 수 있다. 즉, 앞서 공개 설문조사에서 발행자(100)가 응답자(200)의 개인 정보로부터 메타데이터를 구성한 것과는 달리, 퍼즐화된 설문조사 토큰을 이용한 익명 설문조사에서는 응답자(200)가 자신의 메타데이터(md)를 직접 생성할 수 있다. 여기서 생성된 메타데이터(md)는 앞서 설명한 것과 같이 각각의 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 데이터를 포함할 수 있다.
이어서, 응답자(200)는 메타데이터(md)와 응답자의 공개 키(PubV)를 이용하여 머클 트리(merkel tree; mt)를 구성할 수 있다(mt = hash(hash(PubV) || hash(md))). 즉, 응답자(200)는 응답자의 공개 키(PubV)의 해시와 메타데이터(md)의 해시를 합친 값을 다시 해시로 구성하여 머클 트리(mt)를 구성하는 것이다.
응답자(200)는 응답자의 공개 키(PubV)와 메타데이터(md)의 머클 트리(mt)를 블라인드한 값(bmt)을 생성한다. 구체적으로, 응답자는 두 개의 랜덤한 논스(nonce1, nonce2)를 생성하고, 발행자의 공개 키(PubI)와 논스(nonce1)를 이용하여 응답자의 공개 키의 해시(hpk)를 블라인드한 결과(bpk)를 연산할 수 있다(bpk = Blind(hpk, PubI, nonce1).
이어서, 응답자(200)는 발행자의 공개 키(PubI)와 논스(nonce2)를 이용하여 머클 트리 루트(mt)를 블라인드한 결과(bmt)를 연산할 수 있다(bmt = Blind(mt, PubI, nonce2).
응답자(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))을 포함할 수 있다.
응답자(200)는 발행자로부터 서명된 퍼즐화된 설문조사 토큰(PuzzSurveyTokenI)을 이용하여 퍼즐화된 설문조사 토큰(PuzzSurveyTokenV)을 생성할 수 있다.
구체적으로, 퍼즐화된 설문조사 토큰(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))를 포함할 수 있다.
여기서 주목할만한 것은, 응답자(200)에 의해 생성된 퍼즐화된 설문조사 토큰(PuzzSurveyTokenV)의 spk, smt, smd, ekey, emd의 값이 SignRSA(hpk, PrivI), SignRSA(mt, PrivI) 및 Sign(hash(md), PrivI)와, 발행자(100)만이 해독할 수 있는 암호화된 메타데이터에 해당한다는 것에 있다. 즉, 발행자에 의한 응답자의 공개 키 서명과 메타데이터와 결합된 공개 키의 머클 트리 루트의 서명이 퍼즐화된 설문조사 토큰(PuzzSurveyTokenV)에 포함된다. 블라인드 서명 덕분에, 발행자(100)는 데이터 자체를 알지 못한 채 응답자와 발행자의 공개 키의 해시에 서명할 수 있다. 이에 따라 응답자(200)가 설문조사 트랜잭션에 서명하기 위해 응답자의 개인 키(PrivV)로 서명하면, 아무도 실제 응답자를 추적할 수 없다.
메타데이터 암호화의 근거는 발행자(100)만이 응답자(200)의 메타데이터에 액세스할 수 있도록 외부의 관찰자로부터 메타데이터를 비공개로 유지하는 것에 있다. 이를 위해, 발행자(100)는 발행자의 개인 키(PrivI)를 사용하여 ekey를 복호화한 결과(key')를 생성한다(key' = Dec(ekey, PrivI)).
이어서, 발행자(100)는 복호화된 키(key')를 사용하여 메타데이터를 복호화한 결과(md')를 생성한다(md' = DecSym(emd, key')).
발행자(100)는 복호화된 메타데이터(md')를 검증할 수 있다. 구체적으로, 발행자(100)는 발행자의 공개 키(PubI)를 이용하여 확인한 발행자의 퍼즐화된 설문조사 토큰(PuzzSurveyTokenI)의 smd(개인 키(PrivI)를 사용하여 서명된 메타데이터(md)의 해시)가 복호화된 메타데이터(md')의 해시와 일치하는지 여부를 검증할 수 있다(Verify(hash(md'), smd, PubI). 검증 결과가 일치하면 발행자(100)는 복호화된 메타데이터(md')를 내부 데이터베이스에 저장할 수 있다.
정리하면, 응답자(200)의 공개 키(PubV)에서 실제 응답자(200)의 개인 정보 또는 메타데이터로 연결될 수 있는 링크가 존재하지 않기 때문에, 메타데이터(md')는 익명이며, 응답자(200)의 신원을 특정할 수 있는 정보를 드러내지 않을 수 있다.
응답자(200)는 설문조사의 답변을 결합하여 구조화된 문서로 구성하는 한편, 설문조사 토큰(SurveyTokenV 또는 PuzzSurveyTokenV)이 첨부된 결과 데이터 구조에 서명하고 블록체인(500)에 트랜잭션으로 기록할 수 있다. 이 때 답변의 제출은 제출 즉시 집계가 가능한 즉각적인 답변 제출이거나 지연된 집계가 가능한 암호화된 답변 제출 두 가지로 분류될 수 있다.
도 7a는 본 발명의 몇몇 실시예에 따른 조합된 정보가 저장된 토큰 이용 방법에 포함된 응답자의 즉각적인 답변 제출을 설명하기 위한 도면이다.
도 7a를 참조하면, 응답자(200)는 설문조사 토큰(SurveyTokenV) 등을 포함하는 트랜잭션 데이터(VoteTx_Data)와, 이를 응답자의 개인키(PrivV)로 서명한 결과를 함께 포함하는 트랜잭션(VoteTx)을 생성할 수 있다. 응답자(200)는 트랜잭션(VoteTx)을 블록체인(500)에 제공할 수 있다.
한편, 트랜잭션 데이터(VoteTx_Data)는 설문조사의 답변(answers)를 포함할 수 있으며, 해당 답변은 응답자(200)의 메타데이터와 유사하게 항목별로 할당된 코드와, 임의의 수를 부여하여 조합된 형태를 가질 수 있다. 예를 들어, 답변(answers)은 1번 내지 3번의 세 개의 설문조사 문항에 대하여, 설문조사 답변 항목별로 할당된 코드와, 임의의 수를 부여하여 조합된 형태(예를 들어 '0001(1번 문항의 답변)', '1100(2번 문항의 답변)', '0111(3번 문항의 답변)', '0001010(임의의 수)')를 가질 수 있다. 또한, 트랜잭션 데이터(VoteTx_Data)에 포함된 답변(answers)은 시각화된 데이터로서의 이미지 파일로 표현될 수 있다. 이는 상술한 퍼즐화된 토큰(T)의 개인 식별 데이터 또는 메타데이터의 시각화와 유사한 것으로, 답변(answers)은 설문조사 항목의 답변 및 임의의 수에 할당된 컬러로 채워짐으로써 시각화된 이미지로 표현될 수 있다.
블록체인(500)에 포함된 각 노드들은 응답자(200)로부터 제출된 트랜잭션(VoteTx)의 유효성을 검증할 수 있다.
우선, 식별자(SurveyID)를 갖는 설문조사가 현재 진행 중인지 여부가 확인될 수 있다. 만약 트랜잭션(VoteTx)이 진행 기간보다 앞서 제출되거나, 진행 기간이 끝난 후 제출되는 경우 트랜잭션(VoteTx)은 거절될 수 있다.
또한, 트랜잭션(VoteTx)에 포함된 답변이 응답자가 발표한 설문조사(110)에 포함된 문서(SurveyDoc)에 대응되는지 여부와, 트랜잭션 데이터(VoteTx_Data)에 포함된 공개 키(pk = PubV)에 의해 트랜잭션(VoteTx)의 서명이 검증될 수 있는지 여부가 확인될 수 있다(Verify(data, sign, pk)).
또는, 응답자(200)의 공개 키(PubV)가 발행자(100)에 의해 승인되는 과정이 진행될 수 있다. 구체적으로, 공개 설문조사의 경우 설문조사 토큰(SurveyTokenV)은 응답자의 공개 키(PubV)의 해시의 서명이므로, 발행자가 발표한 공개 키(PubI)에 의하여 검증될 수 있다. 익명 설문조사의 경우, 설문조사 토큰(SurveyTokenV)에는 발행자의 키(PrivI)에 의한 응답자의 공개 키(PubV)의 RSA 서명(SignRSA(hash(PubV), PrivI)이 포함될 수 있으며, 이는 발행자의 공개 키(PubI)에 의하여 검증될 수 있다.
마지막으로, 트랜잭션(VoteTx)은 응답자의 개인 키(PrivV)에 의하여 서명된 첫 번째 트랜잭션(VoteTx)이어야 한다. 주어진 설문조사 식별자(SurveyID)에 대하여 상기 개인 키(PrivV)로 서명된 다른 트랜잭션이 존재하는 경우 이중 응답(double answering)에 해당되는 경우로, 거절될 수 있다.
트랜잭션(VoteTx)이 상술한 절차에 의한 유효성 검증을 완료한 경우, 블록체인(500)은 해당 트랜잭션(VoteTx)을 기록할 수 있다.
도 7b는 본 발명의 몇몇 실시예에 따른 설문조사 방법에 포함된 응답자의 암호화된 답변 제출을 설명하기 위한 도면이다.
도 7b를 참조하면, 응답자(200)는 설문조사 토큰(SurveyTokenV)와 등을 포함하는 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)와, 이를 응답자의 개인키(PrivV)로 서명한 결과를 함께 포함하는 암호화된 트랜잭션(EncryptedVoteTx)을 생성할 수 있다.
여기서 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)는 응답자(200)의 암호화된 답변을 포함할 수 있다. 응답자의 답변(answers)은 답변 암호화를 위해 설문조사 생성 단계에서 발행자(100)로부터 생성된 키 쌍(EncI, DecI) 중 하나(EncI)에 의하여 암호화된 트랜잭션 데이터(EncryptedVoteTx_Data)에 포함될 수 있다. 암호화된 답변이 제출되면, 설문조사의 종료된 이후 지연된(delayed) 집계가 시작된다. 암호화된 답변이 제출됨에 따라 투표 도중에는 투표와 관련된 주체들이 집계 상황을 알 수 없게 된다.
응답자(200)는 암호화된 트랜잭션(EncryptedVoteTx)을 블록체인(500)에 제공할 수 있다.
블록체인(500)에 포함된 각 노드들은 응답자(200)로부터 제출된 암호화된 트랜잭션(EncryptedVoteTx)의 유효성을 검증할 수 있다. 즉, 앞서 도 7a을 이용하여 설명한 트랜잭션(VoteTx)의 유효성 검증 단계인 설문조사 진행 기간, 답변의 형식, 지연된 트랜잭션의 서명 검증, 응답자의 공개 키(PubV)의 발행자(100)에 의한 승인, 암호화된 트랜잭션(EncryptedVoteTx)이 응답자의 개인 키(PrivV)로 서명된 첫 번째 트랜잭션인지 여부가 검증될 수 있다.
발행자(100)는 응답자(200)들로부터 제출되어 블록체인(500)에 기록된 답변들의 트랜잭션을 집계함으로써 설문조사의 집계를 수행할 수 있다(S150).
도 7a를 통해 설명한 즉각적인 답변 제출의 경우, 설문조사 진행 기간이 종료되면 발행자(100)는 유효한 트랜잭션을 집계하고 트랜잭션에 포함된 답변 문서를 수집하여 처리할 수 있다.
도 7b를 통해 설명한 지연된 답변 제출의 경우, 답변이 키(EncI)에 의하여 암호화되었으므로 이를 복호화하기 위한 절차가 필요하다. 발행자(100)는 설문조사 기간이 종료되면 다른 키(DecI)를 블록체인(500)에 기록하여 블록체인(500)에 액세스할 수 있는 다른 참가자들이 암호화된 답변을 복호화할 수 있도록 할 수 있다. 블록체인(500)에 액세스할 수 있는 다른 참가자들은 블록체인에서 모든 암호화된 트랜잭션(EncryptedVoteTx)을 반복하고, 각 트랜잭션에 포함된 암호화된 답변 문서를 키(DecI)를 이용하여 복호화할 수 있다. 발행자(100)는 복호화된 답변 문서를 수집하고, 집계 결과를 생성할 수 있다. 집계 결과는 발행자(100)에 의하여 서명되어 블록체인(500)에 기록될 수 있다(S160).
또한, 발행자(100)는 복호화된 답변 문서를 통해 수집된 집계 결과를 비로하여, 설문조사 토큰에 포함된 메타데이터를 집계할 수 있다. 위에서 설명한 것과 같이, 발행자(100)는 설문조사(110) 생성 시 특정 성별, 연령대, 거주지역 등에 관한 조건을 부여할 수 있고, 설문조사 결과 집계 시 상기 조건에 기초하여 설문조사 결과를 필터링할 수 있다. 또한 발행자(100)는 설문조사에 참여한 응답자(200)의 메타데이터를 별도로 집계하고, 일종의 빅데이터로 활용할 수 있으며, 설문조사 결과 분석 시 참여자가 사전에 입력한 정보를 추가적으로 활용함으로써 더욱 정확한 응답자 데이터 분석 및 설문조사 결과 분석을 수행할 수 있다.
응답자(200)는 설문조사에 참여한 증거를 벤더(300)에 제시할 수 있다(S170). 공개 설문조사가 진행된 경우 응답자(200)는 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)이 블록체인(500)에 기록됨으로써 생성된 식별자(txID)와 이를 자신의 개인 키(PrivV)로 서명한 메시지를 벤더(300)에 제공할 수 있다. 벤더(300)는 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)에 포함된 응답자(200)의 공개 키(pk = PubV)를 이용하여 서명된 메시지를 검증할 수 있다. 검증이 완료되면, 벤더(300)는 사용자의 공개 키(PubV)와 연결된 블록체인(500) 상의 지갑으로 보상을 전송할 수 있다.
익명 설문조사가 진행된 경우, 단순히 응답자(200)가 자신의 공개 키(PubV)와 설문조사 트랜잭션(VoteTx 또는 DelayedVoteTx)을 벤더(300)에게 제시한다면, 응답자(200)와 답변 사이에 직접적인 링크가 노출되므로 익명성이 사라질 수 있다. 따라서 익명성을 보장하기 위해 그룹 서명(group signature)이 이용될 수 있다.
그룹 서명은 서명의 ID를 공개하지 않고 안전한 그룹 구성원 관계를 보장하는 암호화 프로토콜 클래스이다. 그룹 서명은 공개 키(Pub1, Pub2, ??, Pubn) 및 해당 공개 키 중 하나와 대응하는 개인 키(Privi)의 세트로 이루어진다. 그룹 서명(GS(Privi, Pub1, ??, Pubn)(bytes))은 바이트 문자열(bytes)이 공개 키(Pub1, Pub2, ??, Pubn) 중 하나에 대응하는 개인 키(Privi)에 의하여 서명되었는지 여부를 확인할 수 있지만 어느 것에 의한 것인지는 공개되지 않는다. 만약 서명이 공개 키 중 하나에 대응하는 개인 키에 의해 구성된 경우 서명의 유효성이 검증될 수 있다.
응답자(200)는 블록체인(500)에 기록된 무작위 트랜잭션(tx1, ??, txn)을 읽고 다른 응답자들의 공개 키(Pub1, ??, Pubn)을 추출할 수 있다. n은 예를 들어 약 20개 내외일 수 있다. 응답자(200)는 무작위 트랜잭션(tx1, ??, txn)에 자신의 트랜잭션(tx)을 추가하고, 이들의 트랜잭션을 셔플(shuffle)하여 벤더(300)에 제공한다.
벤더(300)에 제공되는 보상 요청은 보상을 제공할 지갑 주소(dst), 셔플된 트랜잭션 집합(tx0, tx1, ??, txn), 보상을 제공할 지갑 주소와 트랜잭션 집합을 응답자의 개인 키를 이용한 그룹 서명 (sign=GS(PrivV, PubV, Pub1, ??, Pubn)(hash(dst||tx0, ??, txn))))을 포함할 수 있다.
벤더(300)는 청구에 포함된 트랜잭션 집합(tx0, tx1, ??, txn)을 각각 검증하고, 트랜잭션들이 동일한 설문조사에 포함된 것인지를 확인하는 한편, 청구에 포함된 공개 키(Pub0, ??, Pubn)를 추출하여 그룹 서명을 검증한다(GV(hash(dst, txs), sign, {Pub0, ??, Pubn}).
이러한 과정을 통해 벤더(300)는 응답자(200)의 실제 답변에 전혀 알지 못하는 상태에서 응답자(200)가 트랜잭션을 통해 설문조사에 참여했음을 확인하고, 보상을 제공할 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 하드디스크, ROM, RAM, CD-ROM, 하드 디스크, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 발행자 200: 응답자
300: 벤더 400: 설문조사 애플리케이션

Claims (11)

  1. 발행 요청자 단말로부터 퍼즐화된 토큰(puzzled token)의 발행 요청과 함께 개인 정보를 제공받는 단계;
    상기 발행 요청자 단말로부터, 상기 개인 정보 중 적어도 일부에 대한 선택을 제공받는 단계;
    상기 선택된 개인 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터를 포함하는 블록체인 상의 퍼즐화된 토큰을 생성하는 단계; 및
    상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계를 포함하는,
    조합된 정보가 저장된 블록체인 상의 토큰 이용 방법.
  2. 제 1항에 있어서,
    상기 발행 요청자 단말로부터 퍼즐화된 토큰의 발행 요청을 받기 이전에, 설문조사를 생성하여 블록체인에 기록하는 단계를 더 포함하고,
    상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계는,
    상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계를 포함하고,
    상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계 이후에, 응답자의 개인 키로 서명된 퍼즐화된 토큰을 상기 발행 요청자 단말로부터 제공받고, 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계; 및
    상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계를 더 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  3. 제 2항에 있어서,
    상기 설문조사는 공개 설문조사를 포함하고,
    상기 선택된 개인 정보에 할당된 코드와, 임의의 수를 부여하여 조합된 개인 식별 데이터를 포함하는 블록체인 상의 퍼즐화된 토큰을 생성하는 단계는,
    응답자의 공개 키의 해시를 상기 발행자의 개인 키로 서명한 결과를 이용하여 퍼즐화된 토큰을 생성하는 것을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  4. 제 2항에 있어서,
    상기 응답자의 개인 키로 서명된 퍼즐화된 토큰을 설문조사 결과와 함께 상기 블록체인에 트랜잭션으로 제공하는 단계는,
    상기 퍼즐화된 토큰을 포함하는 트랜잭션 데이터를 응답자의 개인 키로 서명하여 생성한 트랜잭션을 상기 블록체인에 제공하는 것을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  5. 제 2항에 있어서,
    상기 설문조사는 익명 설문조사를 포함하고,
    상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계는,
    논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시를 응답자의 식별을 위한 데이터와 함께 제공받고,
    상기 블라인드된 해시를 상기 발행자의 개인 키로 서명하여 생성한 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 것을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  6. 제 5항에 있어서,
    상기 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 단계 이후에,
    상기 발행 요청자 단말이 상기 퍼즐화된 토큰을 상기 논스로 언블라인드(unblind)하는 단계를 더 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  7. 제 2항에 있어서,
    상기 설문조사는 공개 설문조사를 포함하고,
    상기 퍼즐화된 토큰은 응답자의 메타데이터가 저장된 내부 데이터베이스 주소를 암호화한 결과를 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  8. 제 2항에 있어서,
    상기 설문조사는 익명 설문조사를 포함하고,
    상기 퍼즐화된 토큰을 발행자의 개인 키로 서명하여 상기 발행 요청자 단말에 제공하는 단계는,
    상기 발행 요청자 단말로부터 논스(nonce)로 블라인드(blind)된 응답자의 공개 키의 해시와 응답자의 메타데이터를 포함한 패키지를 제공받고, 상기 블라인드된 해시와 메타데이터를 상기 발행자의 개인 키로 서명하여 생성한 퍼즐화된 토큰을 상기 발행 요청자 단말에 제공하는 것을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  9. 제 2항에 있어서,
    상기 트랜잭션 중 유효한 것을 검증하여 상기 블록체인에 기록하고 상기 설문조사 결과를 집계하는 단계는,
    상기 트랜잭션에 포함된 상기 응답자의 개인 키로 서명된 설문조사 토큰을 상기 발행자의 공개 키로 검증하는 것을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  10. 제 2항에 있어서,
    상기 서명된 퍼즐화된 토큰을 블록체인에 트랜잭션으로 제공한 결과를 상기 설문조사의 결과로 벤더에게 제공하는 단계; 및
    상기 설문조사의 결과를 검증하고, 검증이 완료된 응답자에 대해 보상을 제공하는 단계를 더 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
  11. 제 1항에 있어서,
    상기 메타데이터에 관한 정보를 포함하는 퍼즐화된 토큰은, 상기 메타데이터의 항목별로 할당된 코드에 대응하는 컬러를 포함하는 시각화된 데이터로서의 이미지 파일을 포함하는,
    블록체인 상에서 퍼즐화된 토큰을 이용한 데이터 수집 방법.
KR1020220059021A 2022-05-13 2022-05-13 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템 KR20230159087A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220059021A KR20230159087A (ko) 2022-05-13 2022-05-13 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템
PCT/KR2023/006568 WO2023219478A1 (ko) 2022-05-13 2023-05-15 퍼즐화된 토큰을 관리하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220059021A KR20230159087A (ko) 2022-05-13 2022-05-13 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR20230159087A true KR20230159087A (ko) 2023-11-21

Family

ID=88730795

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220059021A KR20230159087A (ko) 2022-05-13 2022-05-13 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템

Country Status (2)

Country Link
KR (1) KR20230159087A (ko)
WO (1) WO2023219478A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115589332A (zh) * 2017-04-28 2023-01-10 数据翼股份有限公司 在去中心化系统中实施集中式隐私控制的系统和方法
US10885225B2 (en) * 2018-06-08 2021-01-05 Microsoft Technology Licensing, Llc Protecting personally identifiable information (PII) using tagging and persistence of PII
KR102121930B1 (ko) * 2018-07-03 2020-06-11 네이버 주식회사 블록체인 기반의 개인 데이터 처리 방법 및 시스템
WO2021195249A1 (en) * 2020-03-24 2021-09-30 Securrency, Inc. Method, apparatus, and computer-readable medium for secured multi-lateral data exchange over a computer network
US11797698B2 (en) * 2020-06-15 2023-10-24 Concord Technologies Inc. Decentralized consent network for decoupling the storage of personally identifiable user data from user profiling data

Also Published As

Publication number Publication date
WO2023219478A1 (ko) 2023-11-16

Similar Documents

Publication Publication Date Title
US11232478B2 (en) Methods and system for collecting statistics against distributed private data
US20220321359A1 (en) Methods and systems for ownership verification using blockchain
US20230216669A1 (en) Systems and methods for communication, storage and processing of data provided by an entity over a blockchain network
US11496312B2 (en) Collecting surveys with secure identities via a blockchain
RU2652443C1 (ru) Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования
TW201840159A (zh) 用於使用區塊鏈之安全資料記錄分配之方法及系統
CN111492634A (zh) 使用零知识协议的安全并且机密的保管交易系统、方法和设备
JP2003529256A (ja) 安全な複数オーソリティ選挙のためのエルガマル暗号化データのように暗号化されたデータの検証可能な秘密シャッフル
JP7121793B2 (ja) ブロックチェーンネットワーク上のエンティティにより提供されたデータの通信、記憶、及び処理のためのシステム及び方法
US20240143795A1 (en) Method and device for intersecting unbalanced private sets
EP3474241A1 (en) Electronic balloting
KR20230159087A (ko) 조합된 정보가 저장된 블록체인 상의 토큰 이용 방법 및 그 시스템
KR20230053990A (ko) 설문조사 토큰을 이용하여 블록체인 상에서 응답자의 개인정보 수집이 가능한 설문조사 방법 및 이를 수행하는 시스템
Hohenberger et al. An overview of ANONIZE: A large-scale anonymous survey system
Kassaras et al. Zkps: Does this make the cut? recent advances and success of zero-knowledge security protocols
KR102208763B1 (ko) 선거 명칭을 이용한 전자 투표 시스템
KR102179421B1 (ko) 선거 명칭을 이용한 전자 투표 방법
JP7482982B2 (ja) ブロックチェーンにおけるコンピュータ実行方法、システム及び記憶媒体
TW202402009A (zh) 所有權證明之技術
CN116975936B (zh) 金融资质证明方法、金融资质验证方法
RU2271574C2 (ru) Проверяемые секретные перетасовывания и их применение при проведении электронного голосования
CN116882995A (zh) 身份信息的核验方法、装置、存储介质及电子设备
CN115048670A (zh) 一种基于区块链的加密存证方法、装置、设备及存储介质
WO2015176015A1 (en) Large-scale anonymous survey system and methods

Legal Events

Date Code Title Description
E902 Notification of reason for refusal