openssl dgst 命令使用方法

简介:

用途:

主要用于数据摘要。它也可以用于数据签名以及验证签名。

用法:


选项说明:

-md5:默认选项,用md5算法进行摘要。

-md4:用md4算法进行摘要。

-md2:用md2算法进行摘要。

-sha1:用sha1算法进行摘要。

-sha:用sha算法进行摘要。

-mdc2:用mdc2算法进行摘要。

-ripemd160:用ripemd160算法进行摘要。

-dss1:用dss1算法进行摘要。

-c:打印出两个哈希结果的时候用冒号来分隔开。仅仅设置了[-hex]的时候有效。

-r:用coreutils格式来输出摘要值。

-rand:产生随机数种子的文件。

-d:打印出BIO调试信息值。

-hex:显示ASCII编码的十六进制摘要结果,默认选项。

-binary:以二进制的形式来显示摘要结果值。

-sign filename:用filename中的私钥文件对数据进行签名。

-verify filename:用filename中的公钥文件对数据进行验证签名。输出结果仅仅是"Verification OK" "Verification Failure"中的一种。

-prverify filename:用filename中的私钥文件对数据进行验证签名。

-keyform argfilename中的证书格式,该命令中仅仅支持PEM以及ENGINE格式。

 -out filename:输出对象,默认为标准输出。

-signature filename:实际需要验证的签名值的位置。

-sigopt nm:v:签名或验证签名的操作中,签名算法参数的选项值。

-hmac key:用密钥“key”创建一个哈希值MAC

-mac alg:创建一个MAC(密钥消息验证代码)。大多数流行的摘要算法是HMAC算法,但是还有一些基于hash的其他算法,例如B<gost-mac>算法(被B<ccgost>硬件引擎所支持)。MAC密钥和其他选项必须在B<-macopt>参数中设置。

-macopt nm:vMAC算法参数,在B<-mac>密钥中指定。下面的选项也支持B<HMAC> B<gost-mac>

B<key:string>:指定MAC密钥值。字符串长度必须符合摘要算法的限制条件,例如对gost-mac来说刚好是32字节。

-passin arg:证书私钥的口令值。

0engine e:采用引擎e来运算。

 file:你要哈希的文件,如果没有指定,就使用标准输入。

注意:

对所有新的应用程序来说,只哎哟算法默认为SHA1。其他的摘要算法也被广泛的使用。

如果你希望用DSA算法来进行签名或验证,就必须要使用DSS摘要算法。

在某些签名算法中要请求随机数的来源文件,例如RSA

签名或验证选项仅仅值用于一个文件被签名了的或验证了的。

实例:


openssl dgst c:\server.pem 


运行此命令后文件的md5值摘要结果会在屏幕打印出来,此结果为摘要结果转换为ASCII码后的值:


MD5(c:\server.cer)= 4ace36445f5ab4bbcc2b9dd55e2f0e3a 


openssl dgst –binary c:\server.pem


结果为二进制乱码。


openssl dgst –hex –c c:\server.pem


结果由:分开,如下:


MD5(c:\server.cer)= 4a:ce:36:44:5f:5a:b4:bb:cc:2b:9d:d5:5e:2f:0e:3a


  1. openssl dgst –sign privatekey.pem –sha1 –keyform PEM –c c:\server.pem  

  2. 将文件用<span style="font-family:Calibri">sha1</span>摘要,并用<span style="font-family:Calibri">privatekey.pem</span>中的私钥签名。

本文转自服务器运维博客51CTO博客,原文链接http://blog.51cto.com/shamereedwine/1733200如需转载请自行联系原作者

neijiade10000
相关文章
|
存储 缓存 文件存储
如何保证分布式文件系统的数据一致性
分布式文件系统需要向上层应用提供透明的客户端缓存,从而缓解网络延时现象,更好地支持客户端性能水平扩展,同时也降低对文件服务器的访问压力。当考虑客户端缓存的时候,由于在客户端上引入了多个本地数据副本(Replica),就相应地需要提供客户端对数据访问的全局数据一致性。
32696 78
如何保证分布式文件系统的数据一致性
|
前端开发 容器
HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第8章FlexBox布局(上)
HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第8章FlexBox布局
17747 20
|
设计模式 存储 监控
设计模式(C++版)
看懂UML类图和时序图30分钟学会UML类图设计原则单一职责原则定义:单一职责原则,所谓职责是指类变化的原因。如果一个类有多于一个的动机被改变,那么这个类就具有多于一个的职责。而单一职责原则就是指一个类或者模块应该有且只有一个改变的原因。bad case:IPhone类承担了协议管理(Dial、HangUp)、数据传送(Chat)。good case:里式替换原则定义:里氏代换原则(Liskov 
36676 19
设计模式(C++版)
|
存储 编译器 C语言
抽丝剥茧C语言(初阶 下)(下)
抽丝剥茧C语言(初阶 下)
|
机器学习/深度学习 人工智能 自然语言处理
带你简单了解Chatgpt背后的秘密:大语言模型所需要条件(数据算法算力)以及其当前阶段的缺点局限性
带你简单了解Chatgpt背后的秘密:大语言模型所需要条件(数据算法算力)以及其当前阶段的缺点局限性
24756 14
|
机器学习/深度学习 弹性计算 监控
重生之---我测阿里云U1实例(通用算力型)
阿里云产品全线降价的一力作,2023年4月阿里云推出新款通用算力型ECS云服务器Universal实例,该款服务器的真实表现如何?让我先测为敬!
36658 15
重生之---我测阿里云U1实例(通用算力型)
|
SQL 存储 弹性计算
Redis性能高30%,阿里云倚天ECS性能摸底和迁移实践
Redis在倚天ECS环境下与同规格的基于 x86 的 ECS 实例相比,Redis 部署在基于 Yitian 710 的 ECS 上可获得高达 30% 的吞吐量优势。成本方面基于倚天710的G8y实例售价比G7实例低23%,总性价比提高50%;按照相同算法,相对G8a,性价比为1.4倍左右。
|
存储 算法 Java
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的限流器RateLimiter功能服务
随着互联网的快速发展,越来越多的应用程序需要处理大量的请求。如果没有限制,这些请求可能会导致应用程序崩溃或变得不可用。因此,限流器是一种非常重要的技术,可以帮助应用程序控制请求的数量和速率,以保持稳定和可靠的运行。
29835 52

热门文章

最新文章

下一篇
开通oss服务