DSA数字签名算法是一种可逆的非对称签名算法,由公钥和私钥构成密钥对,私钥用于生成消息的数字签名,公钥来验证这种签名。数字签名提供信息鉴定(接收者可以验证消息的来源),完整性(接收方可以验证消息未被修改)和不可否认性(发送方不能错误地声称它们没有签署消息)。
DSA主要使用场景为数字签名、而非加密解密,DSA数字签名算法主要包含三个操作步骤:密钥生成(生成DSA密钥对)、数字签名(使用DSA私钥)、签名验证(使用DSA公钥)。
首先输入证书密码(一般为空,无须输入),然后选择密钥长度,最后点击按钮即可得到对应的DSA密钥对,你可以预览、复制和下载DSA密钥对到本地。
用于生成DSA数字签名,具体操作方式为:首选输入证书私钥(证书有私钥密码时输入,否则留空),然后选择Hash算法和输入原始文本,最后点击对应按钮进行数字签名。
其中签名方式有两种,分别是:直接使用原始文本签名和Hash函数签名,一般推荐使用SHA-256算法。
用于对数字签名进行信息鉴定,保证原文的完整性和不可否认性,具体操作方式为:首先选择Hash算法,然后输入原始文本、DSA公钥和数字签名,最后点击对应按钮进行验证。
其中参数、原文和数字签名匹配时,则验证结果返回true,否则返回false。