#signing #microsoft #utility #tool #signtool

codesign

Microsoft为Rust提供的代码签名库(及实用工具)

4个版本

0.2.1 2021年5月11日
0.2.0 2020年11月20日
0.1.1 2018年1月17日
0.1.0 2018年1月16日

#1733密码学

MIT/Apache

7KB
114

Codesign 构建状态 Crates.io

Microsoft为Rust提供的代码签名库(及实用工具)。

此库是Microsoft签名工具的便利包装,需要安装Windows SDK。

它提供了一种简单的方法来签名Windows可执行文件,无需手动查找signtool.exe的位置或使用哪个版本,这可能会因为每个新的Windows SDK版本而发生变化,可能会有些麻烦。目前支持Windows 10 SDK的所有版本,并会使用最新安装的版本。

如何使用库

// Locate signing tool
let signtool = match SignTool::locate_latest().unwrap();

// Set up signing parameters
let sign_params = SignParams {
    digest_algorithm: "sha256".to_owned(),
    certificate_thumbprint: "<your certificate sha-1 thumbprint here>".to_owned(),
    timestamp_url: Some("<timestamp server url here>".to_owned()),
};

// Sign yourapp.exe
signtool.sign("yourapp.exe", &sign_params).unwrap();

如何使用命令行工具

> codesign.exe -c <your certificate sha-1 thumbprint here> yourapp.exe

依赖项

~0.5–9.5MB
~67K SLoC