Verwenden von MakeCat
Das MakeCat-Tool erstellt eine Katalogdatei ohne Vorzeichen, die die Hashes eines Dateisatzes zusammen mit den zugehörigen Attributen jeder Datei in der Gruppe enthält. Eine Katalogdatei ermöglicht es dem Benutzer, eine Datei (den Katalog) zu signieren, anstatt zahlreiche einzelne Dateien zu signieren.
Nachdem die nicht signierte Katalogdatei signiert und übertragen wurde, kann der Empfänger die Hashes der ursprünglichen Dateien mit den in der Katalogdatei enthaltenen Hashes vergleichen und überprüfen, ob die Dateien frei von Manipulationen sind.
Vor der Verwendung des MakeCat-Tools muss der Benutzer eine Katalogdefinitionsdatei (CDF) mithilfe eines beliebigen Text-Editors vorbereiten. Die CDF-Datei enthält die Liste der Dateien und die Attribute der zu katalogisierenden Dateien (die Spezifikationen sind unten aufgeführt). Das MakeCat-Tool überprüft die CDF-Datei, überprüft die Liste der Attribute jeder aufgelisteten Datei, fügt die aufgelisteten Attribute dem Katalog selbst hinzu, hasht jede der aufgelisteten Dateien und speichert die Hashes jeder Datei in der Katalogdatei. Jede Datei verfügt über ihre Hash- und Attribute, die separat im Katalog gespeichert sind. Diese Katalogdatei kann dann signiert und übertragen werden. Der Empfänger kann anschließend den Hash jeder Datei innerhalb des Katalogs mit dem Hash der ursprünglichen Dateien vergleichen, um zu beweisen, dass der ursprüngliche Inhalt frei von Manipulationen ist. MakeCat ändert die CDF-Datei nicht.
In den folgenden Beispielen werden MakeCat-Befehle verwendet.
Generieren Sie eine Katalogdatei aus der Datei Good.cdf.
MakeCat -v good.cdf
Die Datei Good.cdf erzeugt eine Katalogdatei( Good.cat), indem die Dateien UnsignedPE.exe, UnsignedDOS.exe, Unsigned.cab, Unsigned.Class und SignedPE.exe analysiert werden. Die analysierten Dateien befinden sich zusammen mit Good.cdf und den neu generierten Good.cat im selben Verzeichnis.
[CatalogHeader]
Name=Good.cat
ResultDir=.\
PublicVersion=0x00000001
EncodingType=
CATATTR1=0x10010001:Movie1:FirstMovie
CATATTR2=0x10010001:Movie2:SecondMovie
CATATTR3=0x10010001:Movie3:ThirdMovie
[CatalogFiles]
UnsignedPE=.\UnsignedPE.EXE
UnsignedDOS=.\UnsignedDOS.EXE
<HASH>UnsignedCAB=.\Unsigned.CAB
UnsignedClass=.\Unsigned.Class
SignedPE=.\SignedPE.EXE
Hinweis
Der letzte Eintrag in der CDF-Datei muss immer ein explizites Zeilenumbruchzeichen am Ende der Zeile aufweisen.