首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与弹跳城堡签约时的Pkcs1填充

与弹跳城堡签约时的Pkcs1填充
EN

Stack Overflow用户
提问于 2018-04-12 11:20:22
回答 1查看 1.6K关注 0票数 1

我有下面的c#跳堡代码,可以使用C# /RSA 512在C#中签名一些数据。有谁能告诉我如何在这个过程中应用Pkcs1填充?

代码语言:javascript
复制
using (var txtreader = new StringReader(File.ReadAllText(_certificatePath)))
{
    var keyPair = (AsymmetricCipherKeyPair)new PemReader(txtreader).ReadObject();

    var key = keyPair.Private as RsaPrivateCrtKeyParameters;
    ISigner sig = SignerUtilities.GetSigner("SHA512withRSA");
    sig.Init(true, key);

    sig.BlockUpdate(requestToSign, 0, requestToSign.Length);
    byte[] signature = sig.GenerateSignature();
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-13 05:14:49

PKCS#1实际上是唯一用于RSA 512签名的填充算法。

检查RFC 4051

2.3.4。RSA-RSA 512 这意味着2.3.1节中描述的PKCS#1 v1.5填充算法RFC3447,但是带有ASN.1 BERSHA-512算法标识符前缀。

您也可以检查BouncyCastle源代码RsaDigestSigner在没有任何条件或配置的情况下创建Pkcs1Encoding实例:

代码语言:javascript
复制
private readonly IAsymmetricBlockCipher rsaEngine = new Pkcs1Encoding(new RsaBlindedEngine());

还可以在调试下检查已使用的实现:

因此,在回答问题时:

有谁能告诉我如何在这个过程中应用Pkcs1填充?

不应采取任何其他行动。Pkcs1是RSA 512签名的唯一可能的填充算法.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49795207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档