ニュース

暗号化する最良の方法は公開することですか?なぜ現代の暗号はこれほど奇妙なのでしょうか?

2024-07-18

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


画像をクリックすると動画へジャンプします!



今!頭の中で 5 桁の数字を考えて、それを否定的なレビュー担当者に黙って伝えるにはどうすればよいでしょうか?

必要な数値が 66666 や 12345 などであると仮定してみましょう。

これに悪いレビュアーの幸運な数字 2359 を掛けて、結果の下 5 桁だけを取り出して公開画面に入力してください。そうすれば、あなたがどの数字を考えているかがわかります。準備はできたか?


次はデバッグです。得られた 5 桁に 12039 を掛けます。結果の最後の 5 桁が必要な数値になります。魔法のように見えますよね?

実際、魔法に加えて、現代の暗号化というさらに驚くべき起源があり、銀行カード、電子メール、チャット ソフトウェアもそれと密接に関係しています。

それでは、それは現代の暗号化とどのような関係があるのでしょうか?また、その原理は何でしょうか?なぜこのように設計されているのでしょうか?さまざまな暗号を見てみましょう!

天才数学者の現代暗号のアイデア

暗号について話すとき、私たちはあの男について言及する必要があります。クロード・エルウッド・シャノン。


1949 年に出版された著書「秘密システムの通信理論」の中で、彼は暗号を数学的に古典暗号と現代暗号に分類しました。しかし、現代の暗号理論はあまりにも基本的であるため、その誕生から 30 年以上にわたって闇に葬られてきました。

たとえば、現代の暗号化におけるケルクホフの原則では、「暗号システムに属する人は全員、その暗号化方式を知っているべきだ」と述べられています。これは、誰もが暗号化方式を知っているのに、まだそれを研究しているのです。

もう 1 つの例は、シャノンの完全な秘密主義と一致する、バーナムによって提案されたワンタイム パッド理論です。これは、ワンタイム パスワードを他人に使用することに誰が耐えられるかというと、さらに神経質に思えます。しかし、古典的なコードが経験した落とし穴を読めば、これらの発言がいかに合理的であるかがわかるでしょう。

古典的な暗号

古典的な暗号の時代、暗号の概念は比較的曖昧でしたが、暗号は軍事分野で広く使用されていましたが、暗号化手法は芸術的な行為に近いものでした。


とにかく、単なる概念:ランダムな変化を推測してください。

冗談ではありません、雑誌の論文にはそう書いてあります。ウィキペディアでは、古典的な暗号は置換暗号、シフト暗号、または両方の混合として要約されています。

ただし、「として定義されている」というよりは「としてまとめられている」ことに注意してください。これは、古典的な暗号化が依然として想像力豊かな用語であることを示しています。

たとえば、外国人にとって中国語自体が実は古典的な暗号なのです。

たとえば、「あなたの名前は何ですか」という文章を一つずつ中国語に置き換えて項目を移動すると、「あなたの名前は何ですか」になります。これは、従来のパスワード置換移行の要件に完全に一致しているのではないでしょうか?


もちろん、この種の推論は確かに非常に想像力豊かですが、結局のところ、古典的なコードブックは想像力を使って、あなたには理解できる、私には理解できる、そして他の人には理解できない新しい言語を作成しているのです。

例えば先秦の戦争の本「六道」に記載されている殷のお守り, これは漁師の姜子耶が発明したもので、敵に知られることなく前線から戦闘報告を伝達する方法を発明したもので、これも記録に残る最古のものである。中国の歴史記録。


もう一つの例は、紀元前 700 年に古代ギリシャ軍が次のような武器を使用したことです。スキュテイルの機密通信用ログスティック。

その使用法は次のとおりです。

長い羊皮紙を丸太の棒に巻きつけて、その上に文字を書きます。羊皮紙を解くと、同じ太さの棒に同じように巻き直すことによってのみ、書かれた内容が書き込まれます。見られる。


コナンの暗号スティックのインスピレーションはここから来ています。

もちろん、シーザー暗号やフェンス暗号など、興味深い古典暗号もたくさんあります。 。 。

ここに追加することは万能の友人に任せますが、古典的な暗号には対称的すぎるという致命的な弱点があります。それはどういう意味ですか?

この対称性には 2 つの意味があります。まず、古典的な暗号化は、暗号化の方法がわかれば、復号化の方法を簡単に推測できます。つまり、古代人はただの古代人であり、誰かを生きたまま捕まえたとしても、この暗号の使い方を知らないのでしょうか?


対称性のもう 1 つの意味は、平文をどのように置き換えても、平文と暗号文の間には常に 1 対 1 の対応関係があるということです。ただし、これには大きな欠点もあります。それは、言語の使用が規則的であるということです。 。

たとえば、このグラフは、Pitt.com による 3 兆 5,000 億件の原稿の分析による文字と単語の使用頻度分析レポートです。これは、傍受された暗号文が存在する限り、どのように置き換えても、また何層の置き換えを経ても変わらないことを示しています。多すぎる場合は、必ず周波数分析手法によって検出されます。


もちろん、問題は発見されましたが、古典的な暗号学者がこの問題をうまく解決できていないことは明らかであり、古典的な暗号が実際には効果がないことを間接的に証明したことさえあります。

たとえば、第二次世界大戦中、古典的な暗号学の最高峰 - エニグマ。


暗号化する場合は、暗号化したい平文(ディアンザン)をマシンのキーボードから入力するだけで、点灯するのが暗号化された暗号文です。さらに、平文内の同じ文字も異なる暗号文に暗号化されるため、周波数分析手法が効果的に阻止されます。

加えてそれがどのように機能するかを知っていても、それを解読するのは困難です。

これはどのように行われるのでしょうか?

エニグマ マシンの内部、つまりローター デバイスの入力ホイールの右端には、キーボードの 26 文字に関連付けられた 26 個の接点があります。


デバイスの中央部分は同じ 26 個の接点を持つ複数のホイールで構成されていますが、入力ホイールとは少し異なり、ホイールの内部にはさらに複雑なスイッチ機構があり、入力ボードの文字が通過するたびに切り替わります。ホイールを介して、一度交換されました。


装置の端には反射板と呼ばれる装置があり、これには 26 個の接触点があり、ここの接触点がペアになって結合され、水泳競技と同じ反転点が形成されます。

そして、ここで手紙が再び交換された後、最終的に出発点に戻る前に、再び車輪に戻って交換されなければなりません。


これで暗号化プロセスが完了します。これは複数の置き換えを重ね合わせたものであることがわかりますが、実際には、エニグマ マシンには、キーボードを押すたびに、特殊なレバー装置がホイールを 1 回転駆動します。 、ホイールには特別なホイールパターンがあり、前のホイールが1回転した後、次のホイールも1回転します。

これにより、各文字を押す際の暗号回路が異なるため、周波数解析手法が無効になってしまいます。


さらに、たとえその仕組みがわかっていたとしても、そのような設計をリバースエンジニアリングすることは非常に困難です。

オリジナルのエニグマ マシンを例に挙げると、先ほど述べたホイール パターンのルーレット ホイールが 3 列あり、回転させる方法は 17,500 通りあります。ルーレットホイールの初期位置を設定します。

また、安全のため外部に一組の交換機構が付いています。つまり、oとeが接続されている場合、oを押すとeを押したのと同じになります。

確率理論のアルゴリズムによれば、毎回ランダムに 6 つのペアを選択すると、これらの初期ポジションだけでも 1,000 億を超える可能性が生成されます。


後の世代のエニグママシンでは、ルーレットホイールの数が一度に 8 つまで増加し、逆算を実行するために必要な計算量は飛躍的に増加しました。コンピューターが登場する前の時代では、徹底的な逆算法によってコードを解読することはほとんど不可能でした。たん。

しかも当時のエニグママシンは当初の計画を毎日変更していました。これは、同日に計算できない場合は翌日に再計算されることを意味します。これにより、総当たりクラッキングの難易度がさらに高まります。


しかし、第二次世界大戦について知っている友人たちは、コンピューターが誕生する前に、エニグママシンが最終的に解読されたことを知っています。

1940年、コンピューターの父、イギリスの数学者アラン・チューリング、エニグママシンを解読した。


しかし、コンピューターなしではそれを解読することは不可能だと言いましたよね?この発言は確かに正しいが、ドイツ人は何を投稿しても「ハイル・ヒットル」と言わざるを得ず、傲慢すぎる。


それだけではなく、ドイツ人は報告するのが好きで、時々上司にメッセージを送ります。「上司に報告しましたが、何も起こりませんでした!」もう一文: ハイル・ヒットル。

エチケットによれば、指揮官は私がそれを受け取ったということを表明するために(ハイルヒトレ)と返信しなければなりませんでした〜論理的に言えば、この大きなたわごとを直接報告する方が良いでしょう、少なくともドイツ人には報告しないでください、長官のすべての秘密。このYu Zhongを含めて、状態を維持する必要があります!謎めいてる必要がある!

この厳格かつ自由な作戦により、チューリングはすぐにその秘密とその秘密に相当する多くの手がかりを得ることができました。ゴードン・ウェルチマン彼は「爆弾マシン」と呼ばれる暗号解読マシンを発明し、実際にエニグママシンをリバースエンジニアリングしました。

したがって、これは、古典的な暗号と同様に、暗号化する方法を知っている対称暗号化方式も、根本的に解読されるのは時間の問題であることを再度示しています。


現代の暗号化

メッセージの送信者は暗号化方法のみを知っていて復号化方法は知らないが、メッセージの受信者は暗号化方法と復号化方法の両方を知っている暗号化方法はありますか?

実際、これは現代の暗号学の研究方向の 1 つ、つまり非対称暗号化を実装する方法です。


この暗号化方法は、古典的な暗号化に基づいており、キーの概念を導入し、キーを公開キーと秘密キーに分割し、公開キーは暗号化に使用され、秘密キーは復号化に使用されます。このように、暗号化方式が公開されても、秘密鍵が安全であれば、暗号化システムは解読されません。

したがって、現代の暗号学者による公開暗号化手法の実践は、暗号化システムのセキュリティに実際には影響を与えません。

私たちが始めた魔法のゲームを覚えていますか?

2359 は、誰でも暗号化に使用できる公開キーです。理論的には、復号化に使用される秘密キー 12039 を保護している限り、これは非対称暗号化です。

原理も非常に単純で、公開鍵と秘密鍵を乗算すると、結果は 28400001 になります。これは、5 桁以内の数値にそれらを 2 乗算することは、00001 を乗算することと同じであることを意味します。


しかし、これはアプリケーション レベルの非対称暗号化にとって十分安全ではないことは明らかであり、さらに進めたい場合は、数学の特別な関数を使用する必要があります。

呼ばれたトラップドアの一方向機能、一方向トラップドア関数とも呼ばれます。この関数の前進方向を計算するのは非常に簡単ですが、それを押し戻すことはほとんど不可能です。ただし、いくつかの重要な情報を知っていれば、押し戻すのは非常に簡単になります。 。

例えば非常に有名な RSA アルゴリズム、銀行業務、電子メール、チャット ソフトウェアなど、考えられる限りすべての分野がその保護下にあり、その暗号化原理は単一のトラップドア機能を使用していると考えられます。


暗号化するときは、公開鍵データを累乗し、その剰余を求めて暗号文を取得するだけで済みます。簡単な例を挙げると、たとえば、暗号化する数値が 5 で、公開鍵が (7, 33) である場合、公開鍵データに従って平文の 5 の 7 乗を計算するだけで済みます。 33 を法として計算し、暗号文 14 を取得します。

平文を暗号化方法に従って復号したい場合、最初のステップで行き詰まってしまいます。33 から残りの 14 を見つける可能性は無限にあるためです。これは、平文が何であるかを判断することが不可能であることも意味します。 。 何。


しかし、秘密鍵 (3, 33) を保持している場合は、秘密鍵のデータに従って暗号文を再度べき乗して余りを求めるだけで済みます。プレーンテキストを復元できます 5.これにより、暗号化プロセスと復号化プロセスの分離が実現されます。元に戻すことはできないため、公開鍵を介して秘密鍵を計算できますか?

秘密鍵と公開鍵の生成プロセスを見てみましょう。

まず、2 つの素数を選択します。素数の積は N として記録されます。オイラー関数 φ(n) = (p-1) * (q-1) を通じて関数 φ を計算します。 E. E は必要です。 1 を満たす秘密鍵は、E の乗法逆数を法 φ ( n ) で計算することによって取得されます。

公開鍵だけがわかっていて、秘密鍵を計算したい場合は、最初の 2 つの素数を取得する必要があります。

なぜなら、ここで取り上げた素数は、誰もが理解しやすいように比較的小さいものであり、公開鍵内の 2 つの素数の積がわかったとしても、通常、この素数は非常に大きいため、2 つの素数を逆に演繹したいと考えます。現在の計算レベルによると、少なくともこのビデオは 1,000 万を超えるでしょう。


でも、理論的には、量子コンピューターは機能するんですね。 。ショールのアルゴリズムを効果的に実行するために量子コンピューター上で 4096 個の論理量子ビットを集められない限り。しかし、量子にはエラー修正が必要なため、操作する量子コンピューターには少なくとも数百万の物理量子ビットが必要です。


そうですね、現在最も先進的なものは数十から数百量子ビットの規模しかありません。これは、RSA アルゴリズムと同様の一方向トラップドア関数の総当りクラッキングは、今後数十年で基本的に問題外になることも意味します。

ですから、今の私たちにとっては、暗号化アルゴリズムはすでに非常に強力ですが、これは絶対的なセキュリティを意味するものではありません。

やっと

なぜなら、これらの強力な暗号化アルゴリズムは、銀行カード内のお金が自由に改ざんされないことを保証することしかできないからです。

ただし、ユーザーの防御意識が十分に強くなく、特定の Web サイトでパスワードを入力したり、同じユーザー名とパスワードでさまざまなアプリを多数登録したりすると、これらはハッカーによって総当たりクラックに使用される可能性が非常に高くなります。


暗号化の各時代を振り返ると、厳密な暗号化における最大の抜け穴は常に人間だったようです。

アメリカの暗号学者ブルース・シュナイアー氏は、「セキュリティは鎖のようなもので、最も弱い部分に依存します」と述べています。

情報セキュリティの世界ではテクノロジーが高い壁を築く可能性がありますが、人間の世界では感情がセキュリティにおける最大の脆弱性となっています。

暗号化は退屈ではありますが、私たちは依然として熱意に満ちており、より多くの人に暗号化を知ってもらい、理解してもらいたいと願っています。用心深く、自分自身を守りましょう。これが現代の暗号化の最終目標です。

記事を書く:オレンジ

ビデオ制作:ステーション B からの悪いレビュアー

アートエディター:華艶

写真、ソース

暗号の開発と技術 — Xiao Wei

古典的な暗号学 - Tan Yifu、Song Peifei、Li Zichen (北京版画学院)

数学が苦手な人でもわかるアルゴリズム テクニカルエッグティーチャー

シーザー暗号、完全暗号、現代暗号に関する予備研究—Le Zhengchuixing

一方向トラップドア機能に基づく暗号化アルゴリズム - Guo Shushi および Zhang Xinyu

『図解 暗号技術』 結城宏著、周子恒訳

パスワード争奪戦 - Xiaolangdibulang