一、xyssl资料下载
二、main函数的输入参数
1、预设置参数
选中当前项目-->属性-->配置属性-->调试-->命令参数 其中
int main( int argc, char *argv[] )
argc = “在命令参数中输入参数的个数” - 1,因为argc也算一个参数。
2、参数解释
<mode> <input filename> <output filename> <key>
mode:0表示加密操作;1表示解密操作;
input filename:要进行加密操作的文件名(此处不需要加引号,如D:\input.txt)
output filename:输出文件名,在程序中其举例命名是file.aes格式的。///*************************************************
key:key有三种输入格式,文件名(D:\key.txt)、"hex:"开头的十六进制输入(hex:EFD32E)、直接输入(123456)//****************************
三、知识点说明
1、IV
作用:块密码的工作模式
获取方式:根据上面的链接可知,IV如果固定对有些模式的算法安全性是有影响的。在该例子中,程序根据要加密的文件的大小以及文件名获取其sha256的哈希值(32位),并取得其前面的16位作为IV。
2、HMAC
作用:
四、程序处理流程
1、加密
(1)获取输入文件、输出文件指针;