我试图创建XAdES-T签名。在我的C#应用程序中,我打电话给"中间"将字符串作为输入并返回Base64字符串的Web服务。
在该字符串中编码为n.1架构,其中某处应该是TimeStamp Token。我解读了它,但没有看到任何可以理解的东西。
我被告知我应该使用BouncyCastle.Asn1.Tsp.TimestampResp。但是没有合适的构造函数来接受字符串。
我真的输了。
答案 0 :(得分:0)
好的,我想出来了。
我在bccrypto src文件夹中找到了这个代码,我从他们的网站上下载了这个代码。
private static TimeStampResp readTimeStampResp(
Asn1InputStream input)
{
try
{
return TimeStampResp.GetInstance(input.ReadObject());
}
catch (ArgumentException e)
{
throw new TspException("malformed timestamp response: " + e, e);
}
catch (InvalidCastException e)
{
throw new TspException("malformed timestamp response: " + e, e);
}
}
然后我就这样称呼这个方法。
var tsResp = readTimeStampResp(new Asn1InputStream(Convert.FromBase64String(tsRespB64)));