ホームページ php教程 PHP开发 php php_openssl.dll の役割を分析する

php php_openssl.dll の役割を分析する

Dec 23, 2016 pm 05:57 PM

1. openssl の概要
データの暗号化は情報送信の重要な部分です。そのため、平文データを暗号化する必要があります。その後、テキスト データが送信されます。

OpenSSL は、SSL/TLS プロトコルの暗号化ツールのセットです。

1. 証明書、つまりデジタル署名証明書を生成します。公開キーを含む このキーは、一方向のデータの暗号化と復号化に使用できます。つまり、公開キーを使用して暗号化されたデータは、秘密キーを使用してのみ復号化できます。
3. 情報の計算
4. SSL/TLS のテストとメールの暗号化。平文データを暗号文データに変換するプロセス。平文の機密性を維持するため。
暗号化アルゴリズム: データ暗号化プロセスで使用されるアルゴリズム。平文を暗号文に変換します。データは暗号化され、暗号化データが生成されます。
今日の暗号化技術では、暗号化アルゴリズムは公開されており、誰もが知っています。ただし、暗号文の復号化に使用できるのはキーのみです。 したがって、キーの保護がデータ セキュリティの核心です。

3. 秘密キーの生成方法の概要。

秘密鍵を生成する、さまざまなデジタル署名アルゴリズムを以下に紹介します。 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;ファイル名 = "smime.p7m"
コンテンツ タイプ smime-type=enveloped-data; name = "smime.p7m" 1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lk
Z2l0cyBQdHkgTHRkAgkAr 71mh4NRX/UwDQYJKoZIhvc NAQEBBQAEgYCbrA1WBwQK
Zj7TcNtrxiDzqMBc/Lu063SLKvBK6 mQMqT+npFOOFtzIKdFVkldH0YyQhMZDSCyq

YUtGwOaDw6Jn0AHRt64UwPOKoaeL9RVqp9vgtiFC/ uXis5UEyZCW S1z7Jsih8Aa+

Da/DQN0sOCX85OdK/TDewNx8mTaYBbVf4jBZBgkqhkiG9w0BBwEwGgYIKoZIhvcN
AwIwDgICAKAAECNxsgiJ2s+1ugDC6JknPL+rDYBCddcyPH+bMYjqrUP0 hE/GQ5WSj
sv8CDkOUdvY5XG440yiAL3Z3ysI=秘密キーを使用して復号化し、dtest.txt ファイルに出力します:

$ openssl smime -decrypt -in etest.txt -in key 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

aes-256-cbc 暗号化パスワードを入力してください:

検証中 - aes-256-cbc 暗号化パスワードを入力してください: 暗号文を復号化するには、復号化パスワードとして「123123」を入力してください:

$ openssl enc -d -aes-256-cbc -in test.enc
aes-256-cbc 復号パスワードを入力します:
1
22
333
4444
55555

Hello


6. Base64 メソッドを使用した単純な文字列暗号化暗号化:

$ echo "encode me" | openssl enc -base64
ZW5jb2RlIG1lCg== 復号化する前に、暗号化アルゴリズムを知っておく必要があります。 me

7. SSL クライアントとサーバーのテスト

秘密キーと証明書を使用して SSL サーバーを起動します。「-www」の機能は、クライアントがサーバーに接続するときにステータス情報 Web ページを送信することです。


openssl s_server -key mykey.pem -cert mycert.pem -www は SSL サーバーに接続し、クライアントはサーバーの証明書を取得します:

openssl s_client -connect localhost:4433

php php_openssl.dll の役割の分析に関するその他の記事については、PHP 中国語 Web サイトに注目してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)