Chip hardware Titan

Konten ini terakhir diperbarui pada Januari 2025, dan menampilkan kondisi pada saat konten tersebut ditulis. Kebijakan dan sistem keamanan Google dapat berubah di masa mendatang, karena kami terus meningkatkan perlindungan bagi pelanggan kami.

Chip Titan adalah chip khusus yang menetapkan root of trust hardware untuk platform di Google Cloud pusat data. Chip Titan adalah mikrokontroler berdaya rendah yang di-deploy di platform seperti server, infrastruktur jaringan, dan periferal pusat data lainnya.

Chip Titan adalah komponen penting dari hardware Titanium arsitektur keamanan, yang menyediakan lapisan keamanan dasar yang membantu melindungi dari serangan fisik dan ancaman terhadap data pengguna. Chip Titan memungkinkan Google mengidentifikasi dan mengukur firmware serta konfigurasi platform dengan aman. Chip ini dirancang untuk melindungi dari serangan software yang memiliki hak istimewa dan rootkit, mulai dari proses booting mesin ke depan.

Dokumen ini menjelaskan arsitektur chip dan manfaat keamanan chip Titan. Chip Titan mendukung basis komputasi tepercaya (TCB) minimal yang memungkinkan chip memberikan manfaat berikut:

  • Root of trust hardware yang membuat identitas yang kuat untuk mesin
  • Verifikasi integritas firmware platform, baik pada waktu booting maupun waktu update
  • Alur penyegelan kredensial jarak jauh yang mendukung sistem pengelolaan kredensial mesin Google

Keluarga chip Titan

Chip Titan pertama dirancang pada tahun 2014. Generasi berikutnya menggabungkan pengalaman yang diperoleh selama proses manufaktur, integrasi, dan deployment berulang. Untuk mengetahui informasi selengkapnya tentang kontribusi Google terhadap pengetahuan kami tentang chip Titan kepada komunitas keamanan hardware open source, lihat opentitan.org.

Chip Titan mencakup komponen berikut:

  • Prosesor aman
  • Koprosesor kriptografi AES dan SHA
  • Generator angka acak hardware
  • Hierarki kunci yang canggih
  • RAM statis (SRAM), flash, dan ROM sematan

Identitas manufaktur Titan

Selama proses manufaktur chip Titan, chip dipindahkan ke ruang aman di fasilitas Outsourced Semiconductor Assembly and Test (OSAT) sehingga dapat disediakan dengan identitasnya. Ruang ini memenuhi standar ISO dan Common Criteria. Ruang ini memiliki empat kamera redundan (semua sudut) dan pintu pembaca badge yang hanya boleh dibuka selama keadaan darurat operasional. Tidak ada manusia di dalam ruangan saat chip disediakan; prosesnya sepenuhnya otomatis.

Perangkat masuk melalui penutup di satu dinding dan dimasukkan ke dalam handler otomatis. Setiap handler dilengkapi dengan chip Titan yang disebut sebagai Scribe. Scribe mencakup firmware penyediaan, dan memiliki koneksi antarmuka periferal serial (SPI), reset, dan universal asynchronous receiver-transmitter (UART) ke perangkat yang sedang diuji (DUT) (yang merupakan chip Titan yang sedang diproduksi). Scribe ditutupi dengan epoksi, dengan tanda anti-perusakan yang unik. Handler otomatis mendorong DUT ke tempat tidur paku, tempat DUT dihidupkan. Scribe melepaskan DUT dari reset, memasok firmware eksekusi, dan menjalankan proses penyediaan.

Selama proses penyediaan, DUT memverifikasi firmware penyediaan menggunakan kunci publik yang disematkan di ROM mask-nya. Firmware menggunakan True Random Number Generator (TRNG) chip untuk membuat rahasia perangkat internal, yang dibakar ke dalam sekering chip. Rahasia ini adalah root dari semua derivasi kunci yang dijalankan chip ke depannya. Scribe tidak mengetahui rahasia ini. DUT membuat manifes personalisasi yang menyertakan kunci publik uniknya yang berasal dari rahasia perangkat internal. Manifes personalisasi diautentikasi oleh kunci class yang disematkan di Register Transfer Level (RTL) DUT. Scribe mengumpulkan manifes personalisasi melalui SPI, lalu menandatanganinya menggunakan kunci yang unik untuk Scribe tersebut. Manifes personalisasi kemudian diupload dan disimpan dalam database registry Google.

Setiap kunci penandatanganan Scribe didaftarkan dalam upacara tatap muka saat Scribe mulai digunakan. Selain itu, Scribe hanya menyimpan kunci pribadi penandatanganannya dalam memori yang mudah berubah, sehingga jika Scribe dihapus dari fasilitas yang aman, Scribe akan kehilangan kunci penandatanganan saat terjadi kehilangan daya. Setiap Scribe harus mengambil salinan kunci penandatanganannya yang dienkripsi secara unik dari layanan Google setiap kali Scribe dihidupkan. Salinan kunci penandatanganan Scribe yang dienkripsi ditetapkan saat Scribe awalnya didaftarkan secara offline oleh kuorum k-of-n, dan hanya dapat didekripsi oleh Scribe tersebut.

Saat platform yang mendukung Titan diintegrasikan ke dalam jaringan produksi Google, sistem backend dapat memverifikasi bahwa platform ini dilengkapi dengan chip Titan asli dengan memverifikasi kunci publik unik Titan terhadap database manifes personalisasi yang dikumpulkan. Untuk mengetahui informasi selengkapnya tentang cara layanan menggunakan sistem identitas Titan, lihat Proses penyegelan kredensial.

Chip Titan menggunakan pasangan kunci unik perangkatnya untuk mengesahkan firmware-nya dengan cara yang mirip dengan Device Identifier Composition Engine (DICE). Chip Titan asli disertifikasi menggunakan desain Google kustom, karena chip ini diproduksi sebelum standar industri yang relevan diperkenalkan. Pengalaman Google dalam memproduksi dan men-deploy hardware yang aman mendorong kami untuk meningkatkan partisipasi dalam proses standar, dan standar yang lebih baru seperti DICE, Trusted Platform Module (TPM), dan Security Protocol and Data Mode (SPDM) mencakup perubahan yang mencerminkan pengalaman kami.

Integrasi Titan

Saat chip Titan diintegrasikan ke dalam platform, chip ini memberikan perlindungan keamanan ke prosesor aplikasi (AP). Misalnya, Titan dapat dipasangkan dengan CPU yang menjalankan workload, pengontrol pengelolaan baseboard (BMC), atau akselerator untuk workload seperti machine learning.

Titan berkomunikasi dengan AP menggunakan bus SPI. Titan berada di antara AP dan chip flash firmware booting AP, sehingga Titan dapat membaca dan mengukur setiap byte firmware tersebut sebelum firmware dijalankan pada waktu booting.

Langkah-langkah berikut terjadi saat platform yang mendukung Titan diaktifkan:

  1. Titan mempertahankan CPU dalam mode reset saat prosesor aplikasi internal Titan menjalankan kode yang tidak dapat diubah (boot ROM) dari memori hanya baca sematannya.
  2. Titan menjalankan pengujian mandiri bawaan untuk memverifikasi bahwa semua memori (termasuk ROM) belum dirusak.
  3. ROM booting Titan memverifikasi firmware Titan menggunakan kriptografi kunci publik dan mencampurkan identitas firmware yang diverifikasi ke dalam hierarki kunci Titan.
  4. ROM booting Titan memuat firmware Titan yang diverifikasi.
  5. Firmware Titan memverifikasi konten flash firmware booting AP menggunakan kriptografi kunci publik. Titan memblokir akses AP ke flash firmware booting-nya hingga proses verifikasi berhasil diselesaikan.
  6. Setelah verifikasi, chip Titan melepaskan AP dari reset, sehingga AP dapat melakukan booting.
  7. Firmware AP melakukan konfigurasi tambahan, yang mungkin mencakup peluncuran image booting lebih lanjut. AP dapat mengambil pengukuran image booting ini dan mengirimkan pengukuran ke Titan untuk pemantauan yang aman.

Langkah-langkah ini mencapai integritas instruksi pertama karena Google dapat mengidentifikasi firmware booting dan OS yang di-boot di mesin dari instruksi pertama yang berjalan selama siklus startup. Untuk AP dengan CPU yang menerima update microcode, proses booting juga memberi tahu Google patch microcode mana yang diambil sebelum instruksi pertama firmware booting. Untuk mengetahui informasi selengkapnya, lihat Proses booting terukur proses.

Alur ini mirip dengan proses booting yang dilakukan oleh platform yang dilengkapi dengan TPM. Namun, chip Titan menyertakan fitur yang umumnya tidak tersedia di TPM standar, seperti pengesahan mandiri firmware internal Titan atau keamanan upgrade firmware AP, seperti yang dijelaskan di bagian berikut.

Integrasi TPM standar dapat rentan terhadap serangan interposer fisik. Integrasi Titan yang lebih baru di Google mengurangi serangan ini dengan menggunakan root of trust terintegrasi. Untuk mengetahui informasi selengkapnya, lihat TPM Transport Security: Defeating Active Interposers with DICE (YouTube).

Upgrade firmware Titan yang aman

Firmware chip Titan ditandatangani oleh kunci yang disimpan di HSM offline, yang dilindungi oleh kontrol berbasis kuorum. ROM booting Titan memverifikasi tanda tangan firmware Titan setiap kali chip melakukan booting.

Firmware Titan ditandatangani dengan nomor versi keamanan (SVN), yang menyampaikan status keamanan image. Jika image firmware menyertakan perbaikan kerentanan, SVN image akan bertambah. Hardware Titan memungkinkan jaringan produksi mengesahkan SVN firmware Titan dengan kuat, meskipun firmware yang lebih lama mungkin memiliki kerentanan. Proses upgrade memungkinkan kami memulihkan dari kerentanan ini dalam skala besar, meskipun kerentanan tersebut memengaruhi firmware Titan sendiri. Untuk mengetahui informasi selengkapnya, lihat Memulihkan dari kerentanan dalam firmware root of trust.

Google berkontribusi pada versi terbaru spesifikasi TPM Library, yang kini menyertakan fitur yang memungkinkan TPM lain memberikan jaminan pengesahan mandiri yang serupa. Untuk mengetahui informasi selengkapnya, lihat bagian TPM Firmware-Limited and SVN-Limited Objects section (PDF) dari spesifikasi TPM Architecture versi 1.83. Fitur TPM ini diimplementasikan dan di-deploy di chip Titan terbaru kami.

Upgrade firmware AP yang aman

Selain firmware Titan, kami juga menandatangani firmware yang berjalan di AP secara kriptografis. Titan memverifikasi tanda tangan ini sebagai bagian dari proses booting platform. Titan juga memverifikasi tanda tangan ini setiap kali firmware AP diupdate, sehingga hanya image firmware AP asli yang dapat ditulis ke chip flash firmware booting AP. Proses verifikasi ini mengurangi serangan yang mencoba menginstal backdoor persisten atau membuat platform tidak dapat di-boot. Verifikasi tanda tangan juga memberikan pertahanan mendalam untuk platform Google jika CPU memiliki kerentanan dalam mekanisme autentikasi microcode-nya sendiri.

Langkah berikutnya

Pelajari lebih lanjut proses integritas booting kami.