KR102030800B1 - 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치 - Google Patents

생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치 Download PDF

Info

Publication number
KR102030800B1
KR102030800B1 KR1020190032136A KR20190032136A KR102030800B1 KR 102030800 B1 KR102030800 B1 KR 102030800B1 KR 1020190032136 A KR1020190032136 A KR 1020190032136A KR 20190032136 A KR20190032136 A KR 20190032136A KR 102030800 B1 KR102030800 B1 KR 102030800B1
Authority
KR
South Korea
Prior art keywords
biometric data
data
biometric
information
data processing
Prior art date
Application number
KR1020190032136A
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 KR1020190032136A priority Critical patent/KR102030800B1/ko
Application granted granted Critical
Publication of KR102030800B1 publication Critical patent/KR102030800B1/ko
Priority to JP2019234665A priority patent/JP6875498B6/ja
Priority to SG10201913513TA priority patent/SG10201913513TA/en
Priority to EP20151174.8A priority patent/EP3712894A1/en
Priority to US16/743,514 priority patent/US11004544B2/en
Priority to CN202010195936.XA priority patent/CN111723354B/zh

Links

Images

Classifications

    • 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/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/40Encryption of genetic data
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • 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/602Providing cryptographic facilities or services
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/10Sequence alignment; Homology search
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Biotechnology (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Genetics & Genomics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Analytical Chemistry (AREA)
  • Chemical & Material Sciences (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Epidemiology (AREA)
  • Evolutionary Computation (AREA)
  • Public Health (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Power Engineering (AREA)
  • Molecular Biology (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

생체 데이터 제공 방법은 데이터 처리 장치가 생체 데이터 풀(pool)에서 생체 데이터 세트를 선택하는 단계, 상기 데이터 처리 장치가 상기 생체 데이터 세트에 포함된 생체 데이터들에 대한 암호화를 수행하는 단계, 상기 데이터 처리 장치가 암호화된 생체 데이터들을 사용자에게 전달하는 단계, 상기 데이터 처리 장치가 상기 사용자로부터 상기 암호화된 생체 데이터에 대한 분석 결과를 수신하는 단계 및 상기 데이터 처리 장치가 상기 분석 결과에 포함된 암호화된 생체 데이터에 대한 정보를 상기 사용자에게 전달하는 단계를 포함한다. 상기 데이터 처리 장치는 상기 생체 데이터 세트를 구성하는 생체 데이터의 조합에 따라 결정되는 키(key)를 이용하여 상기 생체 데이터들을 암호화한다.

Description

생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치{BIO DATA PROVIDING METHOD, BIO DATA ENCRYPTION METHOD AND APPARATUS FOR PROCESSING BIO DATA}
이하 설명하는 기술은 생체 데이터를 제공하는 기법에 관한 것이다. 특히 이하 설명하는 기술은 생체 데이터를 동적으로 암호화하여 제공하는 기법에 관한 것이다.
2000년대 초 인간 유전체 서열의 해독이 완료된 이후로 개인의 유전변이를 연구하는 기법이 급속히 발전해 왔다. 예컨대, 단일염기다형성(SNP, Single Nucleotide Polymorphism)은 대용량으로 분석할 수 있는 기술의 발전으로 저렴한 비용으로 짧은 시간에 수십만 개의 유전 변이를 결정할 수 있게 되었다. NGS(Next Generation Sequencing)기술을 이용하여 수십만개의 SNP를 도출하고 이들 중에서 통계적으로 표현형과유의미하게 관련 있는유전 변이를 찾는 연구분야를 전장유전체상관성분석(Genome-Wide Association Study, GWAS)이라 한다.
개인의 표현형과 유전변이 정보는 개인 정보에 해당한다. 따라서 GWAS를 포함한 다양한 유전자 분석 분야에서 개인 표현형과 유전체 정보의 보안성 확보는 중요한 이슈이다. 현재 대량의 개인 표현형과 유전체 정보가 다수의 연구자에게 공유되면서, 제3자에게 노출될 가능성이 높다.
한국등록특허 제10-0537523호
이하 설명하는 기술은 개인의 유전체 정보 및 표현형 정보를 제3자에게 노출시키지 않고, 특정 연구자에게만 제공하는 기법을 제안하고자 한다. 이하 설명하는 기술은 암호화된 데이터 형태로 유전체 분석이 가능한 기법을 제안하고자 한다.
생체 데이터 제공 방법은 데이터 처리 장치가 생체 데이터 풀(pool)에서 선택된 생체 데이터 세트를 획득하는 단계, 상기 데이터 처리 장치가 상기 생체 데이터 세트에 포함된 생체 데이터들에 대한 암호화를 수행하는 단계, 상기 데이터 처리 장치가 암호화된 생체 데이터들을 사용자에게 전달하는 단계, 상기 데이터 처리 장치가 상기 사용자로부터 상기 암호화된 생체 데이터에 대한 분석 결과를 수신하는 단계 및 상기 데이터 처리 장치가 상기 분석 결과에 포함된 암호화된 생체 데이터에 대한 정보를 상기 사용자에게 전달하는 단계를 포함한다. 상기 데이터 처리 장치는 상기 생체 데이터 세트를 구성하는 생체 데이터의 조합에 따라 결정되는 키(key)를 이용하여 상기 생체 데이터들을 암호화한다.
생체 데이터 암호화 방법은 데이터 처리 장치가 생체 데이터 풀(pool)을 수신하는 단계, 상기 데이터 처리 장치가 분류 정보에 따라 상기 생체 데이터 풀에서 생체 데이터 세트를 선택하는 단계 및 상기 데이터 처리 장치가 상기 생체 데이터 세트에 포함된 개별 생체 데이터들을 암호화하는 단계를 포함한다. 상기 암호화는 상기 생체 데이터 세트를 구성하는 생체 데이터의 조합에 따라 결정되는 키(key)를 이용하여 수행된다.
생체 데이터 처리 장치는 생체 데이터 세트에 포함된 생체 데이터를 암호화하는 프로그램 및 생체 데이터 풀(pool)을 저장하는 저장장치 및 분류 정보에 따라 상기 생체 데이터 풀에서 상기 생체 데이터 세트를 선택하고, 상기 프로그램을 이용하여 선택한 상기 생체 데이터 세트에 포함된 개별 생체 데이터들을 암호화하는 연산장치를 포함한다. 상기 암호화는 상기 생체 데이터 세트를 구성하는 생체 데이터의 조합에 따라 결정되는 키(key)를 이용하여 수행된다.
이하 설명하는 기술은 개인 표현형과 유전체 정보 중 중요한 정보를 암호화하여 연구자에게 제공하고, 제3자가 제공된 데이터를 확보하여도 개인 정보가 노출되기 어렵다. 이하 설명하는 기술은 연구자가 암호화된 데이터 형태로 데이터 분석이 가능하고, 분석 결과 중 핵심적인 원본 데이터만 연구자에게 제공하여 개인 정보 노출을 최소화한다. 이하 설명하는 기술은 대량의 원본 생체 데이터를 크기가 작은 데이터로 변환하여 데이터 관리 및 전송에 유리하다.
도 1은 생체 데이터를 처리하는 과정에 대한 예이다.
도 2는 생체 데이터를 처리하는 과정에 대한 다른 예이다.
도 3은 생체 데이터를 처리하는 시스템에 대한 예이다.
도 4는 생체 데이터 시스템의 동작에 대한 예이다.
도 5는 생체 데이터 및 암호화된 데이터에 대한 예이다.
도 6은 해싱키를 결정하는 과정에 대한 예이다.
도 7은 생체 데이터 처리 장치의 구성을 도시한 예이다.
도 8은 생체 데이터를 처리하는 시스템에 대한 다른 예이다.
이하 설명에서 사용되는 용어에 대하여 설명한다.
유전체 데이터 내지 유전체 정보는 특정한 사용자의 샘플(시료) 및 생명체(인간, 동물, 미생물 등)로부터 얻은 데이터를 의미한다. 예컨대, 유전체 데이터는 세포, 조직 등으로부터 데옥시리보 핵산(DNA), 리보핵산(RNA), 또는 단백질(Protein) 등에서 얻어진 염기서열, 유전자 발현 데이터, 표준 유전체 데이터와의 유전 변이, DNA 메틸화(methylation) 등을 포함할 수 있다. 일반적으로 유전체 데이터는 특정 시료를 분석하여 얻은 서열 정보를 포함한다. 유전체 데이터는 일반적으로 디지털 데이터로 표현된다. NGS 분석 장치를 통해 얻은 서열 데이터 등이 이에 해당한다.
표현형(phenotype) 데이터 내지 표현형 정보는 본래 생명체의 겉으로 드러나는 발현 형질을 의미한다. 표현형 데이터는 세포/조직/개체의 외부 발현 형질을 의미할 수 있다. 예컨대, 개인(인간)의 경우 표현형 데이터는 신장, 체중과 같은 측정값, 성별, 인종, 질병 유무, 건강상태(질병)에 대한 설문조사 값 등을 포함할 수 있다.
나아가 표현형 데이터는 개인의 건강 상태를 판단할 수 있는 데이터를 포함할 수 있다. 예컨대, 표현형 데이터는 전자의무기록(EMR, Electronic Medical Record)과 같은 의료 데이터를 포함할 수 있다. 의료 데이터는 의료장비를 이용한 검사결과(임상 정보) 또는 의료진에 의한 진단결과 등을 포함할 수 있다. 예컨대, 의료 데이터는 의료장비에 의해 획득된 영상 데이터 등을 포함할 수 있다. 또한, 의료 데이터는 헬스케어 디바이스가 측정한 생체 신호 데이터를 포함할 수 있다. 또한 의료 데이터는 IoT 디바이스가 측정한 생횔 습관 데이터(활동 패턴, 운동량 등)를 포함할 수도 있다.
생체 데이터(bio data)는 전술한 유전체 데이터, 표현형 데이터 및 의료 데이터를 포괄하는 의미로 사용한다. 생체 데이터는 유전체 데이터, 표현형 데이터 및 의료 데이터 중 적어도 하나의 데이터 유형을 포함할 수 있다.
시료(sample) 제공자는 유전체 데이터 분석을 위한 시료를 제공하는 주체이다. 예컨대, 시료 제공자는 개인 또는 의료기관일 수 있다. 또는 시료 제공자는 시료를 분석하기 위한 연구기관이나 분석 기업일 수도 있다.
생체 데이터 제공자는 시료를 분석하여 유전체 데이터와 같은 생체 데이터를 생산하는 주체이다. 예컨대, 생체 데이터 제공자는 NGS(Next Generation Sequencing)에 기반한 유전체 데이터를 생산할 수 있다. 생체 데이터 제공자는 유전체 데이터와 표현형 데이터를 결합하여 생체 데이터를 생산할 수도 있다.
생체 데이터 사용자는 생체 데이터를 사용하는 주체이다. 생체 데이터 사용자는 생체 데이터를 사용하여 분석을 수행하는 주체이다. 예컨대, 생체 데이터 사용자는 의료기관, 분석 기업 등일 수 있다. 생체 데이터 사용자는 GWAS에 기반한 분석을 수행할 수도 있다.
서비스 제공자는 생체 데이터를 일정하게 처리하는 주체이다. 서비스 제공자는 생체 데이터를 분석하는 주체는 아니고, 생체 데이터를 일정하게 처리하여 생체 데이터 사용자에게 제공하는 주체이다. 생체 데이터 처리는 생체 데이터 암호화, 생체 데이터 전처리, 생체 데이터 후처리 등을 포함할 수 있다. 예컨대, 서비스 제공자는 생체 데이터 전체 또는 일부를 암호화하여 생체 데이터 사용자에게 제공할 수 있다. 또 서비스 제공자는 암호화된 생체 데이터를 일정한 포맷으로 변환하여 생체 데이터 사용자에게 제공할 수 있다. 서비스 제공자는 생체 데이터를 일정하게 처리/가공/암호화하는 서비스를 제공하는 주체이다.
경우에 따라서 서비스 제공자가 생체 데이터 생산을 할 수도 있다. 이 경우 서비스 제공자는 자신이 생산한 생체 데이터를 일정하게 처리하는 서비스까지 수행한다. 이하 서비스 제공자가 제공하는 생체 데이터 서비스를 중심으로 설명한다.
도 1은 생체 데이터를 처리하는 과정에 대한 예이다. 시간의 흐름에 따라 설명한다. 도 1은 시료 제공자(5), 서비스 제공자(10) 및 생체 데이터 사용자(20)를 도시한다. 서비스 제공자(10)는 시료를 이용하여 생체 데이터를 생성하고, 생체 데이터를 제공하는 서비스를 한다.
서비스 제공자(10)는 시료 제공자(5)로부터 시료를 전달받을 수 있다. 또는 서비스 제공자(10)는 생체 데이터 사용자(20)로부터 시료를 전달받을 수도 있다. 이와 같이 생체 데이터 사용자(20)가 시료를 수집하여 서비스 제공자(10)에게 전달할 수도 있다.
서비스 제공자(10)는 먼저 생체 데이터를 생성한다. 서비스 제공자(10)는 NGS 분석을 통해 유전체 데이터를 생성할 수 있다. 유전체 데이터는 NGS 분석 외에도 다양한 방법으로 생산될 수 있다. 서비스 제공자(10)는 시료 제공자(5)의 표현형 데이터를 획득할 수 있다. 예컨대, 서비스 제공자(10)는 EMR과 같은 의료 데이터베이스(30)로부터 특정 시료 제공자에 대한 표현형 데이터를 획득할 수 있다. 이 경우 서비스 제공자(10)는 시료 또는 시료 제공자의 식별자를 기준으로 의료 데이터베이스(30)로부터 매칭되는 특정 표현형 데이터를 획득할 수 있다. 표현형 데이터는 신체 정보, 생체 신호 정보, 의료 정보 및 진료 정보 중 적어도 하나를 포함할 수 있다. 서비스 제공자(10)는 유전체 데이터 및 표현형 데이터 중 적어도 하나를 사용하여 생체 데이터를 생성할 수 있다. 서비스 제공자(10)는 유전체 데이터만으로 구성되는 생체 데이터를 생성할 수도 있다. 생체 데이터는 디지털 데이터이다.
서비스 제공자(10)는 생체 데이터를 일정하게 처리할 수 있다. 대표적으로 서비스 제공자(10)는 생체 데이터를 암호화할 수 있다. 서비스 제공자(10)는 생체 데이터 전체 또는 일부를 암호화할 수 있다. 암호화 과정에 대해서는 후술한다.
서비스 제공자(10)는 암호화된 생체 데이터를 생체 데이터 사용자(20)에게 전달한다. 생체 데이터 사용자(20)는 암호화된 생체 데이터를 이용하여 생체 데이터를 분석할 수 있다. 생체 데이터는 전술한 바와 같이 일정한 디지털 데이터 형태이다. 유전체 데이터를 기준으로 설명하면, 유전체 데이터는 유전자 또는 일정한 서열 단편(fragment)의 위치 및 해당 유전자의 종류 내지 서열 구성으로 특정될 수 있다. 서비스 제공자(10)는 동일한 원본 값(예컨대, "AGC")을 동일한 암호화 데이터(예컨대, "011110")로 암호화한다. 따라서 생체 데이터 사용자(20)는 암호화된 데이터를 기준으로 일정한 패턴 또는 일정한 위치에서 나타나는 정보를 추출할 수 있다. 생체 데이터 사용자(20)는 이와 같이 암호화된 데이터를 기준으로 분석 결과를 도출할 수 있다. 예컨대, 생체 데이터 사용자(20)는 반복되는 특정한 서열, 특정한 위치에 존재하는 서열, 유의미한 SNP 패턴 등을 분석 결과로 도출할 수 있다.
생체 데이터 사용자(20)는 분석 결과를 서비스 제공자(10)에게 전달할 수 있다. 서비스 제공자(10)는 분석 결과에 존재하는 암호화된 생체 데이터를 일정하게 복호할 수 있다. 복호 과정에 대해서는 후술한다. 서비스 제공자(10)는 분석 결과 전체 또는 분석 결과에 포함된 특정 생체 데이터를 복호하여 원본 생체 데이터를 생체 데이터 사용자(20)에게 전달할 수 있다. 예컨대, 서비스 제공자(10)는 특정한 SNP 패턴을 생체 데이터 사용자(20)에게 전달할 수 있다. 생체 데이터 사용자(20)는 복호된 생체 데이터를 수신하여 최종적인 분석 결과를 도출할 수 있다. 예컨대, 생체 데이터 사용자(20)는 수신한 서열 또는 SNP 패턴을 기준으로 특정 시료(개인)에 대한 질병 진단을 할 수도 있다. 또는 생체 데이터 사용자(20)는 생체 데이터 풀(pool)을 이용하여 전장유전체상관성분석(GWAS)을 할 수도 있다.
도 2는 생체 데이터를 처리하는 과정에 대한 다른 예이다. 도 2는 시료 제공자(5), 생체 데이터 제공자(40), 서비스 제공자(50) 및 생체 데이터 사용자(60)를 도시한다. 도 2는 생체 데이터 제공자(40)와 서비스 제공자(50)가 서로 다른 주체인 경우를 도시한다. 시간의 흐름에 따라 설명한다.
생체 데이터 제공자(40)는 시료 제공자(5)로부터 시료를 전달받을 수 있다. 또는 생체 데이터 제공자(40)는 도 1과 같이 생체 데이터 사용자(60)로부터 시료를 전달받을 수도 있다(미도시).
생체 데이터 제공자(40)는 생체 데이터를 생성한다. 생체 데이터 제공자(40)는 NGS 분석을 통해 유전체 데이터를 생성할 수 있다. 유전체 데이터는 NGS 분석 외에도 다양한 방법으로 생산될 수 있다. 생체 데이터 제공자(40)는 시료 제공자(5)의 표현형 데이터를 획득할 수 있다. 예컨대, 생체 데이터 제공자(40)는 EMR과 같은 의료 데이터베이스(30)로부터 특정 시료 제공자에 대한 표현형 데이터를 획득할 수 있다. 이 경우 생체 데이터 제공자(40)는 시료 또는 시료 제공자의 식별자를 기준으로 의료 데이터베이스(30)로부터 매칭되는 특정 표현형 데이터를 획득할 수 있다. 표현형 데이터는 신체 정보, 생체 신호 정보, 의료 정보 및 진료 정보 중 적어도 하나를 포함할 수 있다. 생체 데이터 제공자(40)는 유전체 데이터 및 표현형 데이터 중 적어도 하나를 사용하여 생체 데이터를 생성할 수 있다. 생체 데이터 제공자(40)는 유전체 데이터만으로 구성되는 생체 데이터를 생성할 수도 있다. 생체 데이터는 디지털 데이터이다.
서비스 제공자(50)는 생체 데이터를 일정하게 처리할 수 있다. 대표적으로 서비스 제공자(50)는 생체 데이터를 암호화할 수 있다. 서비스 제공자(50)는 생체 데이터 전체 또는 일부를 암호화할 수 있다. 암호화 과정에 대해서는 후술한다.
서비스 제공자(50)는 암호화된 생체 데이터를 생체 데이터 사용자(60)에게 전달한다. 생체 데이터 사용자(60)는 암호화된 생체 데이터를 이용하여 생체 데이터를 분석할 수 있다. 생체 데이터 사용자(60)는 암호화된 데이터를 기준으로 분석 결과를 도출할 수 있다. 예컨대, 생체 데이터 사용자(60)는 반복되는 특정한 서열, 특정한 위치에 존재하는 서열, 유의미한 SNP 패턴 등을 분석 결과로 도출할 수 있다.
생체 데이터 사용자(60)는 분석 결과를 서비스 제공자(50)에게 전달할 수 있다. 서비스 제공자(50)는 분석 결과에 존재하는 암호화된 생체 데이터를 일정하게 복호할 수 있다. 복호 과정에 대해서는 후술한다. 서비스 제공자(50)는 분석 결과 전체 또는 분석 결과에 포함된 특정 생체 데이터를 복호하여 원본 생체 데이터를 생체 데이터 사용자(60)에게 전달할 수 있다. 예컨대, 서비스 제공자(50)는 특정한 SNP 패턴을 생체 데이터 사용자(60)에게 전달할 수 있다. 생체 데이터 사용자(60)는 복호된 생체 데이터를 수신하여 최종적인 분석 결과를 도출할 수 있다. 예컨대, 생체 데이터 사용자(60)는 수신한 서열 또는 SNP 패턴을 기준으로 특정 시료(개인)에 대한 질병 진단을 할 수도 있다. 또는 생체 데이터 사용자(20)는 생체 데이터 풀(pool)을 이용하여 전장유전체상관성분석(GWAS)을 할 수도 있다.
도 3은 생체 데이터를 처리하는 시스템(100)에 대한 예이다. 도 3은 생체 데이터 사용자(A), 생체 데이터 제공자(B) 및 서비스 제공자(C)를 도시하였다. 생체 데이터 사용자(A), 생체 데이터 제공자(B) 및 서비스 제공자(C)는 각각 시스템(100)에서 분석 장치, 단말 장치 내지 서버 등과 같은 객체로 특정될 수 있다.
생체 데이터 처리 시스템(100)은 데이터 생성 장치(110), 데이터 처리 장치(130) 및 데이터 분석 장치(140)를 포함할 수 있다. 데이터 생성 장치(110)는 시료를 분석하는 분석 장치일 수 있다. 예컨대, 데이터 생성 장치(100)는 NGS 분석 장치를 포함할 수 있다. 데이터 생성 장치(100)는 유전체 데이터를 생성한다. 또한 데이터 생성 장치(110)는 의료 데이터베이스(120)로부터 분석 대상인 특정인에 대한 표현형 데이터를 수신할 수 있다. 데이터 생성 장치(110)는 유전체 데이터 및 표현형 데이터로 구성된 생체 데이터를 생성할 수 있다. 데이터 생성 장치(110)는 유전체 데이터를 포함하는 생체 데이터를 생성할 수도 있다.
데이터 처리 장치(130)는 데이터 생성 장치(110)가 생성한 생체 데이터를 처리한다. 데이터 처리 장치(130)는 생체 데이터 전체 또는 일부를 암호화한다. 데이터 처리 장치(130)는 일정한 해싱 키를 이용하여 생체 데이터를 해싱할 수 있다.
데이터 분석 장치(140)는 암호화된 생체 데이터를 이용하여 데이터를 분석할 수 있다. 데이터 분석 장치(140)는 분석 결과를 데이터 처리 장치(130)에 전송할 수 있다. 데이터 처리 장치(130)는 분석 결과 중 암호화된 생체 데이터를 일정하게 복호하여 데이터 분석 장치(130)에 전달할 수 있다. 데이터 분석 장치(140)는 최종 분석 결과를 사용자 단말(150)에 전달할 수 있다. 사용자 단말(150)은 분석을 의뢰한 개인 또는 기관을 대표한다.
도 4는 생체 데이터 시스템(100)의 동작(200)에 대한 예이다. 데이터 생성 장치(110)는 생체 데이터를 생성한다(201). 데이터 생성 장치(110)는 생체 데이터를 데이터 처리 장치(130)에 전달한다. 데이터 생성 장치(110)는 다수의 샘플에 대한 생체 데이터를 데이터 처리 장치(130)에 전달할 수 있다. 데이터 처리 장치(130)는 생체 데이터 풀(pool)을 저장하고 관리한다(211). 데이터 처리 장치(130)는 외부 네트워크와 격리된 저장 공간에 생체 데이터를 저장할 수 있다. 데이터 처리 장치(130)는 유전체 데이터와 표현형 데이터를 구분하여 저장할 수도 있다.
데이터 생성 장치(110)는 생체 데이터를 일정하게 암호화하여 데이터 처리 장치(130)에 전달할 수 있다. 데이터 처리 장치(130)는 암호화된 생체 데이터를 복호하여 저장할 수 있다. 이때 공개키 기반의 암호화 방식을 이용할 수도 있다. 공개키는 데이터를 암호화하는 키이고, 암호키는 암호화된 데이터를 복호하는 키이다. 공개키와 암호키는 서로 짝을 이루고 다양한 공개키 암호화 방법(예컨대, RSA, 타원곡선암호 등)을 이용하여 무작위로 생산될 수 있다.
데이터 처리 장치(130)는 데이터 분석 장치(140)로부터 분류 정보를 수신할 수 있다(221). 또는 데이터 처리 장치(130)는 데이터 생성 장치(110)로부터 분류 정보를 획득할 수도 있다.
데이터 처리 장치(130)는 분류 정보에 따라 생체 데이터 풀에서 생체 데이터 세트를 생성한다(231). 생체 데이터 세트는 다수의 생체 데이터로 구성된다. 생체 데이터 세트는 서로 다른 객체(개인)에 대한 생체 데이터들로 구성된다. 데이터 처리 장치(130)는 분류 정보에 포함된 특정 기준에 따라 생체 데이터 풀에서 생체 데이터들을 선택한다.
데이터 처리 장치(130)는 생체 데이터 세트에 포함된 생체 데이터를 암호화한다(232). 데이터 처리 장치(130)는 생체 데이터 전체 또는 일부를 암호화할 수 있다. 데이터 처리 장치(130)는 해싱 키를 이용하여 생체 데이터를 암호화할 수 있다. 데이터 처리 장치(130)는 생체 데이터 세트를 구성하는 생체 데이터의 조합에 따라 해싱 키를 결정할 수 있다. 또는 데이터 처리 장치(130)는 분류 정보에 따라 해싱 키를 결정할 수 있다. 즉, 해싱 키를 고정된 값을 갖는 것이 아니고, 생체 데이터 세트의 구성에 따라 서로 다른 값이 사용될 수 있다.
데이터 처리 장치(130)는 암호화된 생체 데이터를 데이터 분석 장치(140)에 전달한다. 이때 필요한 경우(optional) 데이터 처리 장치(130)는 암호화된 생체 데이터를 데이터 분석 장치(140)가 요구하는 데이터 포맷으로 변환할 수 있다(241).
데이터 분석 장치(140)는 암호화된 생체 데이터들을 이용하여 생체 데이터를 분석한다(261). 데이터 분석 장치(140)는 암호화된 생체 데이터를 암호화 상태로 분석한다. 데이터 분석 장치(140)는 분석 결과를 데이터 처리 장치(130)에 전달할 수 있다(262).
데이터 처리 장치(130)는 분석 결과 중 암호화된 생체 데이터를 복호할 수 있다(271). 데이터 처리 장치(130)는 생체 데이터 원본 값과 해싱 결과를 매칭한 맵핑 테이블을 보유할 수 있다. 생체 데이터는 일정한 범위의 값을 갖기 때문에 일정한 용량의 맵핑 테이블 구성이 가능하다. 데이터 처리 장치(130)는 맵핑 테이블을 이용하여 해싱된 생체 데이터를 원본 생체 데이터로 변환할 수 있다. 데이터 처리 장치(130)는 복호한 데이터를 데이터 분석 장치(140)에 전달할 수 있다(272).
데이터 처리 장치(130)가 암호화된 생체 데이터를 데이터 분석 장치(140)에 제공한다. 데이터 분석 장치(140)도 암호화된 생체 데이터를 분석한다. 암호화된 생체 데이터가 제3자에게 노출되더라도, 제3자는 생체 데이터를 제공한 개인의 정보를 추적할 수 없다.
생체 데이터를 암호화하는 예에 대하여 설명한다. 도 5는 생체 데이터 및 암호화된 데이터에 대한 예이다.
5(A)는 유전체 데이터에 대한 암호화의 예이다. 원본 유전체 데이터는 유전체 식별자(번호), 유전체 위치 및 변이 정보를 포함할 수 있다. 유전체 식별자는 유전체의 종류 내지 유전체가 추출된 세포 내 위치 정보를 나타낼 수 있다. 예컨대, 사람의 경우 유전체 식별자는 상동 염색체의 번호(1~22), X 염색체(X), Y 염색체(Y), 미토콘드리아(MT) 등과 같은 값을 갖는다. 유전체 위치 정보는 해당 개체의 전체 유전자에서의 위치를 나타낼 수 있다. 예컨대, 사람의 경우 유전체 위치 정보는 1 ~ 3,000,000,000(30억개) 범위를 가질 수 있다. 변이 정보는 유전체의 서열 정보를 나타낸다. SNP의 경우 변이 정보는 하나의 염기 서열 이상이 다른 경우 해당 정보를 나타낸다. 변이 정보는 보편적인 서열과 다른 서열에 대한 정보를 포함한다.
데이터 처리 장치는 유전체 데이터 중 일부 항목에 대해서만 암호화를 할 수 있다. 예컨대, 데이터 처리 장치는 유전체 식별자 및 유전체 위치만을 암호화할 수 있다. 데이터 처리 장치는 해싱키를 이용하여 유전체 데이터 전체 또는 일부를 변환할 수 있다. 해싱키는 다양한 방법을 통해 생성될 수 있다. 대표적인 해싱키 생성 알고리즘은 MD5, SHA-256 등이 있다. 해싱키는 다양한 길이의 문자열로 구성되는 키이다. 전술한 바와 같이 해싱키는 생체 데이터 세트의 구성에 따라 동적으로 변경될 수 있다.
나아가 데이터 처리 장치는 유전체 식별자와 유전체 위치를 일정하게 가공한 후 해싱할 수도 있다. 예컨대, 데이터 처리 장치는 유전체 식별자와 유전체 위치를 일정한 룰에 따라 결합(concatenation)한 후 해싱할 수도 있다. 예컨대, 데이터 처리 장치는 유전체 번호 '1'과 유전체 위치 '23'을 해싱하여 원래 데이터를 유추할 수 없는 부호 없는 정수형(0 ~ 4,294,967,295)으로 변환할 수 있다.
유전체 변이 정보는 염기 서열인 A,G,T,C의 조합으로 구성된다. 예컨대, 유전체 변이 형태가 A/T 형이라면 가질 수 있는 변이 정보는 AA, AT, TT이다. 데이터 처리 장치는 각 염기를 이진수로 변환할 수 있다. 이때 암호화는 해싱키와 암호화된 위치정보를 기반으로 달라진다 예들 들어 유전체 1번 1000위치의 변이형이 A/T형이라면 AA형은 00, AT형은 01, TT형은 11이 될 수 있고, 유전체 2번 4000위치의 변이형이 A/G 형이라면 AA형은 11, AG형은 01, GG 형은 00이 될 수 있다.
이와 같이 문자열 형태의 정보를 이진수로 변환하면, 데이터 처리 장치는 원본 생체 데이터를 보다 크기가 작은 이진 데이터로 줄일 수 있다.
도 5(B)는 표현형 데이터에 대한 암호화의 예이다. 원본 표현형 데이터는 성별, 인종, 키(신장), 복용약 등과 같은 정보로 구성될 수 있다. 각 항목의 값은 텍스트 또는 숫자이다. 데이터 처리 장치는 표현형 데이터 전체 또는 일부를 해싱할 수 있다. 예컨대, 데이터 처리 장치는 표현형 데이터를 구간별 나눠서 대푯값으로 변환하거나 또는 변이 정보와 같이 이진수로 변환할 수 있다.
유전체 데이터 및/또는 표현형 데이터는 다양한 방법으로 해싱될 수 있다. 전술한 바와 같이 해싱키는 생체 데이터 세트를 구성에 따라 동적으로 변경될 수 있다. 도 6은 해싱키를 결정하는 과정에 대한 예이다. 도 6은 데이터 분석 장치(311, 312 및 313) 및 데이터 처리 장치(350)를 도시한다. 생체 데이터 풀은 100개의 개별 생체 데이터로 구성된 예를 도시한다.
데이터 처리 장치(350)는 데이터 분석 장치(311, 312 또는 313)로부터 분류 정보를 수신한다. 데이터 처리 장치(350)는 수신한 분류 정보에 따라 생체 데이터 풀에서 일정한 생체 데이터를 선택하여 생체 데이터 세트를 구성한다.
분류 정보는 인종, 나이, 체중, 신장, 성별, 질병 유무, 질병 종류, 생체 데이터 세트를 구성하는 그룹의 개수 및 전체 또는 개별 그룹에 속하는 생체 데이터의 개수 중 적어도 하나의 정보로 구성될 수 있다. 기본적으로 분류 정보는 생체 데이터 풀에서 특정한 그룹을 선별하는 기준에 해당한다. 몇 가지 예를 들어 설명한다.
(1) 데이터 분석 장치(311)는 분류 정보 1을 데이터 처리 장치(350)에 전송한다. 생체 데이터 사용자는 자신의 연구 목적에 맞는 샘플들에 대한 생체 데이터를 요청한다. 분류 정보 1은 '아시아인' + '남성' + '60세 이상'이라는 정보를 포함할 수 있다. 이 경우 데이터 처리 장치(350)는 생체 데이터 풀에서 아시아계 60세 이상의 남성에 대한 생체 데이터들을 선택하여 생체 데이터 세트를 생성할 수 있다. 이후 데이터 처리 장치(350)는 선택한 생체 데이터 세트에 속한 생체 데이터를 암호화(암호화된 생체 데이터 1)하여 데이터 분석 장치(311)에 전달할 수 있다. 데이터 처리 장치(350)는 생체 데이터 세트를 구성하는 생체 데이터의 조합을 기준으로 암호화를 위한 해싱키(해싱키 1이라 함)를 생성할 수 있다. 예컨대, 해싱키는 특정 입력값에 따라 다른 값을 산출하는 함수로 결정될 수 있다. 데이터 처리 장치(350)는 분류 정보 1을 기준으로 해싱키 1을 생성할 수도 있다.
(2) 데이터 분석 장치(312)는 분류 정보 2를 데이터 처리 장치(350)에 전송한다. 분류 정보 2는 고혈압 환자와 정상인이라는 정보를 포함할 수 있다. 이 경우 데이터 처리 장치(350)는 생체 데이터 풀에서 고혈압 환자에 대한 생체 데이터와 정상인의 생체 데이터를 구분하여 생체 데이터 세트를 생성할 수 있다. 이때 생체 데이터 풀에 따라 고혈압 환자의 수가 달라질 수 있다. 데이터 처리 장치(350)는 생체 데이터 세트를 구성하는 생체 데이터의 조합을 기준으로 암호화를 위한 해싱키(해싱키 2이라 함)를 생성할 수 있다. 데이터 처리 장치(350)는 분류 정보 1을 기준으로 해싱키 2룰 생성할 수도 있다. 나아가 데이터 처리 장치(350)는 고혈압 환자와 정상인이라는 그룹의 개수(2개)를 더 이용하여 해싱키 2를 생성할 수도 있다. 또한 데이터 처리 장치(350)는 고혈압 환자 그룹에 속한 생체 데이터의 개수 내지 정상인 그룹에 속한 생체 데이터의 개수를 더 이용하여 해싱키 2를 생성할 수도 있다. 이후 데이터 처리 장치(350)는 선택한 생체 데이터 세트에 속한 생체 데이터를 암호화(암호화된 생체 데이터 2)하여 데이터 분석 장치(312)에 전달할 수 있다.
(3) 데이터 분석 장치(313)는 분류 정보 3을 데이터 처리 장치(350)에 전송한다. 분류 정보 3은 '남성 30명'과 '여성 25명'이라는 정보를 포함할 수 있다. 이 경우 데이터 처리 장치(350)는 생체 데이터 풀에서 남성에 대한 생체 데이터 30개와 여성의 생체 데이터 25개를 선택하여 생체 데이터 세트를 생성할 수 있다. 데이터 처리 장치(350)는 생체 데이터 세트를 구성하는 생체 데이터의 조합을 기준으로 암호화를 위한 해싱키(해싱키 3이라 함)를 생성할 수 있다. 데이터 처리 장치(350)는 분류 정보 3을 기준으로 해싱키 3을 생성할 수도 있다. 나아가 데이터 처리 장치(350)는 남성과 여성이라는 그룹의 개수(2개)를 더 이용하여 해싱키 2를 생성할 수도 있다. 또한 데이터 처리 장치(350)는 남성 그룹에 속한 생체 데이터의 개수 내지 여성 그룹에 속한 생체 데이터의 개수를 더 이용하여 해싱키 2를 생성할 수도 있다.
나아가 데이터 처리 장치(350)는 분류 정보를 수신한 시점 내지 암호화 시점과 같은 시간을 추가적인 변수로 사용하여 해싱키를 결정할 수도 있다.
데이터 분석 장치(311, 312 및 313)가 전술한 분류 정보에 따라 요청한 생체 데이터 세트에 공통된 생체 데이터가 포함될 수 있다. 예컨대, 생체 데이터 10번이 모두 포함되었다고 가정한다. 생체 데이터 10번은 동일한 정보를 포함하지만, 데이터 분석 장치(311, 312 또는 313)가 각각 요청한 분류 정보가 다르기에 생체 데이터 세트의 구성이 상이하다. 데이터 분석 장치(311, 312 또는 313)가 요청한 생체 데이터를 암호화하는 해싱키도 달라진다. 결과적으로 원본 생체 데이터 10번은 동일하지만, 암호화된 생체 데이터 10번은 서로 다른 값으로 데이터 분석 장치(311, 312 및 313)에 전달된다.
도 7은 생체 데이터 처리 장치(400)의 구성을 도시한 예이다. 생체 데이터 처리 장치(400)는 전술한 서비스 제공자(10 또는 50)가 사용하는 장치에 해당한다. 또 생체 데이터 처리 장치(400)는 전술한 생체 데이터 처리 장치(130 또는 350)에 해당한다.
생체 데이터 처리 장치(400)는 생체 데이터를 처리하는 모델 내지 프로그램을 이용하여 생체 데이터를 처리한다. 생체 데이터 처리 장치(400)는 물리적으로 다양한 형태로 구현될 수 있다. 예컨대, 생체 데이터 처리 장치(400)는 PC, 스마트기기, 컴퓨터 장치, 네트워크의 서버, 데이터 처리 전용 칩셋 등의 형태를 가질 수 있다.
생체 데이터 처리 장치(400)는 저장 장치(410), 메모리(420), 연산장치(430), 인터페이스 장치(440) 및 통신 장치(450)를 포함한다.
저장 장치(410)는 생체 데이터 풀을 저장할 수 있다. 저장 장치(410)는 생체 데이터 세트에 포함된 생체 데이터를 암호화하는 프로그램을 저장할 수 있다. 나아가 저장 장치(410)는 기타 데이터 전처리(정규화) 내지 후처리(포맷 변환)에 필요한 프로그램을 저장할 수 있다. 저장 장치(410)는 선택한 데이터 세트 및 암호화한 생체 데이터들을 저장할 수 있다. 또 저장 장치(410)는 생체 데이터 원본 값과 생체 데이터에 대한 해싱 값을 포함하는 맵핑 테이블을 저장할 수 있다.
메모리(420)는 생체 데이터 처리 장치(400)가 데이터 처리 과정에 필요한 데이터 및 생성되는 임시 데이터를 저장할 수 있다.
인터페이스 장치(440)는 외부로부터 일정한 명령 및 데이터를 입력받는 장치이다. 인터페이스 장치(440)는 물리적으로 연결된 입력 장치 또는 외부 저장 장치로부터 생체 데이터 풀을 입력받을 수 있다. 인터페이스 장치(440)는 데이터 처리를 위한 프로그램을 입력받을 수 있다.
통신 장치(450)는 유선 또는 무선 네트워크를 통해 일정한 정보를 수신하고 전송하는 구성을 의미한다. 통신 장치(450)는 외부 객체로부터 생체 데이터 풀을 수신할 수 있다. 통신 장치(450)는 데이터 처리를 위한 프로그램 및 데이터를 수신할 수 있다. 통신 장치(450)는 생체 데이터 세트 선택을 위한 분류 정보를 수신할 수 있다. 통신 장치(450)는 암호화한 데이터를 외부 객체로 송신할 수 있다. 통신 장치(450)는 데이터 분석 장치로부터 분석 결과를 수신할 수 있다. 통신 장치(450)는 분석 결과에서 복호한 생체 데이터를 데이터 분석 장치에 송신할 수 있다.
통신 장치(450) 내지 인터페이스 장치(440)는 외부로부터 일정한 데이터 내지 명령을 전달받는 장치이다. 통신 장치(450) 내지 인터페이스 장치(440)를 입력장치라고 명명할 수 있다.
연산 장치(430)는 프로그램을 이용하여 분류 정보에 따라 상기 생체 데이터 풀에서 상기 생체 데이터 세트를 선택할 수 있다. 연산 장치(430)는 프로그램을 이용하여 분류 정보 또는 생체 데이터 세트의 조합에 따라 해싱키를 생성할 수 있다. 경우에 따라 연산 장치(430)는 시간 정보를 더 이용하여 해싱키를 생성할 수도 있다. 연산 장치(430)는 프로그램을 이용하여 선택한 상기 생체 데이터 세트에 포함된 개별 생체 데이터들을 암호화할 수 있다. 연산 장치(430)는 생체 데이터 전체 또는 일부를 암호화할 수 있다. 예컨대, 연산 장치(430)는 유전체 식별자, 유전체 위치 및 유전체 변이 정보 중 적어도 하나를 암호화할 수 있다. 연산 장치(430)는 데이터를 처리하고, 일정한 연산을 처리하는 프로세서, AP, 프로그램이 임베디드된 칩과 같은 장치일 수 있다.
도 8은 생체 데이터를 처리하는 시스템(500)에 대한 다른 예이다. 도 8은 생체 데이터를 블록체인을 이용하여 저장하고 관리하는 시스템에 대한 예이다. 도 8은 생체 데이터 사용자(A), 생체 데이터 제공자(B) 및 서비스 제공자(C)를 도시하였다. 생체 데이터 처리 시스템(500)은 데이터 생성 장치(510), 데이터 처리 장치(530) 및 데이터 분석 장치(540)를 포함할 수 있다.
데이터 생성 장치(510)는 시료를 분석하는 분석 장치일 수 있다. 예컨대, 데이터 생성 장치(500)는 NGS 분석 장치를 포함할 수 있다. 데이터 생성 장치(500)는 유전체 데이터를 생성한다. 또한 데이터 생성 장치(510)는 의료 데이터베이스(520)로부터 분석 대상인 특정인에 대한 표현형 데이터를 수신할 수 있다. 데이터 생성 장치(510)는 유전체 데이터 및 표현형 데이터로 구성된 생체 데이터를 생성할 수 있다. 데이터 생성 장치(510)는 유전체 데이터를 포함하는 생체 데이터를 생성할 수도 있다.
데이터 처리 장치(530)는 데이터 생성 장치(510)가 생성한 생체 데이터를 처리한다. 데이터 처리 장치(530)는 생체 데이터 전체 또는 일부를 암호화한다. 데이터 처리 장치(530)는 일정한 해싱 키를 이용하여 생체 데이터를 해싱할 수 있다. 데이터 처리 장치(530)는 처리한 생체 데이터를 블록체인(550)에 저장할 수 있다. 즉 블록체인(550)이 생체 데이터 풀을 저장할 수 있다. 데이터 처리 장치(530)는 블록체인(550)에서 특정한 생체 데이터 또는 생체 데이터 세트를 검색하여 추출할 수 있다. 데이터 처리 장치(530)는 블록체인(550)에 저장된 특정한 생체 데이터를 다른 값으로 업데이트할 수도 있다.
데이터 분석 장치(540)는 암호화된 생체 데이터를 이용하여 데이터를 분석할 수 있다. 데이터 분석 장치(540)는 분석 결과를 데이터 처리 장치(530)에 전송할 수 있다. 데이터 처리 장치(530)는 분석 결과 중 암호화된 생체 데이터를 일정하게 복호하여 데이터 분석 장치(530)에 전달할 수 있다.
도 8에 도시하지 않았지만, 데이터 생성 장치(510)는 시료에 대한 유전체 데이터와 표현형 데이터를 이용하여 생성한 생체 데이터를 블록체인(550)에 저장할 수도 있다. 데이터 생성 장치(510)가 생체 데이터 풀에 속하는 생체 데이터를 블록체인(550)에 전달한다. 블록체인(550)는 생체 데이터 풀을 보유하게 된다. 이후 데이터 분석 장치(540)는 블록체인(550)에 접근 및 검색하여 필요한 생체 데이터 세트를 추출하고, 암호화할 수 있다. 데이터 분석 장치(540)는 암호화한 생체 데이터들을 포함하는 생체 데이터 세트를 다시 블록체인(550)에 저장할 수 있다. 이 경우 하나의 생체 데이터 세트를 하나의 블록 또는 연속된 블록에 저장할 수도 있다.
나아가 데이터 분석 장치(540)는 블록체인(550)에 접근 및 검색하여 암호화된 생체 데이터를 추출할 수 있다. 데이터 분석 장치(540)는 분석한 결과를 다시 블록체인(550)에 저장할 수 있다. 데이터 처리 장치(530)는 블록체인(550)에 접근하여 분석 결과 중 암호화된 데이터를 복호하여 데이터 분석 장치(540)에 전달할 수 있다. 또는 데이터 처리 장치(530)는 암호화된 데이터를 블록체인(550)에 저장할 수도 있다.
또한, 상술한 바와 같은 생체 데이터들을 암호화 방법, 생체 데이터 처리 방법 및 해싱키 결정 방법은 컴퓨터에서 실행될 수 있는 실행가능한 알고리즘을 포함하는 프로그램(또는 어플리케이션)으로 구현될 수 있다. 상기 프로그램은 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
본 실시례 및 본 명세서에 첨부된 도면은 전술한 기술에 포함되는 기술적 사상의 일부를 명확하게 나타내고 있는 것에 불과하며, 전술한 기술의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시례는 모두 전술한 기술의 권리범위에 포함되는 것이 자명하다고 할 것이다.
5 : 시료 제공자
10 : 서비스 제공자
20 : 생체 데이터 사용자
30 : 의료 데이터베이스
40 : 생체 데이터 제공자
50 : 서비스 제공자
60 : 생체 데이터 사용자
100 : 생체 데이터 처리 시스템
110 : 데이터 생성 장치
120 : 의료 데이터베이스
130 : 데이터 처리 장치
140 : 데이터 분석 장치
150 : 사용자 단말
300 : 생체 데이터 처리 시스템
311, 312, 313 : 데이터 분석 장치
350 : 데이터 처리 장치
400 : 생체 데이터 처리 장치
410 : 저장장치
420 : 메모리
430 : 연산장치
440 : 인터페이스 장치
450 : 통신장치
500 : 생체 데이터 처리 시스템
510 : 데이터 생성 장치
520 : 의료 데이터베이스
530 : 데이터 처리 장치
540 : 데이터 분석 장치
550 : 블록체인

Claims (20)

  1. 데이터 처리 장치가 생체 데이터 풀(pool)에서 선택된 생체 데이터 세트를 획득하는 단계;
    상기 데이터 처리 장치가 상기 생체 데이터 세트에 포함된 생체 데이터들에 대한 암호화를 수행하는 단계;
    상기 데이터 처리 장치가 암호화된 생체 데이터들을 사용자에게 전달하는 단계;
    상기 데이터 처리 장치가 상기 사용자로부터 상기 암호화된 생체 데이터에 대한 분석 결과를 수신하는 단계; 및
    상기 데이터 처리 장치가 상기 분석 결과에 포함된 암호화된 생체 데이터에 대한 정보를 상기 사용자에게 전달하는 단계를 포함하되,
    상기 생체 데이터 세트는 복수의 개체들 각각에 대한 생체 데이터를 포함하고,
    상기 데이터 처리 장치는 상기 복수의 개체들을 선택하는 기준에 따라 결정되는 키(key)를 이용하여 상기 생체 데이터 세트에 포함된 상기 생체 데이터들을 암호화하는 생체 데이터 제공 방법.
  2. 제1항에 있어서,
    상기 데이터 처리 장치는 상기 생체 데이터 풀에서 상기 생체 데이터 세트를 선택하기 위한 정보를 상기 사용자로부터 수신하는 단계를 더 포함하는 생체 데이터 제공 방법.
  3. 제1항에 있어서,
    상기 생체 데이터는 유전체 데이터, 표현형 데이터 및 의료 데이터를 포함하는 데이터 집합 중 적어도 하나를 포함하는 생체 데이터 제공 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 키는 시간을 더 사용하여 결정되는 생체 데이터 제공 방법.
  6. 제1항에 있어서,
    상기 키는 인종, 나이, 체중, 신장, 성별, 질병 유무, 질병 종류, 상기 생체 데이터 세트를 구성하는 그룹의 개수 및 상기 그룹에 속하는 생체 데이터의 개수를 포함하는 정보 집합 중 적어도 하나의 정보에 따라 결정되는 생체 데이터 제공 방법.
  7. 제1항에 있어서,
    상기 데이터 처리 장치는 상기 키를 기준으로 상기 생체 데이터를 해싱(hashing)하여 암호화를 수행하고,
    상기 데이터 처리 장치는 생체 데이터 원본 값과 생체 데이터에 대한 해싱 값을 포함하는 테이블을 이용하여 상기 분석 결과에 포함된 암호화된 생체 데이터를 복호하여 상기 정보를 생성하는 생체 데이터 제공 방법.
  8. 제1항에 있어서,
    상기 데이터 처리 장치는 상기 생체 데이터 중 유전체 식별자, 유전체 위치 및 유전 형질 정보를 포함하는 유전체 변이 정보 중 적어도 하나를 암호화하는 생체 데이터 제공 방법.
  9. 제1항에 있어서,
    상기 데이터 처리 장치는 상기 암호화된 생체 데이터들을 블록체인에 저장하는 단계를 더 포함하는 생체 데이터 제공 방법.
  10. 데이터 처리 장치가 생체 데이터 풀(pool)을 수신하는 단계;
    상기 데이터 처리 장치가 분류 정보에 따라 상기 생체 데이터 풀에서 생체 데이터 세트를 선택하는 단계; 및
    상기 데이터 처리 장치가 상기 생체 데이터 세트에 포함된 개별 생체 데이터들을 암호화하는 단계를 포함하되,
    상기 생체 데이터 세트는 복수의 개체들 각각에 대한 생체 데이터를 포함하고,
    상기 암호화는 상기 복수의 개체들을 선택하는 기준에 따라 결정되는 키(key)를 이용하여 수행되는 생체 데이터 암호화 방법.
  11. 제10항에 있어서,
    상기 생체 데이터는 유전체 데이터, 표현형 데이터 및 의료 데이터를 포함하는 데이터 집합 중 적어도 하나를 포함하는 생체 데이터 암호화 방법.
  12. 제10항에 있어서,
    상기 키는 상기 분류 정보 또는 상기 분류 정보 및 시간에 따라 결정되는 생체 데이터 암호화 방법.
  13. 제10항에 있어서,
    상기 분류 정보는 인종, 나이, 체중, 신장, 성별, 질병 유무, 질병 종류, 상기 생체 데이터 세트를 구성하는 그룹의 개수 및 상기 그룹에 속하는 생체 데이터의 개수를 포함하는 정보 집합 중 적어도 하나의 정보인 생체 데이터 암호화 방법.
  14. 제10항에 있어서,
    상기 데이터 처리 장치는 상기 생체 데이터 중 유전체 식별자, 유전체 위치 및 유전 형질 정보를 포함하는 유전체 변이 정보 중 적어도 하나를 암호화하는 생체 데이터 암호화 방법.
  15. 생체 데이터 세트에 포함된 생체 데이터를 암호화하는 프로그램 및 생체 데이터 풀(pool)을 저장하는 저장장치; 및
    분류 정보에 따라 상기 생체 데이터 풀에서 상기 생체 데이터 세트를 선택하고, 상기 프로그램을 이용하여 선택한 상기 생체 데이터 세트에 포함된 개별 생체 데이터들을 암호화하는 연산장치를 포함하되,
    상기 생체 데이터 세트는 복수의 개체들 각각에 대한 생체 데이터를 포함하고,
    상기 암호화는 상기 복수의 개체들을 선택하는 기준에 따라 결정되는 키(key)를 이용하여 수행되는 생체 데이터 처리 장치.
  16. 제15항에 있어서,
    상기 연산 장치는 상기 분류 정보 또는 상기 분류 정보 및 시간에 따라 상기 키를 결정하는 생체 데이터 처리 장치.
  17. 제15항에 있어서,
    상기 분류 정보는 인종, 나이, 체중, 신장, 성별, 질병 유무, 질병 종류, 상기 생체 데이터 세트를 구성하는 그룹의 개수 및 상기 그룹에 속하는 생체 데이터의 개수를 포함하는 정보 집합 중 적어도 하나의 정보인 생체 데이터 처리 장치.
  18. 제15항에 있어서,
    상기 암호화된 생체 데이터들을 송신하는 통신장치를 더 포함하는 생체 데이터 처리 장치.
  19. 제18항에 있어서,
    상기 저장장치는 생체 데이터 원본 값과 생체 데이터에 대한 해싱 값을 포함하는 테이블을 더 포함하고,
    상기 통신장치는 상기 암호화된 생체 데이터에 대한 분석 결과를 수신하고,
    상기 연산장치는 상기 테이블을 이용하여 상기 분석 결과에 포함된 암호화된 생체 데이터를 복호하는 생체 데이터 처리 장치.
  20. 제15항에 있어서,
    상기 연산 장치는 상기 생체 데이터 중 유전체 식별자, 유전체 위치 및 유전 형질 정보를 포함하는 유전체 변이 정보 중 적어도 하나를 암호화하는 생체 데이터 처리 장치.
KR1020190032136A 2019-03-21 2019-03-21 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치 KR102030800B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020190032136A KR102030800B1 (ko) 2019-03-21 2019-03-21 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치
JP2019234665A JP6875498B6 (ja) 2019-03-21 2019-12-25 生体データ提供方法、生体データ暗号化方法および生体データ処理装置
SG10201913513TA SG10201913513TA (en) 2019-03-21 2019-12-27 Method of providing biological data, method of encrypting biological data, and method of processing biological data
EP20151174.8A EP3712894A1 (en) 2019-03-21 2020-01-10 Method of providing biological data, method of encrypting biological data, and method of processing biological data
US16/743,514 US11004544B2 (en) 2019-03-21 2020-01-15 Method of providing biological data, method of encrypting biological data, and method of processing biological data
CN202010195936.XA CN111723354B (zh) 2019-03-21 2020-03-19 提供生物数据的方法、加密生物数据的方法以及处理生物数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190032136A KR102030800B1 (ko) 2019-03-21 2019-03-21 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치

Publications (1)

Publication Number Publication Date
KR102030800B1 true KR102030800B1 (ko) 2019-10-10

Family

ID=68206250

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190032136A KR102030800B1 (ko) 2019-03-21 2019-03-21 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치

Country Status (6)

Country Link
US (1) US11004544B2 (ko)
EP (1) EP3712894A1 (ko)
JP (1) JP6875498B6 (ko)
KR (1) KR102030800B1 (ko)
CN (1) CN111723354B (ko)
SG (1) SG10201913513TA (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102344304B1 (ko) * 2020-11-16 2022-04-04 황정훈 블록체인 기반의 개인 및 집단 방역관리 시스템
KR20230013665A (ko) * 2021-07-15 2023-01-27 주식회사 애버커스 잠복병원체의 발병가능성을 예측하는 시스템 및 방법
KR20230015713A (ko) 2021-07-23 2023-01-31 울산과학기술원 유전체 정보의 암호화 및 복호화 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112820373A (zh) * 2020-10-23 2021-05-18 中南大学湘雅三医院 基于基因的信息处理方法、装置、设备及存储介质
CN113255681B (zh) * 2021-05-31 2021-11-12 东华理工大学南昌校区 一种生物数据性状识别***
CN113990399A (zh) * 2021-10-29 2022-01-28 浙江万里学院 保护隐私安全的基因数据分享方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100537523B1 (ko) 2003-02-03 2005-12-19 삼성전자주식회사 Dna 서열 부호화 장치 및 방법
KR20090068686A (ko) * 2007-12-24 2009-06-29 삼성전자주식회사 마이크로어레이의 정보 암호화/복호화 방법 및 시스템

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090716A (ja) * 2006-10-04 2008-04-17 Nikon System:Kk 電子メール受信装置、電子メール受信方法および電子メール受信プログラム
EP2709028A1 (en) * 2012-09-14 2014-03-19 Ecole Polytechnique Fédérale de Lausanne (EPFL) Privacy-enhancing technologies for medical tests using genomic data
JP6075017B2 (ja) * 2012-11-09 2017-02-08 富士通株式会社 情報分析システム及び情報分析方法
US9367683B2 (en) * 2013-03-15 2016-06-14 Cyberricade, Inc. Cyber security
WO2015112859A1 (en) * 2014-01-24 2015-07-30 Indiscine, Llc Systems and methods for personal omic transactions
US10181045B1 (en) * 2015-07-24 2019-01-15 Hologic, Inc. Automated email message and document shredding system
CN105719131A (zh) * 2016-01-27 2016-06-29 努比亚技术有限公司 服务器、客户端及电子支付的代付方法
US10516533B2 (en) * 2016-02-05 2019-12-24 Mohammad Mannan Password triggered trusted encryption key deletion
JP6688688B2 (ja) * 2016-06-14 2020-04-28 株式会社エヌ・ティ・ティ・データ 秘匿情報分析システム、および秘匿情報分析方法
US10447661B1 (en) * 2016-12-23 2019-10-15 Iqvia Inc. System and method for privacy-preserving genomic data analysis
CN107332659B (zh) * 2017-05-24 2020-01-07 武汉真元生物数据有限公司 一种基于生物特征的身份认证方法、存储介质及***
KR101880175B1 (ko) * 2018-02-13 2018-07-19 주식회사 마크로젠 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템
US10673847B2 (en) * 2018-08-28 2020-06-02 Ofer A. LIDSKY Systems and methods for user authentication based on a genetic sequence
CN109166602B (zh) * 2018-08-29 2022-04-12 苏州微宏生物科技有限公司 厨余废弃物好氧堆肥的微生物宏基因分析***及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100537523B1 (ko) 2003-02-03 2005-12-19 삼성전자주식회사 Dna 서열 부호화 장치 및 방법
KR20090068686A (ko) * 2007-12-24 2009-06-29 삼성전자주식회사 마이크로어레이의 정보 암호화/복호화 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
E. Ayday, "Cryptographic Solutions for Credibility and Liability Issues of Genomic Data", IEEE Trans. Dependable and Secure Computing, 16권, 1호, pp.33-43, 2019.01.16.* *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102344304B1 (ko) * 2020-11-16 2022-04-04 황정훈 블록체인 기반의 개인 및 집단 방역관리 시스템
KR20230013665A (ko) * 2021-07-15 2023-01-27 주식회사 애버커스 잠복병원체의 발병가능성을 예측하는 시스템 및 방법
KR102590308B1 (ko) * 2021-07-15 2023-10-18 (주)애버커스 잠복병원체의 발병가능성을 예측하는 시스템 및 방법
KR20230015713A (ko) 2021-07-23 2023-01-31 울산과학기술원 유전체 정보의 암호화 및 복호화 방법

Also Published As

Publication number Publication date
EP3712894A1 (en) 2020-09-23
US11004544B2 (en) 2021-05-11
CN111723354B (zh) 2021-11-23
SG10201913513TA (en) 2020-10-29
CN111723354A (zh) 2020-09-29
JP2020156079A (ja) 2020-09-24
US20200303040A1 (en) 2020-09-24
JP6875498B2 (ja) 2021-05-26
JP6875498B6 (ja) 2021-06-30

Similar Documents

Publication Publication Date Title
KR102030800B1 (ko) 생체 데이터 제공 방법, 생체 데이터 암호화 방법 및 생체 데이터 처리 장치
JP6661742B2 (ja) 複数のブロックチェーンに基盤を置いた生命情報データ提供方法、生命情報データ保存方法及び生命情報データ伝送システム
Ondov et al. Mash: fast genome and metagenome distance estimation using MinHash
Akgün et al. Privacy preserving processing of genomic data: A survey
US20180314793A1 (en) Methods, systems and processes of determining transmission path of infectious agents
KR102209178B1 (ko) 유전체 및 유전체 정보의 보존 및 활용을 위한 방법
JP6373977B2 (ja) Dna配列の高速かつ安全な検索
TW201506653A (zh) 基因資訊記憶裝置、基因資訊檢索裝置、基因資訊記憶程式產品、基因資訊檢索程式產品、基因資訊記憶方法、基因資訊檢索方法以及基因資訊檢索系統
Jadhav et al. Disease prediction by machine learning from healthcare communities
KR20190017738A (ko) 생물학적 데이터 관리를 위한 시스템 및 방법
US20200395095A1 (en) Method and system for generating and comparing genotypes
US20200160935A1 (en) Cloud-based gene analysis service method and platform
US10116632B2 (en) System, method and computer-accessible medium for secure and compressed transmission of genomic data
KR102261270B1 (ko) 사용자 다중 특징 정보를 이용한 개인 맞춤형 콘텐츠 제공 방법 및 분석장치
KR102072815B1 (ko) 마이크로바이옴을 이용한 건강 상태 분류 방법 및 장치
Ishiya et al. MitoIMP: A computational framework for imputation of missing data in low-coverage human mitochondrial genome
Dreher et al. Construction of a pig physical interactome using sequence homology and a comprehensive reference human interactome
Doppala Differentiating Human Populations Based on k-mer Classification of Hand Bacteria
CN114902343A (zh) 用于处理基因数据的方法和数据处理设备
Cheng Bayesian methods in bacterial population genomics
Chen et al. Research Article Hadoop-Based Healthcare Information System Design and Wireless Security Communication Implementation
Nishandh et al. Expression Profiling & Classification using Convolutional Neural Networks of Tumor Suppressor Genes Linked with Stress
Lehn et al. ECCB'14 Awards Keynote speakers
Van Roy Architectural study on the preprocessing of genomic and physiological data of cancer patients for the combined use in a machine learning model predicting the quality of life of cancer patients

Legal Events

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