<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti" -->

---
title: Inside Java Newscast #93 // nipafx | daily.dev
description: Java 25 introduces a preview API (JEP 470) for encoding and decoding PEM (Privacy-Enhanced Mail) texts, which are textual representations of cryptographic...
canonical: https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Inside Java Newscast #93 // nipafx | daily.dev
og:description: Java 25 introduces a preview API (JEP 470) for encoding and decoding PEM (Privacy-Enhanced Mail) texts, which are textual representations of cryptographic...
og:url: https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti
og:image: https://api.daily.dev/og/posts/RkGAPpbTI.png
og:image:alt: Inside Java Newscast #93 // nipafx
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Inside Java Newscast #93 // nipafx

**[nipafx \(Nicolai Parlog\)](https://daily.dev/sources/nipafx)** · 8 min read · 0 upvotes · 0 comments

## Summary

Java 25 introduces a preview API (JEP 470) for encoding and decoding PEM (Privacy-Enhanced Mail) texts, which are textual representations of cryptographic objects like public/private keys, certificates, and certificate revocation lists. The API centers on a sealed DEREncodable interface and two immutable, thread-safe classes: PEMEncoder and PEMDecoder. Basic usage involves calling PEMEncoder.of() or PEMDecoder.of() and then encode/decode methods. The API also supports password-based encryption of private keys, custom cryptographic providers, and a PEMRecord type for handling cryptographic objects the JDK doesn't have a dedicated type for (e.g., PKCS#10 requests). Decoding can return a generic DEREncodable for pattern-matching or a specific subtype when the expected type is known.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://nipafx.dev/inside-java-newscast-93>

## Similar posts on daily.dev

- [JEP 524: PEM Encodings of Cryptographic Objects \(Second Preview\)](https://daily.dev/posts/jep-524-pem-encodings-of-cryptographic-objects-second-preview--wv0nirp4t) · Inside Java · 0 upvotes · 0 comments
- [JEP targeted to JDK 27: 538: PEM Encodings of Cryptographic Objects \(3rd Preview\) – Inside.java](https://daily.dev/posts/jep-targeted-to-jdk-27-538-pem-encodings-of-cryptographic-objects-3rd-preview-inside-java-pmcpg311z) · Inside Java · 1 upvotes · 0 comments
- [Key Encapsulation Mechanism API in Java](https://daily.dev/posts/key-encapsulation-mechanism-api-in-java-jr5offa1z) · Baeldung · 3 upvotes · 0 comments
- [JDK 25 Security Enhancements](https://daily.dev/posts/jdk-25-security-enhancements-4poqiwass) · Inside Java · 0 upvotes · 0 comments

---

Tags: [#security](https://daily.dev/tags/security), [#java](https://daily.dev/tags/java), [#cryptography](https://daily.dev/tags/cryptography)

[View this post on daily.dev](https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Inside Java Newscast #93 // nipafx","url":"https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti"},"datePublished":"2026-03-16T08:13:43.324Z","dateModified":"2026-03-16T08:21:45.983Z","description":"Java 25 introduces a preview API (JEP 470) for encoding and decoding PEM (Privacy-Enhanced Mail) texts, which are textual representations of cryptographic...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/42ba845f9c8b1bcf39f69de21f6b9b8f?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/42ba845f9c8b1bcf39f69de21f6b9b8f?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"nipafx (Nicolai Parlog)","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"nipafx (Nicolai Parlog)","logo":"https://media.daily.dev/image/upload/s--H_Echo_u--/f_auto,q_auto/v1773648772/logos/nipafx?_a=BAMAMiiu0","url":"https://daily.dev/sources/nipafx"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/inside-java-newscast-93-nipafx-rkgappbti","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"security,java,cryptography","timeRequired":"PT8M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"nipafx (Nicolai Parlog)","item":"https://daily.dev/sources/nipafx"},{"@type":"ListItem","position":3,"name":"Inside Java Newscast #93 // nipafx"}]}
```

