本文整理汇总了C#中Identity.CreateRequest方法的典型用法代码示例。如果您正苦于以下问题:C# Identity.CreateRequest方法的具体用法?C# Identity.CreateRequest怎么用?C# Identity.CreateRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Identity
的用法示例。
在下文中一共展示了Identity.CreateRequest方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
static void Main(string[] args)
{
Configuration cfg = new Configuration("openssl.cnf");
X509CertificateAuthority root = X509CertificateAuthority.SelfSigned(
cfg,
new SimpleSerialNumber(),
"Root1",
DateTime.Now,
TimeSpan.FromDays(365));
X509CertificateAuthority rogue = X509CertificateAuthority.SelfSigned(
cfg,
new SimpleSerialNumber(),
"Rogue",
DateTime.Now,
TimeSpan.FromDays(365));
Identity comId = new Identity(new CryptoKey(new DSA(true)));
X509Request comReq = comId.CreateRequest("com");
X509Certificate comCert = root.ProcessRequest(comReq, DateTime.Now, DateTime.Now + TimeSpan.FromDays(365));
if (!comCert.Verify(root.Key))
Console.WriteLine("Invalid com cert");
X509CertificateAuthority com = new X509CertificateAuthority(
comCert,
comId.PrivateKey,
new SimpleSerialNumber(),
cfg);
Identity id1 = new Identity(new CryptoKey(new DSA(true)));
X509Request req1 = id1.CreateRequest("1");
X509Certificate cert1 = com.ProcessRequest(
req1,
DateTime.Now,
DateTime.Now + TimeSpan.FromDays(365));
Identity id2 = new Identity(new CryptoKey(new DSA(true)));
X509Request req2 = id2.CreateRequest("2");
X509Certificate cert2 = rogue.ProcessRequest(
req2,
DateTime.Now,
DateTime.Now + TimeSpan.FromDays(365));
X509Store store = new X509Store();
store.AddTrusted(root.Certificate);
store.AddUntrusted(root.Certificate);
store.AddUntrusted(com.Certificate);
string error;
if (store.Verify(cert1, out error))
Console.WriteLine("cert1 OK");
else
Console.WriteLine("cert1: " + error);
store.AddUntrusted(rogue.Certificate);
if (store.Verify(cert2, out error))
Console.WriteLine("cert2 OK");
else
Console.WriteLine("cert2: " + error);
//Console.WriteLine("root:");
Console.WriteLine(root.Certificate);
//Console.WriteLine("com:");
Console.WriteLine(com.Certificate);
//Console.WriteLine("rogue:");
Console.WriteLine(rogue.Certificate);
//Console.WriteLine("id1:");
Console.WriteLine(cert1);
//Console.WriteLine("id2:");
Console.WriteLine(cert2);
}