Что такое шифрование?
Шифрование - это процесс, при котором данные становятся нечитаемыми другими людьми или компьютерами с целью предотвращения доступа других пользователей к их содержимому. Зашифрованные данные генерируются с помощью программы шифрования, такой как PGP (Pretty Good Privacy), шифровальная машина или простой ключ шифрования, и отображаются как мусор до тех пор, пока они не будут расшифрованы. Чтобы прочитать или использовать данные, они должны быть расшифрованы, и только те, у кого есть правильный пароль или ключ расшифровки, могут снова сделать данные читаемыми.
Очень простой метод шифрования, известный как простая замена, шифр замены или шифр Цезаря (названный в честь Юлия Цезаря), который сдвигает буквы алфавита на несколько символов. Например, как показано ниже, алфавит смещен на четыре символа.
Ключ шифровки:
a=e, b=f, c=g, d=h, e=i, f=j, g=k, h=l, i=m, j=n, k=o, l=p, m=q, n=r, o=s, p=t, q=u, r=v, s=w, t=x, u=y, v=z, w=a, x=b, y=c и z=D.
Ключ для расшифровки:
a=w, b=x, c=y, d=z, e=a, f=b, g=c, h=d, i=e, j=f, k=g, l=h, m=i, n=j, o=k, p=l, q=m, r=n, s=o, t=p, u=q, v=r, w=s, x=t, y=u и z=v
Используя этот метод, пользователь может зашифровать любое текстовое сообщение. Ниже приведен пример того, как это можно сделать с помощью Java.
class Caesar { // Шифруем public static StringBuffer encrypt(String text, int s) { StringBuffer result= new StringBuffer(); for (int i=0; i<text.length(); i++) { if (Character.isUpperCase(text.charAt(i))) { char ch = (char)(((int)text.charAt(i) + s - 65) % 26 + 65); result.append(ch); } else { char ch = (char)(((int)text.charAt(i) + s - 97) % 26 + 97); result.append(ch); } } return result; } // Демонстрация public static void main(String[] args) { String text = "upread.ru"; int s = 4; System.out.println("Text : " + text); System.out.println("Shift : " + s); System.out.println("Cipher: " + encrypt(text, s)); } }
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.