26 releases (12 stable)

3.0.4 Apr 8, 2024
3.0.3 Dec 12, 2023
3.0.2 Aug 23, 2023
3.0.1 Jul 26, 2023
0.2.0 Mar 14, 2016

#9 in Cryptography

Download history 984561/week @ 2024-10-28 992970/week @ 2024-11-04 1011788/week @ 2024-11-11 1029918/week @ 2024-11-18 855296/week @ 2024-11-25 1010443/week @ 2024-12-02 1150050/week @ 2024-12-09 1042410/week @ 2024-12-16 401184/week @ 2024-12-23 559941/week @ 2024-12-30 1130081/week @ 2025-01-06 1271731/week @ 2025-01-13 1155837/week @ 2025-01-20 1288115/week @ 2025-01-27 1416155/week @ 2025-02-03 1639596/week @ 2025-02-10

5,566,051 downloads per month
Used in 2,300 crates (214 directly)

MIT license

46KB
829 lines

pem

A Rust library for parsing and encoding PEM-encoded data.

Build Status

Documentation

Module documentation with examples

Usage

Add this to your Cargo.toml:

[dependencies]
pem = "3.0"

Here is a simple example that parse PEM-encoded data and prints the tag:

use pem::parse;

const SAMPLE: &'static str = "-----BEGIN RSA PRIVATE KEY-----
MIIBPQIBAAJBAOsfi5AGYhdRs/x6q5H7kScxA0Kzzqe6WI6gf6+tc6IvKQJo5rQc
dWWSQ0nRGt2hOPDO+35NKhQEjBQxPh/v7n0CAwEAAQJBAOGaBAyuw0ICyENy5NsO
2gkT00AWTSzM9Zns0HedY31yEabkuFvrMCHjscEF7u3Y6PB7An3IzooBHchsFDei
AAECIQD/JahddzR5K3A6rzTidmAf1PBtqi7296EnWv8WvpfAAQIhAOvowIXZI4Un
DXjgZ9ekuUjZN+GUQRAVlkEEohGLVy59AiEA90VtqDdQuWWpvJX0cM08V10tLXrT
TTGsEtITid1ogAECIQDAaFl90ZgS5cMrL3wCeatVKzVUmuJmB/VAmlLFFGzK0QIh
ANJGc7AFk4fyFD/OezhwGHbWmo/S+bfeAiIh2Ss2FxKJ
-----END RSA PRIVATE KEY-----
";

let pem = parse(SAMPLE)?;
println!("PEM tag: {}", pem.tag);

Dependencies

~205–380KB