Open In App

Node crypto.randomBytes() Method

Last Updated : 15 Jan, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

The crypto.randomBytes() method is used to generate cryptographically well-built artificial random data and the number of bytes to be generated in the written code.

Syntax: 

crypto.randomBytes( size, callback )

Parameters: This method accepts two parameters as mentioned above and described below:  

  • size: It is of type number which indicates the number of bytes to be generated.
  • callback: It is a function which is made of two parameters namely, err and buf. However, if a callback function is available in the stated code then the bytes are generated asynchronously else these bytes are generated synchronously.

Return Type: It returns a Buffer if the callback function is given.

Example 1: Below example illustrate the use of crypto.randomBytes() method in Node.js:

Javascript




// Node.js program to demonstrate the
// crypto.randomBytes() method
 
// Including crypto module
const crypto = require('crypto');
 
// Calling randomBytes method with callback
crypto.randomBytes(127, (err, buf) => {
    if (err) {
        // Prints error
        console.log(err);
        return;
    }
 
    // Prints random bytes of generated data
    console.log("The random data is: "
        + buf.toString('hex'));
});


Output: Here, callback function is provided so random bytes are generated asynchronously. 

The random data is:

074e48c8e3c0bc19f9e22dd7570037392e5d0bf80cf9dd51bb7808872a511b3 c1cd91053fca873a4cb7b2549ec1010a9a1a4c2a6aceead9d115eb9d60a1630e056f3accb10574cd563 371296d4e4e898941231d06d8dd5de35690c4ba94ca12729aa316365145f8a00c410a859c40a46bbb4d 5d51995241eec8f6b7a90415e

Example 2: Below examples illustrate the use of crypto.randomBytes() Method in Node.js:

Javascript




// Node.js program to demonstrate the
// crypto.randomBytes() method
 
// Including crypto module
const crypto = require('crypto');
 
// Calling randomBytes method without callback
const buf = crypto.randomBytes(60);
 
// Prints random bytes of generated data
console.log("The random bytes of data generated is: "
    + buf.toString('hex'));


Output: Here, callback function is not provided so bytes are generated synchronously 

The random bytes of data generated is: 865f38a9950699794e81fcd91584f8612f5a42aec5b7bbed48c1683832c519c22c836c91fe1afc0330a2ea02dea0a31a1f509dfde1a780ce82ec0eb1

We have a Cheat Sheet on Node crypto methods where we covered all the crypto methods to check those please go through Crypto Module Complete Reference this article.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads