Skip to content
zanewayPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

161 Commits

Folders and files

Repository files navigation

HeTu (河图) - 可视化密码学工具箱

"河图与洛书是中国古代传说中上天授予的祥瑞之兆。"

HeTu 是一个基于 Go 语言和 Fyne UI 框架开发的可视化密码学工具箱,旨在为开发者和安全研究人员提供便捷的密码学数据解析、转换和验证工具。

✨ 主要功能

本工具集成了多种常用的密码学功能模块:

🛠️ 基础工具

  • 🔄 编码转换: 支持 Base64 与 Hex 格式的相互转换,支持自动识别数据类型。
  • 🌳 ASN.1 解析: 可视化展示 ASN.1 编码数据的结构树,方便分析数据结构。
  • 📄 格式化工具: 支持 JSON 和 XML 数据的格式化与美化。

🔐 密钥与加解密

  • 🗝️ 密钥工具:
    • 支持生成 RSA (1024/2048/4096)、SM2、AES (128/256/384/512)、SM4 密钥。
    • 支持使用上述算法进行加密和解密操作。
  • 🧩 Shamir 门限共享: 实现 Shamir 秘密共享算法 (Shamir's Secret Sharing),支持秘密的拆分 (Split) 与恢复 (Combine)。
  • 📄 TOTP: 生成基于时间的一次性密码 (TOTP),支持实时倒计时显示。

📜 证书与标准

  • 🏆 证书解析: 解析 X.509 数字证书,展示详细字段信息。
  • 🎫 P12/PFX: 解析 PKCS#12 格式的证书文件。
  • 🔗 P7B 证书链: 解析 PKCS#7 证书链文件。
  • 📜 CRL 列表: 解析证书吊销列表 (CRL),支持验证证书序列号。
  • 📦 信封解析: 支持解析 SM2 数字信封格式数据。

💾 实用特性

  • 历史记录:
    • 自动保存操作记录到本地 SQLite 数据库 (~/.hetu/history.db)。
    • 按功能模块独立存储,互不干扰。
    • 支持快速检索和清除历史数据。
  • 拖拽支持: 支持直接拖拽文件到应用窗口进行读取和解析。

🚀 快速开始

环境要求

  • Go 1.23+
  • GCC (用于编译 Fyne 和 SQLite 依赖)

安装依赖

# 安装 Fyne 命令行工具
go get fyne.io/fyne/v2/cmd/fyne@latest

# 安装 SQLite 驱动
go get github.com/mattn/go-sqlite3

# 下载项目依赖
go mod tidy

运行与构建

直接运行

go run main.go

打包应用

项目提供了针对 Windows 和 macOS 的构建脚本:

macOS:

sh build-macos-app.sh

Windows:

sh build-windows-app.sh

📝 待办事项 (TODO)

  • 验证证书合规性
  • C1C3C2 格式转换
  • 密钥 PKCS#1 / PKCS#8 格式转换
  • 时间戳请求/响应解析
  • 更多国密算法支持

📄 许可证

本项目采用开源许可证,详情请参阅 LICENSE 文件。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages