天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

解析php php_openssl.dll的作用

一.openssl簡介
數據加密是信息信息傳輸中的一個重要組成部分.任何信息都以明文方式傳輸,確實是個很不安全的做法.所以,
需要對數據進行加密.將明文數據轉換為密文數據,再進行傳輸.

OpenSSL是一套用于SSL/TLS協議的加密工具,其作用有:
1.生成私有密鑰.
2.生成證書,即數字簽名證書,它包含一個公有密鑰,可以用來單向的加密和解密數據.即,使用公鑰加密的數據,只能使用
私有密鑰解密.使用私鑰加密的數據,可以使用公鑰來解密.
3.計算信息摘要.
4.SSL/TLS客戶端和服務器端測試.
5.處理S/MIME標記和郵件的加密.

二.加密技術簡介.
加密,即將明文數據轉換為密文數據的過程.以起到對明文保密的作用.
加密算法: 數據加密過程所采用的一種運算算法.用于將明文轉換為密文.
密鑰: 加密算法通過與密鑰進行某種運算,將明文數據進行加密,生成加密數據.解密時,加密算法通過密鑰,
將加密數據再轉換為明文數據.
現今的加密技術,加密算法是公開的,即所有人都知道加密所采用的運算方式.但只有使用密鑰才能進行
對密文的解密.所以,密鑰的保護,是數據安全的核心.

三.openssl工具使用簡介
1.私有密鑰生成方法

生成私有密鑰,可以使用不同的數字簽名算法.下面分別介紹;

#采用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

4.使用證書進行郵件加密
我們的明文信件內容:

$ 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

5.簡單的文件加密
明文文件內容:

$ 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

6.簡單的字符串加密
采用base64方式進行加密:

$ echo "encode me" | openssl enc -base64
ZW5jb2RlIG1lCg==解密時,需要知道加密算法,才可解密:

$ echo "ZW5jb2RlIG1lCg==" | openssl enc -base64 -d
encode me

7.SSL客戶端和服務器的測試
使用私鑰和證書啟動SSL服務器,"-www”的作用是,當客戶端連接服務器時,發送一個狀態信息網頁到客戶端.

openssl s_server -key mykey.pem -cert mycert.pem -www連接SSL服務器到,客戶端會獲得服務器的證書:

openssl s_client -connect localhost:4433

php技術解析php php_openssl.dll的作用,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 男人把女人桶到爽免费看视频 | 约艺术院校96年清纯白嫩 | 嗯啊哈啊好棒用力插啊 | 美女被男人撕衣舔胸 | 亚洲乱码高清午夜理论电影 | 天天操人人射 | 少妇两个奶头喷出奶水了怎么办 | 99久久精品互换人妻AV | 国产亚洲精品 在线视频 香蕉 | 国产成人精品视频频 | 天堂在线亚洲精品专区 | 色欲AV蜜臀AV在线观看麻豆 | 夜夜躁婷婷AV蜜桃视频 | 扒开她的黑森林让我添动态图 | 精品久久免费观看 | 337p欧洲亚大胆精品 | 一区二区三区无码被窝影院 | 午夜DV内射一区区 | 亚洲精品国产精品麻豆99 | 国内精品视频一区二区在线观看 | 亚洲成人欧美 | 亚洲精品第一国产综合 | 成人亚洲乱码在线 | 无止侵犯高H1V3无止侵犯 | p影院永久免费 | 成激人情在线影院920 | jizz国产丝袜18老师美女 | sihu国产精品永久免费 | 97人人碰免费视频公开 | 俄罗斯1819y0u| 国产麻豆福利AV在线观看 | 99久久免费看少妇高潮A片 | 亚洲黄色在线播放 | 月夜直播视频免费观看 | 秋秋影视午夜福利高清 | 亚洲国产成人久久精品影视 | se01国产短视频在线观看 | 欧美午夜精品一区二区蜜桃 | 吸奶舔下面 | 亚洲日韩精品AV中文字幕 | 欧美黄色第一页 |