Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ToString() [2/2]

override string System.Security.Cryptography.X509Certificates.X509Certificate2.ToString ( bool verbose)
inlinevirtual

Reimplemented from System.Security.Cryptography.X509Certificates.X509Certificate.

Definition at line 382 of file X509Certificate2.cs.

383 {
384 if (!verbose || Pal == null)
385 {
386 return ToString();
387 }
389 stringBuilder.AppendLine("[Version]");
390 stringBuilder.Append(" V");
391 stringBuilder.Append(Version);
392 stringBuilder.AppendLine();
393 stringBuilder.AppendLine();
394 stringBuilder.AppendLine("[Subject]");
395 stringBuilder.Append(" ");
397 string nameInfo = GetNameInfo(X509NameType.SimpleName, forIssuer: false);
398 if (nameInfo.Length > 0)
399 {
400 stringBuilder.AppendLine();
401 stringBuilder.Append(" ");
402 stringBuilder.Append("Simple Name: ");
403 stringBuilder.Append(nameInfo);
404 }
405 string nameInfo2 = GetNameInfo(X509NameType.EmailName, forIssuer: false);
406 if (nameInfo2.Length > 0)
407 {
408 stringBuilder.AppendLine();
409 stringBuilder.Append(" ");
410 stringBuilder.Append("Email Name: ");
411 stringBuilder.Append(nameInfo2);
412 }
414 if (nameInfo3.Length > 0)
415 {
416 stringBuilder.AppendLine();
417 stringBuilder.Append(" ");
418 stringBuilder.Append("UPN Name: ");
419 stringBuilder.Append(nameInfo3);
420 }
422 if (nameInfo4.Length > 0)
423 {
424 stringBuilder.AppendLine();
425 stringBuilder.Append(" ");
426 stringBuilder.Append("DNS Name: ");
427 stringBuilder.Append(nameInfo4);
428 }
429 stringBuilder.AppendLine();
430 stringBuilder.AppendLine();
431 stringBuilder.AppendLine("[Issuer]");
432 stringBuilder.Append(" ");
435 if (nameInfo.Length > 0)
436 {
437 stringBuilder.AppendLine();
438 stringBuilder.Append(" ");
439 stringBuilder.Append("Simple Name: ");
440 stringBuilder.Append(nameInfo);
441 }
443 if (nameInfo2.Length > 0)
444 {
445 stringBuilder.AppendLine();
446 stringBuilder.Append(" ");
447 stringBuilder.Append("Email Name: ");
448 stringBuilder.Append(nameInfo2);
449 }
451 if (nameInfo3.Length > 0)
452 {
453 stringBuilder.AppendLine();
454 stringBuilder.Append(" ");
455 stringBuilder.Append("UPN Name: ");
456 stringBuilder.Append(nameInfo3);
457 }
459 if (nameInfo4.Length > 0)
460 {
461 stringBuilder.AppendLine();
462 stringBuilder.Append(" ");
463 stringBuilder.Append("DNS Name: ");
464 stringBuilder.Append(nameInfo4);
465 }
466 stringBuilder.AppendLine();
467 stringBuilder.AppendLine();
468 stringBuilder.AppendLine("[Serial Number]");
469 stringBuilder.Append(" ");
470 stringBuilder.AppendLine(SerialNumber);
471 stringBuilder.AppendLine();
472 stringBuilder.AppendLine("[Not Before]");
473 stringBuilder.Append(" ");
474 stringBuilder.AppendLine(X509Certificate.FormatDate(NotBefore));
475 stringBuilder.AppendLine();
476 stringBuilder.AppendLine("[Not After]");
477 stringBuilder.Append(" ");
478 stringBuilder.AppendLine(X509Certificate.FormatDate(NotAfter));
479 stringBuilder.AppendLine();
480 stringBuilder.AppendLine("[Thumbprint]");
481 stringBuilder.Append(" ");
482 stringBuilder.AppendLine(Thumbprint);
483 stringBuilder.AppendLine();
484 stringBuilder.AppendLine("[Signature Algorithm]");
485 stringBuilder.Append(" ");
487 stringBuilder.Append('(');
489 stringBuilder.AppendLine(")");
490 stringBuilder.AppendLine();
491 stringBuilder.Append("[Public Key]");
492 try
493 {
495 stringBuilder.AppendLine();
496 stringBuilder.Append(" ");
497 stringBuilder.Append("Algorithm: ");
498 stringBuilder.Append(publicKey.Oid.FriendlyName);
499 try
500 {
501 stringBuilder.AppendLine();
502 stringBuilder.Append(" ");
503 stringBuilder.Append("Length: ");
504 using RSA rSA = this.GetRSAPublicKey();
505 if (rSA != null)
506 {
507 stringBuilder.Append(rSA.KeySize);
508 }
509 }
510 catch (NotSupportedException)
511 {
512 }
513 stringBuilder.AppendLine();
514 stringBuilder.Append(" ");
515 stringBuilder.Append("Key Blob: ");
516 stringBuilder.AppendLine(publicKey.EncodedKeyValue.Format(multiLine: true));
517 stringBuilder.Append(" ");
518 stringBuilder.Append("Parameters: ");
519 stringBuilder.Append(publicKey.EncodedParameters.Format(multiLine: true));
520 }
521 catch (CryptographicException)
522 {
523 }
524 Pal.AppendPrivateKeyInfo(stringBuilder);
525 X509ExtensionCollection extensions = Extensions;
526 if (extensions.Count > 0)
527 {
528 stringBuilder.AppendLine();
529 stringBuilder.AppendLine();
530 stringBuilder.Append("[Extensions]");
531 foreach (X509Extension item in extensions)
532 {
533 try
534 {
535 stringBuilder.AppendLine();
536 stringBuilder.Append("* ");
537 stringBuilder.Append(item.Oid.FriendlyName);
538 stringBuilder.Append('(');
539 stringBuilder.Append(item.Oid.Value);
540 stringBuilder.Append("):");
541 stringBuilder.AppendLine();
542 stringBuilder.Append(" ");
543 stringBuilder.Append(item.Format(multiLine: true));
544 }
545 catch (CryptographicException)
546 {
547 }
548 }
549 }
550 stringBuilder.AppendLine();
551 return stringBuilder.ToString();
552 }
string GetNameInfo(X509NameType nameType, bool forIssuer)

References System.Runtime.Serialization.Dictionary, System.Security.Cryptography.X509Certificates.X509Certificate2.Extensions, System.Security.Cryptography.X509Certificates.X509Certificate.FormatDate(), System.Security.Cryptography.Oid.FriendlyName, System.Security.Cryptography.X509Certificates.X509Certificate2.GetNameInfo(), System.Security.Cryptography.X509Certificates.X509Certificate2.IssuerName, System.item, System.Security.Cryptography.X509Certificates.X500DistinguishedName.Name, System.Security.Cryptography.X509Certificates.X509Certificate2.NotAfter, System.Security.Cryptography.X509Certificates.X509Certificate2.NotBefore, System.Security.Cryptography.X509Certificates.X509Certificate2.PublicKey, System.Security.Cryptography.X509Certificates.X509Certificate2.SerialNumber, System.Security.Cryptography.X509Certificates.X509Certificate2.SignatureAlgorithm, System.Security.Cryptography.X509Certificates.X509Certificate2.SubjectName, System.Security.Cryptography.X509Certificates.X509Certificate2.Thumbprint, System.Security.Cryptography.X509Certificates.X509Certificate2.ToString(), and System.Security.Cryptography.Oid.Value.