
以下はどのハッシュタイプを表していますか?
例1: 0h+p0j3/Y9s1ly0mqtU741bzLjqz12mDQGKtVScMeKg=
例2: uNryI5MYSV5U5O1NuFPGYexSxm2nLFrRXVqga+nQjw4=
これらのハッシュは、Windows の DISM ユーティリティを実行した後の CBS.log ファイルから取得されました。完全な行は次のとおりです。
2017-03-11 20:46:08, Info CSI 00000005 Hashes for file member \SystemRoot\WinSxS\amd64_microsoft-windows-c...appxmain.resources_31bf3856ad364e35_10.0.14393.206_sr-..-cs_8caf1c5c152c5f9f\resources.sr-Latn-CS.pri do not match actual file [l:24]'resources.sr-Latn-CS.pri' :
Found: {l:32 0h+p0j3/Y9s1ly0mqtU741bzLjqz12mDQGKtVScMeKg=} Expected: {l:32 uNryI5MYSV5U5O1NuFPGYexSxm2nLFrRXVqga+nQjw4=}
これは Base64 に似ていますが、ハッシュは常に同じ長さで、ファイルのサイズが異なっているため、Base64 ではありません。ハッシュ自体ではなく、MD5 や SHA などの Base64 ではないかとも思いましたが、この文字列を Base64 デコードしても役に立ちません。
ありがとう。
答え1
Windows は WinSxS でファイルのハッシュ化に SHA256 を使用します。
<dsig:DigestMethod xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
の内容は次のとおりですFlashUtil_ActiveX.dll
:
<file name="FlashUtil_ActiveX.dll" destinationPath="$(runtime.system32)\Macromed\Flash\" sourceName="FlashUtil_ActiveX.dll" sourcePath=".\" importPath="$(build.nttree)\adobe\flash\">
<securityDescriptor name="WRP_FILE_DEFAULT_SDDL" />
<asmv2:hash xmlns:asmv2="urn:schemas-microsoft-com:asm.v2">
<dsig:Transforms xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
<dsig:DigestValue xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">22R1ba1WE7oyGXwA0vGwywUOw/Hw/27MqRmwHJpL04g=</dsig:DigestValue>
</asmv2:hash>
</file>
下にはdsig:DigestValue
予想されるハッシュが表示されます。Windows がファイルをスキャンすると、実際のファイルのハッシュが作成され、WinSxS のマニフェスト ファイル内のこのハッシュと比較されます。