Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

Node.jsのcrypto.createDiffieHellman()メソッド


上記のメソッドは、提供されたプライム値とオプションの特定のジェネレーターを使用して、DiffieHellman鍵交換オブジェクトを作成します。ジェネレーター引数は、文字列、数値、またはバッファー値のいずれかを保持できます。ジェネレータのデフォルト値は2です。

構文

crypto.createDiffieHelmmanGroup(prime, [primeEncoding], [generator], [generatorEncoding]

パラメータ

上記のパラメータは以下のように記述されます-

  • プライム –生成される素数ビットの数。入力値はタイプ番号です。

  • primeEncoding –このパラメーターは、プライムストリングのエンコードを定義します。可能な入力タイプは、string、buffer、TypedArray、およびDataViewです。

  • ジェネレーター –交換キーオブジェクトを生成するためのジェネレータ。デフォルト値:2。

  • generatorEncoding –このパラメーターは、ジェネレーターの文字列エンコードを定義します。

index.jsという名前のファイルを作成し、以下のコードスニペットをコピーします。ファイルを作成したら、次のコマンドを使用して、以下の例に示すようにこのコードを実行します-

node index.js

プログラムコード

// crypto.createDiffieHelmmanGroup(prime, [primeEncoding],
[generator],[generatorEncoding])
// Demo Example

// Importing the crypto module
const crypto = require('crypto');

// Initializing and defining the prime value
const server = crypto.createDiffieHellman(20);

// Generating keys
server.generateKeys();

// Creating keys using server prime and generator
const client= crypto.createDiffieHellman(
   server.getPrime(), server.getGenerator());

client.generateKeys();

// Printing the server and client values
console.log("Server prime: ", server.getPrime().toString('hex'), "\nServer generator: ", server.getGenerator().toString('hex'));

console.log("Client prime: ", client.getPrime().toString('hex'), "\nClient generator: ", client.getGenerator().toString('hex'));
>

出力

C:\home\node>> node index.js
Server prime: 0fed0b
Server generator: 02
Client prime: 0fed0b
Client generator: 02

サーバーとクライアントの両方に渡される引数は同じであるため。したがって、生成されるキーも同じです。

もう1つの例を見てみましょう。

// crypto.createDiffieHelmmanGroup(prime, [primeEncoding],
[generator],[generatorEncoding])
// Demo Example

// Importing the crypto module
const crypto = require('crypto');

// Initializing and defining the prime value
const val = crypto.createDiffieHellman(12);

// Printing prime value for abve DiffieHellman
console.log(val.getPrime());

// Printing the generator value
console.log(val.getGenerator())

出力

C:\home\node>> node index.js
<Buffer 0f 6b>
<Buffer 02>

  1. Node.jsのcrypto.privateDecrypt()メソッド

    crypto.privateDecrypt()は、crypto.publicEncrypt()メソッドで対応する公開鍵を使用して以前に暗号化されたパラメーターで渡された秘密鍵を使用して、指定されたデータコンテンツを復号化するために使用されます。 構文 crypto.privateDecrypt(privateKey、buffer) パラメータ 上記のパラメータは以下のように記述されます- キー –オブジェクト、文字列、バッファ、またはKeyObjectの5種類のデータを含めることができます。 oaepHash –このフィールドには、OAEPパディングとMGF1に使用されるハ

  2. Node.jsのcrypto.getHashes()メソッド

    crypto.getHashes()メソッドは、サポートされているすべてのハッシュアルゴリズムの名前を含む配列を返します。暗号パッケージには、使用できるハッシュアルゴリズムの膨大なリストがあります。ただし、最も使用されている暗号化アルゴリズムは「MD5 –メッセージダイジェストアルゴリズム5」です。 構文 crypto.getHashes() パラメータ すべてのハッシュアルゴリズムのリストを返すためです。入力する必要はありません。 例 getHashes.jsという名前のファイルを作成し、以下のコードスニペットをコピーします。ファイルを作成したら、次のコマンドを使用して、以下の例に示すよ