我想创建 2 个非常简单的 dll:
1)将签署一个xml文档
2)这将检查xml文档是否未被修改。
我尝试使用 RSACryptoServiceProvider 和密钥容器。但是当我移动到另一台机器时,这不起作用,因为密钥存储在机器中。
我想将密钥存储在我创建的 dll 中(我知道这不推荐),但我只是不知道如何编写一些代码来简单地签署 xml 文档,然后验证它是否未被更改。
那么我是否需要使用对称密钥来完成我想要的事情,这可能吗?
Pete
你已经提到了将私钥存储在dll中的问题,所以我不再重复。
Do this:
在您自己的机器上运行以下代码:
var key = new RSACryptoServiceProvider(2048);
string publicKey = key.ToXmlString(false);
string privateKey = key.ToXmlString(true);
Console.WriteLine(publicKey);
Console.WriteLine(privateKey);
这输出两条(长)行。将它们复制到您的代码中:
Sign:
var privateKey = new RSACryptoServiceProvider();
privateKey.FromXmlString(/* insert the private-key XML string here */ );
privateKey.SignData(/*...*/);
Verify:
var publicKey = new RSACryptoServiceProvider();
publicKey.FromXmlString(/* insert the public-key XML string here */ );
publicKey.VerifyData(/*...*/);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)