redactedsecret 0.4.1

This is a fork of the official Secrecy crate [https://github.com/iqlusioninc/crates/] Wrapper types and traits for secret management which help ensure they aren't accidentally copied, logged, or otherwise exposed (as much as possible), and also ensure secrets are securely wiped from memory when dropped.
docs.rs failed to build redactedsecret-0.4.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: redactedsecret-0.4.0

RedactedSecret

Secret wrapper type for more carefully handling secret values (e.g. passwords, cryptographic keys, access tokens or other credentials).

Usage

use redactedsecret::{Secret, SecretString, SecretVec, SecretBox};

Examples

  1. Create a Secret on any type (Generic Type)
use redactedsecret::{Secret, ExposeSecret};

let dummy_PIN = Secret::new(1234);

assert_eq!(dummy_PIN.expose_secret().to_owned(), 1234);
  1. Create a string from SecretString
use redactedsecret::{SecretString, ExposeSecret};

let dummy_PIN = SecretString::new("I am a string PIN".to_owned());

assert_eq!(dummy_PIN.expose_secret().to_owned(), "I am a string PIN".to_owned());
  1. Create a Boxed type from a SecretBox type
use redactedsecret::{Secret, ExposeSecret};

let dummy_PIN = Box::new(Secret::new(1234));

assert_eq!(dummy_PIN.expose_secret().to_owned(), 1234);
  1. Create a vector from a SecretVec
use redactedsecret::{SecretVec, ExposeSecret};

let dummy_PIN = SecretVec::new(vec![1234]);

assert_eq!(dummy_PIN.expose_secret().to_owned(), vec![1234]);