Sample code for 30+ languages & platforms
Rust

Get Certificate Subject Part by Name or OID

Demonstrates the GetSubjectPart method where a name or OID can be passed.

Chilkat Rust Downloads

Rust

let cert = chilkat::Cert::new();

if cert.load_by_common_name("myCert").is_err() {
    println!("{}", cert.last_error_text());
    return;
}

// This example demonstrates getting the SERIALNUMBER part of the subject,
// if one such part exists in the cert's subject.
// Not too many certicates include the serial number in the Subject.
// (Chilean issued certificates for SII is one such case where the SERIALNUMBER part exists within the Subject.)
let Ok(mut serial_num) = cert.get_subject_part("SERIALNUMBER") else {
    println!("No SERIALNUMBER part exists.");
    return;
};

println!("{}", serial_num);

// We could also get the part by the OID.
// See https://oidref.com/2.5.4.5 for a list of OID's in the 2.5.4.* range..
// The OID for SERIALNUMBER is "2.5.4.5"
serial_num = cert.get_subject_part("2.5.4.5").unwrap_or_default();
if !cert.last_method_success() {
    println!("No SERIALNUMBER part exists.");
    return;
}

println!("{}", serial_num);