arturvojceh-ops/quantum-vault
GitHub: arturvojceh-ops/quantum-vault
一个基于Rust的高性能后量子密码学库,提供Kyber、Dilithium等NIST标准算法,旨在保护数字资产免受量子计算威胁。
Stars: 0 | Forks: 0
# 🔐 Quantum Vault - 后量子密码学库
Quantum Vault 是一个高性能、内存安全的 Rust 库,实现了后量子加密算法,旨在保护数字资产免受量子计算威胁。
## 🚀 功能特性
- **🔐 后量子算法**:CRYSTALS-Kyber、CRYSTALS-Dilithium、FALCON、SPHINCS+
- **⚡ 高性能**:SIMD 优化与并行处理
- **🛡️ 内存安全**:使用 Rust 编写,提供全面的安全保证
- **🌐 区块链就绪**:与区块链协议的本地集成
- **🔗 跨平台**:为浏览器应用提供 WebAssembly 支持
- **📚 文档完善**:全面的 API 文档与示例
## 🎯 快速开始
在 `Cargo.toml` 中添加以下内容:
```
[dependencies]
quantum-vault = "0.1.0"
```
### 基本用法
```
use quantum_vault::{prelude::*, crypto::kyber::Kyber768};
fn main() -> Result<(), Box> {
// Generate quantum-resistant key pair
let (public_key, private_key) = Kyber768::keypair()?;
// Encrypt message with quantum-resistant algorithm
let message = b"Hello, quantum world!";
let (ciphertext, shared_secret) = Kyber768::encapsulate(&public_key)?;
// Decrypt with private key
let decrypted_secret = Kyber768::decapsulate(&private_key, &ciphertext)?;
assert_eq!(shared_secret, decrypted_secret);
println!("✅ Quantum-secure communication successful!");
Ok(())
}
```
### 数字签名
```
use quantum_vault::{prelude::*, crypto::dilithium::Dilithium3};
fn main() -> Result<(), Box> {
// Generate quantum-resistant signing key pair
let (public_key, private_key) = Dilithium3::keypair()?;
// Sign a message
let message = b"Important quantum-secure message";
let signature = Dilithium3::sign(&private_key, message)?;
// Verify signature
let is_valid = Dilithium3::verify(&public_key, message, &signature)?;
assert!(is_valid);
println!("✅ Quantum-resistant signature verified!");
Ok(())
}
```
## 🏗️ 架构
### 核心组件
- **🔐 密码学**:后量子算法实现
- **🌐 协议**:安全通信协议
- **⛓️ 区块链**:抗量子区块链原语
- **🔧 工具**:性能优化与测试工具
### 支持的算法
| 算法 | 类型 | 安全级别 | 性能 | 状态 |
|-----------|-------|---------------|-------------|---------|
| CRYSTALS-Kyber | KEM | 128/192/256-bit | ⚡⚡⚡ | ✅ 稳定 |
| CRYSTALS-Dilithium | 签名 | 128/192/256-bit | ⚡⚡ | ✅ 稳定 |
| FALCON | 签名 | 128/256-bit | ⚡⚡⚡ | 🚧 开发中 |
| SPHINCS+ | 签名 | 128/256-bit | ⚡ | 🚧 开发中 |
## 📊 基准测试
与经典算法的性能对比(在 Intel i7-9700K 上):
| 操作 | 经典算法 | 后量子算法 | 开销 |
|-----------|-----------|---------------|----------|
| 密钥生成 | 0.1ms | 2.3ms | 23x |
| 加密 | 0.05ms | 1.8ms | 36x |
| 解密 | 0.05ms | 1.2ms | 24x |
| 签名 | 0.2ms | 3.1ms | 15.5x |
## 🛡️ 安全分析
### 量子威胁模型
**当前量子计算能力:**
- **2024**:约 1000 物理量子比特
- **2026**:约 10,000 物理量子比特(预测)
- **2030**:约 100,000 物理量子比特(预测)
**破解经典密码学:**
- **RSA-2048**:约 4 小时(10,000 量子比特)
- **ECC-256**:约 10 分钟(10,000 量子比特)
- **SHA-256**:约 2.5 小时(10,000 量子比特)
**Quantum Vault 防护:**
- **基于格密码**:指数级抗量子能力
- **基于哈希**:信息论安全性
- **混合方案**:纵深防御
## 🌐 应用场景
### 区块链安全
```
use quantum_vault::blockchain::{QuantumResistantTx, QuantumSafeWallet};
let wallet = QuantumSafeWallet::new()?;
let tx = QuantumResistantTx::builder()
.from(wallet.address())
.to(recipient)
.amount(1000)
.sign_with_quantum_signature(wallet.private_key())?;
```
### 安全消息
```
use quantum_vault::protocols::{SecureChannel, Message};
let channel = SecureChannel::initiate(&recipient_public_key)?;
let encrypted_message = channel.encrypt(&Message::new("Hello!"))?;
```
### 数字身份
```
use quantum_vault::protocols::{QuantumIdentity, Credential};
let identity = QuantumIdentity::new()?;
let credential = Credential::builder()
.attribute("name", "Alice")
.sign_with_quantum_signature(&identity)?;
```
## 🚀 安装
### 从 Crates.io
在 `Cargo.toml` 中添加:
```
[dependencies]
quantum-vault = "0.1.0"
```
### 从 GitHub
```
git clone https://github.com/arturvojceh/quantum-vault.git
cd quantum-vault
cargo build --release
```
标签:AI工具, API文档, Cargo.toml, CRYSTALS-Dilithium, CRYSTALS-Kyber, CVE, Dilithium, FALCON, Kyber, NIST标准化, Rust, Rust库, SIMD, SPHINCS+, WASM, WebAssembly, 内存安全, 区块链安全, 区块链开发, 区块链系统, 可视化界面, 后量子密码学, 威胁情报, 安全消息, 密钥交换, 并行处理, 开发者工具, 数字基础设施, 数字签名, 网络流量审计, 通知系统, 量子安全, 量子抗性, 量子计算