masoud-kaderpur/CrypticCore-Engine
GitHub: masoud-kaderpur/CrypticCore-Engine
一款基于 Java 的高性能文件加密引擎,采用解耦架构实现内存高效的流式数据转换并内置生产级可观测性。
Stars: 3 | Forks: 0
# CrypticCore Engine




## CrypticCore 是一个基于 Java 的高性能加密引擎,专为内存高效的文件
转换而设计。它实现了将加密逻辑与数据流处理分离的解耦架构,并通过 OpenTelemetry 丰富了生产级、厂商中立的分布式追踪。
## 1. 理论基础
### 1.1 转换(XOR 逻辑)
该引擎利用按位**异或 (XOR)**运算。鉴于 XOR 是一种对合运算,该转换是自反的,允许使用相同的加密和解密逻辑。该运算定义为:
$$P \oplus K = C$$
$$C \oplus K = P$$
### 1.2 密钥流(模运算)
为了处理明文长度超过密钥长度的数据流,实现了循环密钥调度:
$$i_{key} = i_{file} \pmod{L_{key}}$$
## 2. 实现细节
### 2.1 Java 类型处理(符号扩展缓解)
为了防止在从 `byte` 隐式提升为 32 位 `int` 期间发生意外的符号扩展,应用了 $0xFF$ 的位掩码以保持 8 位完整性:
$$Result = (P \land 0xFF) \oplus (K \land 0xFF)$$
### 2.2 内存效率与性能
* **O(1) 空间复杂度**:以离散的 **8 KB 缓冲区**处理数据,允许处理任意大小的文件(已测试最高达 5 GB),且 RAM 占用极小。
* **吞吐量**:针对高速 I/O 进行了优化,在标准硬件上实现了超过 **400 MB/s** 的速度。
* **分布式追踪**:原生的 OpenTelemetry 监测可追踪执行流、文件大小和流状态,且不会阻塞性能。
### 2.3 健壮性与安全性
* **原子写入**:采用 `.tmp` 文件暂存策略。最终输出仅在成功完成后通过原子 `move` 操作创建,防止在崩溃或断电期间发生数据损坏。
* **内存清理**:加密密钥在使用后立即通过 `Arrays.fill()` 在 JVM 堆中被显式覆盖,以缓解内存转储攻击。
* **头部验证**:严格的魔数和版本检查可防止处理不兼容或损坏的文件。
### 2.4 SOLID 架构与解耦
该引擎基于 SOLID 原则构建,以确保可扩展性和可测试性:
* **单一职责原则 (SRP)**:I/O 处理、头部验证、指标记录和加密逻辑被严格分离到专门的组件中(`HeaderHandler`、`FileValidator`、`EncryptionEngine`)。
* **依赖倒置原则 (DIP)**:该引擎不依赖于特定的 UI 或监控平台。它通过 `ProgressObserver` 接口传达进度,并通过构造函数注入接受厂商中立的 Micrometer `MeterRegistry`,使其与 Prometheus、Dynatrace 或 Datadog 兼容。
* **接口隔离原则:**加密策略通过 `CipherAlgorithm` 接口注入,使得引擎无需修改核心流处理逻辑即可开放支持未来的算法(例如 AES)。
## 3. 云原生与容器化
该引擎已完全容器化,以确保环境的一致性和安全性。
* **多阶段 Docker 构建**:使用构建器阶段(Maven)和加固的运行时阶段(JRE Alpine),以最小化镜像大小和攻击面。
* **安全加固**:容器执行被限制为**非 Root 用户**。
* **编排栈**:包含一个统一的 `docker-compose.yml`,用于启动本地兼容 OpenTelemetry 的后端(Jaeger),以通过 OTLP 网络层接收和可视化应用程序性能追踪。
## 4. 文件格式规范
每个加密文件均以一个 4 字节的元数据头部开始。
| 偏移量 | 长度 | 描述 | 值 (Hex / ASCII) |
|:-------|:--------|:-------------------|:--------------------|
| 0x00 | 3 Bytes | 魔数 (CCE) | `0x43 0x43 0x45` |
| 0x03 | 1 Byte | 格式版本 | `0x01` |
## 5. 使用方法
### 5.1 本地执行
```
java -jar target/CrypticCore-jar-with-dependencies.jar
标签:GET参数, OpenTelemetry, 内存优化, 加密解密, 域名枚举, 流式处理, 版权保护, 用户代理, 请求拦截