Condividi tramite


Uso di MakeCat

Lo strumento MakeCat crea un file di catalogo senza segno, che contiene gli hash di un set di file insieme agli attributi associati di ogni file nel set. Un file di catalogo consente all'utente di firmare un file (catalogo) anziché firmare numerosi singoli file.

Dopo aver firmato e trasmesso il file del catalogo senza segno, il ricevitore può confrontare gli hash dei file originali agli hash contenuti nel file di catalogo e verificare che i file siano liberi di manomissione.

Prima di usare lo strumento MakeCat , l'utente deve preparare un file di definizione del catalogo (con estensione cdf), usando qualsiasi editor di testo. Il file cdf contiene l'elenco dei file e gli attributi dei file da catalogare (le specifiche sono elencate di seguito). Lo strumento MakeCat analizza il file cdf, verifica l'elenco degli attributi di ogni file elencato, aggiunge gli attributi elencati al catalogo stesso, esegue l'hash di ognuno dei file elencati e archivia gli hash di ogni file nel file di catalogo. Ogni file ha gli hash e gli attributi archiviati separatamente all'interno del catalogo. Questo file di catalogo può quindi essere firmato e trasmesso. Il ricevitore può successivamente confrontare l'hash di ogni file all'interno del catalogo con l'hash dei file originali per dimostrare che il contenuto originale è libero di manomissione. MakeCat non modifica il file cdf.

Gli esempi seguenti usano i comandi MakeCat .

  • Generare un file di catalogo dal file Good.cdf.

    MakeCat -v good.cdf

Un file, Good.cdf, produce un file di catalogo, Good.cat, analizzando i file UnsignedPE.exe, UnsignedDOS.exe, Unsigned.cab, Unsigned.Class e SignedPE.exe. I file analizzati, insieme a Good.cdf e ai Good.cat appena generati, sono tutti nella stessa directory.

[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

Nota

L'ultima voce nel file cdf deve sempre avere un carattere newline esplicito alla fine della riga.