smartpasslib (Rust) v4.0.0
Smart Passwords Library for Rust: Cryptographic password generation and management without storage. Generate passwords from secrets, verify knowledge without exposure.
Cross-Platform Determinism: Same secret + same parameters = identical password on Rust, C#, Python, Kotlin, Go, JavaScript.
Decentralized by Design: No cloud, no database, no trust required.
⚠️ Disclaimer
By using this software, you agree to the full disclaimer terms.
Summary: Software provided "AS IS" without warranty. You assume all risks.
Full legal disclaimer: See DISCLAIMER.md
Core Principles
- Zero-Storage Security: No passwords or secret phrases are ever stored or transmitted
- Decentralized Architecture: No central servers, no cloud dependency
- Cross-Platform Deterministic Generation: SHA-256 based, identical across languages
- Metadata Only: Store only public keys and descriptions
- On-Demand Regeneration: Passwords are recalculated when needed
- Cryptographically Secure: Uses SHA-256 and
randcrate
Key Features
- Decentralized & Serverless: No central database, no cloud lock-in
- Smart Password Generation: Deterministic from secret phrase
- Public/Private Key System: 15-30 iterations for private key, 45-60 for public key (dynamic per secret)
- Secret Verification: Verify secret without exposing it
- Random Password Generation: Cryptographically secure random passwords
- Authentication Codes: Short codes for 2FA/MFA (4-100 chars)
- Metadata Manager: Store and manage password metadata locally
- No External Dependencies: Pure Rust, uses standard crypto
Security Model
- Proof of Knowledge: Public keys verify secrets without exposing them
- Decentralized Trust: No third party needed — you control your secrets completely
- Deterministic Security: Same input = same output, always reproducible across platforms
- Dynamic Iteration Counts: Private key uses 15-30 iterations, public key uses 45-60 iterations (deterministic per secret)
- No Vulnerable Metadata Storage: Only public keys and descriptions can be stored (optional)
- Zero Storage of Secrets: Secret phrases exist only in your memory, private keys are derived on-demand and never persisted
- No Recovery Backdoors: Lost secret = permanently lost passwords (by design)
Research Paradigms & Publications
- Pointer-Based Security Paradigm - Architectural Shift from Data Protection to Data Non-Existence
- Local Data Regeneration Paradigm - Ontological Shift from Data Transmission to Synchronous State Discovery
Technical Foundation
Key derivation (same as Python/JS/Kotlin/Go/C# versions v4.0.0):
| Key Type | Iterations | Purpose |
|---|---|---|
| Private Key | 15-30 (dynamic) | Password generation (never stored, never transmitted) |
| Public Key | 45-60 (dynamic) | Verification (stored locally) |
Character Set: !@#$%^&*()_+-=[]{};:,.<>?/ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz
Validation Rules:
- Secret phrase: minimum 12 characters
- Password length: 12-100 characters
- Code length: 4-100 characters
Installation
[]
= "4.0"
Quick Usage
Generate Smart Password
use generate_smart_password_sync;
let secret = "MyStrongSecretPhrase2026!";
let password = generate_smart_password_sync.unwrap;
println!;
Generate Public/Private Keys
use ;
let secret = "MyStrongSecretPhrase2026!";
let public_key = generate_public_key.unwrap;
let private_key = generate_private_key.unwrap;
Verify Secret
use ;
let secret = "MyStrongSecretPhrase2026!";
let stored_public_key = "...";
let is_valid = verify_secret.unwrap;
Generate Random
use ;
let strong = generate_strong_password.unwrap;
let code = generate_code.unwrap;
Metadata Manager
use ;
let mut manager = new.unwrap;
let sp = new.unwrap;
manager.add.unwrap;
let retrieved = manager.get.unwrap;
manager.delete.unwrap;
API Reference
Constants
| Constant | Type | Description |
|---|---|---|
VERSION |
&str | Library version (4.0.0) |
CHARS |
&str | Character set used for generation |
Functions
| Function | Parameters | Returns | Description |
|---|---|---|---|
generate_private_key(secret) |
secret: &str | Result<String, Error> | Private key (15-30 iterations) |
generate_public_key(secret) |
secret: &str | Result<String, Error> | Public key (45-60 iterations) |
verify_secret(secret, public_key) |
secret, public_key | Result<bool, Error> | Verify secret matches public key |
generate_smart_password_sync(secret, length) |
secret, length | Result<String, Error> | Deterministic password |
generate_strong_password(length) |
length: usize | Result<String, Error> | Cryptographically random |
generate_base_password(length) |
length: usize | Result<String, Error> | Simple random password |
generate_code(length) |
length: usize | Result<String, Error> | Short code (4-100 chars) |
Classes
| Class | Description |
|---|---|
SmartPassword |
Metadata container (public_key, description, length) |
SmartPasswordManager |
Persistent storage for password metadata (JSON file) |
Examples
# Run demo with interactive menu
Output:
========================================
SmartPassLib v4.0.0 Demo
========================================
+--------------------------------------------------+
| SMART PASS GENERATOR |
+--------------------------------------------------+
| 1. Generate Smart Password |
| 2. Generate Random Password |
| 3. Generate 2FA Code |
| 4. Generate Key Pair |
| 5. Verify Secret |
| 0. Exit |
+--------------------------------------------------+
Select option: 1
+--------------------------------------------------+
| SMART PASSWORD GENERATOR |
+--------------------------------------------------+
Enter secret phrase: MyStrongSecretPhrase2026!
Password length [16]: 16
[OK] Password generated!
Length: 16
Password: ,9;?/SMtORgwSZ.5
Time: 655us
Public key (for storage):
ac8d93d6b4b79b100e9e254c6dd1511cb22dfb5981c90b79409a22cc03460f07
Press Enter to continue...
+--------------------------------------------------+
| SMART PASS GENERATOR |
+--------------------------------------------------+
| 1. Generate Smart Password |
| 2. Generate Random Password |
| 3. Generate 2FA Code |
| 4. Generate Key Pair |
| 5. Verify Secret |
| 0. Exit |
+--------------------------------------------------+
Select option: 0
Goodbye!
# Run benchmarks
# Run tests
# Build documentation
Cross-Platform Implementations
The same deterministic algorithm is available in multiple languages. SmartPassLib Rust produces identical passwords to:
| Language | Repository |
|---|---|
| Python | smartpasslib |
| JavaScript | smartpasslib-js |
| Kotlin | smartpasslib-kotlin |
| Go | smartpasslib-go |
| C# | smartpasslib-csharp |
| Rust | smartpasslib (this) |
Ecosystem
Core Libraries:
- smartpasslib - Python
- smartpasslib-js - JavaScript
- smartpasslib-kotlin - Kotlin
- smartpasslib-go - Go
- smartpasslib-csharp - C#
- smartpasslib - Rust (this)
CLI Applications:
- CLI Smart Password Manager (Python)
- CLI Smart Password Generator (Python)
- CLI Smart Password Manager (C#)
- CLI Smart Password Generator (C#)
Desktop Applications:
Other:
Development
Commands
# Compilation check
# Run tests
# Run demo
# Run benchmarks
# Documentation
# Format
# Linter
License
Copyright © 2026, Alexander Suvorov
Author
Alexander Suvorov
- GitHub: smartlegionlab
- Website: smartlegionlab.com
Support
- Issues: GitHub Issues