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 asymmetric;
13pub mod contract;
14pub mod encryptor;
15pub mod error;
16pub mod factory;
17pub mod guard;
18pub mod guomi;
19pub mod hash;
20pub mod integrations;
21pub mod kdf;
22pub mod key;
23pub mod manager;
24pub mod pqc;
25pub mod registry;
26
27/// 项目宠物「Locky」:NAME / TAGLINE / ASCII / SVG。
28pub mod pet;
29
30// 常用类型提根:`encryption::Error` / `encryption::Result`(与兄弟项目一致)。
31pub use error::{Error, Result};
32
33mod internal;