脚本宝典收集整理的这篇文章主要介绍了解析php php_openssl.dll的作用,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
#采用DSA算法
$ openssl dsaparam -noout -out dsakey0.pem -genkey 1024
#采用RSA算法
$ openssl genrsa -out rsakey0.pem 1024
#采用RSA算法,并使用密码保护.在生成私钥时,需要输入一个密码,用于保护私钥.
#在使用这个私钥进行加/解密操作时,也需要输入这个密码.
$ openssl genrsa -des3 -out rsakey1.pem 10242.公用密钥的生成方法
根据私钥来生成公钥
#生成dsa算法的公钥
$ openssl dsa -in dsakey0.pem -pubout -out dsakey0-pub.pem
#生成rsa算法的公钥
$ openssl rsa -in rsakey0.pem -pubout -out rsakey0-pub.pem3.自签名证书的生成方法
#产生DSA算法的证书
$ openssl req -x509 -key dsakey0.pem -days 365 -out mycert-dsa.pem -new
#产生RSA算法的证书
$ openssl req -x509 -key rsakey0.pem -days 365 -out mycert-rsa.pem -new
$ cat test.txt
111111
222222
333333
444444
aaaaaa
输出到etest.txt文件:
$ openssl smime -encrypt -in test.txt -out etest.txt mycert-rsa.pem查看加密后的密文内容:
$ cat etest.txt
MIME-Version: 1.0
Content-DisposITion: attachment; filename="smime.p7m"
Content-type: application/x-pkcs7-mime; smime-type=enveloped-data; name="smime.p7m"
Content-transfer-encoding: base64
MIIBYAYJKoZIhvcNAQcDoIIBUTCCAU0CAQAxgewwgekCAQAwUjBFMQswCQYDVQQG
EwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lk
Z2l0cyBQdHkgThrkAgkAr71mh4NRX/UwDQYJKoZIhvcNAQEBBQAEgYCbrA1WBwQK
Zj7TcNtrxiDzqMBc/Lu063SLKvbK6mQMqT+npFOOFtzIKDFVkldH0yyQhMZDSCyq
YUtGwOaDw6Jn0AHRt64UwPOKoaeL9RVqp9vgtifc/uXis5UeyZCWS1z7Jsih8Aa+
Da/DQN0sOCX85OdK/TDewNx8mtaYBbVf4jBZBgkqhkiG9w0BBwEwGgYIKoZIhvcN
AwIwDgICAKAECNxsgiJ2s+1ugDC6JknPL+rDYBCddcyPH+bMYjqrUP0hE/GQ5WSj
sv8CDkOUdvY5XG440yiAL3Z3ysI=使用私钥进行解密,输出到dtest.txt文件:
$ openssl smime -decrypt -in etest.txt -inkey rsakey0.pem -out dtest.txt查看解密后的信件内容,与原明文信件内容完全一致.
$ cat dtest.txt
111111
222222
333333
444444
aaaaaa
$ cat test.txt
1
22
333
4444
55555
Hello加密明文文件,输出为test.enc文件,输入”123123”作为加密密码:
$ openssl enc -aes-256-cbc -salt -in test.txt -out test.enc
enter aes-256-cbc encryption password:
Verifying - enter aes-256-cbc encryption password:对密文进行解密,输入”123123”作为解密密码:
$ openssl enc -d -aes-256-cbc -in test.enc
enter aes-256-cbc decryption password:
1
22
333
4444
55555
Hello
$ echo "encode me" | openssl enc -base64
ZW5jb2RlIG1lCg==解密时,需要知道加密算法,才可解密:
$ echo "ZW5jb2RlIG1lCg==" | openssl enc -base64 -d
encode me
openssl s_server -key mykey.pem -cert mycert.pem -www连接SSL服务器到,客户端会获得服务器的证书:
openssl s_client -connect localhost:4433
以上是脚本宝典为你收集整理的解析php php_openssl.dll的作用全部内容,希望文章能够帮你解决解析php php_openssl.dll的作用所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。