public OrganizationCertificateDescription(X509Certificate certificate) { DistinguishedName distinguishedName = new DistinguishedName(certificate.Subject); subjectName = GetValue(distinguishedName, "CN"); organizationName = GetValue(distinguishedName, "O"); organizationId = GetValue(distinguishedName, "OID.1.2.840.113549.1.9.2"); email = GetValue(distinguishedName, "E"); owner = GetValue(distinguishedName, "SN"); certificateContent = certificate.GetRawCertData(); ParsedOrganizationId parsedOrganizationId = ExtractParsedOrganizationId(); inn = parsedOrganizationId != null ? parsedOrganizationId.Inn : ""; kpp = parsedOrganizationId != null ? parsedOrganizationId.Kpp : ""; innfl = parsedOrganizationId != null ? parsedOrganizationId.Innfl : ""; }
internal static string GetValue(DistinguishedName distinguishedName, string name) { return distinguishedName.HasAttribute(name) ? distinguishedName[name] : ""; }