Python 개발자가 Web3로 넘어가려고 할 때, 진짜 어려운 질문은 “Solidity를 배워야 할까?”가 아닙니다. “이 일을 할 수 있다는 걸 증명하려면 뭘 만들어야 하지?” 가 어려운 질문입니다.
이 글에서는 프리랜서 포트폴리오에서 체급 이상의 펀치를 날리는 구체적인 프로젝트 하나를 안내해 드립니다. 세 가지를 결합합니다 — 헬스케어 데이터 표준, 분산 신원, 암호학적 검증 가능성. 글로벌 프리랜서 시장에서 이 셋을 Python으로 다루는 사람이 거의 없습니다.
프로젝트는 FHIR Consent Vault입니다 — 환자가 본인 의료 데이터의 동의를 관리하고, 모든 동의 기록이 암호학적으로 서명되어 위변조 불가능한 원장에 anchoring(닻 내림)되고, 제3자(보험사, 연구기관)가 중앙 기관을 신뢰하지 않고도 동의를 검증할 수 있는 시스템입니다.
저녁 시간 활용해서 4주면 작동 버전을 만들 수 있습니다. 끝나면 Upwork에서 시급 $80–$150에 해당하는 스킬을 증명할 결과물이 손에 잡힙니다.
이 프로젝트에서 세 가지 표준이 수렴하는데, 셋 다 지금 가속 중입니다.
FHIR (Fast Healthcare Interoperability Resources) 는 HL7이 만든 의료 데이터 교환 국제 표준입니다. 미국은 2022년 “21st Century Cures Act”로 모든 EHR 시스템에 FHIR API를 의무화했습니다. EU, 영국, 호주, 캐나다 모두 채택했고요. 전 세계 모든 헬스케어 스타트업이 FHIR을 다룰 사람을 찾고 있습니다. 대부분 Java/C# 진영에서 찾고 있어요. Python으로 이걸 다루는 인력은 드뭅니다.
DID와 검증 가능 자격증명(Verifiable Credentials) 은 W3C가 만든 휴대 가능한 디지털 신원 표준입니다. 백신 패스, 학위 증명, 재직 증명 — 모두 이 모델로 옮겨가고 있어요. 2026년부터 EU 회원국에 의무 적용되는 EU 디지털 신원 지갑이 이 표준 위에서 돌아갑니다.
Merkle Tree와 암호학적 anchoring 이 블록체인으로 가는 다리입니다. 실제로 블록체인을 배포하지 않아도 이 패턴을 증명할 수 있습니다 — 로컬 SQLite를 “원장”으로 쓰고 해싱 로직만 제대로 짜면 이해도를 보여줄 수 있어요.
이 세 언어를 다 구사할 수 있는 개발자 — FHIR 데이터, DID/VC 신원, 온체인 검증 패턴 — 가 바로 헬스케어 블록체인 스타트업이 못 찾는 사람입니다. 그 사람이 되세요.
세 명의 행위자가 있습니다:
흐름:
이게 증명하는 것: 헬스케어 데이터 의미론, 신원 암호학, 검증 가능 시스템에 대한 이해. 강력한 실증입니다.
# 핵심
fastapi # REST API 백엔드
fhir.resources # FHIR Python 라이브러리 (Patient, Consent, Observation)
cryptography # ECDSA 서명, SHA-256 해싱
pymerkle # Merkle Tree 구현
sqlalchemy + sqlite # 로컬 원장 시뮬레이션
# 신원
didkit # DID Document, Verifiable Credential 발급
# (또는 did:key를 직접 구현 — 의외로 간단합니다)
# 데모 UI
streamlit # 3분할 데모: 환자 / 병원 / 보험사
# 테스트
pytest 가짜 환자 데이터는 Synthea로 생성합니다. 현실적인 FHIR 형식 가상 의료 기록을 만들어 주는 오픈소스예요. 명령어 하나로 환자 10명, 각자 30년치 진료 기록을 받을 수 있어요 — 실제 데이터가 아니라 법적 리스크 0.
Week 1 — FHIR 기본기
fhir.resources로 Patient, Observation, Condition, Consent 리소스 파싱GET /patients, GET /patients/{id}/observations, POST /consentsWeek 2 — 동의 원장과 Merkle Tree
ledger 테이블에 루트 저장Week 3 — DID와 검증 가능 자격증명
did:key 발급 (가장 간단한 DID 메소드, 공개키에서 직접 생성)Week 4 — 데모와 문서화
4주가 부담스러우면 2주짜리 미니 버전부터: FHIR Hash Notary.
CLI 도구 하나로:
verify 명령: 토큰을 원본과 대조해 검증전체 시스템 복잡도 없이 암호학적 요소와 FHIR 파싱을 익힐 수 있어요. 저녁 시간으로 2주. 재미있으면 Consent Vault로 확장하면 됩니다.
오늘 시작할 수 있어요:
# 1. Synthea로 가짜 환자 데이터 생성 (자바 필요)
git clone https://github.com/synthetichealth/synthea
cd synthea && ./run_synthea -p 10 Massachusetts
# 2. 결과물 확인
ls output/fhir/
# 3. Python 환경 설정
pip install fhir.resources fastapi pymerkle cryptography uvicorn 첫 번째로 할 일 — 유일하게 첫 번째로 해야 할 일 — 은 Synthea 출력 JSON 하나를 Python으로 로드해서 환자의 전체 처방 이력을 출력해 보는 겁니다. 30분에서 한 시간이면 됩니다. 그 한 번의 연습이 어떤 튜토리얼보다 FHIR을 더 잘 가르쳐 줄 거예요. 직접 구조와 씨름해야 하니까요.
그 다음부터는 프로젝트가 자연스럽게 풀립니다.
새로운 기술 영역을 배울 때 “모든 걸” 배우려는 유혹이 있습니다 — 모든 튜토리얼 읽고, 모든 영상 보고. 그 길은 영원한 학생 신분으로 가지, 취업으로는 안 갑니다.
지름길은 구체적인 것 하나를 잘 만들고 그것에 대해 쓰는 것입니다. 제대로 된 테스트와 깔끔한 코드, 데모 영상, 사려 깊은 블로그 포스트가 있는 작동하는 FHIR Consent Vault 하나가 10개 기술 영역에 걸친 반쯤 완성된 프로젝트 10개보다 포트폴리오에서 더 가치 있습니다.
이걸 출시하면 진짜로 드문 걸 갖게 됩니다 — Java가 지배하는 표준 영역의 Python 전문성을, 실제 기업이 풀려고 하는 문제에 적용한 결과물.
이걸로 프리랜서 일은 시작할 수 있어요.
다음 편 예고: Python으로 뭔가 만들기 시작하면 Solidity와 Rust 얘기를 듣게 됩니다. Python 개발자는 어느 쪽을 배워야 하고, 그 선택이 시급에 어떤 차이를 만드나? Part 2에서 다룹니다.
ChainLab이 씁니다 — 세상을 잇는 체인. 실제 세계를 위한 블록체인 인프라를 만듭니다. chainlab.dev
중고거래 안전결제, 다들 써보셨죠? AI 결제에도 이게 필요합니다. 문제는, 생각보다 훨씬 까다롭다는 거예요. 중고거래를 떠올려…
앞 편의 x402가 자판기였다면, 이번 두 방식은 '용돈 한도'와 '술집 외상장부'에 가깝습니다. 앞 편 복습:…