적대적 가정 하에 비트코인 인프라 설계

발행: (2025년 12월 19일 오전 09:17 GMT+9)
11 min read
원문: Dev.to

I’m happy to help translate the article, but I’ll need the text you’d like translated. Could you please paste the content (or the portion you want translated) here? I’ll keep the source line and all formatting exactly as you specify.

Scaling Bitcoin Infrastructure Exposes a Fundamental Tension

Critical operations often run on environments we do not control. In building signing and execution services, I encountered this directly. Assumptions that the cloud provider is “mostly honest” work for standard workloads but fail when private keys, signing logic, or protocol‑critical operations are involved. This is not paranoia; it is the reality of operational security in systems where value is at stake.

Single‑trust assumptions cascade into systemic fragility—a problem engineers sense but rarely discuss.

Typical Bitcoin Deployments

  • Virtual machines
  • Containerized services
  • Environment‑variable secrets
  • IAM policies

이 설정은 상태가 없는 애플리케이션에는 충분하지만, 높은 신뢰가 요구되는 구성 요소에는 취약합니다.

Problem Areas

  • Custody services는 키를 호스트 메모리에 노출합니다.
  • Consensus‑critical nodes는 런타임이 안전하다고 가정합니다.
  • Signing services(멀티시그 또는 임계값 스킴)는 호스트 OS가 협조적이라고 전제합니다.
  • Application‑specific processors도 동일한 맹점을 물려받습니다.

관리 경계, 평문 비밀, 그리고 변경 가능한 빌드 아티팩트가 결합되어 적대적인 상황을 견딜 수 없는 암묵적인 신뢰 모델을 형성합니다. 이러한 약점은 구조적인 것이며, 우연히 발생한 것이 아닙니다.

실행 문제, 클라우드 문제가 아니다

운영자는 적대적일 수 있고, 호스트가 침해당하거나, 빌드가 변조되거나, 구성이 잘못 적용될 수 있습니다. 기존 보안은 경계 강화에 초점을 맞추지만, 적대적인 인프라에서는 운영자 자체에 대한 신뢰를 최소화해야 합니다.

올바른 기본 요소는 다음과 같습니다:

  1. 격리된 실행
  2. 재현성
  3. 증명

신뢰 실행 환경 (TEEs)

TEEs는 다음을 제공합니다:

  • 하드웨어 기반 격리
  • 암호학적 측정
  • 원격 증명

비밀은 검증 가능한 조건이 충족될 때만 공개되며, 인스턴스별 및 조건부인 신뢰 모델을 가능하게 합니다. 이는 보안을 희망에서 검증 가능한 제약으로 전환합니다.

주의: 기밀 컴퓨팅은 만병통치약이 아닙니다. 이는 애플리케이션 수준 버그, 사이드채널 공격, 혹은 잘못 구성된 네트워크 I/O를 방지하지 못합니다. 그 가치는 운영자 신뢰를 측정 가능하고 강제 가능한 방식으로 감소시키는 데 있습니다. 기밀 컴퓨팅은 실제 인프라와 접촉했을 때 살아남아야 의미가 있습니다.

Terraform 참조 구현

이러한 아이디어를 압박 테스트하기 위해 AWS Nitro Enclaves 내부에 비트코인‑민감 워크로드를 배포하기 위한 Terraform 참조 구현을 개발했습니다. 목표는 프로덕션 준비가 아니라 아키텍처의 명확성을 강제하고 더 어려운 질문을 제기하는 것이었습니다:

인프라 계층에서 적대적 가정이 적용될 때, 즉 애플리케이션 코드에서만이 아니라, 어떤 일이 발생할까요?

왜 Terraform인가?

  • 인클레이브 호스트, IAM 경계, 네트워킹 제약, 그리고 인증 흐름을 선언형 인프라로 인코딩함으로써 암묵적인 신뢰 결정을 명시적으로 만들 수 있습니다.
  • 각 리소스 정의는 누구를, 언제, 어떤 조건에서 신뢰할지에 대한 구체적인 선택을 나타냅니다.
  • 추상화나 애매함의 여지가 없습니다: 인클레이브를 재현 가능하게 시작하고 인증할 수 있든, 시스템이 시작을 거부하든 말이죠.

Supply‑Chain Risk Becomes Impossible to Ignore

  • Enclave 이미지들은 CI에서 deterministically 빌드되고, 측정되며, 불변적으로 참조되어야 합니다.
  • 비밀 프로비저닝은 연기되거나 안전하다고 가정될 수 없으며, cryptographically gated on successful attestation 해야 하며, 그렇지 않으면 설계상 배포가 실패합니다.

인프라스트럭처 코드로 시작했던 것이 직접적으로 보안 자세를 인코딩하는 방식으로 진화했으며, 단순히 리소스를 프로비저닝하는 것이 아닙니다. 이는 불편한 진실을 드러냈습니다: 대부분의 비트코인 인프라가 취약한 not because engineers are careless가 아니라, 우리의 도구가 런타임까지 신뢰 결정을 미루도록 장려하기 때문입니다. Terraform을 enclave와 결합하면 그 역동성이 뒤바뀝니다. 시스템이 부팅되기 before the system ever boots 전에 무엇을 신뢰할지 결정하도록 강요받게 됩니다.

최소 부모 프로세스

  • 최소 부모 프로세스는 Nitro‑지원 EC2 인스턴스에서 신뢰되지 않은 브로커로 실행됩니다.
  • 엔클레이브 애플리케이션은 암호학적으로 측정된 격리된 환경에서 서명 작업을 수행합니다.
  • Terraform은 호스트, IAM 경계, 네트워킹 및 엔클레이브 수명 주기를 코드화합니다.
  • 부트스트래핑은 엔클레이브 이미지가 결정론적으로 빌드되고, 예상 PCR(Platform Configuration Register) 값과 측정되며, 무결성 검사가 실패할 경우 거부되도록 보장합니다.
  • 시크릿은 성공적인 증명 후에만 프로비저닝됩니다.

핵심 엔지니어링 진리

  1. 엔클레이브 경계는 모듈화를 강제합니다.
  2. 증명은 프로토콜이 됩니다.
  3. 재현성은 미묘한 변화를 포착하는 데 필요합니다.

인프라스트럭처 코드는 이제 보안 자세를 명시적으로 인코딩하며, 런타임에 신뢰 결정을 미루지 않습니다. 이러한 제약 하에서 설계하면 우선순위가 “보안 배포”에서 검증 가능한 실행으로 이동합니다.

  • 최소한의 로직만 엔클레이브에 존재합니다.
  • 데이터 흐름이 명시적입니다.
  • 신뢰는 인스턴스마다 획득됩니다.
  • 재현성과 증명이 가정과 기대를 대체합니다.

진행 중인 작업

  • Attested secret brokers
  • Deterministic CI‑built enclave artifacts
  • Cross‑TEE comparisons
  • 암시적 신뢰를 도입하지 않고 enclave orchestration 확장

실질적인 과제

  • Lifecycle management
  • Failure recovery
  • Observability

The foundation is now principled.

결론

비트코인 인프라는 그 신뢰를 얻을 때에만 신뢰받을 자격이 있습니다. 협력적인 운영자를 전제로 하는 것은 편리하지만 안전하지 않습니다. 기밀 컴퓨팅은 하드웨어에 의해 신뢰가 강제되고 재현 가능하고 측정된 실행을 통해 검증되는, 적대적인 환경에도 견딜 수 있는 시스템을 설계할 수 있게 합니다.

비트코인 인프라를 위한 기밀 컴퓨팅은 아직 초기 단계이며, 많은 어려운 문제들이 이론적이라기보다 운영적입니다. 증명 워크플로우, 결정론적 빌드, 엔클레이브 수명 주기 관리, 가시성, 그리고 장애 복구는 시스템이 프로토타입을 넘어설 때마다 날카로운 문제점을 드러냅니다.

저는 특히 기밀 실행이 실제 인프라 제약과 교차하는 부분을 중심으로 이 영역들을 계속 탐구하고 있습니다. 신뢰 실행 환경, 엔클레이브, 혹은 비트코인 관련 인프라를 작업하고 계시다면, 연결하여 아이디어를 교환하고 싶습니다.

오케스트레이션, 재현 가능한 빌드 시스템, 혹은 적대적 가정 하의 비트코인 인프라—노트를 비교해 보고 싶습니다.

이러한 시스템은 고립된 구현을 통해 성숙하지 않습니다. 공유된 위협 모델, 구체적인 실패 사례, 그리고 신중한 엔지니어링 논의를 통해 성숙해집니다.

Back to Blog

관련 글

더 보기 »

AWS Terraform IAM 사용자 관리

소개: AWS에서 IAM 사용자를 수동으로 관리하면 복잡해지고 오류가 발생하기 쉬우며 확장이 어려워집니다. 팀이 성장함에 따라 반복 가능하고 감사 가능한…