Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 19, No. 10, pp.137-143
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 31 Oct 2021
Received 28 Sep 2021 Revised 07 Oct 2021 Accepted 10 Oct 2021
DOI: https://doi.org/10.14801/jkiit.2021.19.10.137

블록체인 환경에서 임상시험 데이터 관리방안

강준봉* ; 우요섭**
*인천대학교 정보통신공학과 박사과정
**인천대학교 정보통신학과 교수(교신저자)
Data Management Plan for Clinical Trials in a Blockchain Environment
Jungbong Kang* ; Yoseop Woo**

Correspondence to: Yoseop Woo Dept. of Information and Telecommunication Eng. Incheon National University, Incheon, Korea, Tel.: +82-32-835-8285, Email: yswooo@inu.ac.kr

초록

임상시험은 절차와 규정을 준수해야 하는 매우 복잡하고 긴 과정이다. 임상시험은 새로운 의약품 개발을 촉진하고 많은 환자들의 더 나은 삶의 방식을 추구할 수 있는 결과 및 절차를 개선하기 위한 매우 중요한 과정이다. 피험자가 임상시험 연구 시 동의 여부를 서류에 수기로 사인을 하고 있으나 임상시험 종료 후 피험자의 연구 데이터가 다른 연구목적으로 사용되는 것을 확인할 수 없다. 임상시험은 신속한 정보공유가 어렵고 임상시험 정보의 투명성과 원본 데이터의 결과 값 조작 등에 대한 신뢰성을 보장하기 어려운 구조이며 임상시험 데이터는 민감한 개인 건강정보를 포함하고 있어서 매우 민감하므로, 논문에서는 프라이빗형 블록체인 기술을 사용하여 관리하는 방법을 제안한다. 다중 생체신호의 바이오 마커 데이터를 대상으로 하여 암호화 적용과 구성요소, 분산 어플리케이션 기능, 트랜잭션 헤더와 바디를 정의하고, 분산컴퓨팅 환경에서의 체인코드 구성 및 데이터 조회 실험을 수행하였다. 임상 시험에서 메타데이터와 같은 주요 데이터를 블록체인화 함으로써 기존의 임상시험 데이터 관리 시스템에 비해 개인정보 보호와 보안에 강한 장점이 있음을 확인하였다.

Abstract

Clinical trials are very complex and lengthy processes that require compliance with procedures and regulations. Clinical trials are a very important process for facilitating the development of new drugs and improving outcomes and procedures that can lead to a better way of life for many patients. During the clinical trial study, the subject manually signs the consent or not on the document, but after the end of the clinical trial, it cannot be confirmed that the subject's research data will be used for other research purposes. Clinical trials have a structure in which it is difficult to quickly share information, and it is difficult to guarantee the transparency of clinical trial information and the reliability of the result value manipulation of original data. Since clinical trial data contains sensitive personal health information, it is very sensitive. We propose a management method using chain technology.Encryption application and components, distributed application functions, transaction headers and bodies were defined targeting biomarker data of multiple biosignals, and chaincode configuration and data inquiry experiments were performed in a distributed computing environment. By blockchainizing key data such as metadata in clinical trials, it was confirmed that there are strong advantages in privacy and security compared to the existing clinical trial data management system.

Keywords:

clinical trial, blockchain, transaction, human materials

Ⅰ. 서 론

임상시험(Clinical trial)에는 많은 의료정보의 흐름이 수반되며 임상데이터의 투명성과 추적성을 확보할 필요가 있다. ICH-GCP(International Conference on Harmonization-Good Clinical Practice) 국제의약품규제조화위원회 임상시험관리기준은 사람을 대상으로 하는 임상시험을 설계, 수행, 기록 및 보고 하는데 관한 국제적으로 통용되는 윤리적, 과학적 기준이다[1].

임상시험관리기준(GCP)이 만들어진 배경은 “헬싱키 선언”의 원칙에 기원을 두고 있으며 피험자의 권리, 안전 및 복리를 보호하고 임상시험 데이터의 신뢰성을 확보하는 데에 그 목적이 있다[2]. 임상시험과 관련된 데이터의 수집 및 분석, 임상시험 전반에 대한 관리를 위해 사용되는 임상시험 관리시스템은 중앙 집중화된 방식으로 복잡하게 연결되어 있어서 임상시험 이해관계자 간의 업무체계를 대응하기에 한계가 있다. 또한 신속한 정보공유가 어렵고 임상시험정보의 투명성과 원본 데이터의 결과값 조작 등에 대한 신뢰성을 보장하기 어려운 구조이다[3].

임상시험을 진행하면서 발생되는 혈액이나 생체조직을 보관하는 인체유래물은행은 환자 및 다양한 사람들에게 동의를 받고 검체와 생체 데이터 등을 획득하여 코드화한 후 보관하고 있다가 연구자가 검체 및 데이터를 요청할 시 익명 처리된 검체와 데이터를 제공해주는 기관으로 국내에서도 법적인 관리하여 운영되고 있다. 제공자의 사전 동의하에 데이터가 수집·관리되며 여러 연구에 제공되어 사용되므로, 인체유래물의 사용 내역 등의 데이터도 법적으로 엄밀하게 규정된 양식으로 관리된다. 그러나 위법적인 정보의 유출이나 임상 데이터 등의 위변조 원천 차단, 인체유래물 익명화와 동의 대안으로, 해외에서는 블록체인 기술의 적용 필요성이 제기되고 있다.

본 논문의 구성은 다음과 같다. 2장은 관련 연구로 블록체인에 대해 기술한다. 3장에서는 본 논문에서 제안하는 블록체인 기반 임상데이터 관리방안에 대해 자세하게 기술한다. 4장에서는 블록체인 기반으로 작동하는 관리방안을 구현하고 마지막으로 5장에서는 결론에 대해 기술한다.


Ⅱ. 관련 연구

의료분야의 임상시험은 개인 데이터, 개인정보 보호, 데이터 공유 및 환자등록을 비롯한 많은 문제에 직면해 있다. 블록체인 기술은 이러한 문제를 해결할 수 있는 잠재력을 가지고 있다[4]. 블록체인을 임상시험에 적용하면 불변성, 추적성 및 임상 연구 프로세스에 대한 신뢰가 향상될 수 있다[5].

2.1 블록체인

중앙기관이 필요 없는 가상화폐 중 대표적인 사례로 비트코인을 들 수 있다. 블록체인은 비트코인의 밑바탕이 되는 핵심 기술이며 분산원장 기술(Distributed ledger technology)이다[6]. 그림 1과 같이 블록체인은 검증된 트랜잭션을 블록이라고 하는 데이터의 집합으로 만들어 저장한다. 이때 각 블록에는 트랜잭션 데이터에 바로 직전에 생성된 블록의 해시값을 추가해서 저장한다. 각 블록은 이처럼 해시값을 통해 이전 블록과 연결된 형태이기 때문에 블록체인이라고 부른다[7].

Fig. 1.

Blockchain[8]

만약 과거에 생성된 블록 데이터를 변조하려고 하는 경우 계산된 해시값이 달라진다. 그렇기 때문에 연속된 블록의 해시값도 모두 변경하지 않으면 안되며 이렇게 모든 블록을 변경해야 하기 때문에 특정 블록을 변조하는 것은 불가능에 가깝다. 블록체인 네트워크는 피어 투 피어 분산 방식으로 각 블록은 여러 가지 검증된 거래를 포함하며 각 블록에는 해당 블록의 생성시간을 나타내는 타임스탬프와 암호화 작업을 위한 난스(Nonce)가 포함된다. 블록체인은 합의라는 구조를 사용해 분산된 원장의 일관성을 유지한다.

합의에는 어떤 거래(트랜잭션)가 발생하면 그 거래를 원장에 기록해도 될지를 블록체인 참가자가 검증하고 문제가 없다면 해당 거래 데이터를 블록체인에 저장한다[9].

블록체인은 특징에 따라 크게 퍼블릭(공용)형과 컨소시엄형(프라이빗)의 두 가지로 분류할 수 있다. 표 1은 퍼블릭형과 프라이빗형을 비교한 것으로, 가장 큰 차이점은 누가 거래를 검증하느냐이다. 비트코인과 같은 퍼블릭형에서는 불특정 다수의 참가자가 거래를 검증할 수 있지만 컨소시엄형에서는 특정 조직만이 거래를 검증할 수 있다[10].

Comparisons of public blockchain and consortium blockchain[11]


Ⅲ. 블록체인 기반 임상데이터 관리방안

본 장에서는 블록체인 기술을 기반으로 임상시험 데이터 관리를 위한 플랫폼을 제안한다. 데이터의 구성요소와 분산 어플리케이션과 데이터 포맷에 대해 정의하고, 임상시험 등록과 생성, 등록 후 연구 진행 흐름과 연구 종료 후 조회하는 플랫폼을 제안한다.

본 연구에서는 임상시험 실시기관으로 지정되어 운영 중인 생명윤리심의위원회(IRB, Institutional Review Board)에서 심사하고 승인 후 단계별 임상시험 흐름을 시퀀스 다이어그램으로 정의하였다. 실험에 사용한 피험자 임상 데이터는 가상의 수치를 사용하였으며 피험자에 관리는 비식별값 ID, 연령, 성별, IRB승인 파일번호, 검사항목들은 코드화하였다.

제안하는 내용은 첫째, 기존 방식과의 차이점은 블록체인에 직접 접근하지 않고 G/W 시스템을 통해 접근함으로써 유연성을 확보하였다. 둘째는, 의료기관 병원의 개인건강정보를 공유하는 플랫폼설계는 가능하지만 무작위 배정과 맹검으로 이루어지는 임상시험은 피험자와 데이터를 공유할 수 없기에 프라이버시 보호를 위한 프라이빗형 블록체인 기술 중 하이퍼레저 패브릭을 사용한 점이다.

표 2는 논문에서 정의한 분산 어플리케이션의 기능별 분류이다. 임상시험 연구를 생성하는 연구자(PI)와 피험자로서 임상데이터를 제공하는 연구참여자(Patient), 임상 데이터를 관리하는 시스템, 데이터를 암호화하여 관리하는 블록체인으로 구분하였다.

Functions of distributed application

3.1 임상시험 조직

임상시험을 공유하는 그룹은 최초 임상시험을 생성하는 연구자, 연구에 동의를 하여 블록체인에 개인정보를 제공해주는 연구참여자, 연구참여자의 개인정보와 연구참여자의 임상데이터를 저장하는 시스템과 최종적으로 분산원장을 저장하는 블록체인으로 구성한다. 임상시험에 참여하는 조직들은 분산어플리케이션(DApp)를 이용하여 네트워크에 연결된다.

3.2 블록체인 데이터 포맷

블록의 데이터에 해당하는 트랜젝션의 헤더와 바디의 구조는 그림 2와 같이 구성하였다. 트랜잭션의 헤더 구조는 flag, UID, timestamp, hash, signature로 정의하였다. 여기서 flag는 트랜잭션의 유형을 나타내며, UID는 임상시험 참여자의 비식별 값, timestamp는 트랜잭션을 생성한 알짜와 시간을 나타낸다.

Fig. 2.

Structure of transaction

또한 hash는 임상시험 데이터의 해시값이고, signature는 트랜잭션 생성자의 개인키 서명을 나타낸다. Body는 트랜젝션 flag의 유형을 코드화 하였으며 표 3과 같다.

Configuration of transaction flag body

3.3 블록체인 임상시험 관리항목

트랜젝션 flag의 구성은 0000~1111코드로 구분하였으며 각 블록체인이 관리하는 임상시험 관리정보의 항목을 나타낸다. User ID는 참여자 고유식별자이며 연령은 개인정보보호로 주민번호를 사용하지 않았다. 성별도 남, 여로만 구분하고 연구승인번호는 IRB에서 승인한 파일번호를 기재한다. 마지막은 임상시험 검사항목을 기록한다.

Blockchain management items

3.4 임상시험 피험자등록 및 생성

사용자 등록 및 생성은 연구자와 피험자, 블록체인 세 개의 그룹으로 분류하였다. 그림 3은 임상시험 피험자를 등록하는 과정에 대한 시스템 내부 프로세스이다. 먼저 연구자는 연구계획서 IRB 승인 파일 트랜젝션을 시스템에 전송한다(①). 시스템은 참여자에게 피험자 동의/거부 요청 트랜젝션을 전송한다(②). 참여자는 동의/거부를 결정 후 시스템으로 전송한다(③). 최종적으로 시스템은 참여자등록 생성을 연구자에게 전송한다(④). 전송 후 연구자는 임상시험을 연구 일정에 따라 진행하게 된다.

Fig. 3.

Registration and creation

3.5 등록 및 생성 후 연구 진행 동작

참여자 등록이 완료된 후 연구자가 연구를 개시하려면 시스템에 요청하여야 하며 이때의 시스템 내부 프로세스는 그림 4와 같다.

Fig. 4.

Flow of research progress

연구자가 시스템에 연구개시를 요청하는 트랜잭션을 보내면(①), 시스템은 참여자에게 모바일로 디바이스 작동을 하도록 DApp을 첨부하여 트랜젝션을 보낸다(②). 참여자는 웨어러블 디바이스를 작동시켜 측정된 결과값 트랜젝션을 시스템에 전송한다(③). 시스템은 측정 결과값 트랜젝션을 블록체인으로 전송하여 저장한다(④). 시스템은 측정 결과값 트랜젝션을 연구자에게 전송한다(⑤).

3.6 임상시험 데이터 조회

그림 5에서는 피험자의 임상시험 데이터 결과값을 블록체인에서 조회할 수 있다. 연구자는 임상시험 종료 후 참여자의 데이터 결과값을 시스템으로 조회를 요청하면(①), 시스템은 블록체인으로 데이터 결과값을 조회 요청 트랜젝션을 전송한다(②). 블록체인은 분산원장에서 연구결과 값 트랜젝션을 확인한 후 시스템으로 전송한다(③). 마지막으로 시스템은 연구결과값 트랜젝션을 연구자에게 전송한다(④).

Fig. 5.

Inquiry of clinical trial data


Ⅳ. 구현 및 결과

제안된 시스템의 실험하기 위해서는 블록체인 시스템의 구현이 필요하다. 논문에서는 기업에 많이 활용되고 있는 하이퍼레저 패브릭[12]을 사용하여 프라이빗 블록체인을 구현하였다. 분산 처리 환경을 구현하기 위해서는 리눅스에 도커를 설치하여 3개의 컨테이너(가상환경)를 구성하였다. 각 컨테이너별 설치 환경은 표 5와 같다.

Installation of docker container

3개의 도커 컨테이너는 2개의 피어(Peer, 포트 7051, 포트 9051)와 1개의 오더러(OSN, 포트 7050)으로 구성하였고 체인으로 연결하였고 하이퍼레저에서 제공되는 network.sh를 이용하여 일괄로 구성하였다.

채널 이름은 mychannel로 정의하였다. 구현된 시스템은 클라이언트의 어플리케이션(DApp)과 서버의 체인코드(Chaincode)로 구분할 수 있다. 논문에서 제안한 부분과 관련된 주요 코드 내용은 아래와 같다.

4.1 어플리케이션 부문

클라이언트 어플리케이션(DApp)에서 서버의 체인코드를 호출하는 방법은 서버의 shell을 호출하는 방식으로 구현하였다. 그림 6은 클라이언트에서 호출하는 서버의 shell 코드의 예시이다. shell의 주요 내용을 보면 mychannel에 있는 basic2 채널코드를 호출하여 CreateData라는 함수를 호출한다. 마지막에 서술된 부분이 함수에 전달되는 데이터가 된다.

Fig. 6.

Shell code

4.2 서버 체인코드 영역

체인코드는 실제 서버의 로직이 수행되는 프로그램으로 피어에 등록해서 사용하였다. 그림 7은 이 프로그램의 예로써, 자바스크립트로 구현한 것이다.

Fig. 7.

Chain code

등록하는 명령은 ./network.sh deployCC -ccn basic2 -ccp ../asset-transfer-basic2/chaincode-javascript –ccl javascript과 같다. 이 명령을 수행하면 basic2.tar.gz이 만들어지면서 피어에 basic2라는 체인코드명으로 등록되도록 하였다. 그림에서 함수 CreateData()는 클라이언트 DApp으로부터 호출되는 함수로 DApp에서 파라메터를 받아서 블록체인 원장에 저장된다.

4.3 원장(Ledger) 조회를 통한 데이터 확인

체인코드를 통해 원장에 저장된 데이터를 확인하기 위한 프로그램도 필요하다. 그림 8은 저장된 데이터를 확인하기 위해 수행하는 조회 함수이고 JSON 포맷의 데이터로 조회하였다.

Fig. 8.

Lookup function

그림 9는 조회 함수를 통해 리턴된 원장 결과 예시이다. 원장조회결과로는 ID, 나이와 성별 구분 등이 포함된다.

Fig. 9.

Results of ledger


Ⅴ. 결 론

본 연구에서는 프라이빗 블록체인을 활용한 임상시험 데이터 관리를 위한 플랫폼을 제안하였다. 제안하는 플랫폼은 트랜잭션 저장 시 해시값을 포함하여 오류나 무결성을 제공하도록 하였다. 구현을 위해 허가형 프라이빗 블록체인 형태이며 MSP(Membership Service Provider)라는 인증 관리 시스템에 등록된 사용자만이 참여하는 하이퍼레저 패브릭 블록체인으로 리눅스에 도커를 설치하여 3개의 컨테이너를 설치하였다. 설치 후 구현은 클라이언트의 어플리케이션 부분과 서버의 체인코드 부분으로 구현을 하였다.

피험자 임상데이터를 가상의 데이터값으로 사용하여 구현한 결과 접근 제어, 인증, 데이터 저장과 조회, 식별 불가성이 확인되었다. 민감한 임상시험 데이터를 관리하는 측면에서 임상시험 실시기관에서 실제로 블록체인 기술을 적용하고 활용한다면, 다기관 연구와 외부기관에서 데이터가 사용될 경우에도 블록체인으로 피험자 정보를 보호할 수 있을 것으로 기대한다.

References

  • T. Hirano, T. Motohashi, and T. Ueno, "Data Validation and Verification Using Blockchain in a Clinical Trial for Breast Cancer: Regulatory Sandbox", J MedInternet Res, Vol. 22, No. 6, e18938, Jun. 2020. [https://doi.org/10.2196/18938]
  • N. J. Stark, "Clinical Trials Design: Evaluation for Medical Devices, Second Edition", Kyung Hee University Press, pp. 37-69, Jan. 2012.
  • J. Xie, H. Tang, and Y. Liu, "A survey of blockchain technology applied to smart cities: Research issues and challenges", IEEE Communications Surveys & Tutorials, Vol. 21, No. 3, pp. 2794-2830, Sep. 2019. [https://doi.org/10.1109/COMST.2019.2899617]
  • S. Khezr, M. Moniruzzaman, and R. Benlamri, "Blockchain technology in healthcare: A comprehensive review and directions for future research", Appl. Sci., Vol. 9, No. 9, May 2019. [https://doi.org/10.3390/app9091736]
  • M. Benchoufi and P. Ravaud, "Blockchain technology for improving clinical research quality", Trials, Vol. 18, No. 1, pp. 1-5, Jul. 2017. [https://doi.org/10.1186/s13063-017-2035-z]
  • Z. Zheng, S. Xie, and H. Wang, "Blockchain Challenges and Opportunities: A Survey", Int J Web Grid Serv, Vol. 14, No. 4, pp. 352-375, Oct. 2018. [https://doi.org/10.1504/IJWGS.2018.095647]
  • A. Yazdinejad, G. Srivastava, and M. Aledhari, "Decentralized Authentication of Distributed Patients in Hospital Networks Using Blockchain", IEEE J Biomed Health, Vol. 24, No. 8, pp. 2146-2156, Aug. 2020. [https://doi.org/10.1109/JBHI.2020.2969648]
  • S. Nakamoto, "Bitcoin: A Peer to Peer Electronic Cash System", Mar. 2009.
  • T. Salman, M. Zolanvari, and M. Samaka, "Security Service Using Blockchain:A State of Art Survey", IEEE Communications Surveys & Tutorials, Vol. 21, pp. 859-861, Oct. 2018. [https://doi.org/10.1109/COMST.2018.2863956]
  • S. Kakei, Y. Shiraishi, and S. Saito, "Cross-Certification Towards Distributed Authentication Infrastructure:A case of Hyperledger Fabric", IEEE Access, Vol. 8, pp. 135742-135757, Aug. 2020. [https://doi.org/10.1109/ACCESS.2020.3011137]
  • H. Kim, "Analysis of Security Threats and Countermeasures on Blockchain Platforms", Journal of KIIT, Vol. 16, No. 5, pp. 103-112, May 2018. [https://doi.org/10.14801/jkiit.2018.16.5.103]
  • https://www.hyperledger.org/use/fabric, [accessed: Sep. 10. 2021]
저자소개
강 준 봉 (Jungbong Kang)

2007년 3월 : 고려대학교 의용과학대학원 (석사)

2011년 9월 ~ 현재 : 인천대학교 정보통신공학과 박사과정

관심분야 : 의료기기, 정보보안, IT융합

우 요 섭 (Yoseop Woo)

1986년 2월 : 한양대학교 전자통신공학과 (공학사)

1992년 2월 : 한양대학교 전자통신공학과 (공학석사)

1992년 3월 ~ 현재 : 인천대학교 정보통신학과 교수

관심분야 : 분산시스템, 데이터베이스, 한국어정보처리

Fig. 1.

Fig. 1.
Blockchain[8]

Fig. 2.

Fig. 2.
Structure of transaction

Fig. 3.

Fig. 3.
Registration and creation

Fig. 4.

Fig. 4.
Flow of research progress

Fig. 5.

Fig. 5.
Inquiry of clinical trial data

Fig. 6.

Fig. 6.
Shell code

Fig. 7.

Fig. 7.
Chain code

Fig. 8.

Fig. 8.
Lookup function

Fig. 9.

Fig. 9.
Results of ledger

Table 1.

Comparisons of public blockchain and consortium blockchain[11]

Classification Public blockchain Consortium(Private) blockchain
Consensus determination All miners One organization
Consensus process Permissionless Permissioned
Read permission Public Could be public or restricted
Example Bitcoin, Ethereum Hyperledger fabric

Table 2.

Functions of distributed application

DApp Description
PI(Principal Investigator) ⦁ Create clinical trial research transaction
⦁ Consent request transaction
Patient ⦁ Consent/denial of consent to participate in research
⦁ Confirm message delivery
System ⦁ Inspection record transaction creation
⦁ Confirm patient consent
Blockchain ⦁ Create research inquiry transaction
⦁ encryption

Table 3.

Configuration of transaction flag body

Flag Transaction Description
0000 CRF clinical trial data
0001 Share request research content guide
0010 Research consent accept/reject
1000 Device registration deviece certification
1001 Start study clinical trial progress
1011 Data transmission research transaction
1111 Lookup research data inquiry

Table 4.

Blockchain management items

Title Description
User ID identification value
Age age
Gender M/F
Research approval number IRB file number
Inspection items clinical trial test items

Table 5.

Installation of docker container

Title Install SW
OS Ubuntu 20.04.3 LTS
Block-Chain platform Hyperledger Fabric 2.2.3
Container Docker 20.10.8
Language NODEJS 6.14.14
Python 2.7.18