Menu

Tree [331320] master /
 History

HTTPS access


File Date Author Commit
 Algorithms 2025-03-05 pkc pkc [5a1854] 异步多线程文件加密,aes,des密钥长度判断bug修复,新增icon
 Languages 2025-03-14 pkc pkc [331320] ui美化,国际化
 Models 2025-03-14 pkc pkc [331320] ui美化,国际化
 Properties 2025-03-06 pkc pkc [f732fc] 图片base64互相转换
 Resources 2025-03-06 pkc pkc [f732fc] 图片base64互相转换
 Utils 2025-03-03 pkc pkc [b988fd] 界面大修,dpi修复,新增sm2,新增README
 View 2025-03-14 pkc pkc [331320] ui美化,国际化
 doc 2025-03-13 pkc pkc [e9539a] bug修复,ui美化
 test 2025-03-09 pkc pkc [8b2492] pytest demo
 .gitattributes 2025-02-25 pkc pkc [34f989] 添加 .gitattributes、.gitignore 和 README.md。
 .gitignore 2025-02-25 pkc pkc [34f989] 添加 .gitattributes、.gitignore 和 README.md。
 LICENSE 2025-03-04 pankc pankc [4c638f] add LICENSE.
 LitteFancyTool.sln 2025-03-04 pkc pkc [e6a4cf] markdown说明更新
 LittleFancyTool.csproj 2025-03-11 pkc pkc [40691d] modbus poll
 MainForm.Designer.cs 2025-03-14 pkc pkc [331320] ui美化,国际化
 MainForm.cs 2025-03-14 pkc pkc [331320] ui美化,国际化
 MainForm.resx 2025-03-14 pkc pkc [331320] ui美化,国际化
 Program.cs 2025-03-07 pkc pkc [67e0b6] inovke测试
 README.md 2025-03-13 pkc pkc [c58e66] sockets client
 app.manifest 2025-03-03 pkc pkc [b988fd] 界面大修,dpi修复,新增sm2,新增README
 bitbug_favicon (1).ico 2025-03-05 pkc pkc [5a1854] 异步多线程文件加密,aes,des密钥长度判断bug修复,新增icon

Read Me

妙妙小工具 LittleFancyTool

功能模块

一、简介

本工具是一款基于 Windows Forms 开发的桌面应用程序,旨在为用户提供多种常用功能。支持 rs232,rs485,modbus串口通信调试功能以及socket服务端功能,支持常见加密解密的功能如 RSA、SM2、AES、DES、SM4、MD5、SHA、SM3 算法的加密解密,支持图像文本 Base64 转换,支持文件异步多线程加密解密。

二、功能特点

  1. 串口调试:

  2. 模式选择:支持 RS - 232 、RS - 485和modbus轮询slave三种种通信模式的切换,满足不同设备的通信需求。

  3. 配置:用户可以自由设置串口的波特率、数据位、停止位、校验位等参数,确保与目标设备的通信兼容性。
  4. 数据收发:提供数据发送和接收功能,用户可以输入要发送的数据,并提供多种格式,并实时查看接收到的数据。
  5. 握手协议:支持无握手、RTS 用户可根据实际情况进行选择。

  6. sockets通信:

  7. 模式选择:支持服务端和客户端的切换。

  8. 配置:用户可以自由服务端的监听端口和客户端需要连接的IP和端口。
  9. 数据收发:提供UTF8数据发送和接收功能.

  10. 多算法加解密支持:

  11. RSA:一种非对称加密算法,可生成密钥对,公钥用于加密,私钥用于解密,支持多种密钥长度(如 512、1024、2048、4096 位)和填充方式(如 Pkcs1、OaepSHA1、OaepSHA256 等),适用于数字签名、密钥交换等场景。

  12. SM2:我国自主设计的非对称加密算法,能生成密钥对,公钥加密、私钥解密。密钥长度通常 256 位,有 C1C3C2、C1C2C3 加密模式,用于数字签名、密钥交换、加密,安全高效。
  13. AES:对称加密算法,加密和解密速度快,使用相同密钥,支持不同的填充方式(如 PKCS7、None、Zeros),常用于对大量数据的加密。
  14. DES:对称加密算法,密钥长度 64 位(实际有效 56 位),使用 64 位初始化向量,可实现数据加密解密,不过由于密钥长度较短,安全性相对较低。
  15. SM4:国产对称加密算法,属于国密算法体系,密钥和初始化向量均为 128 位,具有较高安全性,支持生成随机密钥和向量,加密后数据以 Base64 字符串输出。
  16. MD5:一种广泛使用的哈希算法,能将任意长度数据转换为固定 128 位哈希值。但存在安全漏洞,易被碰撞攻击,常用于数据完整性校验场景。
  17. SHA:安全哈希算法家族,包含多个成员如 SHA - 1、SHA - 2(含 SHA - 256、 SHA - 384、SHA - 512 等)。能生成不同长度哈希值,SHA - 1 有安全隐患,SHA - 2 仍广泛用于数字签名、数据完整性验证等。
  18. SM3:我国自主设计的密码哈希算法,可把任意长度数据转换为 256 位哈希值,具备高安全性和抗碰撞性,用于数字签名、认证等信息安全领域。
  19. Base64:一种编码方式,虽不是严格意义上的加密算法,但可对数据进行简单的可逆转换,常用于数据传输过程中的编码。
  20. 密钥管理:
  21. 对于 RSA 算法,可在软件界面生成密钥对,公钥和私钥以 PEM 文本格式呈现,方便用户保存和使用。同时,在加密和解密时能确保使用对应的密钥对。
  22. 其他对称加密算法如 AES、DES、SM4,可根据用户需求生成随机密钥和初始化向量,密钥和向量也能以合适的字符串格式(如十六进制字符串)展示,便于记录与后续使用。

  23. 文件加密:

  24. 文件加密解密:AES 对称加密算法,支持多文件输入异步多线程加密解密。

界面交互:

  • 采用 Antdui 控件设计界面,通过菜单栏可轻松切换不同加密算法的操作界面,每个界面针对相应算法的特点布局了输入框、输出框、密钥框、加解密按钮以及相关参数设置下拉框(如密钥长度、填充方式)等控件,方便用户操作。
  • 界面具备自适应能力和自动 dpi 缩放。

测试

  • 使用 pytest 和 pywinauto 编写了一个简易的测试 demo

需求

  • .net 8.0

示例

serialPort

modbus_rtu

sockets

rsa

aes

md5

base64

fileEncrypt