Я хочу использовать CryptoJS для шифрования / дешифрования только на сайте клиента.Но я не могу найти, почему мой код работает неправильно.Шифрование выглядит нормально, но я не могу расшифровать после того, как зашифровал некоторый двоичный файл.Возможно, это потому, что я использую неправильные параметры шифрования в своем коде для шифрования двоичного файла.Я прилагаю свой код, который я использую для шифрования двоичного файла (mp3, avi или другой), но мне не повезло.Можно мне сказать, где я делаю ошибку?Я также искал несколько примеров, где я смогу увидеть возможное использование CryptoJS для двоичного файла, но я провел два дня в Интернете и не нашел соответствующего ответа.Существует много примеров шифрования на клиентском сайте и дешифрования на серверном сайте, но не было найдено ни одного примера шифрования клиентского сайта на клиентском сайте (чистая реализация javascript) ... Поэтому я спрашиваю здесь, какова моя последняя попытка найти решение длямоя проблема.Любая помощь будет благодарна !!!THX
Я использую CryptoJS v3.1.2
$("#ffle").change(function(){
var file = this.files[0];
var reader = new FileReader();
var key = CryptoJS.enc.Utf8.parse("Halo");
var iv = CryptoJS.enc.Utf8.parse("123");
reader.onload = function (e) {
var encdata = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(e.target.result), key,
{
keySize: 256,
iv: iv,
mode: CryptoJS.mode.CBC, //padding: CryptoJS.pad.Pkcs7
});
var finData = encodeURIComponent(encdata);
var form_data = new FormData();
form_data.append('file_enc', finData);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'https://crypt.xxxxxxx.net/fileenc4/save.php', true);
xhr.send(form_data);
xhr.onload = function () {
};
}
reader.readAsText(this.files[0]);
});