RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 988884
Accepted
Tima
Tima
Asked:2020-06-04 00:22:30 +0000 UTC2020-06-04 00:22:30 +0000 UTC 2020-06-04 00:22:30 +0000 UTC

X509Certificate2 中的 .pem

  • 772

再会

我有一个包含多个证书的 pem 文件:

-----BEGIN CERTIFICATE-----
MIIE/zCCBGgCAg4CMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG
A1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE
MRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl
YiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw
ODIyMDcyNzIyWhcNMTcwODIxMDcyNzIyWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE
CAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs
ZS5jb20wggNHMIICOQYHKoZIzjgEATCCAiwCggEBAMbmu6uSdZWRxnO5PteARz5I
nrdM7vJadzJcY9Spf0cAhUDWyINCrUDn8h8QjbMiAxd+E7v5N85TbfvrW+/g7lYa
e7DB0uX02Rw29yoK+TE/znNTNq6HdPn/H4ll77uJqpkWgQwXgAQ3qDKRv96QaTfr
fSXYRxG9NvKzUBs9S7Woby7K6Pgh7/EmgeiOHKSX49XD+ihvkFRSFdeL5qV5hzDf
epfk8Ghl0cyK9jpM/yKlRuUUkP1pSMwUrCrptyRpqqXmam0UfFuFhMT2SJyNTyo2
SfnyZb78lbYcVLJQLJA+O3l469eOH3Odv/Pq7bvOstBKg96Q7imz5t0honf63EMC
IQCw7FeY0QQbxWYy+MI8/0m2kiRzIruA8RUPcEs4il1mwwKCAQB4W3QLepQRTWhR
69Xv+fC5JLEDyngw9KEalKorlg6o4Z9hASMbFMwECjlXZCxKd/NFjUMbtPcrMCoa
/KuaqRvHLs2bqe94X5VR4lWCv0SgOunKBj58jnVuN/OkkLu4cSZQ/jia/yPkdcMv
w8ZjF7zjPXGVhh9XC0QU9ipVfrreGaBSN+0zODKY5TyQI84FsZFZNetOTIT0HT2S
fIDRGYaL/0xMfQx070Z07cdTTuibzJHVr38qjKqEDiwAUyjXVdE+GJ15ZD4d56Ef
0qgRpzDmuvUjOtv1t8Hr2O2HTABqRMtAKZsLEVPjwnpKpcStixfg0uIPGVIKbej4
FzHHpO6bA4IBBgACggEBAJNRaaTFe253sOVm/JmUgsO1QB5GI5hOEWLpC8KHxgwn
nf/GQUaJLrN8TT4hXgJM2CdvdAkY6et1HpT6BUoz1cYTgsE3ToIsbH3SzPJvU7jz
cPOvY1jQv+xVBrU8Ydw2D8pydbAcw/L6JZnGpFBqeHa1iFAQc0B8ToXEgxnmGAdP
IOAKAHX0S4m6CrP5fKwYbmzu8WuWO4bRqvX7QJofrs2RaGFESulw0VrMFffJ/guf
HTvhDaMW7TSCKo1tBZK9SdEbWCQN2stnfnRSyZFQ+v02oyQtLg+3vSuCx4PS9DM9
/Uh3r9JDDH3GveUMbqw8Dmy6WH9iV3oOJt8aVF8F4CMwDQYJKoZIhvcNAQEFBQAD
gYEAbxDoJM8vKVfhltpfG3YXmBKnoGb2UpdKpcjmxMt1/yX8lWJaRBwUDeiDqjVC
JGi9gXO2SDAtXl7GI1cXTs/l7QlmoTmnc6kDwqk3pl6jC72rQH3E/Fpg7hBkSWL9
3V1dbLU5id63lVD8sUEULyfWFGk3L+Uka5oiSsxwZhdIb/Q=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
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
bktiLOD6KaA=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIC2jCCAkMCAg38MA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG
A1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE
MRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl
YiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw
ODIyMDUyNzQxWhcNMTcwODIxMDUyNzQxWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE
CAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs
ZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC0z9FeMynsC8+u
dvX+LciZxnh5uRj4C9S6tNeeAlIGCfQYk0zUcNFCoCkTknNQd/YEiawDLNbxBqut
bMDZ1aarys1a0lYmUeVLCIqvzBkPJTSQsCopQQ9V8WuT252zzNzs68dVGNdCJd5J
NRQykpwexmnjPPv0mvj7i8XgG379TyW6P+WWV5okeUkXJ9eJS2ouDYdR2SM9BoVW
+FgxDu6BmXhozW5EfsnajFp7HL8kQClI0QOc79yuKl3492rH6bzFsFn2lfwWy9ic
7cP8EpCTeFp1tFaD+vxBhPZkeTQ1HKx6hQ5zeHIB5ySJJZ7af2W8r4eTGYzbdRW2
4DDHCPhZAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAQMv+BFvGdMVzkQaQ3/+2noVz
/uAKbzpEL8xTcxYyP3lkOeh4FoxiSWqy5pGFALdPONoDuYFpLhjJSZaEwuvjI/Tr
rGhLV1pRG9frwDFshqD2Vaj4ENBCBh6UpeBop5+285zQ4SI7q4U9oSebUDJiuOx6
+tZ9KynmrbJpTSi0+BM=
-----END CERTIFICATE-----

像这样↑

据我了解,pem 是一个独立证书的容器。

当我尝试通过以下方式在代码中获取此证书文件的类型时:

X509Certificate2.GetCertContentType(certBytes);

我明白了

X509ContentType.Cert //(A single X.509 certificate)

和

new X509Certificate2(certBytes)

仅检索第一个证书的数据。

是否可以将此文件的字节转换为X509Certificate2[]?

还是您必须自己解析并获取这个base64?此外,该文件可能包含以下数据:

Bag Attributes
    localKeyID: 53 61 6D 70 6C 65 20 54 65 78 74 53 61 6D 70 6C 65 20 54 65
subject=/CN=www.website.info
issuer=/C=US/O=MyCert Inc/OU=www.website.com/
-----BEGIN CERTIFICATE-----
...
c#
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    Tima
    2020-06-05T16:45:29Z2020-06-05T16:45:29Z

    最后,我通过以下方式解决了这个问题:

    const string PemCertificateEnd = "-----END CERTIFICATE-----";
    
    var separatedCertificates = Encoding.UTF8.GetString(сontent)
        .Split(new[] { PemCertificateEnd }, StringSplitOptions.None)
        .Select(x => x + PemCertificateEnd)
        .Select(x => Encoding.UTF8.GetBytes(x))
        .ToList();
    separatedCertificates.RemoveAt(separatedCertificates.Count - 1);
    
    return separatedCertificates.Select(x => new X509Certificate2(x)).ToArray();
    
    • 0

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    根据浏览器窗口的大小调整背景图案的大小

    • 2 个回答
  • Marko Smith

    理解for循环的执行逻辑

    • 1 个回答
  • Marko Smith

    复制动态数组时出错(C++)

    • 1 个回答
  • Marko Smith

    Or and If,elif,else 构造[重复]

    • 1 个回答
  • Marko Smith

    如何构建支持 x64 的 APK

    • 1 个回答
  • Marko Smith

    如何使按钮的输入宽度?

    • 2 个回答
  • Marko Smith

    如何显示对象变量的名称?

    • 3 个回答
  • Marko Smith

    如何循环一个函数?

    • 1 个回答
  • Marko Smith

    LOWORD 宏有什么作用?

    • 2 个回答
  • Marko Smith

    从字符串的开头删除直到并包括一个字符

    • 2 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5