- https とは何ですか?
今、あなたのブラウザのアドレスバーを見てみてください。緑色のロックやセキュリティマークが表示されているはずです。これは私のブログが https で保護されていることを示しています。データの送信が安全に行われています。
それでは、https とは何でしょうか?
HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer)は、安全な HTTP チャネルを目指したもので、簡単に言えば HTTP のセキュリティ版です。
引用元:百度百科
簡単に言えば、https はウェブサイトのコンテンツが改ざんされていないことを保証しています。
小さな物語#
しかし、https は完全に安全ではありません。私は知恵袋で次のような物語を見ました:(斜体は筆者の注釈です)
昔々、山にお寺がありました。お寺にはお坊さんがいました... いい加減にしろ、お坊さんが来ました。
小僧がお坊さんに尋ねました:なぜ ssl は http を安全にするのですか?
お坊さんは答えました:例えば、私たちには共通のパスワードがあります。私があなたにメッセージを送るとき、このパスワードを使って暗号化し、あなたが受け取ったメッセージをこのパスワードで復号化することで、私のメッセージの内容がわかります。他の人がメッセージを盗んでも、このパスワードがわからないため、ただメッセージを見るだけで終わります。このパスワードを対称キーと呼びます。ssl は対称キーを使用して http のコンテンツを暗号化および復号化するため、http を安全にします。一般的な暗号化アルゴリズムには、3DES や AES などがあります。
小僧は頭をかいてお坊さんに尋ねました:師匠、もし私たち二人が「お坊さん」というパスワードを選び、それに基づいて新しいアルゴリズムを作ったら、私たちは安心して通信できるのではありませんか?
お坊さんは小僧に戒尺で頭を叩きました:それでは私が山下の花に手紙を書くとき、「お坊さん」というパスワードを使わなければなりませんか?考えてみた後、お坊さんは小僧に戒尺で頭を叩きました:私たちはお坊さんではなく、プログラマーではありません。自分で車輪を作ることもできません。かつて一群の優れたプログラマーが作った Wifi のセキュリティアルゴリズム WEP は、刺繍の枕となり、セキュリティ界では笑い話となりました。さらに、花は 3DES や AES しか知らないので、お坊さんのアルゴリズムを知るはずがありません。
小僧は尋ねました:では、師匠、どうすればいいのですか?
お坊さんは言いました:私と花は、各メッセージのパスワードを知っていれば、お互いの暗号化された手紙を読むことができます。問題は、お互いがどのようにしてこの対称キーを知るかです。もし私がパスワードを手紙で彼女に送ったら、手紙が他の人に盗まれた場合、みんなが私たちのパスワードを知ることになり、私たちの手紙を読むことができます。しかし、解決策があります。ここで、私は江湖で秘密に伝わる非対称キーを使用しました。私は現在 2 つのキーを持っています。1 つは「公開鍵」と呼ばれ、もう 1 つは「秘密鍵」と呼ばれます。公開鍵は江湖に公開されており、多くの人が知っていますが、秘密鍵は私だけが知っています。これら 2 つの鍵は数学的に関連しており、公開鍵で暗号化された手紙は、秘密鍵で解読できますが、公開鍵では解読できません。花は公開鍵を知っており、彼女は私に手紙を書くたびに、彼女の対称キーを私の公開鍵で暗号化し、別の紙にパスワードを書き、彼女の手紙を彼女の対称キーで暗号化します。その後、私は私の秘密鍵を使用してこの対称キーを解読し、この対称キーを使用して彼女の手紙を解読します。
このような暗号化方法は、自己署名証明書を生成することですが、これは完全に安全ではありません。具体的には、Chrome のアドレスバーに赤い線が引かれている https です。
お坊さんは一時停止しました:残念ながら、彼女が使っている対称キーは常に「お坊さんはなぜ恋文を書くのか」というようなものです。だから、私はパスワードを解読するたびにがっかりしています。実際、私の好みの対称キーは「風花」や「雪月」などです。最も頭痛の種は、「お坊さんはなぜ恋文を書くのか」というパスワードで小花に返信するために使用しなければならないことです。これは世界で最も苦しいことです。しかし、私はそれ以上に苦しんでいる人がいることを知りませんでした。山下の屠殺者、小花に密かに恋して多くの年月を過ごし、私たちの手紙のやり取りを見て、心が痛んでいました。彼は自ら香客の代わりに手紙を届けることを申し出ました。彼は最初の手紙を小花に届けるとき、彼女に自分の公開鍵を渡し、私の公開鍵が最近更新されたと嘘をつきました。小花はそれを信じ、その後の手紙の対称キーはすべて彼の公開鍵で暗号化されました。屠殺者は返信を受け取った後、彼の秘密鍵で小花の対称キーを解読し、小花の手紙の内容をすべて見ることができるだけでなく、このパスワードを使用して小花に手紙を書くこともできます。私は手紙が変わったことに気づきましたが、疑問を抱きながらも、確かな証拠はありませんでした。一度、私は小花が最初に使用した対称キーについて尋ねる手紙を書きましたが、返信には「お坊さんはなぜ恋文を書くのか」という言葉がありましたので、私の疑問は少し軽減されました。嵩山少林寺の老方丈を訪ねる機会があったとき、私はようやく気づきました。私の公開鍵には火印がないため、誰でも私の公開鍵を偽造して自分のものだと主張することができます。その結果、その人は私に宛てた手紙を読むことができるだけでなく、他の人に私に宛てた手紙を偽造することもできます。これは「中間者攻撃」と呼ばれるものです。唯一の解決策は、嵩山少林寺の火印(CA 機関によって発行された証明書)を使用することです。この火印には注意が必要で、私の公開鍵と私の江湖での地位を 18 羅漢委員会に提出する必要があります。彼らは私の情報を使用して委員会の秘密鍵でデジタル署名を行い、署名の情報が火印に表示されます。火印付きの公開鍵の真正性は、江湖で誰も疑問視しません。18 羅漢は誰も怒らせない存在です。
小僧は尋ねました:それからどうなりましたか?
お坊さんは言いました:嵩山少林寺から山上のお寺に戻る途中、火印のついた公開鍵を小花に直接渡しましたが、その後、小花から手紙を受け取っていません。1 年後になって初めて、実際に小花から手紙をもらったことがわかりました。当時の手紙は火印のついた公開鍵で暗号化されていましたが、屠殺者は私の秘密鍵がわからないため、小花のパスワード付きの手紙を解読できず、怒って手紙をすべて焼きました。また、屠殺者は小花の対称キーを知らないため、手紙を返信することができず、小花がいくつかの手紙を送った後、音信不通になり、私は彼女の近況について尋ねるようになりました。これにより、屠殺者は焦りました。彼は私の公開鍵を使用して、小花の口調で私に手紙を送りました。手紙を受け取ったとき、私は不思議に思いました。手紙にはなぜか豚脂の匂いがし、結末には私の秘密鍵について心配している言葉がありました。詐欺だとわかったので、私は手紙からパスワード付きの紙を取り出し、小花の公開鍵でこのメッセージを解読しました。解読できない場合は、手紙全体をパスワード付きの紙ごと捨てます。なぜなら、その手紙は小花が書いたものではないからです。解読できる場合は、その手紙が小花からのものであることが確認でき、注意深く解読します。
小僧は言いました:聞いたところで、屠殺者は生き生きと息を引き取ったと言われています。あなたの恋文は頭が痛くなります。私が大きくなったら、山下に向かって大声で叫ぶことで、この手間を省くことができます。しかし、上の階の言葉を理解しました。ssl のハンドシェイク段階では、火印を見たり、牡丹を読んだり、パスワード付きの紙を解読したりする必要があります。確かに面倒です。一度、両者が対称キーを知ると、デコードして手紙を読む段階は非常にスムーズです。
2014 年 4 月 28 日に編集されました
著作権は著者に帰属します。
出典:【HTTPS 要比 HTTP 多用多少服务器资源?】牟旭东の回答
ただし、すべての CA 機関が信頼できる証明書を発行しているわけではありません。例えば:
中国の WoSign(沃通)の SSL 証明書の信頼を Chrome が全面的に取り消す
2016 年 9 月、Mozilla は WoSign(沃通)が証明書の発行日を偽装し、他の会社の買収を隠蔽するなどの問題を暴露し、同社が発行したすべての証明書の信頼を一時停止しました。Apple と Google もこれに続きました。最近、Google は、Chrome ブラウザが 9 月に新しいバージョンをリリースした後、WoSign およびその子会社である StartCom が発行したすべての証明書の信頼を取り消すと発表しました。現在これらのデジタル証明書を使用しているウェブサイトは、これらの証明書を置き換えることを検討することをお勧めします。