情報セキュリティの重要性が高まるにつれ、さまざまなフロントエンド暗号化がますます重要になっています。通常、データ転送のセキュリティを確保し、サーバーとのやり取り中にデータが他人に取得されたり改ざんされたりするのを防ぐために、https の適用に加えて、転送されるデータの暗号化と復号化も必要です。
現在一般的な暗号化アルゴリズムは3つのカテゴリに分けられます
2. 対称暗号化アルゴリズム 対称暗号化 (秘密鍵暗号化とも呼ばれる) とは、暗号化と復号化に同じ鍵を使用する暗号化アルゴリズムを指します。安全に通信するには、送信者と受信者がキーについて合意する必要があります。対称アルゴリズムのセキュリティはキーに依存します。キーが漏洩すると、誰でも送受信したメッセージを解読できるため、キーの機密性は通信のセキュリティにとって非常に重要です。 特徴
エーエス AES: Advanced Encryption Standard は、最も一般的な対称暗号化アルゴリズムです (WeChat ミニプログラムは、暗号化された送信にこの暗号化アルゴリズムを使用します)。 キー: プレーンテキストを暗号化するために使用されるパスワード。キーは受信者と送信者の間の交渉によって生成されますが、ネットワークを介して直接送信することはできません。そうしないと、キーが漏洩することになります。通常、キーは非対称暗号化アルゴリズムを使用して暗号化され、ネットワークを介して相手に送信されるか、直接対面してキーについて話し合われます。キーは絶対に漏洩してはなりません。漏洩すると、攻撃者が暗号文を復元してデータを盗む可能性があります。 プロジェクトでAES暗号化が必要な場合は、オープンソースのjsライブラリcrypto-jsを使用できます。
3. 非対称暗号化アルゴリズム 非対称暗号化アルゴリズムには、公開鍵 (publickey: 公開鍵と呼ばれる) と秘密鍵 (privatekey: 秘密鍵と呼ばれる) の 2 つの鍵が必要です。公開鍵と秘密鍵はペアになっています。公開鍵でデータを暗号化した場合、対応する秘密鍵でのみ復号化できます。暗号化と復号化に 2 つの異なるキーが使用されるため、このアルゴリズムは非対称暗号化アルゴリズムと呼ばれます。 特徴
RSAA の RSA 暗号化アルゴリズムは、最も一般的な非対称暗号化アルゴリズムです。 RSA は、1977 年に Ron Rivest、Adi Shamir、Leonard Adleman によって提案されました。 RSA は姓の最初の文字で構成されています。 プロジェクトでRSA暗号化が必要な場合は、オープンソースのjsライブラリjsencryptを使用できます。
4. ハッシュアルゴリズム ハッシュは、一般的に「ハッシュ」と翻訳され、「ハッシュ」と直接書き起こされることもあります。ハッシュは、ハッシュ アルゴリズムを使用して、任意の長さの入力 (プレマッピング、プレイメージとも呼ばれます) を固定長の出力に変換します。出力はハッシュ値です。この変換は圧縮マッピングです。つまり、ハッシュ値のスペースは通常、入力のスペースよりもはるかに小さく、異なる入力が同じ出力にハッシュされる可能性があり、ハッシュ値から入力値を一意に特定することは不可能です。 簡単に言えば、任意の長さのメッセージを固定長のメッセージ ダイジェストに圧縮する機能です。 特徴
MD5 MD5 は比較的一般的なハッシュ アルゴリズムです。MD5 には 2 つの重要な特徴があります。まず、ハッシュ後のプレーンテキスト データの値は固定長です。次に、ハッシュ後のプレーンテキスト データの結果は常に変更されない必要があります。前者は、2 つのプレーンテキスト ハッシュが同じ結果を生成する可能性があることを意味し、後者は、特定のデータをハッシュすると、結果が同じになる必要があることを意味します。 例えば、ログイン時にパスワードは md5 で暗号化されてサーバーに送信されます。サーバー内のパスワードも md5 で暗号化されて保存されます。この場合、暗号化された暗号文が一貫しているかどうかを確認するだけで済みます。 プロジェクトでMD5暗号化が必要な場合は、オープンソースのjsライブラリを使用できます: JavaScript-MD5
5. Base64エンコード Base64 エンコーディングは単なるエンコーディング形式であり、暗号化アルゴリズムではありません。HTTP 環境でより長い識別情報を送信するために使用できます。 特徴
現代のブラウザはBase64エンコードとデコードメソッドbtoa()とatob()を提供しています。
VI. 結論 ビジネス HTTP リクエストでは、フロントエンドで AES キーがランダムに生成され、サーバーから RSA 公開キーが取得され、AES キーが非対称暗号化され、暗号化されたキーがリクエスト ヘッダーでサーバーに渡され、本文が AES で暗号化されます。サーバーはリクエスト ヘッダー内の暗号化されたキーを受信し、それを RSA キーで復号化し、プレーンテキストの AES キーを取得して、本文を復号化できます。 md5 には文字列の一貫性を検証する機能があります。リクエストが傍受された後に本文が改ざんされるのを防ぐために、リクエストを送信するときに本文の文字列を md5 で暗号化し、リクエスト ヘッダーで送信することができます。サーバーはリクエストを受け取った後、本文を復号化し、リクエスト ヘッダーで md5 を検証して、リクエストが改ざんされていないかどうかを確認します。 |
<<: COVID-19パンデミックの影響を受けて、世界のエッジAIソフトウェア市場は急速な発展を遂げている
>>: 人工知能は今日私たちに何をもたらすのでしょうか?知らないブラックテクノロジーをチェック
[51CTO.comからのオリジナル記事] 現在、私たちの周りではデジタル変革が起こっています。デジ...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
既存のデータの 90% は過去 2 年間に生成されたものです。 毎日 7.5 京バイトのデータが生成...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
[[183562]]人々は常に人工知能について多くの懸念を抱いています。人工知能は私たちの仕事にとっ...
あなたはアルゴリズムを信じますか?答えが何であれ、私たちの生活はアルゴリズムによって完全に変わりまし...
GPT-4 は論文をレビューできますか?スタンフォード大学などの研究者が実際にテストしました。彼ら...
先日開催されたX-Talkでは、米国工学アカデミーの外国人会員であり、XiaoIce会長でもあるハリ...
「トランスフォーマーの挑戦者」MambaがMacBookで実行できるようになりました!誰かが Git...
人工知能に関しては、人々は複雑な感情を抱くことが多い。映画ファンなら、ウィル・スミスが『アイ、ロボッ...
PyTorch は、次の 2 つの高レベル機能を提供する Python パッケージです。強力な GP...
コンピューティング能力の需要が高まり続けるにつれて、さまざまな環境への影響が生じ、人工知能 (AI)...
[[189965]]ディープラーニングはコンピュータービジョンを変革しました。現在、ほとんどの問題...