
利用Qt开发的开源小型项目,QuickEncrypt数据安全工具。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
QuickEncrypt是一款便捷的数据安全工具,它采用直观的托盘图标、悬浮窗、鼠标拖拽和右键菜单操作模式,为用户提供文件和文本的加解密(采用RC4+AES算法)、Hash计算(MD5+SHA1算法)以及安全擦除等一系列功能。此外,该工具独具特色的“智能压缩”加密模式,能够有效提升数据安全性。
该工具具备以下核心功能:对鼠标拖入的文本内容进行加解密操作;对剪贴板中的文本内容进行加解密处理;对鼠标拖入的文件内容进行加解密操作;对鼠标拖入的文件内容执行安全擦除;对鼠标拖入的文本内容进行Hash值的计算;对剪贴板中的文本内容进行Hash值的计算;以及对鼠标拖入的文件内容进行Hash值的计算。 此外,QuickEncrypt还支持超过4GB容量的大文件加密和处理。
该工具集成了多项先进的安全机制以确保数据的完整性和安全性。具体而言,文件擦除策略包括:首先将文件名随机替换;然后,以32字节为单位向文件中写入全零字节序列;随后刷新数据并关闭文件;再次随机替换文件名;以32字节为单位向文件中写入全一字节序列;再次刷新数据并关闭文件;接着截断文件大小至零字节;最后删除整个文件。经过测试表明,常用数据恢复软件难以成功恢复这些文件的原始数据。
在Hash算法方面,QuickEncrypt采用OpenSSL 0.98提供的MD5(128位)和SHA1(160位)算法来进行校验和生成。 加解密密钥的生成过程则涉及用户输入的密码明文转换成UTF-8字节数组(不包含终止符),并分别计算MD5和SHA1哈希值。 MD5哈希值被用作AES 128位密钥,而SHA1哈希值则作为RC4密钥使用。
针对文本加密策略,该工具首先将明文数据转换成UTF-8字节数组(包含终止符);然后计算明文字段数组的CRC32校验码,用于解密时校验并将CRC32值放置在明文首字节之前;接下来尝试压缩步骤二的结果(采用zlib压缩级别9),若获得较小的压缩结果则输出压缩后的编码数组,否则直接输出步骤二的结果;随后对步骤三的结果进行RC4流加密(使用OpenSSL 0.98);再对步骤四的结果进行AES_CFB_128分组加密(使用OpenSSL 0.98);之后将结果进行Base64编码(使用OpenSSL 0.98);最后在编码结果的前面添加标记“QE: |”作为标识符并输出最终结果。
对于文件加密策略而言,该工具首先会判断输入文件的扩展名是否属于常见的压缩格式或流媒体编码格式,若为如此则不启用任何数据压缩功能以保证兼容性。 然后以1MB大小的分块读取明文文件数据; 对分块的明文数据分别计算MD5哈希值并将其附加到待加密的数据之前作为校验信息; 之后尝试压缩1MB大小的分块的数据, 若获得较小的压缩结果则输出压缩后的编码数据, 否则直接输出原文; 随后对步骤三的结果进行RC4流加密 (使用 OpenSSL 0.98); 再对步骤四的结果执行 AES_CFB_128分组加密 (使用 OpenSSL 0.98); 最后将分块的数据依次写入输出文件, 输出文件的文件名是在原文件名后添加了“.enc”后缀标识。
全部评论 (0)


