TPM kanıtlama
Bu makalede, Cihaz Sağlama Hizmeti'nde (DPS) Güvenilir Platform Modülü (TPM) kanıtlamasını kullanarak cihazları sağlarken kullanılan kavramlar açıklanmaktadır. Bu makale, bir cihazı dağıtıma hazır hale getirmeyle ilgili tüm kişilere yöneliktir.
Güvenilir Platform Modülü (TPM), bir donanım güvenlik modülü (HSM) türüdür. Bu makalede ayrık, üretici yazılımı veya tümleşik TPM kullandığınız varsayılır. Yazılım öykünmüş TPM'ler prototip oluşturma veya test için çok uygundur, ancak ayrık, üretici yazılımı veya tümleşik TPM'lerle aynı güvenlik düzeyini sağlamaz. Üretimde yazılım TPM'lerinin kullanılmasını önermiyoruz.
Bu makale yalnızca HMAC anahtar desteği ve onay anahtarları ile TPM 2.0 kullanan cihazlar için geçerlidir. TPM, Güvenilen Bilgi İşlem Grubu'nun endüstri genelinde iso standardıdır ve TPM hakkında daha fazla bilgiyi TPM 2.0 belirtiminden veya ISO/IEC 11889 belirtiminden okuyabilirsiniz. Bu makalede ayrıca ortak ve özel anahtar çiftlerini ve bunların şifreleme için nasıl kullanıldığını bildiğiniz varsayılır.
Cihaz Sağlama Hizmeti cihaz SDK'ları, bu makalede açıklanan her şeyi sizin için işler. Cihazlarınızda SDK'ları kullanıyorsanız TPM desteği uygulamanız gerekmez. Bu makale, cihazınız sağladığında TPM güvenlik yonganızda neler olduğunu ve neden bu kadar güvenli olduğunu kavramsal olarak anlamanıza yardımcı olur.
Genel bakış
TPM'ler güvenin güvenli kökü olarak onay anahtarı (EK) olarak adlandırılan bir şey kullanır. EK, TPM'ye özgüdür ve değiştirildiğinde temel olarak cihaz yeni bir taneye dönüştürülür.
TPM'ler, depolama kök anahtarı (SRK) adlı başka bir anahtar türüne sahiptir. TPM'nin sahipliğini aldıktan sonra TPM'nin sahibi tarafından bir SRK oluşturulabilir. TPM'nin sahipliğini almak, "birisi HSM'de parola ayarlar" demenin TPM'ye özgü yoludur. Bir TPM cihazı yeni bir sahipe satılırsa, yeni bir SRK oluşturmak için yeni sahip TPM'nin sahipliğini alabilir. Yeni SRK oluşturma, önceki sahibin TPM'yi kullanamasını sağlar. SRK, TPM'nin sahibine özel olduğundan, SRK söz konusu sahip için verileri TPM'nin kendisine kapatmak için kullanılabilir. SRK, sahibin anahtarlarını depolaması için bir korumalı alan sağlar ve cihaz veya TPM satılırsa erişim iptal edilebilirliği sağlar. Yeni bir eve taşınmak gibi: Sahiplik almak, kapıların kilitlerini değiştirmek ve önceki sahipleri (SRK) tarafından bırakılan tüm mobilyaları yok etmektir, ancak evin adresini değiştiremezsiniz (EK).
Cihaz ayarlandıktan sonra hem EK hem de SRK kullanılabilir.
TPM'nin sahipliğini almayla ilgili belirli adımlar üreticiye, kullanılan TPM araçları kümesine ve cihaz işletim sistemine bağlı olarak değişir.
Cihaz Sağlama Hizmeti, cihazları tanımlamak ve kaydetmek için EK'nin (EK_pub) genel bölümünü kullanır. Cihaz satıcısı üretim veya son test sırasında EK_pub okuyabilir ve EK_pub sağlama hizmetine yükleyebilir, böylece cihaz sağlama hizmetine bağlandığında tanınabilir. Cihaz Sağlama Hizmeti SRK'yi veya sahibi denetlemez, bu nedenle TPM'nin "temizlenmesi" müşteri verilerini siler, ancak EK (ve diğer satıcı verileri) korunur ve cihaz sağlamaya bağlandığında Cihaz Sağlama Hizmeti tarafından tanınmaya devam eder.
Kanıtlama işlemi
TPM'ye sahip bir cihaz Cihaz Sağlama Hizmeti'ne bağlandığında, hizmet önce sağlanan EK_pub kayıt listesinde depolanan EK_pub karşı denetler. EK_pubs eşleşmiyorsa, cihazın sağlamasına izin verilmez. EK_pubs eşleşiyorsa hizmet, cihazın kimlik kanıtlamak için kullanılan güvenli bir sınama olan bir nonce sınaması yoluyla EK'nin özel bölümünün sahipliğini kanıtlamasını gerektirir. Cihaz Sağlama Hizmeti bir nonce oluşturur ve ardından bunu SRK ile şifreler ve ardından her ikisi de ilk kayıt çağrısı sırasında cihaz tarafından sağlanan EK_pub. TPM her zaman EK'nin özel bölümünü güvenli tutar. Bu, sahtecilik yapılmasını önler ve YETKILI cihazlara SAS belirteçlerinin güvenli bir şekilde sağlanmasını sağlar.
Şimdi kanıtlama işlemine ayrıntılı bir şekilde göz atalım.
Cihaz IoT Hub ataması isteğinde bulunma
Önce cihaz Cihaz Sağlama Hizmeti'ne bağlanır ve sağlama isteğinde bulunur. Bunu yaparken cihaz hizmete kayıt kimliğini, kimlik kapsamını ve TPM'den EK_pub ve SRK_pub sağlar. Hizmet şifrelenmiş nonce'ı cihaza geri geçirir ve cihazdan nonce şifresini çözmesini ve yeniden bağlanmak ve sağlamayı tamamlamak üzere sas belirtecini imzalamak için bunu kullanmasını ister.
Nonce sınaması
Cihaz nonce alır ve TPM'de nonce şifresini çözmek için EK ve SRK'nin özel bölümlerini kullanır; nonce şifreleme temsilcilerinin EK'den SRK'ye güvenen sırası, TPM'nin sahipliğini yeni bir sahip alırsa değişebilir.
Nonce'ı doğrulama ve kimlik bilgilerini alma
Cihaz daha sonra şifresi çözülen nonce kullanarak bir SAS belirtecini imzalayabilir ve imzalı SAS belirtecini kullanarak Cihaz Sağlama Hizmeti'ne bir bağlantı yeniden oluşturabilir. Nonce sınaması tamamlandığında hizmet, cihazın sağlamasını sağlar.