ホームページ > 記事 > ウェブフロントエンド > JavaScript で文字列からハッシュを作成するにはどうすればよいですか?
始める前に、JavaScript のハッシュについて学びましょう。ハッシュ値も文字列ですが、特定のアルゴリズムを使用して暗号化されます。通常、セキュリティ目的でハッシュを使用します。
たとえば、Google はユーザーの電子メールとパスワードをデータベースに保存します。現在、Google の従業員は開発目的でデータベースにアクセスできるようになりました。しかし、データベースからユーザーの電子メールとパスワードを取得できるでしょうか?いいえ、パスワードはハッシュされた形式で保存されており、パスワードを復号化するには、パスワード文字列からハッシュを作成するときに使用したキーが従業員に必要になるためです。
このようにして、データをハッシュ形式に変換できます。元のデータと新しいデータを比較する必要がある場合は、同じアルゴリズムを使用して新しいデータをハッシュ値に変換し、元のデータのハッシュ値と比較できます。 JavaScript で文字列からハッシュを作成する方法を学びます。
このメソッドでは、文字列からハッシュ値を生成するカスタム関数を作成します。各文字列文字の ASCII 値を取得し、乗算、加算、減算、OR などの演算を実行し、そこからハッシュを生成します。
###文法###上記の構文では、hashstring には str 文字列の最終ハッシュ値が含まれます。
###アルゴリズム###ステップ 1
ステップ 2
ステップ 3
ステップ 4
ステップ 5
ステップ 6
ステップ 7
例 1
例 2
以下の例では、文字列をハッシュに変換するために上記のアルゴリズムを実装しますが、for ループの代わりにreduce メソッドを使用します。文字列を文字配列に変換するには、split() メソッドを使用します。
crypto-js NPM パッケージの使用
Crpyo-js は、文字列からハッシュを生成するためのさまざまなメソッドが含まれる Npm パッケージです。メッセージを復号化するためのアルゴリズムもいくつか含まれています。
ユーザーは、次の構文に従って暗号化と復号化のために crypto-js パッケージをインポートして使用できます。
リーリー上記の構文では、cryptoJS パッケージの AES モジュールの encrypt() メソッドを使用します。
String
秘密キーは、ハッシュを生成するときに アルゴリズムが使用する秘密キーです。ハッシュは複雑であるほど、より安全な暗号化テキストが生成されます。
例 3 以下の例では、NodeJs ファイルに crypto-js パッケージをインポートしました。その後、CryptoJs の AES モジュールにアクセスし、encrypt() メソッドを使用して文字列からハッシュを生成します。
CryptoJs パッケージには、さまざまなアルゴリズム用のさまざまなモジュールが含まれています。暗号化キーを使用する任意のアルゴリズムの暗号化方式を使用できます。したがって、アルゴリズムは知っていても鍵が分からない場合でも、暗号文を解読することはできません。
以上がJavaScript で文字列からハッシュを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。