タイムスタンプ付きの署名があります。 タイムスタンプをデコードし、そのプロパティをデコードしようとしています。デジタルPKCS7署名からタイムスタンプをデコードする方法は?
var contentInfo = new ContentInfo(Convert.FromBase64String(data));
var signedCms = new SignedCms(contentInfo, true);
signedCms.Decode(Convert.FromBase64String(signature));
signedCms.CheckSignature(true);
foreach (var signerInfo in signedCms.SignerInfos)
{
foreach (var unsignedAttribute in signerInfo.UnsignedAttributes)
{
if (unsignedAttribute.Oid.Value == "1.2.840.113549.1.9.16.2.14")
{
AsnEncodedData asnData = unsignedAttribute.Values[0];
byte[] asnBinary = asnData.RawData;
}
}
}
しかし、私はasnData.RawData
をデコードすることができます。少なくとも私は
あなたがいずれかを持っています(それの署名が有効である)日付を取得し、timstampが正しいことを確認する必要があるか理解しませんアイデアやexpirience? ありがとう
「CheckSignature」メソッドでは、既に必要なことはしていませんか? –
いいえ、それはありません。 CheckSignatureは署名のみをチェックします。 Timestapはこのメソッド呼び出しには含まれていません – VoimiX