Q: Decrypt the crypto data I am trying to encrypt and decrypt values using node inbuild module crypto. I have followed this tutorial to encrypt the data. They haven't to gave any sample code to decrypt. When I try to use other tutorial code to decrypt the data. It not working out. Please help me out,
Code
const crypto = require('crypto');
  
// Difining algorithm
const algorithm = 'aes-256-cbc';
  
// Defining key
const key = crypto.randomBytes(32);
  
// Defining iv
const iv = crypto.randomBytes(16);
  
// An encrypt function
function encrypt(text) {
  
 // Creating Cipheriv with its parameter
 let cipher = crypto.createCipheriv(
      'aes-256-cbc', Buffer.from(key), iv);
  
 // Updating text
 let encrypted = cipher.update(text);
  
 // Using concatenation
 encrypted = Buffer.concat([encrypted, cipher.final()]);
  
 // Returning iv and encrypted data
 return encrypted.toString('hex');
}


var op = encrypt("Hi Hello"); //c9103b8439f8f1412e7c98cef5fa09a1


A: Since you havent provided the code for decryption, Cant help you what is actually wrong you doing, apart from that you can do this to get decrypted code:
const crypto = require('crypto')

// Defining key
const key = crypto.randomBytes(32)

// Defining iv
const iv = crypto.randomBytes(16)

// An encrypt function
function encrypt(text) {
  // Creating Cipheriv with its parameter
  const cipher = crypto.createCipheriv('aes-256-cbc', Buffer.from(key), iv)

  // Updating text
  let encrypted = cipher.update(text)

  // Using concatenation
  encrypted = Buffer.concat([encrypted, cipher.final()])

  // Returning iv and encrypted data
  return encrypted.toString('hex')
}

var op = encrypt('Hi Hello')
console.log(op)

function decrypt(data) {
  // Creating Decipheriv with its parameter
  const decipher = crypto.createDecipheriv('aes-256-cbc', Buffer.from(key), iv)
  // Updating text
  const decryptedText = decipher.update(data, 'hex', 'utf8')
  const finalText = decryptedText + decipher.final('utf8')
  return finalText
}

var decrptedData = decrypt(op)
console.log(decrptedData)

