Güvenli provisioning neden üretime ait
Kimliği olmadan sevk edilen bağlı bir cihaz, sahada provisioning'den geçirilmek zorundadır. Saha provisioning'i, kurulum sırasında manuel bir adım (veya açık vermeye eğilimli bir otomatik kayıt) demektir. İkisi de operasyonel sıkıntı ve güvenlik açığı yaratır.
Üretim tarafında provisioning, cihaza sevkiyattan önce benzersiz bir kriptografik kimlik kazandırır. Cihaz açılır, kimliğini doğrular ve manuel müdahale olmadan kayda alınır.
Güvenli elemanlar
Microchip ATECC608 ve NXP EdgeLock, IoT için yaygın güvenli elemanlardır. Her ikisi de şunları destekler:
- ECC özel anahtarın çip içinde üretilmesi (anahtar çipten asla çıkmaz)
- Sertifika imzalama ve doğrulama
- Sayaç tabanlı replay koruması
- Müdahale belirtisi gösteren davranış
Üretim hattı, güvenli eleman içinde bir anahtar üretir, kök CA'ya karşı sertifika imzalar, sertifikayı cihaza yazar ve genel anahtarı seri numarasına bağlı olarak kayda alır.
X.509 sertifika kaydı
X.509, standart sertifika formatıdır. Üretim tarafında kayıt tipik olarak şu sırayı izler:
- Güvenli eleman ECC anahtar çiftini üretir (özel anahtar çipte kilitli kalır)
- Üretim sistemi genel anahtarı okur
- Üretim sistemi, HSM destekli kök CA kullanarak sertifikayı imzalar
- Sertifika cihaza geri yazılır
- Genel anahtar ve sertifika parmak izi seri numarasına bağlı olarak kaydedilir
Kök CA özel anahtarı üretim hattına asla dokunmaz. Kontrollü bir ortamdaki HSM'de bulunur.
AWS IoT ve Azure DPS
AWS IoT, Just-in-Time Provisioning (JITP) ve Multi-Account Registration destekler. Azure Device Provisioning Service (DPS); X.509 doğrulamasını, Trusted Platform Module (TPM) doğrulamasını ve simetrik anahtar doğrulamasını destekler.
İkisi de üretim hattının cihazları önceden kaydetmesine olanak tanır; böylece cihazlar ilk bulut bağlantısında otomatik kayda alınır. Üretim tarafındaki akış:
- Cihaza X.509 sertifikası ile provisioning yapılır
- Cihazın sertifika parmak izi bulut DPS'sine kaydedilir
- Cihaz sahada açılır, sertifikayı sunar, otomatik kayda alınır
- Bulut cihazı doğru gruba atar, yapılandırmayı indirir
Özel PKI da AWS veya Azure yerine kurum içi altyapı ile aynı düzeni izler.
Çalışan bir üretim tarafı akışı
- Kontrollü ortamda HSM destekli kök CA, imzalama API'si üzerinden erişilen
- Hat üzerindeki güvenli eleman içinde birim başına anahtar üretimi
- API çağrısıyla sertifika imzalama (anahtar materyali açığa çıkmaz)
- Provisioning adımının parçası olarak bulut DPS ön kaydı
- Üretim veritabanına işlenen birim başına kayıt kaydı
- Kullanım ömrü biten veya kaybolan cihazlar için isteğe bağlı iptal listesi yönetimi
Sık karşılaşılan tuzaklar
- Kök CA özel anahtarının üretim hattında saklanması (HSM yerine)
- Aynı anahtarın birden fazla cihaza yazılması ("sevk edilen test modu")
- Sertifika parmak izinin kaydedilmesi ama bulut DPS'sine önceden kaydedilmemesi
- Provisioning akışının birkaç birim üzerinde elle yapılması, hiçbir zaman ölçeklendirilmemesi
Kaynaklar
- AWS IoT Just-in-Time Provisioning belgeleri
- Microsoft Azure Device Provisioning Service belgeleri
- Microchip ATECC608 güvenli eleman belgeleri
- NXP EdgeLock güvenli eleman belgeleri