Запутывание кода в стиле 'Wind Talkers' - PullRequest
2 голосов
/ 13 октября 2011

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

Так что вы можете видеть, куда это идет. Какой хороший язык, с доступным нативным компилятором , который мало кто знает, но достаточно мощный, чтобы написать, скажем, модуль аутентификации ключа? Я думал о Cobol, но не смог найти нативный компилятор, под которым я подразумеваю компилятор, который компилируется непосредственно в машинный язык, а не путем перевода на C или другой стандартный язык, а затем компиляции C.

Я понимаю, что на уровне сборки это, вероятно, все то же самое, но я все еще думаю, что возможность писать нечитаемый высокоуровневый код может помочь в некоторых ситуациях.

Ответы [ 2 ]

1 голос
/ 13 октября 2011

Ну, я думаю, что вы ответили на свой вопрос в некотором роде.

Я понимаю, что на уровне сборки, вероятно, все то же самое [...]

Один и тот же алгоритм, запрограммированный на разных языках, будет одинаково трудно взломать. Потому что это тот же алгоритм. Если в стандартных библиотеках языка нет какой-либо конкретной уязвимости или, возможно, компилятор допустил ошибку при компиляции программы. Что касается эзотерических языков с компиляторами, то «мозговой трах» - единственный, о котором я могу подумать. http://home.arcor.de/partusch/html_en/bfd.html

0 голосов
/ 16 октября 2011

Я собираюсь согласиться с предложением @ birryree о Прологе, по крайней мере, до дальнейшего расследования. Он имеет собственный компилятор и активно поддерживается, но только небольшим академическим сообществом. Таким образом, вероятность того, что программист «средний джо» узнает, что он относительно небольшой. Но компромисс в том, что он несколько менее неясен, из-за его силы, вероятно, в порядке.

...