发布 v0.2.0:新增 BLS 签名与 FPE 格式保留加密

新增功能:
- BLS 签名:基于 BN256 配对的最小签名尺寸变体
- BLS 门限签名:Shamir 秘密分享 + Lagrange 插值聚合
- Hash-to-Curve:RFC 9380 兼容,SM3 消息扩展
- FPE 格式保留加密:基于 SM4 的 Feistel 密码
- SM9 Fp 平方根:Tonelli-Shanks 算法

文档更新:
- README 添加 BLS/FPE 算法描述
- CHANGELOG 添加 v0.2.0 变更记录
- SECURITY 更新版本支持表
This commit is contained in:
huangxt
2026-03-08 20:02:06 +08:00
parent 69767aee00
commit a58fe8275e
15 changed files with 1720 additions and 7 deletions
+4 -2
View File
@@ -15,6 +15,8 @@ Pure-Rust, `#![no_std]` implementation of Chinese commercial cryptography standa
| **SM3** | GB/T 32905-2016 | Cryptographic Hash Algorithm (256-bit) |
| **SM4** | GB/T 32907-2016 | Block Cipher (128-bit key, ECB/CBC/CTR/GCM/CCM/XTS) |
| **SM9** | GB/T 38635.1-2-2020 | Identity-Based Cryptography (BN256 pairing) |
| **BLS** | IETF RFC 9380 | BLS Signatures & Threshold Signatures (BN256) |
| **FPE** | NIST SP 800-38G | Format-Preserving Encryption (FF1-like) |
## Features
@@ -31,7 +33,7 @@ Add to `Cargo.toml`:
```toml
[dependencies]
libsmx = "0.1"
libsmx = "0.2"
```
### SM3 Hash
@@ -154,7 +156,7 @@ For `no_std` without `alloc`:
```toml
[dependencies]
libsmx = { version = "0.1", default-features = false }
libsmx = { version = "0.2", default-features = false }
```
## Benchmarks