secure-gate 0.6.1

Zero-cost secure wrappers for secrets — stack for fixed, heap for dynamic
Documentation
[package]

name = "secure-gate"

version = "0.6.1"

edition = "2021"

license = "MIT OR Apache-2.0"

description = "Zero-cost secure wrappers for secrets — stack for fixed, heap for dynamic"

repository = "https://github.com/Slurp9187/secure-gate"

documentation = "https://docs.rs/secure-gate"

keywords = ["crypto", "no-std", "security", "zeroize"]

categories = ["cryptography", "no-std", "data-structures"]



[dependencies]

rand = { version = "0.9", optional = true }

zeroize = { version = "1.8", default-features = false, optional = true, features = [

  "alloc",

  "zeroize_derive",

] }



# These three are only ever used by the optional `conversions` feature

hex = { version = "0.4", optional = true, features = ["alloc"] }

base64 = { version = "0.22", optional = true }

subtle = { version = "2.5", optional = true }



[dev-dependencies]

criterion = { version = "0.5", features = ["html_reports"] }



# ──────────────────────────────────────────────────────────────

# Features

# ──────────────────────────────────────────────────────────────

[features]

# Keep exactly this — perfect balance

default = ["zeroize"]



# Core safety — almost everyone wants this

zeroize = ["dep:zeroize"]



# Cryptographic randomness — opt-in

rand = ["dep:rand"]



# Ergonomic conversions — opt-in, very popular

conversions = ["dep:hex", "dep:base64", "dep:subtle"]



# Convenience super-set — recommended in docs

full = ["zeroize", "rand", "conversions"]





[[bench]]

name = "fixed_vs_raw"

harness = false