我们如何生成一个自定义.SNK file(用于签署一个强名称的程序集),如果我已经拥有我的私钥/公钥对(以任意格式,但为了清晰起见,假设我们已经生成了它) linux,使用ssh-keygen)?
您可以将密钥存储在Microsoft CNG以前的CSP中,并且SNK可以轻松指向密钥容器。这样您甚至可以将密钥存储在HSM中,但这会产生在不同计算机上共享密钥的问题。密钥位于pkcs12文件上,您可以轻松地将批处理文件存储在KeyContainer中,然后使用它
因此,如果这些密钥非常重要,那么每台机器上的密钥对都是相同的。
另一方面,您也可以使用CSP或CNG提供商
<PropertyGroup>
<SignAssembly>true</SignAssembly>
<DelaySign>false</DelaySign>
<KeyContainerName>YOUR_CONTAINER_NAME_HERE</KeyContainerName>
</PropertyGroup>
如果您还希望密钥显示在项目的“属性”部分中,则可以添加以下部分
<None Include="$(KEY_CONTAINER_HERE)">
<Link>Properties\App.snk</Link>
</None>
如果你可以用密钥对生成pk12或pfx文件..那么你可以使用sn.exe -i ..来生成p12文件你可以使用openssl