Skip to content
Advertisement

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

Advertisement

Answer

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)
Advertisement