암호화된 문자열을 복호화할 수 없는 것을 말합니다.
복호화란 ?
const crypto = require('crypto');
crpyto.createHash('sha512').update('password').digest('base64'));
password → efgdacedae== (총 8개의 문자를 12개의 문자로 변환)
pbkdf2 algorithm
bcrypt나 scrypt보다 취약
const crypto = require('crypto');
crypto.randomBytes(64, (err, buf) => {
const add_str = buf.toString('base64');
console.log('salt:', add_str);
// password에 add_str을 붙여 10만 번 sha512 변환과정
crypto.pbkdf2('password', add_str, 100000, 64,'sha512', (err, key) => {
console.log('password:', key.toString('base64'));
});
});
암호화된 문자열을 키(key)를 사용하여 복호화할 수 있습니다.