TPM-igazolás

Ez a cikk ismerteti azokat az alapfogalmakat, amelyek az eszközöknek a Device Provisioning Service (DPS) megbízható platformmodul (TPM) igazolásával történő kiépítésekor jelentkeznek. Ez a cikk az eszközök üzembe helyezésre való felkészítésében részt vevő összes személy számára releváns.

A megbízható platformmodul (TPM) a hardveres biztonsági modul (HSM) egy típusa. Ez a cikk feltételezi, hogy különálló, belső vezérlőprogramot vagy integrált TPM-et használ. A szoftveres emulált TPM-k kiválóan alkalmasak prototípus-készítéshez vagy teszteléshez, de nem biztosítják ugyanazt a biztonsági szintet, mint a különálló, belső vezérlőprogramok vagy integrált TPM-k. Nem javasoljuk, hogy éles környezetben használjunk szoftveres TPM-eket.

Ez a cikk csak a TPM 2.0-t HMAC-kulccsal és a hozzájuk tartozó jóváhagyási kulcsokkal rendelkező eszközökre vonatkozik. A TPM egy iparági szintű ISO-szabvány a megbízható számítástechnikai csoporttól, és a TPM-ről a teljes TPM 2.0 specifikációban vagy az ISO/IEC 11889 specifikációban olvashat bővebben. Ez a cikk azt is feltételezi, hogy ismeri a nyilvános és a titkos kulcspárokat, és hogy hogyan használják őket a titkosításhoz.

A Device Provisioning Service eszközoldali SDK-jai mindent kezelnek, amit ebben a cikkben ismertetünk Önnek. Nincs szükség a TPM-támogatás implementálására, ha SDK-kat használ az eszközein. Ez a cikk segít megérteni, hogy mi történik a TPM biztonsági chippel, amikor az eszköz ki van kapcsolva, és miért olyan biztonságos.

Áttekintés

A TPM-ek a megbízhatóság biztonságos gyökerét a jóváhagyási kulcs (EK) használatával használják. Az EK egyedi a TPM-ben, és a módosítás lényegében egy új eszközre módosítja az eszközt.

A TPM-eknek van egy másik kulcstípusuk, az úgynevezett storage root key (SRK). Az SRK-t a TPM tulajdonosa hozhatja létre, miután a TPM tulajdonjogát átveszi. A TPM tulajdonjogának átvétele a TPM-specifikus módja annak, hogy "valaki jelszót állít be a HSM-en". Ha egy TPM-eszközt egy új tulajdonosnak adnak el, az új tulajdonos átveheti a TPM tulajdonjogát egy új SRK létrehozásához. Az új SRK-generáció biztosítja, hogy az előző tulajdonos ne tudja használni a TPM-et. Mivel az SRK egyedi a TPM-tulajdonos számára, az SRK használható az adatoknak a TPM-be való zárolására az adott tulajdonos számára. Az SRK egy tesztkörnyezetet biztosít a tulajdonosnak a kulcsok tárolásához, és hozzáférést biztosít a visszahíváshoz, ha az eszközt vagy a TPM-et értékesítik. Ez olyan, mint egy új házba költözni: a tulajdonosváltás megváltoztatja az ajtók zárait, és megsemmisíti az összes bútort, amelyet az előző tulajdonosok (SRK) hagytak, de a ház címét (EK) nem módosíthatja.

Ha egy eszköz be van állítva, egy EK és egy SRK is elérhető.

A TPM tulajdonjogának átvételét bemutató diagram.

A TPM tulajdonjogának átvételéhez szükséges konkrét lépések a gyártótól, a használt TPM-eszközök készletétől és az eszköz operációs rendszerétől függően változnak.

A Device Provisioning Service az EK (EK_pub) nyilvános részét használja az eszközök azonosítására és regisztrálására. Az eszköz szállítója elolvashatja a EK_pub a gyártás vagy a végső tesztelés során, és feltöltheti a EK_pub a kiépítési szolgáltatásba, hogy felismerje az eszközt, amikor csatlakozik a kiépítéshez. Az eszközkiépítési szolgáltatás nem ellenőrzi az SRK-t vagy a tulajdonost, így a TPM "törlése" törli az ügyféladatokat, de az EK (és egyéb szállítói adatok) megmaradnak, és az eszköz továbbra is felismerhető lesz a Device Provisioning Service-ben, amikor csatlakozik a kiépítéshez.

Igazolási folyamat

Amikor egy TPM-et tartalmazó eszköz csatlakozik a Device Provisioning Service szolgáltatáshoz, a szolgáltatás először ellenőrzi a megadott EK_pub a regisztrációs listában tárolt EK_pub. Ha a EK_pubs nem egyeznek, az eszköz nem építhető ki. Ha a EK_pubs megegyeznek, a szolgáltatás megköveteli, hogy az eszköz az EK magánrészének tulajdonjogát egy nem szándékos kihíváson keresztül igazolja, amely az identitás igazolására szolgáló biztonságos kihívás. Az Eszközkiépítési szolgáltatás létrehoz egy nem megfelelőt, majd titkosítja azt az SRK-val, majd a EK_pub, amelyeket az eszköz a kezdeti regisztrációs hívás során biztosít. A TPM mindig biztonságosan tartja az EK privát részét. Ez megakadályozza a hamisítást, és biztosítja, hogy az SAS-jogkivonatok biztonságosan ki legyenek építve az engedélyezett eszközökre.

Tekintsük át részletesen az igazolási folyamatot.

Az eszköz IoT Hub-hozzárendelést kér

Először az eszköz csatlakozik a Device Provisioning Service-hez, és kéri a kiépítést. Ennek során az eszköz megadja a szolgáltatás regisztrációs azonosítóját, egy azonosító hatókörét, valamint a TPM-ből származó EK_pub és SRK_pub. A szolgáltatás visszaküldi a titkosított nonce-t az eszköznek, és megkéri az eszközt, hogy fejtse vissza a nonce-t, és ezzel írjon alá egy SAS-jogkivonatot az újracsatlakozáshoz és a kiépítés befejezéséhez.

Eszközkérések kiépítése

Nem szándékos kihívás

Az eszköz felveszi a nonce-t, és az EK és az SRK privát részeit használja a nonce visszafejtéséhez a TPM-be; a nem titkosítási delegáltak megbízhatósági sorrendje az EK-ból , amely nem módosítható, az SRK-ra, amely megváltozhat, ha egy új tulajdonos átveszi a TPM tulajdonjogát.

A nonce visszafejtése

A nem érvényesítés ellenőrzése és hitelesítő adatok fogadása

Az eszköz ezután aláírhat egy SAS-jogkivonatot a visszafejtetlen visszafejtéssel, és újra létrehozhat egy kapcsolatot a Device Provisioning Service-szel az aláírt SAS-jogkivonat használatával. A Nonce-feladat befejezése után a szolgáltatás lehetővé teszi az eszköz kiépítését.

Az eszköz újracsatlakozik a Device Provisioning Service-hez az EK tulajdonjogának ellenőrzése érdekében