从Base64字符串中解析时间戳标记
本文关键字:时间戳 Base64 字符串 | 更新日期: 2023-09-27 18:14:09
我正在尝试创建XAdES-T签名。在我的c#应用程序中,我调用了一个"中间人"web服务,它以字符串作为输入,并返回Base64字符串。
在该字符串中被编码为asn。schema中应该有TimeStamp Token。我破译了,但没有看到任何可以理解的东西。
我被告知我应该使用BouncyCastle.Asn1.Tsp.TimestampResp。但是没有合适的构造函数接受string。
好吧,我还是想明白了。
我发现这个代码在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)));