3

xmlファイルからx509certificateデータを抽出しました

        <X509Data>
            <X509Certificate>
      MIIB7DCCAVmgAwIBAgIQPjHcBTL63bBLuJZ88RcrCjAJBgUrDgMCHQUAMBExDzANBgNVBAMT
      BnJvbWVvazAgFw0xMDAzMTUwMjI1MjZaGA8yMTEwMDIxOTAyMjUyNlowETEPMA0GA1UEAxMG
      cm9tZW9rMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDAu/sBh13A27rR7gJpZsI6zCee
      TXNohQWlq2z6Zg8Oxzsy5JoVV....==
            </X509Certificate>
        </X509Data>

このデータからJavaX509Certificateを作成するにはどうすればよいですか?

私はすでに試しました

    CertificateFactory cf = CertificateFactory.getInstance(X_509);
    ByteArrayInputStream bais = new ByteArrayInputStream(certBytes);
    X509Certificate x509cert = (X509Certificate) cf.generateCertificate(bais);
    bais.close();

しかし、エラーが発生します

java.security.cert.CertificateParsingException: invalid DER-encoded certificate data.

どんな助けでも大歓迎です。

4

1 に答える 1

1

それらのバイトは PEM です。そしてJavaはそれを処理できますが、それを「-----BEGIN CERTIFICATE-----」と「-----END CERTIFICATE-----」で囲むと

于 2012-10-27T00:54:22.783 に答える