2.dsa指令说明
=========
dsa指令功能如下:
指令解释:
1.[-help]:显示总结
2.[-inform format]:输入格式 DER PEM PVK
3.[-outform format]:输出格式 DER PEM PVK
4.[- in val]:输入关键
5.[-out outfile]:输出文件
6.[-noout]:没有输出
7.[-text]:文本打印为文本
8.[-modulus]:打印DSA公共值
9.[-pubin]:期望输入文件中有一个公钥
10.[-pubout]:输出公钥,而不是私钥
11.[-passin val]:输入文件传递短语源文件
12.[-passout val]:输出文件传递短语源文件
13.[-pvk-strong]:启用'强'PVK编码级别(默认)
14.[-pvk-weak]:启用'弱'PVK编码级别
15.[-pvk-none]:不要强制PVK编码
16.[-engine val]:引擎是否使用引擎e,可能是硬件设备
17.[-*]:任何受支持的密码
具体实现:
1、加密密钥和解密密钥
(1)生成未加密的DSA密钥
(2)使用des3加密DSA密钥
(3)解密DSA密钥
2、提取DSA的公钥
二、openssl对称加密算法enc
openssl的加密算法库提供了丰富的对称加密算法,我们可以通过openssl提供的对称加密算法指令的方式使用。
openssl的对称加密算法指令主要用来对数据进行加密和解密处理,openssl基本上为所有其支持的对称加密算法都提供了指令的方式的应用,这些应用指令的名字基本上都是对称加密算法本身的名字加上位数、加密模式或者其他属性组合而成。
查询本机Ubuntu版本:
1.Ubuntu20.04 openssl版本enc指令功能如下:
1.[-help]:显示这个总结
2.[-list]:密码列表
3.[-ciphers]:别名附些
4.[-in infile]:输入文件
5.[--out outfile]:输出文件
6.[-pass val]:密码来源
7.[-e/-d]:加解密
8.[-p]:打印iv/key
9.[-P]:打印iv/key并退出
10.[-v]:详细输出
11.[-nopad]:禁用标准块填充
12.[-salt]:在KDF中使用盐(默认)
13.[-nosalt]:在KDF不使用盐
14.[-debug]:打印调试信息
15.[-a]:Base64编码/解码,取决于加密标志
16:[-base64]:同-a
17.[-A]:与-[base64|a]一起使用,将base64缓冲区指定为单个
18.[-bufsize val]:缓冲区大小
19.[-k val]:密码
20.[-kfile infile]:从文件中读取密码
21:[-K val]:Raw键,十六进制
22.[-S val]:盐,在十六进制
23.[-iv val]:IV在十六进制
24.[-md val]:使用指定的摘要从密码短语创建密钥
25.[-iter +int]:指定迭代计数和PBKDF2Use基于密码的密钥派生函数2的强制使用
26.[-none]:不加密
27.[-*]:任何受支持的密码
28.[-rand val]:将文件加载到随机数生成器中
29.[-writerand outfile]:向指定的文件写入随机数据
30.[-engine val]:引擎是否使用引擎e,可能是硬件设备
2.具体实现:
(1)用对称加密指令作为enc指令的参数:
(2)只对文件进行base64编码,而不使用加解密
a.对文件进行base64编码
b.对base64格式文件进行解密操作
c.使用diff命令查看可知解码前后明文一样
(3)不同方式的密码输入方式
a.命令行输入:
b.文件输入:
c.文件描述输入:
d.从标准输入输入:
(4)固定salt值加密
可以看到,不使用-S参数,salt参数随机生成,key和iv值也不断变化,当slat值固定时,key和iv值也是固定的。
(5)手动指定Key和IV值
手动指定key和iv值,salt固定
指定pass密码,不起作用,注意Key和IV值是16进制
三、消息摘要命令:md_gost94
网上找到和md_gost94相关的资料
加密私钥和PKCS12 要生成与MagPro CSP兼容的PKcs12文件,需要使用 对PKcs12文件和GOST R34.11-94文件进行加密的GOST算法 从密码派生密钥的哈希
Openssl pksc12-export-inkey gost.pem-in gost_cert.pem-keypbe gost89 - certpbe gost89 - macalg md_gost94
四、密码命令:
===========