Node.js crypto.createDiffieHellman(prime, primeEncoding, generator, generatorEncoding) Method Last Updated : 28 Apr, 2025 Comments Improve Suggest changes Like Article Like Report The crypto.createDiffieHellman() method is used to create a DiffieHellman key exchange object by using the stated prime and an optional specified generator.Syntax: crypto.createDiffieHellman( prime, primeEncoding, generator, generatorEncoding ) Parameters: This method accept four parameters as mentioned above and described below: prime: It can hold string, Buffer, TypedArray, or DataView type of elements.primeEncoding: It is the encoding of the prime string and is of type string. generator: It can hold number, string, Buffer, TypedArray, or DataView type of data. Its default value is 2.generatorEncoding: It is the encoding of the generator string and returns string. Return Value: It returns DiffieHellman key exchange object.Below examples illustrate the use of crypto.createDiffieHellman() method in Node.js:Example 1: javascript // Node.js program to demonstrate the // crypto.createDiffieHellman() method // Including crypto module const crypto = require('crypto'); // Creating DiffieHellman with prime const alice = crypto.createDiffieHellman(20); // Generate keys alice.generateKeys(); // Creating DiffieHellman to get // prime and generator const bob= crypto.createDiffieHellman( alice.getPrime(), alice.getGenerator()); bob.generateKeys(); // Prints prime and generator for // Alice with encoding console.log("Alice prime (p):", alice.getPrime().toString('hex'), "\nAlice generator (G):", alice.getGenerator().toString('hex') ); Output: Alice prime (p): 0a134b Alice generator (G): 02 Example 2: javascript // Node.js program to demonstrate the // crypto.createDiffieHellman() method // Including crypto module const crypto = require('crypto'); // Creating DiffieHellman with prime const k = crypto.createDiffieHellman(30); // Accessing prime value const p = k.getPrime(); // Accessing generator value const g = k.getGenerator(); // Prints prime value console.log(p); // Prints generator value console.log(g); Output: // Buffer 22 4a 58 5b // Buffer 02 Therefore, both prime and generator returns buffer.Reference: https://nodejs.org/api/crypto.html#crypto_crypto_creatediffiehellman_prime_primeencoding_generator_generatorencoding Comment More infoAdvertise with us N nidhi1352singh Follow Improve Article Tags : Web Technologies Node.js Node.js-crypto-module Similar Reads Node.js cipher.final() Method The cipher.final() method in Node.js is used to signal to the cipher object that the encryption or decryption process is complete. This method must be called after all data has been passed to the cipher object using the cipher.update() method. The cipher.final() method returns the remaining encrypte 2 min read Node.js cipher.update() Method The cipher.update() method is an inbuilt application programming interface of class Cipher within crypto module which is used to update the cipher with data according to the given encoding format. Syntax: const cipher.update(data[, inputEncoding][, outputEncoding]) Parameters: This method takes the 2 min read Node.js crypto.getCiphers() Method The crypto.getCiphers() method returns an array the names of all the supported cipher algorithms. Syntax: crypto.getCiphers() Parameters: This method doesn't accepts any parameters. Return Value: It returns the names of all the supported cipher algorithms. Below example illustrate the use of crypto. 2 min read Node.js crypto.createECDH() Method The crypto.createECDH() method is an inbuilt application programming interface of crypto module which is used to create an Elliptic Curve Diffie-Hellman i.e, (ECDH) key exchange object with the help of a predefined curve which is defined by the curveName string. Moreover you can use crypto.getCurves 2 min read Node.js crypto.createDecipheriv() Method The crypto.createDecipheriv() method is an inbuilt application programming interface of crypto module which is used to create a Decipher object, with the stated algorithm, key and initialization vector i.e, (iv). Syntax: crypto.createDecipheriv( algorithm, key, iv, options ) Parameters: This method 3 min read Node crypto.createCipheriv() Method The crypto.createCipheriv() method is an inbuilt application programming interface of the crypto module which is used to create a Cipher object, with the stated algorithm, key, and initialization vector (iv).Syntax: crypto.createCipheriv( algorithm, key, iv, options )Parameters: This method accepts 2 min read Node.js crypto.getDiffieHellman() Method The crypto.getDiffieHellman() method is used to create a predefined DiffieHellmanGroup key exchange object. Here, the favored groups are 'modp1', 'modp2', 'modp5', which are defined in RFC 2412 and 'modp14', 'modp15', 'modp16', 'modp17', 'modp18', defined in RFC 3526. Syntax: crypto.getDiffieHellman 2 min read Node.js crypto.pbkdf2() Method The crypto.pbkdf2() method gives an asynchronous Password-Based Key Derivation Function 2 i.e. (PBKDF2) implementation. Moreover, a particular HMAC digest algorithm which is defined by digest is implemented to derive a key of the required byte length (keylen) from the stated password, salt, and iter 2 min read Node crypto.createHash() Method The crypto.createHash() method is used to create a Hash object that can be used to create hash digests by using the stated algorithm. Syntax:crypto.createHash( algorithm, options )Parameters: This method accepts two parameters as mentioned above and described below:algorithm: It is dependent on the 2 min read Node.js crypto.createHmac() Method The crypto.createHmac() method is used to create an Hmac object that uses the stated 'algorithm' and 'key'.Syntax:crypto.createHmac( algorithm, key, options )Parameters: This method accepts three parameters as mentioned above and described below:algorithm: It is dependent on the accessible algorithm 2 min read Like