运行openssl,使用help命令可以查看当前版本支持的命令:
enc指令格式
enc指令是OpenSSL中对称加密的集大成者,OpenSSL的对称加密算法指令都集成在enc一个指令中。enc通过指令参数指定对应的对称短发类型。例如:
OpenSSL> enc -des-cbc -pbkdf2 -in pln.txt -out enc.txt -pass pass:123456
也可以使用独立的指令方式:
OpenSSL> des-cbc -pbkdf2 -in pln.txt -out enc.txt -pass pass:123456
这两种形式是等价的。
enc指令参数
- ciphers:支持的加密类型列表
- in和out:指令输入和输出文件。对于加密运算,输入明文,输出密文。对于解密运算,输入密文,输出明文。
- pass、k和kfile:口令输入选项。
- e和d:加密和解密操作。默认为加密操作。
- base64、a和A:a和base64的作用相同,都可以对文件进行base64编解码。对于加密操作来说,数据加密之后进行base64编码;对于解密操作来说,数据解密前进行base64解码。A选项只有和a和base64一起使用才会生效。使用A参数时,程序将所有加密数据作为一行进行base64编码,而不按照原文件的换行格式。当文件或数据过大时,A可能导致指令执行失败。
- K和IV:K选项后面是16进制形式加密密钥,长度不超过64个字符;IV选项后面是16进制形式初始向量,长度不超过32个字符。若不提供这两个参数,程序将自己生成相应的密钥或初始向量。
- sa