openssl( openssl 的主要功能)

很多朋友对于openssl和 openssl 的主要功能不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

openssl( openssl 的主要功能)

一、用openSSL生成了一对密钥,在C#里面怎么使用它

这个是pem格式的数字证书,可以尝试调用openssl的api函数PEM_read_bio_PrivateKey()来读取密钥。

二、如何使用OpenSSL工具生成根证书与应用证书

使用OpenSSL工具生成根证书与应用证书方法:

1、生成顶级CA的公钥证书和私钥文件,有效期10年(RSA1024bits,默认)opensslreq-new-x509-days3650-keyoutCARoot1024.key-outCARoot1024.crt

2、为顶级CA的私钥文件去除保护口令opensslrsa-inCARoot1024.key-outCARoot1024.key

3、生成顶级CA的公钥证书和私钥文件,有效期15年(RSA2048bits,指定)opensslreq-newkeyrsa:2048-x509-days5480-keyoutCARoot2048.key-outCARoot2048.crt

4、为顶级CA的私钥文件去除保护口令opensslrsa-inCARoot2048.key-outCARoot2048.key

5、为应用证书/中级证书生成私钥文件opensslgenrsa-outapp.key2048

6、根据私钥文件,为应用证书/中级证书生成csr文件(证书请求文件)opensslreq-new-keyapp.key-outapp.csr

7、使用CA的公私钥文件给csr文件签名,生成应用证书,有效期5年opensslca-inapp.csr-outapp.crt-certCARoot1024.crt-keyfileCARoot1024.key-days1826-policypolicy_anything

8、使用CA的公私钥文件给csr文件签名,生成中级证书,有效期5年opensslca-extensionsv3_ca-inapp.csr-outapp.crt-certCARoot1024.crt-keyfileCARoot1024.key-days1826-policypolicy_anything

以上是生成根证书与应用证书过程中要用到的所有命令,根据生成目标不同,分为三组。其中,前面两组都用于生成自签名的顶级CA(区别只在于密钥长度不同),实际应用中只需根据需求选择一组即可。最后一组用于生成非自签名的证书,包括中级证书与应用证书。所谓中级证书,是具有继续颁发下级证书权限的子CA,而本文中所说的应用证书,特指不能用来继续颁发下级证书,只能用来证明个体身份的证书。顶级CA在签发二者的时候,只是多少一个-extensionsv3_ca选项的区别,这个选项赋予被签发的证书继续签发下级证书的权力。

三、HTTPS和OpenSSL是什么关系

1,Http就是访问信息的信息通道而SSL就是加密层2,Http+ssl等于https而hppts就是加密了的安全信息通道3,openSSL是一套开源的密码学工具包4,明白以上3点后,说他们的联系,你在一些网上购物网站时是不是密码登录窗口时候总提示你安装ssl协议,而安装后才能输入密码的,而这个协议标准就可以用openssl来自行选择你需要的加密协议,而https就是一些已经安装好安全协议的网站。

四、openssl证书怎么用

opensslgenrsa-des3-outprivkey.pem2048

这个会生成一个私钥文件,如果不期望加密,则去除-des3这个选项

opensslreq-new-keyprivkey.pem-outcert.csr

这个会生成一个请求签名证书文件,然后将文件发送给CA即可

如果没有ca,可以自己给自己签名

opensslreq-new-x509-keyprivkey.pem-outcacert.cer-days1095

上面创建的证书里面只能是英文,不能是中文。如果要创建中文证书,则必须通过修改openssl.cnf模板文件。

首先将模板文件里面的一些缺省东西修改为中文,然后使用iconv存储为utf8格式

iconv-fgbk-tutf-8openssl.cnf>openssl_utf8.cnf

然后使用openssl签名,指明-utf8的格式和-config的配置文件

opensslreq-utf8-new-x509-keyprivkey.pem-configopenssl_utf8.cnf-outcacert.cer-days1095

对于中文的签名请求证书的方法也是一样的。

前面已经生成了一个签名请求文件,下面我们按照我们是CA对证书进行签名

opensslca-batch-utf8-incert.csr-outcert.cer-configca/openssl.cnf

签名证书的用途和功能可以由openssl.cnf文件中的

nsCertType=client,email,objsign,server

keyUsage=nonRepudiation,digitalSignature,keyEncipherment

五、openssl里的fips是什么意思

1、openssl-fips是符合FIPS标准的Openssl。联邦信息处理标准(FederalInformationProcessingStandards,FIPS)是一套描述文件处理、加密算法和其他信息技术标准(在非军用政府机构和与这些机构合作的政府承包商和供应商中应用的标准)的标准。

2、IntelAES指令(AES-NI)是Intel32纳米微架构上的一组新指令。这些指令对于使用AES(AdvancdeEncryptionStandard)算法进行数据加解密的操作能够起到加速的作用。

3、AES标准由FIPS定义,如今广泛应用在贸易安全,数据库的加密等各个方面。

4、IntelAES-NI包括七条指令。其中六条是硬件对AES的支持(四条关于AES加解密,另两条指令有关AESkey的扩展)。

5、AES-NI可以灵活地支持AES的各种使用方式,包括各种标准密钥的长度,各种模式的操作,甚至是一些非标准或是未来可能的各种方式。

6、对比现在一些纯软件的实现,它对性能的提升非常显著。

六、php环境的openssl是什么意思

1、使用VS2005下的VisualStudio2005CommandPrompt进入控制台模式(这个模式会自动设置各种环境变量)

2、、解压缩openssl的包,进入openssl的目录

3、尽量在这个目录下执行该命令,否则找不到Configure文件,或者指定完整的Configure文件路径。

4、、nmake-fms\ntdll.mak编译后在openssl解压目录下执行,完成编译后。输出的文件在out32dll里面,包括应用程序的可执行文件、lib文件和dll文件

5、注意:在运行第五步时,cl编译器会抱怨说.\crypto\des\enc_read.c文件的read是ThePOSIXnameforthisitemisdeprecated(不被推荐的),建议使用_read。呵呵,我可不想将OpenSSL中的所有的read函数修改为_read。再看cl的错误代码errorC2220,于是上MSDN上查找:

6、warningtreatedaserror-noobjectfilegenerated

7、/WXtellsthecompilertotreatallwarningsaserrors.Sinceanerroroccurred,noobjectorexecutablefilewasgenerated.

8、是由于设置了/WX选项,将所有的警告都作为错误对待,所以。。。

9、于是打开OpenSSL目录下的MS目录下的ntdll.mak文件,将CFLAG的/WX选项去掉,存盘。

文章分享结束,openssl和 openssl 的主要功能的答案你都知道了吗?欢迎再次光临本站哦!