简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。
Linux上的文件签名验证
贡献者
建议更改
您可以按照以下步骤验证已导出的Linux的VHD文件签名。
步骤
-
从下载Azure Image Digest文件 "NetApp 支持站点" 并提取摘要文件(.sig)、公共密钥证书文件(.pem)和链证书文件(.pem)。
请参见 "下载Azure映像摘要文件" 有关详细信息 …
-
验证信任链。
% openssl verify -CAfile Certificate-Chain-9.15.0P1_azure.pem Certificate-9.15.0P1_azure.pem Certificate-9.15.0P1_azure.pem: OK
-
删除前1 MB (1048576字节)和后512字节的vHD文件。
如果使用"tail"、则选项"-c +K"将输出以指定文件的K有权 字节开头的字节。因此、1048交由"尾部-c"处理。
% tail -c +1048577 ./9150.01000024.05090105.vhd > ./sign.tmp.tail % head -c -512 ./sign.tmp.tail > sign.tmp % rm ./sign.tmp.tail
-
使用openssl从证书中提取公共密钥、并使用签名文件和公共密钥验证条带化文件(ssign.tmp)。
如果输入文件通过验证、则会显示命令
"验证正常"。否则、将显示"Verification Failure"(验证失败)。% openssl x509 -pubkey -noout -in ./Certificate-9.15.0P1_azure.pem > ./Code-Sign-Cert-Public-key.pub % openssl dgst -verify Code-Sign-Cert-Public-key.pub -keyform PEM -sha256 -signature digest.sig -binary ./sign.tmp Verification OK % openssl dgst -verify Code-Sign-Cert-Public-key.pub -keyform PEM -sha256 -signature digest.sig -binary ./another_file_from_nowhere.tmp Verification Failure
-
清理工作空间。
% rm ./9150.01000024.05090105.vhd ./sign.tmp % rm *.sig *.pub *.pem