const imageInput = document.getElementById('imageInput');
const encryptedTextDiv = document.getElementById('encryptedText');
const decryptionKeyInput = document.getElementById('decryptionKey');
const decryptButton = document.getElementById('decryptButton');
const decryptedImageDiv = document.getElementById('decryptedImage');
imageInput.addEventListener('change', (event) => {
const selectedImage = event.target.files[0];
const key = "123456";
const reader = new FileReader();
reader.onload = function(event) {
const encryptedImage = CryptoJS.AES.encrypt(event.target.result, key).toString();
localStorage.setItem('encryptedImage', encryptedImage);
};
reader.readAsDataURL(selectedImage);
});
decryptButton.addEventListener('click', () => {
const decryptionKey = decryptionKeyInput.value;
const encryptedImage = localStorage.getItem('encryptedImage');
const dataURL = CryptoJS.AES.decrypt(encryptedImage, decryptionKey).toString(CryptoJS.enc.Utf8);
const img = document.createElement('img');
img.src = dataURL;
decryptedImageDiv.innerHTML = '';
decryptedImageDiv.appendChild(img);
});
P. S. Вопрос решен. У того же JSON5 есть свой собственный парсер на гитхабе. Этого я не знал. Он в принципе полностью решает мои затруднения. Всем спасибо)
https://github.com/json5/json5