Я шифрованияаудио файла, используя модуль crypto НПМ в Node.js и пытается расшифровать его в сторону андроид, используя тот же алгоритм и ключ.AES-256-CBC шифрование и дешифрование
Код шифрования является:
параметры Encyption
var crypto = require('crypto'),
algorithm = 'aes-256-cbc',
password = 'somepassword'; //encyption parameters
функция шифрования
function encrypt(buffer) {
var cipher = crypto.createCipher(algorithm, password);
var crypted = Buffer.concat([cipher.update(buffer), cipher.final()]);
return crypted;
}
Теперь для Расшифровка, мы должны использовать некоторые IV (Вектор инициализации) и как исследование говорит not to use same IV for any two files.
Итак, я просто хочу знать сейчас , как специальный IV может быть установлен и случайные или отдельные капельницы могут быть созданы для каждого файла в Node.js, используя криптографию или любой другой модуль во время шифрования.
Будет здорово, если кто-то может помочь мне в этом.
Если вы используете настоящие пароли (несколько символов, ограниченный набор символов), то вы не должны использовать этот код node.js. Это вызывает MD5, чтобы сгенерировать ключ из недостаточно надежного пароля. Вы должны использовать PBKDF2 для получения ключа от пароля со случайной солью и много итераций (более 9.000). Тогда вам также потребуется создать случайный IV. –
Спасибо @ArtjomB. Это будет гораздо более полезно, если вы сможете объяснить больше для лучшего и гораздо более четкого понимания этого. –