7 App代码转AES加密文件生成步骤

目录

加密文件各配置说明:

一、文件加密支持单DES、双DES、三DES、128bitAES、192bitAES、256bitAES

1.DES系列

2.AES系列

二、当为AES加密时,向量为16字节,当为DES时,向量为8字节。加密模式都为CBC

1.模式统一为CBC

2.初始向量(IV)要求

三、会根据您输入的密钥长度自动执行对应的加密及解密

四、只支持字符串输入

五、加密后文件格式为4字节自定义数据长度+自定义数据+4字节明文长度+明文数据

1.文件结构(按顺序存储):

2.文件扩展名:.mxxx,通过扩展名区分加密算法。

六、加密后的文件格式为.mxxx

七、自定义数据长度+8字节必须为16的整数倍

八、如果密文中有自定义数据则解密后会在文本框中显示

九、加密、解密都只对当前打开的文件操作

十、加密后的App程序文件结构:


加密工具:

加密文件各配置说明:

一、文件加密支持单DES、双DES、三DES、128bitAES、192bitAES、256bitAES

1.DES系列

DES **:**传统对称加密算法,密钥长度56位,安全性较低(已不推荐用于敏感数据)。

DES **(2DES):**两次DES加密,密钥长度112位,安全性略高于单DES,但仍有被暴力破解风险。

DES ( 3DES **):**三次DES加密,密钥长度168位,安全性更高,但计算效率较低。

2.AES系列

128/192/256bit AES:现代主流的对称加密算法,安全性高,密钥越长安全性越高。

二、当为AES加密时,向量为16字节,当为DES时,向量为8字节。加密模式都为CBC

1.模式统一为CBC

CBC(密码块链接):每个明文块与前一个密文块异或后再加密,增强安全性。

2.初始向量(IV)要求

  • AES加密:IV为16字节(128bit),需随机生成且每次加密不同。

  • DES加密:IV为8字节(64bit),与DES块大小一致。

三、会根据您输入的密钥长度自动执行对应的加密及解密

密钥长度决定算法类型:

  • **输入提示:**需严格按算法要求输入密钥长度(如AES-256需32字节密钥)。

四、只支持字符串输入

  • 加密内容需为文本格式(如.txt文件),不支持二进制文件(如图片、视频)。

  • 若需加密二进制文件,需先将其转换为字符串(如Base64编码)。

五、加密后文件格式为4字节自定义数据长度+自定义数据+4字节明文长度+明文数据

1.文件结构(按顺序存储):

**4字节自定义数据长度:**定义后续自定义数据的字节数(如无则为0)。

**自定义数据:**用户可添加额外信息(如时间戳、版本号),明文存储不加密。

4字节 明文 **长度:**记录加密前的原始数据长度,用于解密时校验。

明文 **数据:**实际加密后的密文内容。

2.文件扩展名:.mxxx,通过扩展名区分加密算法。

六、加密后的文件格式为.mxxx

七、自定义数据长度+8字节必须为16的整数倍

  • 自定义数据长度+8字节=16的整数倍:

    因为CBC模式要求数据块对齐(AES块的大小是16字节,DES块大小8字节)。

    示例:若自定义的数据长度是10,加8为18,下一16的倍数是32,需要填充14字节。

八、如果密文中有自定义数据则解密后会在文本框中显示

  • 若加密时添加了自定义数据,解密后会在软件文本框中显示(如日志、备注信息)。

九、加密、解密都只对当前打开的文件操作

根据要求进行向量和密钥的填写

加密完成后得到 .mxxx 后缀的加密文件。

十、加密后的App 程序文件 结构:

上图中需要注意的是:

  1. 加密时:
  • 加密的时候,被加密内容如果不是需要的整数倍,那么需要自动补全,aes128有补全规则。
  1. 解密以后:
  • 是完整的数据+自动补全的数据

  • 但是 程序在运行过程中只会在 完整固件数据 中运行,不会跳转到补全数据里

相关推荐
li星野37 分钟前
打工人日报#20251202
单片机·嵌入式硬件
mylinke1 小时前
永磁同步电机双闭环控制模型故障诊断与仿真研究:基于MATLAB Simulink的仿真代码实现
单片机
云山工作室2 小时前
基于ZigBee的温室智能控制系统设计(论文+源码)
stm32·单片机·嵌入式硬件·物联网·课程设计
IT_阿水2 小时前
基于STM32的智慧物联网系统板
stm32·物联网·perl
小李做物联网2 小时前
为什么你的老是焊接后通信不成功,物联网焊接注意点
单片机·嵌入式硬件·物联网·课程设计
sam-zy2 小时前
PY32F406K1CU6 FLASH模拟EEPROM
单片机·嵌入式硬件·fpga开发
大聪明-PLUS2 小时前
在 C++/CLI 中开发描述符类
linux·嵌入式·arm·smarc
云山工作室2 小时前
血糖浓度测试仪设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·毕设
sam-zy3 小时前
PY32F403K1CU6定时器1~6基本配置,1ms中断,每隔1秒打印
单片机·嵌入式硬件·fpga开发