Neden FPGAs Farklı Bir Güven Modeli talep ediyor

Alan programlanabilir kapı dizileri her şeyi gelişmiş sürücü-assistance sistemlerinden ve uydu yüklerine 5G altyapısına ve endüstriyel kontrol döngülerine kadar güç verir.Bu ortamlarda, tek bir rogueware görüntüsü, güvenlik işlevlerini bozabilir, eski bir tanımlayıcı sırları veya daha sonra hareket için güvenilir bir düğümü döndürür.Güvenlik botlarını kilitlemek için ikiz disiplinler artık opsiyonel ekstralar değildir - güvenilir bir FPGA yaşam döngüsü temelleridir.

Sertleştirilmiş bir mikrokontrolün aksine, bir FPGA sabit bir ROM maskesinden talimatları uygulamaz.Bu, bir miktar akış olarak adlandırılır - donanımın kendisini tanımlar, tam olarak tespit etmek için mükemmel bir şekilde zorlaşır.

Birkaç endüstri trendleri güçlü bir miktar koruma kritik hale getirir. Birincisi, FPGA, fiziksel erişimin kontrol edilemez olduğu sözleşme üreticilerinde kesintiye uğramak, karmaşık işlemci alt sistemleri, şifreleme hızlandırıcıları ve AI inference boru hatları aynı zamanda, tedarik zinciri globalizasyon, cihazların, fiziksel erişimin kontrol edilemez olduğu sözleşme üreticilerinde teslim edilebilir. Üçüncü olarak, dağıtımdan sonra, her ağ arayüzü potansiyel bir saldırı yüzeyine döndürür.Bu bağlamda, güvenli bir boot, cihazın aynı ölüyü garanti eder.

FPGA cihazları için Tehdit Manzarası

Reklamcıların hedeflerini anlamak, karşıtlamaların tasarımını keskinleştirir. Tehditler üç kategoriye girer: üretim-zaman müdahalesi, ön-boot manipülasyonu ve iş-zaman altkuruluş.

  • [FONT:0)Supply zincir enjeksiyonu:[Döneticileri değiştirip, perdeler sırasında veya cihaz geçiş sırasındaki flaş hafızasını değiştirir.Ingerekli bir boot image thwarts this by failing authentication before the FPGA configures its logic.
  • [FONT:0]Side-kanı ekstraksiyon:[Dönetici:[Dönetici:0) Bir saldırganın bu saldırıyı geri almak için güç veya elektromanyetik yayılımları güçlendirerek, şifresiz anahtarları fiziksel olarak güvenilmez işlevleri (PUFs) ve yazılımlara asla düzelmeme anahtarları açığa çıkarmadığı anahtar depolamayı birleştirir.
  • [FONT:0)Malware-indüklenmiş yeniden yapılandırma: Bir işlemci FPGA üzerinde çalışan bir işlemci, bir saldırgan iç yapılandırma portu aracılığıyla yeni bir bitek zorlamaya çalışır. Access kontrolleri ve çalıştırma-time bitmi doğrulama, işlemcinin ihlal ettiği zaman bile yapılandırma motoru kilitleyebilir.
  • [FONT:0]Downgrad saldırıları:[Downgrad:[Downgrad:[Downgrad):[Downgrad) Geçerli ama eski bir bilgisayar görüntüsü bilinen açıklarla yeniden silinir. Güvenli güncelleme protokolleri sürüm metadata'yı takip etmeli ve anti-rollback sayacı uygulamalıdır.
  • [FONT=0)JTAG ve debug arayüzü kötüye kullanım: Debug limanları üretimde aktif olarak kaldı veya yazma konfigürasyon hafızasını okumak için doğrudan bir yol. Bu arayüzleri kontrol edilen kilit parçaları ile zorlayın veya imzalanması gereken anahtar dizileri gerekli.

Düzgün bir mimarlanmış güvenli bir boot zinciri her aşamada gerçekliği kontrol ederek bu vektörlerin her birini ele alır: ilk boot görüntüsü, sonraki bilgisayar hacimleri ve herhangi bir geç yük aşırı veya kısmi yeniden yapılandırma bölgesi.

FPGA'larda Güvenli Çınağın Temelleri

Bir FPGA'da güvenli bir önyükleme, güçten yüklenen yapılandırmanın güvenilir bir kaynaktan kaynaklandığı ve değiştirilmediğini belirtir.The doğrulama zinciri geri kalanı üç sütunda: kriptografik imzalar, bir güven kaynağı ve tamper-evident boot akışı.

1. Cryptographic Signatures ve Key Hierarchy

Tipik bir program, halka açık kriptografi kullanır. Üretici veya sistem bütünlemesi, altın uçları işaret eden özel bir anahtar tutar ve bir kez programlanabilir eFus veya batarya geri kayıtları, bilinen iyi bir görüntü olarak hareket eder, yapılandırma arayüzünü kilitleyebilir veya bir sistem sıfırlanır.

Anahtar bir uzlaşmadan zarar vermek için birçok tasarım iki katmanlı anahtar hiyerarşisini benimsemiştir: ikincil anahtarlar, bu da gerçek uygulama bitleri imzalamayı sağlar. Bu, geri dönmeden geri dönüş eFusessiz uygulama anahtarlarını döndürür, sık sık sık sık sık sık sık sık sık sık sık sık bir dağıtım siteleri, bir kravatlı program için, tek bir anahtarın patlama yarıçapını sınırlayan bölgesel veya müşteri özel imza anahtarları sağlar.

2. Güven Kökü

FPGA içinde sertleştirilmiş bir güvenlik bloğu, bir kovalama cihazı olarak hareket eden bir başlangıç noktası sunar. Örneğin, Xilinx cihazlar, bir hash veya kamu anahtarını saklayabilecek bir cihaz yöneticisi veya 10 aileyi bir araya getirir.

FPGA tam özellikli bir güvenlik bloğu eksikliği olduğunda, mühendisler bunu dışsal bir güvenli elementle eşleştirebilir - sadece “verilen” sinyali aldıktan sonra yapılandırır.Bu yaklaşım, önceki FPGA aileleri için ortak bir retrofittir. Dış IC, MachX3'ten fazla iletişim kurar ve FPGA'nın kendisini sadece “verilen” sinyalini aldıktan sonra yapılandırır.

3. Tamper-Evident Boot Flow Flow

Önyükleme akışı, her aşamayı kontrol etmeden önce bir sonraki gerçekleştirilmesi için tasarlanmıştır. En az akış böyle görünüyor:

  1. [FONT=0]Hardware self-test:[Dönetici:[Dönetici:[Dönetici:0)[Dönetici:[Dönetici:[Dönetici: FPGA’nin gücü sıfır devreleri sabitlenir ve iç mantık bütünlüğü kontrol eder.
  2. [FONT:0)Root anahtar yükü:[Dönetici:[Dönetici:0) Güvenlik bloğu, kamu anahtarını eFus veya güvenli bir elementten yükler. Bazı tasarımlarda, bu adım aynı zamanda bir seans şifresi anahtarını kök anahtarından elde eder.
  3. [FONT:0)Bitstream doğrulama:[DFLT:1] Önyükleme blok adayı biraz daha okur, SHA-384 veya SHA-256 hash hesaplar ve ECDSA veya RSA imzasını onaylar.
  4. [FONT:0]Fallback ve kilit: Başarısızlıkta, FPGA ayrı bir flaş bölümünde depolanan belirli bir altın görüntüden tekrarlanabilir.Eğer altın görüntü aynı zamanda başarısız olursa, cihaz minimum işlevsellikle kilit bir duruma girmelidir, bir yönetim uçağa güvenli bir önyükleme.

Birçok FPGA'lar ayrıca anahtar bilmeden şifreyi de destekler. Şifreleme yalnızca gizlilik sağlar, ancak AES-GCM gibi gerçekleştirilmiş bir şifreleme moduyla eşleştirilen sürece, bir saldırgan anahtar bilmeden biraz geri dönebilir.Bu nedenle, en iyi uygulama, silikon desteğinin var olduğu varsayılan şifreleme modellerine güvenmektir.

Güvenli bir Çığ Uygulama: Pratik Bir Yürüyüş

Mühendisler ilk kez güvenli bir boot'e yaklaşıyorlar, alet zincir entegrasyonu ile. Aşağıdaki adımlar bir Xilinx UltraScale+ veya Intel Çevik cihazı için tipik bir uygulama akışı çizer, ancak kavramlar Lattice, Microchip ve Gowin ailelere küçük değişikliklerle genelleşir.

Adım 1: Geçici Anahtarlar Güvenli Olarak Güvenli Olarak

Bir ECDSA P-384 veya RSA-3072 anahtar çifti, bir donanım güvenlik modülünde (HSM) fiziksel olarak güvenli bir tesiste tutulan bir anahtar ve programı FPGA'nın eFusessiz bir şekilde açığa çıkarır.For filolar için, AWS CloudHSM veya Azure gibi özel bir anahtarı kullanarak, anahtarları altında tutmak için anahtarlama işlemine izin vermek için HSM hizmeti kullanın.

2. Adım: The Boot Image

FPGA satıcısının araçları, bitim nesli sırasında kimlik doğrulama parametrelerini belirtmenize izin verir. İmza için aracı rezerve etmeyi öğretirsiniz, genel anahtar sindirme işlemini yapın ve opsiyonel olarak aktif bir görüntü ve bir tanesi ile anahtarla şifreleme etkinleştirin - sağlam A / B güncelleme yeteneği için.

Adım 3: Donanım Politikaları Donanımı

Cihazı güvenli bir şekilde kapatma modunda kilitlemek için eFusesleri yakın.Bir kez set, FPGA, satıcı tarafından belirlenen varsayılan görüntüler dahil olmak üzere geçerli bir imzayı yoksun bırakan herhangi bir bitstreami reddedecektir.Bu geri dönüşümlü adım sadece kapsamlı bir laboratuvar doğrulamadan sonra yapılmalıdır. Üretim anahtarıyla, ATE (otomatik test ekipmanları) senaryoları son testin bir parçası olarak uygular. Bazı aileler ayrıca "gelen geliştirme" bir test anahtarı sunar.

Adım 4: Zinciri Test Etmek

Tüm gerçek dünya senaryolarını geçerli: güç soğuk bir boot, sıcak reset, kahverengiout kurtarma ve yanlışlıkla biraz uçlu bir şekilde bozuldu. Önbellekli gecikme gecikme - donanım hızlandırıcılarla doğrulama genellikle 100 milisaniye altında ekler, ancak bu başarısızlık göstergelerin sistemin yönetim kontrolörü için testlerini doğru bir şekilde ortaya koyduğunu onaylayın.

Böyle bir akış için iyi bilinen bir referans NIST'sETHFLT:0)Platform Şirketware Resiliency Kılavuzları), herhangi bir programlanabilir cihaz için geçerli olan koruma, algılama ve kurtarma gereksinimleridir.

Güvenli Firmaware Update Architecture

En titiz doğrulanmış boot image bile sonunda bir güncellemeye ihtiyaç duyacaktır - bir kırılganlık, özellikler veya revize edilmiş bir güvenlik politikası ile uyumlu hale getirmek için. güncelleştirme mekanizması, son derece doğru dürüstlüğü, gerçekliği ve geri dönüş koruması sağlarken, geri dönüşüme ve geri dönüşüme son verme.

Bir Güvenleştirilmiş Güncelleme Boru Hattı

Güvenli bir güncelleme hattı mühendislik altyapısında başlar ve FPGA'nın yapılandırma mantığının içinde biter.

  1. [FONT:0]İmage yaratımı ve imzalanması:) Yapı sistemi yeni bir bitek üretir. Şu anda aktif bir özel anahtarla işaret eder. İmza, dosyanın metadata, bir zamantamp içerdiği açık bir şekilde kapatılabilir.
  2. [[Dönetici:0)Transport security:[Dönetici:[Dönetici:0) İmzalanan görüntü, FPGA'nın cihazı DNA'sı gibi, cihazı ve cihazın TLS uç noktası arasındaki karşılıklı kimlik doğrulamasını engellemeli.
  3. [FONT:0)Staged depolama:[Dönetici: Cihazın gelen görüntüyü özel bir flaş bölümüne yazar, mevcut önyükleme görüntüyü sağlam tutar. Bu “A/B” bölüm planı başarısız bir güncellemenin üç bölümlü kullanımdığını garanti eder: A (aktif), Bback (up), G (altın fabrika imajı) maksimum güvenilirlik için.
  4. [[Dönlendirme doğrulama:0)Öyleleme doğrulama:[Dönetici:0) Güncelleme ajanı – gömülü bir işlemcide çalışan bir yazılım rutini veya FPGA'nın kendi yapılandırma yöneticisi – imzayı onaylar ve sürüm numarasını depolanan bir anti-rollback karşı kontrol ederse, her iki kontrol de aktif görüntü olarak yeni bölümü işaret eder.
  5. [FONT:0]Atomik aktivasyon:[Dönetici:[Dönetici:0)[Döneticisel aktivasyon:[Dönetici:0)[Dönetici)[Dönetici:[Dönetici)) Bir önceki bölüme bir geri dönüşler için bir izotutlama süresine izin vermek için uzun süre boyunca, ancak kritik bir süre önce sıkı bir sistem tespit etmek için yeterli olacaktır.

Anti-Rollback Teknikleri

Basitçe, bir saldırganın geçerli bir ama eski bir bilgisayar versiyonunu tekrar oynatamazsa, bu boşluğu kapatmak için, sürümün kabul edildiği bir anti-rollback sayacı tasarlayın, eFus veya güvenilir bir platform modülü gibi sınırsız hafıza.Her bir şekilde, bu amaç için ideal bir monotonluk sayacını karşılaştırır.For the goals can only be advanced to the countern in one way.For eFus can only be blown in one way, they form an ideal monotonic counter for this goal.For this goal.For this goals.For this goal.For this entry.

Katılımcı Yeniden Yapılandırma

Birçok yüksek performanslı tasarım, her yeniden yapılandırılabilir modüllerin kendi anahtarlamalarını doğrulayan kısmi yeniden yapılandırın.The Xilinx Dynamic Function eXchange (DFX) akışı, örneğin, her yeniden yapılandırılabilir modüllerin kendi kök işleme imzasını taşıdığı varsayılan değişkenleri kullanarak, aynı zamanda kopyalanan bir istemciyi bağımsız olarak analiz etmeye başlamadan önce imzayı doğrulayın.

Kriptografik Primitives ve Performansı

Algoritma seçimi hem güvenlik hem de zaman çizmeyi etkiler. P-256 veya P-384 eğrileri ile kompakt imzalar ve donanım hızlandırıcıları üzerinde hızlı bir doğrulama sunar, popüler bir seçim yapın. RSA-2048 hala eski cihazlarda yaygındır, ancak daha büyük anahtar depolama ve daha uzun doğrulama süreleri gerektirir. NIST'nin geçişini geç NIST'nin şifreleme algoritmaları sonunda FPGA bitstream doğrulamasını etkileyecektir, ancak çoğu mevcut uygulama klasik güvenlik modeli içinde çalışır.

GCM modundaki toplu şifreleme için AES-256 hem gizlilik hem de bütünlüğü sağlar. Birçok yeni FPGA ailesi anahtar yöneticide kilitlenen sert AES-GCM motorlarını, çok fazla RAMbitli bitleri tel hızda gerçekleyebilir.

AES-256 şifresi ve HMAC tabanlı doğrulama, tipik 25 MB bitek için tam bir konfigürasyon zamanı, en gömülü uygulamalar için kabul edilebilir sınırlar içinde gösterir.For time-kamping tasarımcılar, bir arka planda biraz daha fazla parola sağlarken, FPGA güvenli bir durumda I/Os.

Yaşam döngüsü boyunca Anahtar Yönetimi

Anahtar yönetim, herhangi bir güvenli önyükleme programının en zor parçasıdır. Bir yaşam döngüsü-farklı yaklaşım segmentleri anahtar kullanımları farklı aşamalara dönüştürür:

  • [FONT:0) Üst düzeye çıkarma:[Dönetici:0) Üst anahtar, çevrimdışı bir HSM'de kilitlidir ve bu aşamada, cihazın eşsiz kimliği (örneğin, Cihaz DNA) bireysel birimlere anahtarların bağlayıcı olmasını sağlamak için füzyon yapılabilir.
  • [[Döneticileri:0)Field Güncellemeleri:[Döneticileri:[Döneticileri:0) Orta imza anahtarları rutin bilgisayar güncellemeler için kullanılır. Bu anahtarlar kendilerini kök anahtar tarafından imzalanır ve bulut tabanlı HSM'de depolanabilir.
  • [FONT:0]Bitki-yaşam:[Dönetici:[Dönetici:0)Bir ürün, belirli bir eFuse kullanarak kriptografik bir dönem için de kullanılabilir olan bir reklam için kullanılabilir hale getirmek için ayarlanabilir.

Otomatik anahtar rotasyon, yeni halka açık bir şekilde aktarılabilir ve daha sonra eski anahtarın tüm cihazlar tarafından imzalanmış olması ile uygulanabilir.The update agent itify the Chain, installs the new key into a write-protected record, and then updates the old key can be removed as the counter propagates to all devices.This approach is document in theETHFLT:0}IAB of Things Software Update and the SUIT standard being developed by IETF ().

Düzenleme ve Endüstri Standartları

Otomotiv, tıp ve endüstriyel sektörlerdeki mühendisler, tasarımlarla FPGA güvenliğini uyumlu olmalıdır. ISO 21434 for road araçlar artık yapılandırmak için güvenli bir yazılım güncelleştirme mekanizması ve güvenlikleri etkileyen herhangi bir programlanabilir mantık için bir donanım kökü gerektirir. IEC 62443 endüstriyel kontrol sistemleri, cihazların uygulamadan önce tümleme ve destekleşim alanı güncellemelerini doğrulayabilmeleri için yapılandırın. IP koruma profilleri için ortak kriterler artık yapılandırmak için bazı akış imzalar için referanslar gerektirir.

Havacılık ve savunma uygulamaları için, DO-254 ve FIPS 140-3 gibi standartlar kriptografik modül ve anahtar yönetim planı üzerinde ek gereklilikleri uygular.Bir FPS-valid kriptografik kütüphaneyi imza doğrulama için kullanarak - FPGA kumaşı - ek olarak, Trusted Computing Group'un TPM 2.0 spesifikasyonu, dış TPM çipleri ile FPGA tarafından FPGA tarafından FPGA tarafından kullanılabilecek standart bir arayüz sunar.

FPGA Filo Güvenlik için En İyi Uygulamalar

Teknoloji tek başına güvenli bir filo garanti edemez. Takımlar, sağlam operasyonel uygulamalarda uygulamalarını sarmalıdır:

  • [FONT:0)Yapı altyapınızıGüvenin:[Dönetici:0)[Dönetici LAN'dan imza sunucuyu, özel anahtarları tutmak ve her imza işlemine giriş yapmak için fiziksel bir HSM kullanın. Uygulama kodu incelemeyi biraz açıklığa kavuşturur.
  • [FONT=0)Enforce role dayalı erişim kontrolleri:), biraz daha fazla gelişme, test ve dağıtım görevlerini ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı ayrı bir sürüm yöneticisi, bir üretim imajının imzalanmasını başlatabilmeli.
  • [[Dönetici:0)Monitor ve denetim:[Döneticileri, bilgisayar versiyonunu, anti-rollback sayacı değerini takip etmeli ve her konuşlandırılmış FPGA için son başarılı bir boot zamanı. Anomaly algılama sistemleri, geri dönen bir altın görüntüye geri dönmeli veya gösteri versiyonu sayacına geri dönmelidir. Telemetri gömülü bir işlemci üzerinde hafif bir ajan aracılığıyla toplanabilir veya özel bir yönetim CPU ile toplanabilir.
  • [FONT:0) Olay cevabı için planlayın:[Dönetici:0)En az çeyrekte bir acil bilgisayar güncellemesini dağıtma prosedürüne sahip olmak için önceden belirlenmiş bir prosedüre sahip olmak.Bu, uzlaşma anahtarı için bir geri bildirim listesini içerir ve güncelleme kanalının kısmen uzlaşmalı cihazlara ulaşmasını sağlar.
  • [[Döneticileri:0) Düzenli penetrasyon testleri:[Dönetici:[Dönetici:0) Dış güvenlik değerlendirmeleri, FPGA yapılandırma zincirini özellikle hedef almalı. Ortak saldırı vektörleri, önyükleme sırasında güç tedarikini aksanıyor, JTAG aracılığıyla şarj ediyor veya şifreli IV nesli sökürüyor.
  • [FONT:0]Maintain a kriptografik envanter: kök kamu anahtarı, kamu anahtarını içeren tüm anahtar malzemeyi kayıt altına alın ve anahtar rotasyon tarihleri önemlidir.Bu envanter, filodaki anahtarları geri döndürdüğünde gereklidir.

Bu uygulamalar silikondan bulut geri uçuna kadar uzanan bir savunma- derinlemesine duruş yaratır.

FPGA Güvenliğinin Geleceği: Post-Quantum ve Öteki

Önümüzdeki sefere, RSA'dan daha küçük anahtar boyutlarda, ancak doğrulama hızı ve uygulama karmaşıklığı aktif araştırma alanları için FPGA güvenli boot tasarımları etkileyecektir. CRYSTALS-Dilithium gibi Lattice tabanlı imza programları, büyük ölçekli kuantum hesaplamaları için RSA'dan daha küçük bir anahtar boyutuna ihtiyaç duyacaktır. NIST post-kuantum standardizasyon süreci, son aşamalarda, 2024-2025-2025'e kadar basit bir algoritma seçenekleri sunacaktır.

Ayrıca, PUF teknolojisindeki gelişmeler, üretim sırasında asla anahtar depolanmamış özel anahtar nesli elde edebilir, bazı Intel ve Lattice cihazlarında mevcut olan güvenli bir boot zinciri ile PUF çıktısını depolamak için önlemler alır.

Kriptografik ilkeller geliştikçe, güvenli boot ve ölçümlemeli Donanımın alt ilkeleri sürekli kalır: Hatalı donanıma güven, her bağlantıyı boot zincirinin her bir bağlantısını ölçmek ve asla bu ilkeleri FPGA yaşam döngüsüne gömmek için atamanıza izin vermez, mühendislik takımları en kararlı düşmanlarına karşı alan cihazlar ve gelecekteki tehditleri kabul edilebilir.