Захист інформації, алгоритм AES
1 comment
Коли ми говоримо про захист інформації, одним із найнадійніших способів шифрування даних є використання алгоритму AES (Передовий стандарт шифрування), який широко застосовується у різних сферах, від фінансової до особистої безпеки.
Приклад включає HTML і JavaScript, бібліотека CryptoJS підключена. Тобто, скрипт є робочим, його потрібно лише зберегти у файл HTML і запустити.
Код:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>AES Шифрування тексту</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js"></script>
<style>
body {
font-family: 'Arial', sans-serif;
background-color: #fff;
color: #333;
}
</style>
</head>
<body>
<div>
<h2>Шифрування тексту</h2>
<div><input id="inputKey" type="text" placeholder="Ключ" /></div>
<div><textarea id="inputText" placeholder="Текст для шифрування"></textarea></div>
<div><textarea id="encript_result" placeholder="Результат шифрування"></textarea></div>
<div><button id="encryptBtn">Зашифрувати</button></div>
</div>
<hr size="1" />
<div>
<h2>Розшифровка тексту</h2>
<div><input id="outputKey" type="text" placeholder="Ключ" /></div>
<div><textarea id="encryptedText" placeholder="Зашифрований текст"></textarea></div>
<div><textarea id="decript_result" placeholder="Результат розшифровки"></textarea></div>
<div><button id="decryptBtn">Розшифрувати</button></div>
</div>
<script>
// Шифрування
document.getElementById('encryptBtn').addEventListener('click', function() {
var text = document.getElementById('inputText').value;
var key = document.getElementById('inputKey').value;
if (text.trim() !== "" && key.trim() !== "") {
var encrypted = CryptoJS.AES.encrypt(text, key).toString();
document.getElementById('encript_result').value = encrypted;
} else {
alert("Введіть текст та ключ для шифрування");
}
});
// Розшифровка
document.getElementById('decryptBtn').addEventListener('click', function() {
var encryptedText = document.getElementById('encryptedText').value;
var key = document.getElementById('outputKey').value;
if (encryptedText.trim() !== "" && key.trim() !== "") {
try {
var decrypted = CryptoJS.AES.decrypt(encryptedText, key);
var originalText = decrypted.toString(CryptoJS.enc.Utf8);
if (originalText) {
document.getElementById('decript_result').value = originalText;
} else {
alert("Неможливо розшифрувати текст. Перевірте правильність ключа та даних.");
}
} catch (e) {
alert("Помилка при розшифровці: " + e.message);
}
} else {
alert("Введіть зашифрований текст та ключ для розшифровки");
}
});
</script>
</body></html>
Comments