12 releases

0.5.1 Nov 26, 2024
0.5.0 Jul 15, 2024
0.4.1 Aug 24, 2023
0.4.0 Nov 8, 2022
0.2.0 Dec 23, 2019

#234 in Encoding

Download history 9292/week @ 2024-08-20 9535/week @ 2024-08-27 9464/week @ 2024-09-03 7009/week @ 2024-09-10 6693/week @ 2024-09-17 7489/week @ 2024-09-24 9716/week @ 2024-10-01 9594/week @ 2024-10-08 9433/week @ 2024-10-15 10377/week @ 2024-10-22 8521/week @ 2024-10-29 8265/week @ 2024-11-05 9061/week @ 2024-11-12 9075/week @ 2024-11-19 9808/week @ 2024-11-26 8598/week @ 2024-12-03

37,718 downloads per month
Used in 55 crates (16 directly)

MIT/Apache

155KB
3K SLoC

Crates.io docs.rs Crates.io

Compatible with rustc 1.61. Minimal rustc version bumps happen only with minor number bumps in this project.

picky-asn1-der

Portions of project serde_asn1_der are held by Keziah Biermann, 2019 as part of this project.

This crate implements an ASN.1-DER subset for serde.

The following types have built-in support:

  • bool: The ASN.1-BOOLEAN-type
  • u8, u16, u32, u64, u128, usize: The ASN.1-INTEGER-type
  • (): The ASN.1-NULL-type
  • &[u8], Vec<u8>: The ASN.1-OctetString-type
  • &str, String: The ASN.1-UTF8String-type

More advanced types are supported through wrappers:

  • Integer (as big integer)
  • Bit String
  • Object Identifier
  • Utf8 String
  • Numeric String
  • Printable String
  • IA5 String
  • Generalized Time
  • UTC Time
  • Application Tags from 0 to 15
  • Context Tags from 0 to 15

Everything sequence-like combined out of these types is also supported out of the box.

Check out doc.rs for tested code examples.

Dependencies

~0.4–1MB
~23K SLoC