Skip to content

Chương 58: Confidential Compute trên GKE — AMD SEV & Intel TDX

Giới Thiệu

Mọi mô hình mã hóa mà kỹ sư backend quen thuộc — TLS cho dữ liệu đang truyền (in-transit), CMEK/Cloud KMS cho dữ liệu lưu trữ (at-rest) — đều để lộ một khoảng trống: dữ liệu đang được xử lý trong bộ nhớ RAM của một tiến trình đang chạy thì hoàn toàn ở dạng plaintext. Hypervisor, nhân viên vận hành trung tâm dữ liệu, hoặc một tiến trình debug có quyền root trên host vật lý đều có khả năng đọc trực tiếp vùng nhớ đó. Confidential Computing là câu trả lời cho khoảng trống thứ ba này — mã hóa dữ liệu khi đang sử dụng (data-in-use) — bằng cách dịch chuyển gốc rễ của niềm tin (root of trust) từ phần mềm (hypervisor, hệ điều hành host) xuống tận phần cứng CPU.

Trên Google Kubernetes Engine, tính năng này được hiện thực hóa qua Confidential GKE Nodes, xây dựng trên nền tảng Compute Engine Confidential VM với ba công nghệ phần cứng: AMD Secure Encrypted Virtualization (SEV/SEV-ES/SEV-SNP)Intel Trust Domain Extensions (TDX). Đây không phải là một tính năng "bật cờ là xong" đơn thuần — nó thay đổi mô hình mối đe dọa (threat model) của toàn bộ node, ảnh hưởng tới cách CPU quản lý bảng trang bộ nhớ (page table), cách node được attest (xác minh) trước khi được tin tưởng, và tạo ra những ràng buộc kỹ thuật cứng (không sole-tenant, không Local SSD tổng quát, giới hạn machine type) mà một platform engineer bắt buộc phải hiểu trước khi đưa vào production.

Vì sao quan trọng:

  • Threat model thay đổi tận gốc. Confidential Computing không phải "thêm một lớp mã hóa" — nó loại bỏ hoàn toàn hypervisor và host OS ra khỏi trusted computing base (TCB). Hiểu đúng ranh giới tin cậy mới này là điều kiện để không đánh giá sai mức độ bảo vệ thực sự có được.
  • Attestation là cơ chế bắt buộc, không phải tùy chọn triết lý. Mã hóa bộ nhớ tự nó không chứng minh được rằng workload đang chạy trên phần cứng thật, chưa bị can thiệp. Remote attestation là cầu nối duy nhất biến "mã hóa" thành "có thể kiểm chứng" (verifiable), và đây chính là nền tảng cho các pattern secure key release trong tài chính, y tế, multi-party computation.
  • Chi phí hiệu năng có thật và không đồng đều. Overhead dao động từ <1% (CPU-bound, ít syscall) tới hai chữ số phần trăm (I/O-heavy, database transactional). Quyết định dùng Confidential Nodes cho toàn cluster hay chỉ cho node pool chứa workload nhạy cảm là một trade-off kỹ thuật thực sự, không phải quyết định compliance thuần túy.
  • Ràng buộc hạ tầng chồng chéo với các quyết định kiến trúc khác. Sole-tenant nodes, Local SSD, GPU, live migration, Hyperdisk — tất cả đều có tương tác đặc thù (và nhiều khi xung đột) với từng công nghệ confidential computing cụ thể.

Tài liệu này tập trung vào internal model: bộ nhớ được mã hóa như thế nào ở tầng silicon, khóa nằm ở đâu và ai kiểm soát nó, attestation report được cấu tạo ra sao, và vì sao GKE thiết kế ba cấp độ cấu hình (cluster / node pool / workload) thay vì chỉ một cờ bật/tắt duy nhất.

Điều Kiện Tiên Quyết

Bạn nên đã quen thuộc với:

  • Chương 6 — Node lifecycle, Container-Optimized OS, node pool management
  • Chương 32 — Cloud KMS key hierarchy, envelope encryption, CMEK
  • Kiến trúc CPU cơ bản: virtual memory, page table, ring privilege level (ring 0/ring -1)
  • Khái niệm TLS/PKI cơ bản (chữ ký số, chứng chỉ, xác minh)

Cấu Trúc Tài Liệu

Phần 1: Nền Tảng Cơ Chế Phần Cứng

  1. Trusted Execution Environment & Mô Hình Mối Đe Dọa — TEE là gì ở tầng silicon, ranh giới trusted computing base thay đổi ra sao, ba trụ cột (isolation/encryption/attestation), so sánh với mã hóa at-rest/in-transit
  2. AMD SEV / SEV-ES / SEV-SNP — Cơ Chế Mã Hóa Bộ Nhớ — AMD Secure Processor, ASID-bound encryption key, C-bit, tiến hóa qua ba thế hệ, RMP và bảo vệ chống replay/remap
  3. Intel TDX — Trust Domain Extensions — TD (Trust Domain), TDX Module vận hành trong SEAM, MRTD/RTMR, so sánh kiến trúc với AMD SEV

Phần 2: Triển Khai Trên GKE

  1. Confidential GKE Nodes — Kiến Trúc & Triển Khai — Ba cấp độ cấu hình (cluster/node pool/workload qua ComputeClass), ma trận machine type, giới hạn kỹ thuật, vTPM cho Pod

Phần 3: Xác Minh & Vận Hành Production

  1. Remote Attestation & Confidential Space — Mô hình attester/verifier/relying party, passport model, cấu trúc attestation report, Confidential Space, secure key release với Cloud KMS
  2. Performance Overhead & Quyết Định Áp Dụng Production — Nguồn gốc overhead ở tầng CPU, dữ liệu benchmark thực tế, khung quyết định khi nào bật Confidential Nodes, anti-pattern thường gặp

Mục Tiêu Học Tập

Sau khi đọc chương này, bạn sẽ:

  1. Giải thích được vì sao mã hóa bộ nhớ bằng khóa nằm trong CPU lại loại bỏ hypervisor khỏi trusted computing base, và ranh giới đó dừng lại ở đâu
  2. Phân biệt chính xác cơ chế của AMD SEV, SEV-ES, SEV-SNP và Intel TDX — không chỉ tên gọi mà cả nơi khóa được sinh ra, cách đo lường tính toàn vẹn, và loại tấn công mỗi thế hệ chặn được
  3. Thiết kế đúng cấu trúc cluster/node pool cho Confidential GKE Nodes, tránh các ràng buộc gây gãy đổ khi kết hợp với sole-tenant, Local SSD, GPU
  4. Xây dựng luồng attestation để biến "dữ liệu được mã hóa" thành "workload được kiểm chứng", áp dụng vào pattern secure key release
  5. Đánh giá được trade-off hiệu năng thực tế theo loại workload, đưa ra quyết định production dựa trên dữ liệu chứ không phải cảm tính compliance

Điều Không Nằm Trong Scope

  • Cloud KMS key hierarchy chi tiết — đã covered ở Chương 32
  • Shielded VM (Secure Boot, vTPM đo lường boot, Integrity Monitoring) ở phạm vi non-confidential — đã covered ở Chương 12
  • GPU scheduling tổng quát trên GKE — covered ở Chương 8; tài liệu này chỉ đề cập khía cạnh confidential computing của GPU
  • Chi tiết triển khai Confidential Space cho workload đa bên (multi-party computation) end-to-end — chỉ giới thiệu mô hình kiến trúc, không đi sâu use case cụ thể ngoài GKE

Tham Khảo Chính Thức