# OpenPCC - 애플의 Private Compute Cloud를 오픈소스로 구현

> Clean Markdown view of GeekNews topic #24205. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=24205](https://news.hada.io/topic?id=24205)
- GeekNews Markdown: [https://news.hada.io/topic/24205.md](https://news.hada.io/topic/24205.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2025-11-07T16:32:48+09:00
- Updated: 2025-11-07T16:32:48+09:00
- Original source: [github.com/openpcc](https://github.com/openpcc/openpcc)
- Points: 4
- Comments: 1

## Topic Body

- **OpenPCC**는 애플의 Private Cloud Compute에서 영감을 받은 **검증 가능한 프라이버시 AI 추론 프레임워크**로, 완전한 오픈소스 형태로 제공됨  
- 프롬프트, 출력, 로그를 노출하지 않고 **암호화 스트리밍·하드웨어 인증·비연결 요청**을 통해 개인정보 보호를 보장  
- 누구나 자체 인프라에서 **오픈 또는 커스텀 AI 모델**을 실행할 수 있으며, 투명하고 감사 가능한 구조로 설계됨  
- **Confident Security**는 OpenPCC 표준을 기반으로 한 관리형 서비스 **CONFSEC**을 개발 중  
- AI 데이터 프라이버시를 위한 **커뮤니티 주도형 표준**으로 발전시키는 것을 목표로 함  

---
### OpenPCC 개요
- OpenPCC는 **프라이버시가 보장된 AI 추론**을 가능하게 하는 오픈소스 프레임워크  
  - 애플의 Private Cloud Compute 개념을 기반으로 하지만, 완전히 **공개·감사·자체 배포 가능**한 형태로 구현  
  - 사용자는 프롬프트, 출력, 로그가 외부에 노출되지 않은 상태에서 AI 모델을 실행할 수 있음  
- **암호화된 스트리밍**, **하드웨어 인증(hardware attestation)** , **비연결 요청(unlinkable requests)** 을 통해 데이터 보호를 강화  
- 목표는 **투명하고 커뮤니티가 관리하는 AI 데이터 프라이버시 표준** 수립  

### Managed Service: CONFSEC
- **Confident Security**가 OpenPCC 표준을 기반으로 한 **완전 관리형 서비스 CONFSEC**을 개발 중  
  - 관련 정보와 가입은 confident.security 웹사이트에서 제공  
- CONFSEC은 OpenPCC의 기술을 상용 환경에서 쉽게 활용할 수 있도록 지원  

### OpenPCC Client 구성
- 저장소에는 **Go 클라이언트 코드**와 **C 라이브러리**가 포함되어 있으며, 이는 Python 및 JavaScript 클라이언트의 기반으로 사용됨  
- 클라이언트를 테스트하기 위한 **인메모리 서비스(in-memory services)** 도 함께 제공  
- 관련 **Compute Node 구현체**는 별도의 저장소(confidentsecurity/confidentcompute)에서 확인 가능  

### Go 사용 예시
- `cmd/test-client/main.go` 파일에 로컬 개발 예시가 포함되어 있음  
- 프로덕션 서비스 연결 시, `openpcc.NewFromConfig`를 통해 클라이언트를 생성하고 API 요청을 수행  
  - 예시에서는 모델 `"qwen3:1.7b"`와 프롬프트 `"why is the sky blue?"`를 사용  
  - 요청 헤더 `"X-Confsec-Node-Tags"`를 통해 특정 모델을 실행 중인 컴퓨트 노드로 라우팅  
- 코드 예시는 OpenAI API의 **generate 포맷**을 따름  

### 개발 및 테스트
- 개발 명령은 Go 기반 빌드 도구 **mage**를 사용  
  - `go tool mage [cmd]` 또는 `go install github.com/magefile/mage@latest`로 실행 가능  
  - `mage` 명령은 사용 가능한 커맨드 목록을 출력하며, `/magefiles/*` 디렉터리에 정의됨  
- 개발 중 라이브러리를 테스트하려면 `mage runMemServices`로 인메모리 OpenPCC 서비스를 실행하고, `mage runClient`로 테스트 요청 수행  

### 참고 자료
- OpenPCC의 기술적 세부 내용은 **화이트페이퍼(whitepaper)** 에서 확인 가능  
  - 문서 위치: `https://github.com/openpcc/openpcc/blob/main/whitepaper/openpcc.pdf`

## Comments



### Comment 46039

- Author: neo
- Created: 2025-11-07T16:32:49+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=45824243) 
- 백서 내용을 보면 **inference provider**가 여전히 프롬프트와 응답의 평문에 접근할 수 있는 구조로 보임  
  다만 이 방식은 API 라우터 같은 제3자는 평문을 볼 수 없고, 클라이언트의 신원도 요청과 연결되지 않게 숨겨줌  
  README에 이런 **프라이버시 보장 범위**를 명확히 요약해두면 좋겠음  
  이런 점을 고려할 때, 단순히 사용자가  
  - 중간 라우터 없이 inference provider에 직접 요청을 보내고  
  - 익명 암호화폐로 결제하며  
  - VPN으로 IP를 숨기는  
  방식보다 이 구조가 어떤 이점이 있는지 궁금함
  - 나는 confident.security의 엔지니어링 리드로, 이 프로젝트가 공개된 걸 보니 반가움  
    여기서 말하는 inference provider가 정확히 뭘 의미하는지 궁금함  
    실제로는 복호화된 후에도 워크로드가 외부(OpenAI 등)로 나가지 않고, **오픈소스 모델**이 로드된 컴퓨트 머신에서 직접 실행됨  
    이 머신들은 실행 중인 소프트웨어를 **암호학적으로 증명(attestation)** 하며, 민감한 정보를 외부로 유출할 수 없음을 보장함  
    Apple의 PCC도 같은 원리로 동작하며, 클라이언트는 이런 보증을 제공하지 않는 노드에는 요청을 보내지 않음  
    즉, 하드웨어 운영자조차 프롬프트를 볼 수 없다는 게 핵심 프라이버시 보장임
  - 공급자가 프롬프트 평문에 접근할 수 있다는 점은 많은 이들이 과소평가함  
    BYOK로 대부분 해결되지만, 여전히 키를 제공하는 순간 위험이 존재함  
    Apple의 [Private Cloud Compute](https://security.apple.com/documentation/private-cloud-compute)나 AWS의 [Nitro Enclaves](https://aws.amazon.com/confidential-computing/) 같은 시스템은 이 마지막 단계를 해결하려 함  
    NCC Group이 AWS를 검증한 결과, 직원이 호스트에 로그인하거나 고객 데이터를 접근할 수 있는 **관리 API**가 존재하지 않음을 확인했음  
    이런 구조는 투명성과 보안 측면에서 매우 이례적임  
    Apple의 [PCC 보안 연구 블로그](https://security.apple.com/blog/pcc-security-research/)도 참고할 만함
  - 그럴 바엔 약간 성능이 떨어지더라도 **로컬 모델**을 직접 돌리는 게 더 간단해 보임
  - EU에서는 기업이 **익명 암호화폐 결제**를 받는 게 불법일 가능성이 높음  
    자금세탁 방지 규정 때문에 추적 가능한 결제만 허용됨  
    다만 구체적으로 어느 수준까지 금지되는지는 불명확함  
    관련 기사: [EU to ban trading of privacy coins from 2027](https://bitcoinblog.de/2025/05/05/eu-to-ban-trading-of-privacy-coins-from-2027/)

- 나도 비슷한 일을 하는 팀에 있었음  
  유료 서비스이긴 하지만 **소스 공개**와 **의미 있는 attestation**을 제공함  
  서비스: [privatemode.ai](https://www.privatemode.ai/)  
  코드: [github.com/edgelesssys/privatemode-public](https://github.com/edgelesssys/privatemode-public)
  - OpenPCC는 **Apache 2.0** 라이선스이며 CLA 없이 rugpull을 방지함  
    반면 edgeless는 **BSL**을 사용함
  - 핵심은 attestation임  
    inference provider가 프롬프트를 볼 수 없게 하는 것이 USP이며,  
    Privatemode는 **소스 코드 → 재현 가능한 빌드 → TEE attestation report**로 이어지는 체인을 통해 이를 달성함  
    또한 Kata/CoCo 같은 격리 기술과 런타임 정책으로 보안을 강화함

- “provably private”이라지만, **물리적 접근**과 약간의 장비만 있으면 메모리 버스를 분석할 수도 있음  
  관련 토론: [HN thread](https://news.ycombinator.com/item?id=45746753)
  - GCP는 **confidential VM을 실시간 마이그레이션**함  
    수만 대의 머신 중 어느 곳에 분석기를 붙이겠음?
  - 게다가 그런 공격엔 무한한 시간과 물리적 접근이 필요함

- 멋진 작업임. 오픈소스로 공개된 것도 인상적임  
  우리는 **동형암호(homomorphic encryption)** 문제와 유사한 과제를 연구 중인데, OpenPCC가 도움이 될지 궁금함  
  예를 들어, 웨어러블 기기(AR 안경 등)가 시각 데이터를 로그로 남길 때 개인정보 문제가 생김  
  이런 데이터를 개발자 디버깅용으로 **익명화**하는 데 OpenPCC가 쓸 수 있을까?
  - 가능함. OpenPCC 노드 안에서 **익명화 워크로드**를 실행할 수 있음  
    기본적으로 OpenPCC는 내부를 볼 수 없는 attested HTTP 서버임  
    웨어러블이 데이터를 OpenPCC로 보내면, 그 안에서 익명화 프로세스를 돌릴 수 있음  
    물론 기기 자체에서 익명화하는 게 더 단순함  
    참고로 **동형암호는 아직 실용 단계가 아님**

- 정말 멋진 릴리스임  
  더 많은 기업이 이를 활용해 **사용자 프라이버시**를 강화하길 바람

- Go 언어가 등장해서 반가움  
  내 생각엔 **AI 분야에서 Go가 Python을 넘어설 것**임

- Azure의 **Confidential AI Inference**와 유사함  
  참고 링크: [Azure AI Confidential Inferencing Deep Dive](https://techcommunity.microsoft.com/blog/azureconfidentialcomputingblog/azure-ai-confidential-inferencing-technical-deep-dive/4253150)
  - 그런데 그들의 **소스 코드**를 찾을 수가 없음  
    투명성 측면에서 중요한 부분인데 혹시 본 적 있는지 궁금함

- 이론적으로는 멋지지만, 실제로 **무엇을 돌릴 수 있을지** 잘 모르겠음  
  스패머가 아닌 이상 어떤 유즈케이스가 있을까?  
  연상되는 건 **federated learning**이나 FlowerLLM 같은 분산 학습 시스템인데, inference 용도는 아니었음  
  폐쇄형 소프트웨어에서 벗어나는 시도는 환영하지만, 실제 활용 예시가 궁금함
  - 구체적인 예시를 알려주면 좋겠음  
    예를 들어 OpenAI Whisper를 /e/OS에서 **익명 프록시**로 STT 서비스처럼 돌리는 건 가능할 듯  
    하지만 그 정도는 로컬에서도 충분히 가능하니, 여전히 명확한 사용처를 찾고 있음

- **컴퓨트 노드의 소스 코드**는 어디에 있는지 궁금함
