kryptering - TPM2 - Opret en vedvarende primærnøgle under Windows med Tbsip\_Submit\_Command

Indlæg af Hanne Mølgaard Plasc

Problem



Afspilning med min TPM chip ved hjælp af Tbsip\_Submit\_Command Jeg kan se, at Windows analyserer de rammer, jeg sender til den. [5]


For at gøre dette simpelt, bruger jeg kommandoen shutdown.


For eksempel forsøgte jeg at sende en TPM\_CC\_Shutdown med TPM\_SU\_CLEAR i argument. Så rammen er => 80 01 00 00 00 0C 00 00 01 45 00 00


For at gøre det mere detaljeret og forklaret:


80 01         is TPM\_ST\_NO\_SESSIONS
00 00 00 0C   size of the frame
00 00 01 45   TPM\_CC\_Shutdown
00 00         is TPM\_SU\_CLEAR


Windows svarer til mig => 80 01 00 00 00 0A 80 28 04 00

Igen for at gøre det mere detaljeret:


80 01         is TPM\_ST\_NO\_SESSIONS
00 00 00 0A   size of the command
80 28 04 00   error code 0x80280400 => TPM\_E\_COMMAND\_BLOCKED


Jeg fandt denne fejlkode her.
Så tilsyneladende Windows spærrer mig og slipper min kommando. Jeg kan forstå, at det ikke vil have TPM at blive slået ned, men jeg får det samme resultat for en kommando, hvor jeg vil oprette en primær nøgle og gemme den inde i chippen. [6]


Så jeg har en chip, men hvis jeg vil bruge den direkte, kan jeg ikke tvinge mig til at bruge Cryptography API: Next Generation, men i mit tilfælde kan jeg ikke.


Nogen har noget at hjælpe mig med?
Må jeg direkte kommunikere med chippen, der koder en driver og omgå Windows-lag (hvis nogen har en ide om, hvordan man gør det)?
Eller kan det være muligt at konfigurere en værdi i registreringsdatabasen for at få windows lad mig gøre hvad jeg vil have med min TPM chip?

Bedste reference


Som beskrevet her er kommandoer blokeret eller ej, afhængigt af din konfiguration. Det er muligt at låse kommandoer op, men jeg kan ikke få det til at fungere. [7]

Andre referencer 1


Ifølge bogen 'En praktisk vejledning til TPM 2.0'
på kapitel 10 nøgler (s. 126) står det: [8]



  TPM-bibliotekets specifikation indeholder symmetriske krypteringsnøgler, der kan bruges til generel kryptering, såsom AES. Det er usikkert, om TPM-leverandører vil medtage disse funktioner på grund af mulige eksportrestriktioner. Kommandoerne er valgfrie i PC Client-platformspecifikationen. Historisk har TPM-leverandører ikke implementeret valgfrie TPM-funktioner.



Du kan bruge kommandoen TPM2\_GetCapability med parameteren TPM\_CAP\_COMMANDS for at hente en liste over implementerede kommandoer. Hvis den kommando, du vil bruge, ikke er angivet, kan den muligvis ikke implementeres af TPM-sælgeren.


Se i https://docs.microsoft.com/en-us/windows-hardware/test/hlk/testref/tpm-v20-command-and-signal-profile for en liste over Inkluderet og Valgfri Kommandoer fra Windows-synspunkt. [9]