Skip to content

DAT Rust Library

Repository

toml
dat = { version = "latest" }

Rust Example

Define Singleton DatManager

rust
let manager = DatManager::new();

Get Certificate

  • From DAT CMS
    rust
    let format = HTTP_CLIENT
        .get("http://localhost:8088/certificates")
        .text_result().await?;
    manager.import(certificates, true)?;
  • Generate Certificate
    rust
    let now = now_unix_timestamp();
    let certificates = DatCertificate::generate(1, P256, AES128GCMN, now - 10, now + 600, 60)?;
    dat_manager.import_certificates(vec![certificates], false)?;

Issue / Parse

rust
let plain = "plain data 유니코드 !!!";
let secure = ">! secure data 암호화 데이터";

println!("plain: {}", plain);
println!("secure: {}", secure);

let dat = manager.issue(plain, secure)?;
println!("{dat}");

let payload = manager.parse(dat.try_into()?)?.to_string_payload()?;
println!("{payload}");

See