Ⅰ 如何在linux下使用openssl的接口获取证书信息
http://wenku..com/link?url=KrEjoK9b8Ac43nR7q-Nw7Y69RtGsHPAHMw2CTrlB--
Ⅱ Linux里面openssl作用是什么
主要是用来安全的。
openssl命令 – 加密算法
openSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。对应的命令就是openssl命令,用于加密算法。《Linux就该这么学》
语法格式:openssl [参数]
举例子:
用SHA1算法计算文件file.txt的哈西值,输出到stdout:
# openssl dgst -sha1 file.txt
Ⅲ linux 可以openssl吗
Openssl是用来生成一个密钥的,我们通常是成对出来了,下面一起来看看在linux 下Openssl的安装配置与使用方法,希望对各位有用。
1. Openssl介绍
自己网上找去吧,我说的不好!
2. 安装
1、下载地址:http://www.openssl.org/source/ ;下一个最新新版本的OpenSSL,版本是:openssl-1.0.2-beta1.tar.gz
2、在下载的目录中,用命令执行:tar -xzf openssl-openssl-1.0.2-beta1.tar.gz
3、进入解压的目录:openssl-1.0.2-beta1 [.......]#cd openssl-1.0.2-beta1
4、[.....openssl-1.0.2-beta1]# ./config --prefix=/usr/local/openssl
5、[...../openssl-1.0.2-beta1]# ./config -t
6、[...../openssl-1.0.2-beta1]# make depend (时间很长)
7、[.../openssl-1.0.2-beta1]# make (时间很长,慢慢等待)
8、[.../openssl-1.0.2-beta1]# maketest
9、[.../openssl-1.0.2-beta1]# makeinstall
10、[...../openssl-1.0.2-beta1]# cd /usr/local
11、[/usr/local]# ln -s openssl ssl
12、在/etc/ld.so.conf文件的最后面,添加如下内容:/usr/local/openssl/lib
13...]# ldconfig
14添加OPESSL的环境变量:
在etc/的profile的最后一行,添加:
export OPENSSL=/usr/local/openssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
15退出命令界面,再从新登录。
16、以上OPENSSL就安装完毕,下面进行一些检查。
17依次如下执行:
[root@localhost /]# cd /usr/local
[root@localhost local]# ldd /usr/local/openssl/bin/openssl
会出现类似如下信息:
linux-vdso.so.1 => (0x00007fff3bc73000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc5385d7000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc538279000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc5387db000)
18查看路径
...]# which openssl
/usr/local/openssl/bin/openssl
19、...]# openssl version
OpenSSL 1.0.2-beta1 24 Feb 2014
3. 错误情况
自己写的程序出现这个(fatal error: openssl/sha.h: No such fileor directory)或者相似的问题,一开始以为是环境变量的问题,重装了几次,后来差了网络才知道问题所在,都是没有安装libssl-dev,libssl-dev包含libraries, header files and manpages,他是openssl的一部分,而openssl对ssl进行了实现。解决方案:使用sudo apt-get install libssl-dev来安装libssl-dev即可注:部分为网上抄袭!
下面来看使用方法,生成RSA
3.1 公私钥对生成
命令解析:openssl genrsa[-out filename] [-passout arg] [-des] [-des3] [-idea] [-f4][-3] [-rand file(s)] [numbits]
OPTIONS
-out filename 私有密钥输入文件名,缺省为标准输出。
-passout arg 参看指令dsa里面的passout参数说明 -des|-des3|-idea 采用什么加密算法来加密我们的密钥。一般会要你输入保护密码。 如果这三个中一个也没set, 我们的密钥将不被加密而输入。
-F4|-3 使用的公共组件,一种是3, 一种是F4, 我也没弄懂这个option是什么意思。
-randfile(s) 产生key的时候用过seed的文件,可以把多个文件用冒号分开一起做seed.
-numbits 指明产生的参数的长度。必须是本指令的最后一个参数。如果没有指明,则产生512bit长的参数。 研究过RSA算法的人肯定知道,RSA的私有密钥其实就是三个数字,其中俩个是质数。这俩个呢,就叫prime numbers.产生RSA私有密钥的关键就是产生这俩。还有一些其他的参数,引导着整个私有密钥产生的过程。因为产生私有密钥过程需要很多随机数,这个过程的时间是不固定的。
//root@ubuntu:/mnt/hgfs/windows_linux/AlipayEx/study/opensslstudy/study#openssl genrsa -out RSAPrivateKey.pem 1024
//root@ubuntu:/mnt/hgfs/windows_linux/AlipayEx/study/opensslstudy/study#openssl rsa -in RSAPrivateKey.pem -pubout -out RSAPublicKey.pem
3.2 读取密钥
PEM_read_RSAPrivateKey
PEM_read_RSA_PUBKEY
具体参数看文档去吧!
3.3 加解密
公钥加密,私钥解密
RSA_public_encrypt
RSA_private_decrypt
具体参数看文档去吧!
3.4 签名
私钥签名,公钥验签
SHAwithRSA
1.SHA1M(自己封装的)
2. RSA_sign(/*sha1withRSA第一个参数为NID_sha1,第二第三个参数为明文的sha1摘要及长度SA_verify
Ⅳ linux 中 openssl 怎么开启
如果装了openssl package,就会有openssl命令
man openssl看说明
或者你自己编程
Ⅳ linux下使用openssl检测PE文件数字签名的证书是否有效
windows在判断证书是否有效时不检测证书的有效期, 即使该证书超过有效期好几年了, 只要没有被吊销, 微软仍然认为它是有效的. 但在 openssl 提供的 X509_verify_cert 函数会验证证书的有效期, 因此需要注释掉验证有效期的那部分代码并重新编译 openssl...
OK, 从 openssl 官网 上下载最新的版本, 好吧, 现在还是刚刚修复 Heartbleed 漏洞的 1.0.1g 版本...
下载, 解压, 看下 INSTALL 文档, 先试试可以编译不:
./config
make
运气不错, 不用安装什么依赖直接编译成功. 将代码根目录产生的 libcrypto.a 添加到项目中测试下, OK, 可以使用, 下面开始折腾了~
在 crypto/x509/x509_vfy.c 的 153 行找到 X509_verify_cert 函数(在线查看), 局部变量 ok 缓存每一步验证是否通过, 它依次调用了:
check_issued
check_chain_extensions
check_name_constraints
check_trust
check_revocation
internal_verify
check_policy
其中 internal_verify (在线查看)验证了证书的有效期, 进入这个函数, 在 1654 行找到这个代码:
ok = check_cert_time(ctx, xs);
if (!ok)
goto end;
看看 check_cert_time 函数, 确认是检查 notBefore 和 notAfter, 因此将上面三行代码注释掉, 验证证书时就不会检测有效期了.
然后就是重新编译 openssl, 将 libcrypto.a 集成到项目里了~
Ⅵ linux 怎么读取openssl加密后的文件
将文件夹package打成tar包 package.tar.gz 并加密 密码是 password tar czf – package | openssl des3 -salt -kpassword -out package.tar.gz 加密的tar包只能在Linux上解密,无法在Windows上使用。 解密tar包并且解压缩 openssl des3 -d -k pas...
Ⅶ linux 怎么打开 openssl
ux | 浏览1次
您的回答被采纳后将获得系统奖励20(财富值+经验值)
Ⅷ linux下怎么开启openssl
如果装了openssl package,就会有openssl命令
man openssl看说明
或者自己编程