[英]How can I use an X.509 certificate with private key from the android keychain in C#/Xamarin?
[英]How can I import private key and use it to sign document in C#?
我已經生成了一個自簽名證書(X509證書),並希望使用私鑰對某些文檔進行簽名以進行數字簽名,而我正在C#中進行此操作。
如何導入.pvk文件? 我需要從密鑰庫導入嗎?
我可以使用此代碼簽名並創建數字簽名嗎?
RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
RSAPKCS1SignatureFormatter RSAFormatter = new RSAPKCS1SignatureFormatter(RSA);
RSAFormatter.SetHashAlgorithm("SHA1");
RSAFormatter.SetKey(cert.PrivateKey);
byte[] SignedHash = RSAFormatter.CreateSignature(data);
嘗試通過以下方式初始化您的RSA:
RSACryptoServiceProvider RSA = (RSACryptoServiceProvider)cert.PrivateKey;
要生成簽名,請使用rsa.SignData(data, "sha1");
首先,您需要確定應以哪種格式進行簽名。 如果處理證書,則很可能會創建PKCS#7或CMS簽名。 .NET中有一個用於CMS簽名的類。
下一步取決於您是否需要基於證書的PKCS#7簽名或RSA(PKCS#1)簽名。
旁注-將多個問題合而為一,很難正確回答。 此外,如果您進行搜索,大多數問題都會有很多答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.