Security 上級

PEM形式の暗号オブジェクトをネイティブにエンコード・デコードする。

✕ Java 8
String pem = "-----BEGIN CERTIFICATE-----\n"
    + Base64.getMimeEncoder()
        .encodeToString(
            cert.getEncoded())
    + "\n-----END CERTIFICATE-----";
✓ Java 25 (Preview)
// Encode to PEM
String pem = PEMEncoder.of()
    .encodeToString(cert);
// Decode from PEM
var cert = PEMDecoder.of()
    .decode(pemString);
このコードに問題がありますか? お知らせください。
🧹

Base64の手動処理不要

PEMヘッダー、改行折り返し、Base64が自動的に処理されます。

🔄

双方向変換

1つのAPIでPEMへのエンコードとPEMからのデコードが可能。

🛡️

標準形式

RFC 7468準拠のPEM出力を生成します。

旧来のアプローチ
手動Base64+ヘッダー
モダンなアプローチ
PEM API
JDKバージョン
25
難易度
上級
PEMエンコード・デコード
プレビュー

JDK 25(JEP 470)でプレビュー。--enable-previewが必要

PEM APIは証明書・鍵などの暗号オブジェクトをPEM形式で標準的にエンコード・デコードする手段を提供します。BEGIN/ENDヘッダー付きのBase64を手動で組み立てる必要はもうありません。

共有 𝕏 🦋 in