2016-11-03 2 views
0

Что я имею в виду, так это то, что если я создам программу Lua, которая случайным образом присваивает числа и буквы трехзначному коду, этот код не будет почти нерушимым (например, если кто-то не должен был его получать), если только вы есть программа? извините, если это уже было задано, я мог бы направить меня на это.Почему мы не используем простое шифрование?

+1

Вы можете отправить пример? –

+0

Да, я в школе в настоящее время обновляюсь в 3ish по восточному времени – Matt

+1

Я голосую, чтобы закрыть этот вопрос как не по теме, потому что этот вопрос не связан с программированием; было бы лучше для https://crypto.stackexchange.com/ – erickson

ответ

0

То, что вы описываете, является называется substitution cipher.

Они разбиты с помощью frequency analysis. Поскольку каждая буква и цифра всегда присваивается тот же код, буквы на входе приведет к соответствующим кодов, появляющихся на выходе с той же частотой. Криптоаналитик будет изучать виды данных, которые, как он рассчитывает, будет вводить в шифр, и найти общие символы и шаблоны, а затем сопоставить те с частыми шаблонами в выходе. Например, если ввод представляет собой текст на английском языке, криптоаналитик знает, что наиболее частые коды представляют собой E, T, A, O, I, & hellip; и наиболее распространенными последовательностями являются «THE», «BE», «OF», «AND» и т. д.

Коды на выходе должны происходить с равномерной вероятностью. При наличии смещения на выходе он может быть использован для разрыва кода. Одним из способов избежать этого, в основном, является использование другой «кодовой книги» для каждой буквы на входе. Поэтому «E» не всегда переводит один и тот же код; это будет зависеть от положения «E» в сообщении.

+0

Но что делать, если вы должны менять коды шифрования каждые 24 часа? – Matt

+0

Или, может быть, даже каждый час, не будет ли этот код близок к нерушимой b/c вычислительной мощности, необходимой для проведения частотного анализа? – Matt

+0

Или, возможно, скремблировать буквы? – Matt

1

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

Атакующие варьируются от любопытного друга до национальных государств, думает, АНБ, GCHQ, КГБ & т.д.

"Schneier's Law": Любой из самых бестолкового любителя на лучший криптограф, может создать алгоритм, который он сам может Не сломайся.

Смежные вопросы