바르고 뜨겁게

[NodeJS] crypto 양방향 암호화(cipher) 본문

자바스크립트/Node Js

[NodeJS] crypto 양방향 암호화(cipher)

RightHot 2018. 12. 18. 19:40

crypto 양방향 암호화(cipher)

const crypto = require('crypto');

// hiddenKey 를 알아야 복호화 가능
// utf8 문자열을 base64 암호문으로 변경
const cipher = crypto.createCipher('aes-256-cbc', 'hiddenKey');
let result = cipher.update('password', 'utf8', 'base64');
result += cipher.final('base64');
console.log('암호화된 암호: ', result);

// 복호화
// 잘못된키 입력시 Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt 에러 뜸
const decipher = crypto.createDecipher('aes-256-cbc', 'hiddenKey');
let result2 = decipher.update(result, 'base64', 'utf8');
result2 += decipher.final('utf8');
console.log('복호화된 평문: ',result2);

암호화된 암호:  ZYHrwMk18d2uXmNm4buSsQ==
복호화된 평문: password


Comments