On Mon, 13 Oct 2025 17:22:25 GMT, Anthony Scarpino <[email protected]> wrote:
>> Hi >> >> Please review the [Second Preview](https://openjdk.org/jeps/8360563) for the >> PEM API. The most significant changes from [JEP >> 470](https://openjdk.org/jeps/470) are: >> >> - Renamed the name of `PEMRecord` class to `PEM`. >> - Revised the new `encryptKey` methods of the `EncryptedPrivateKeyInfo` >> class to accept `DEREncodable` objects rather than just `PrivateKey` objects >> so that cryptographic objects with public keys, i.e., `KeyPair` and >> `PKCS8EncodedKeySpec`, can also be encrypted. >> - Enhanced the `PEMEncoder` and `PEMDecoder` classes to support the >> encryption and decryption of `KeyPair` and `PKCS8EncodedKeySpec` objects. >> >> thanks >> >> Tony > > Anthony Scarpino has updated the pull request incrementally with one > additional commit since the last revision: > > updates src/java.base/share/classes/java/security/PEM.java line 46: > 44: * handle the text content directly, use the decoding methods > 45: * {@link PEMDecoder#decode(String, Class)} or > 46: * {@link PEMDecoder#decode(InputStream, Class)} with {@code PEM.class} > as a s/a/an/ src/java.base/share/classes/java/security/PEM.java line 66: > 64: * <p> {@code leadingData} is {@code null} if there is no data preceding > the PEM > 65: * header during decoding. {@code leadingData} can be useful for reading > 66: * metadata that accompanies the PEM data. This value was not defensively s/was not/is not/ src/java.base/share/classes/java/security/PEM.java line 94: > 92: * @param type the PEM type identifier > 93: * @param content the Base64-encoded data, excluding the PEM header > and > 94: * footer indent one more space? src/java.base/share/classes/java/security/PEM.java line 96: > 94: * footer > 95: * @param leadingData any non-PEM data read during the decoding > process > 96: * before the PEM header. This value may be > {@code null} Missing period after null. src/java.base/share/classes/java/security/PEM.java line 98: > 96: * before the PEM header. This value may be > {@code null} > 97: * @throws IllegalArgumentException if {@code type} is incorrectly > 98: * formatted suggest indenting the second line of the throws javadoc to `IllegalArgumentException`. Same comment on other lines. src/java.base/share/classes/java/security/PEM.java line 111: > 109: type.startsWith("END ")) { > 110: throw new IllegalArgumentException("PEM syntax labels found. > " + > 111: "Only the PEM type identifier is allowed"); Missing period after "allowed". src/java.base/share/classes/java/security/PEM.java line 121: > 119: * @param type the PEM type identifier > 120: * @param content the Base64-encoded data, excluding the PEM header > and > 121: * footer indent one more space? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430010324 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430026453 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430042789 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430035970 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430046763 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430039670 PR Review Comment: https://git.openjdk.org/jdk/pull/27147#discussion_r2430043305
