Кодирование и шифрование

Кодирование - замена слов.
Кодирование - это процесс преобразования текста путем замены одних слов другими.
Например, для отправки защищенного сообщения "атака", его можно перевести на другой язык "шабуыл", который потенциальный перехватчик не знает.

Шифрование - замена букв.
Шифрование, или шифр, означает замену букв либо отдельных символов.
Например, сдвигать в алфавите каждую букву на определенное число позиций, чтобы сделать замену.
"атака" - "вфвмв"

Общая проблема расшифровки - перевод текста, написанного на языке, который использует неизвестный набор символов.
Перевод - это неизвестный текст, уже переведенный на наш язык.
Алгоритм шифрования - это грамматические правила и синтаксис оригинального языка.

Для перевода и расшифровки должно быть выполнено одно условие: отправитель и получатель по крайней мере должны владеть общим языком.

Египетское иероглифическое письмо — Википедия
Линейное письмо Б — Википедия
Древнегреческий язык — Википедия

Правило шифрования - применяемый метод. Например, что каждая буква заменяется другой, сдвинутой в алфавите на x позиций.

Ключ шифрования - изменяемая инструкция, специфичная для каждого сообщения или группы сообщений. В предыдущем примере, если шпион не знает, чему равен x, ему придется перебрать все возможные комбинации: по одной для каждой буквы алфавита. Такой способ расшифровки называется методом перебора всех возможных вариантов.

Перехват и расшифровка сообщения, как правило, ограничены во времени. Информацию нужно получить и понять до того, как она станет бесполезной или известной другим.

Для тайного общения n пользователей друг с другом требуется столько ключей, сколько всего комбинаций пар из n пользователей, а именно:
\binom{n}{2}=\frac{n(n-1)}{2}

Алгоритм шифрования - общее правило шифрования.

Ключ - определенный параметр, используемый для шифрования или кодирования сообщений.
В примере шифрования со словом "атака" ключ равен 2.
Для каждого алгоритма шифрования существует большое количество ключей, поэтому знание алгоритма чаще всего бесполезно, если неизвестен ключ, используемый для шифрования.

Принцип Керкгоффса — Википедия

Общая система шифрования