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. 解密以后:
  • 是完整的数据+自动补全的数据

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

相关推荐
LCG元18 小时前
STM32项目实战:基于STM32F103的智能农业监控系统
stm32·单片机·嵌入式硬件
Truffle7电子20 小时前
STM32CubeIDE/Programmer/Touch GFX 应用
stm32·单片机·嵌入式硬件
嵌入式×边缘AI:打怪升级日志21 小时前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
constant_LDX21 小时前
步进电机开发(一、硬件设计)
单片机·嵌入式硬件
richxu2025100121 小时前
嵌入式学习之路->stm32篇->(14)通用定时器(上)
stm32·单片机·嵌入式硬件·学习
Deitymoon21 小时前
STM32——串口通信(USART)
单片机·嵌入式硬件
iCxhust21 小时前
微机原理实践教程(C语言篇)---A002流水灯
c语言·开发语言·单片机·嵌入式硬件·51单片机·课程设计·微机原理
Deitymoon1 天前
STM32——外部中断按键控制led
stm32·单片机·嵌入式硬件
czwxkn1 天前
7STM32(stdl)flash内部闪存
stm32·单片机·嵌入式硬件
咕噜咕噜啦啦1 天前
STlink下载程序
stm32·单片机