encryption/lib.rs
1// Copyright (c) 2026 erik <erik@erik.xyz> — https://erik.xyz
2
3//! 可插拔密码学组件库的 Rust 实现:在统一契约下提供对称加密、非对称加密、
4//! 哈希与密钥派生(HKDF / PBKDF2),包含 AES/Sodium 与国密 SM2/SM3/SM4/ZUC 等实现。
5//!
6//! 架构与原版(PHP 包 `erikwang2013/encryption`)一致:契约(trait)→ 注册表
7//! (Registry)→ 门面(Manager)→ 实现;[`EncryptionManagerFactory::from_master_key`]
8//! 从 32 字节主密钥按用途标签派生各算法子密钥。
9//!
10//! crate 采用 Rust 独立格式:密文不与 PHP 版字节级互通(见 README「与原版的差异」)。
11
12pub mod contract;
13pub mod encryptor;
14pub mod error;
15pub mod factory;
16pub mod guard;
17pub mod guomi;
18pub mod hash;
19pub mod integrations;
20pub mod kdf;
21pub mod key;
22pub mod manager;
23pub mod registry;
24
25/// 项目宠物「Locky」:NAME / TAGLINE / ASCII / SVG。
26pub mod pet;
27
28// 常用类型提根:`encryption::Error` / `encryption::Result`(与兄弟项目一致)。
29pub use error::{Error, Result};
30
31mod internal;