我在macOS上并签署了一个zip文件,但其SHA256校验和未更改。 macOS在哪里跟踪此签名过程?非常感谢!
$ codesign -dvvvv foo.zip
foo.zip: code object is not signed at all
$ openssl dgst -sha256 foo.zip
SHA256(foo.zip)= 30b954e18296f858e40f7bdeebb554cbef59e3f1e6ba947bda89c6342687e431
$ codesign --force --timestamp --sign "..." foo.zip
$ openssl dgst -sha256 foo.zip
SHA256(foo.zip)=30b954e18296f858e40f7bdeebb554cbef59e3f1e6ba947bda89c6342687e431
$ codesign -dvvvv foo.zip
// output of signature
答案 0 :(得分:2)
对于“通用”文件(格式不支持嵌入式签名的文件,例如Mach-O二进制文件或磁盘映像),codesign
将以扩展属性的形式附加代码签名:
$ codesign --force --timestamp --sign "..." sub.zip
$ ls -l@ sub.zip
-rw-r--r--@ 1 gordon staff 12449 Jul 12 22:36 sub.zip
com.apple.cs.CodeDirectory 127
com.apple.cs.CodeRequirements 164
com.apple.cs.CodeRequirements-1 163
com.apple.cs.CodeSignature 9012
数字表示每个扩展属性中数据的字节数。您可以使用xattr
命令来更详细地查看它们。