本文整理汇总了C#中Utils.SignWithTimestamp方法的典型用法代码示例。如果您正苦于以下问题:C# Utils.SignWithTimestamp方法的具体用法?C# Utils.SignWithTimestamp怎么用?C# Utils.SignWithTimestamp使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Utils
的用法示例。
在下文中一共展示了Utils.SignWithTimestamp方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
static void Main(string[] args)
{
// vytvoření pomocné třídy pro práci s podpisy
Utils utils = new Utils();
// načtení dokumentu XML k podpisu
Console.WriteLine("Načítám dokument priklad.isdoc...");
XmlDocument doc = new XmlDocument();
doc.PreserveWhitespace = true; // bílé znaky musíme zachovat, jinak se špatně spočte hash
doc.Load("../../../data/priklad.isdoc");
Console.WriteLine("Podepisuji dokument...");
// načtení certifikátu z úložiště
// certifikát je identifikován svým subjektem
// pro reálné certifikáty vypadá např. "SERIALNUMBER=P111870, CN=Ing. Jiří Kosek, OU=1, O=Ing. Jiří Kosek [IČ 71612998], C=CZ"
X509Certificate2 cert = utils.GetCertificate("CN=Jan Novák");
if (cert == null) Console.WriteLine("Nepodařilo se načíst certifikát.");
// podepsání dokumentu
XmlDocument signedDoc = utils.Sign(doc, cert);
// uložení podepsaného dokumentu
Console.WriteLine("Ukládám podepsaný dokument do priklad-podepsany.isdoc...");
signedDoc.Save("../../../data/priklad-podepsany.isdoc");
Console.WriteLine("Podepisuji dokument...");
// načtení certifikátu z úložiště
X509Certificate2 cert2 = utils.GetCertificate("CN=Jana Procházková");
if (cert2 == null) Console.WriteLine("Nepodařilo se načíst certifikát.");
// připojení druhého podpisu k dokumentu
XmlDocument doubleSignedDoc = utils.Sign(signedDoc, cert2);
Console.WriteLine("Ukládám podepsaný dokument do priklad-podepsany2.isdoc...");
doubleSignedDoc.Save("../../../data/priklad-podepsany2.isdoc");
// ověření podpisů
Console.WriteLine("Ověřování podpisů v priklad-podepsany2.isdoc...");
// načtení dokumentu ze souboru
doc.Load("../../../data/priklad-podepsany2.isdoc");
if (utils.Verify(doc))
Console.WriteLine("Všechny podpisy jsou v pořádku.");
else
Console.WriteLine("Podpis(y) se nepodařilo ověřit.");
// podepsání a přidání časového razítka
doc.Load("../../../data/priklad-podepsany.isdoc");
XmlDocument signedWithTSDoc = utils.SignWithTimestamp(doc, cert, "https://www.postsignum.cz/DEMOTSA/TSS_user/", "demoTSA", "demoTSA2010");
// uložení podepsaného dokumentu
Console.WriteLine("Ukládám podepsaný dokument do priklad-podepsany-casove-razitko.isdoc...");
signedWithTSDoc.Save("../../../data/priklad-podepsany-casove-razitko.isdoc");
System.Console.WriteLine("Stiskněte Enter pro ukončení...");
System.Console.ReadLine();
}