Aracılığıyla paylaş


MakeCat

MakeCat aracı, katalog dosyası oluşturan bir CryptoAPI aracıdır. MakeCat, Windows 7 ve .NET Framework 4.0 için Microsoft Windows Yazılım Geliştirme Seti'nin (SDK) bir parçası olarak kullanılabilir ve varsayılan olarak SDK yükleme yolunun \Bin klasörüne yüklenir.

MakeCat aracı aşağıdaki komut söz dizimini kullanır:

MakeCat [-n|-r|-v] FileName

Parametre

Parametre Açıklama
-n
Kurtarılabilir bir hatada durmayın.
-r
Kurtarılabilir hatalarla karşılaşırsa MakeCat'i sona erdirmeye zorlar. Özel olarak, bir .cdf dosyasının katalog dosyaları bölümündeki girdiler işlenirken sona erer.
-v
Ayrıntılı. Tüm ilerleme durumunu ve hata iletilerini görüntüler.
FileName
Ayrıştırılacak .cdf dosyasının adı. Gerekli yapı ve içerik için bkz. Açıklamalar.

 

Açıklamalar

.cdf dosyası aşağıdaki belirtimlerle derlenmelidir.

[CatalogHeader]
Name=Name              
ResultDir=ResultDir   
PublicVersion=[|1]
CatalogVersion = [|1|2]
HashAlgorithms=[|SHA1|SHA256]
PageHashes=[true|false]
EncodingType=Encodingtype 
CATATTR1={type}:{oid}:{value} (optional)
CATATTR2={type}:{oid}:{value} (optional)

[CatalogFiles]
{reference tag}=file path and name
{reference tag}ALTSIPID={guid} (optional)
{reference tag}ATTR1={type}:{oid}:{value} (optional)
{reference tag}ATTR2={type}:{oid}:{value} (optional)
<HASH>kernel32.dll=kernel32.dll
<HASH>ntdll.dll=ntdll.dll

Not

.cdf dosyasındaki son girdinin her zaman satırın sonunda açık bir yeni satır karakteri olmalıdır.

 

[CatalogHeader] bölümü, katalog dosyasının tamamı hakkındaki bilgileri tanımlar.

Seçenek Açıklama
Ad
Uzantısı da dahil olmak üzere katalog dosyasının adı.
ResultDir
Oluşturulan .cat dosyasının yerleştirileceği dizin. Belirtilmemişse, varsayılan geçerli dizin kullanılır. Dizin yoksa oluşturulur.
PublicVersion
Bu seçenek desteklenmez.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 ve Windows XP: Kataloğu sürümü. Boş bırakılırsa varsayılan değer olan 1 kullanılır.

CatalogVersion
Katalog sürümü. Sürüm yoksa veya 1 olarak ayarlandıysa, CryptCATOpen işlevinin dwPublicVersion parametresine "0x100" geçirilir ve bir sürüm 1 katalog dosyası oluşturulur. HashAlgorithms seçeneği boş olmalı veya SHA1 içermelidir.
Sürüm 2 olarak ayarlanırsa, "0x200" CryptCATOpen işlevinin dwPublicVersion parametresine geçirilir ve bir sürüm 2 katalog dosyası oluşturulur. HashAlgorithms seçeneği SHA256 içermelidir.
Bu seçenek varsa ancak 1 veya 2 dışında bir değer içeriyorsa, MakeCat aracı hata verir.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 ve Windows XP: Bu seçenek desteklenmez.

HashAlgorithms
Kullanılan karma algoritmasının adı. Daha fazla bilgi için CatalogVersion seçeneğine bakın.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 ve Windows XP: Bu seçenek desteklenmez.

PageHashes
[CatalogFiles] bölümündeki <HASH> seçeneğinde listelenen dosyaların karması yapılıp yapılmayacağını belirtir
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 ve Windows XP: Bu seçenek desteklenmez.

EncodingType
Kullanılan ileti kodlama türü. Boş bırakılırsa, varsayılan EncodingType PKCS_7_ASN_ENCODING | olur X509_ASN_ENCODING, 0x00010001.

 

[CatalogFiles] bölümü, katalog dosyasının her üyesini, farklı türlerdeki dosyalarla ve ayrı gruplardaki çeşitli türlerdeki özniteliklerle tanımlar.

Seçenek Açıklama
başvuru etiketi
Dosyaya metin başvurusu. Bu, eşittir işareti (=) dışında tüm ASCII metin karakterlerini içerebilir. Sistemin yüklemeden sonra bu etiketi yeniden oluşturabilmesi gerekir.
Dosya adının ön eki olarak <HASH> kullanın. Bu, etiketin ASCII dize biçiminde dosyanın karması olmasına neden olur.
dosya yolu ve adı
Ayrıştırılacak uzantı ve dosyanın göreli yolu dahil olmak üzere dosya adı. SignTool ile imzalanabilir herhangi bir dosya türü kataloğa eklenebilir. Örneğin, diğerlerinin yanında aşağıdaki uzantılara sahip dosya adları bir kataloğa eklenebilir: .exe, .cab, .cat, .ocx, .dllve .stl.
ALTSIPID
Dosya türüne göre standart SIP yerine karma için kullanılacak SIP GUID'i. Bu giriş isteğe bağlıdır. Bu girdi atlanırsa, üye varsayılan SIP kullanılarak karma oluşturulur. Varsayılan yüklü SIP bulunmazsa Düz SIP kullanılır.
Guıd
GUID'nin metin gösterimi.
ATTRx
Opsiyonel. Dosya veya içerikle ilgili öznitelik veya deyim. Hiçbiri dahil olmak üzere herhangi bir sayıda öznitelik olabilir.
tür
0x00000000 (metin) biçiminde hangi öznitelik türünün eklendiğini tanımlar. Bu seçenek, aşağıdaki değerlerden sıfır veya daha fazlasının bit düzeyindeVEYA birleşimi olabilir:
  • 0x10000000 Kimliği doğrulanmış özniteliği (imzalanmış, karmaya dahil).
  • 0x20000000 Kimliği Doğrulanmamış öznitelik (işaretsiz, karmaya dahil değil, doğrulanamaz).
  • 0x01000000 Özniteliği, CatalogVersion 2 kataloğundaki SHA1 girişlerine çoğaltılmaz.
  • 0x00010000 Özniteliği düz metin olarak temsil edilir. Dönüştürme yapılmaz.
  • 0x00020000 Özniteliği, base-64 kodlamasında temsil edilir. Bu, ikili verileri temsil etmek için kullanılır.
  • 0x00000001 Özniteliği bir ad-değer çiftidir. Ad için oid seçeneğini kullanın. Bu öznitelik yavaş; bu nedenle, bu seçeneği dikkatli kullanın.
  • 0x00000002 Özniteliğine bir nesne tanımlayıcısı (OID) tarafından başvurulur.

Oıd
Özniteliğin başvuru anahtarının metin gösterimi. Noktalı dörtlü gösterimi (örneğin, a.b.c.d) veya metin Adı biçiminde bir OID'dir.
değer
özniteliğinin değerinin metin gösterimi. Kullanılan metin gösteriminin türü, tür seçeneğinin değerine bağlıdır. Uzunluğu EOL karakterleri belirler.
karma><
Belirtilen dosyanın karmalarını oluşturur.

 

Oluşturulan katalog dosyası imzasız. İletim öncesinde imzalanacaksa, SignToolkullanılarak imzalanır.