Программные средства для автоматического дешифрования файла, чей алгоритм шифрования (и / или ключи шифрования) неизвестен?
У меня есть идея для шифрования, которую я мог бы довольно легко запрограммировать для шифрования локального текстового файла.
Учитывая, что мой подход является новым и не использует какие-либо отраслевые стандартные методы шифрования, смогу ли я проверить надежность своего шифрования с помощью "взломанных" приложений или чего-то подобного?
Или все эти инструменты основаны на передовых знаниях о процессе шифрования (или перехваченных "ключах"), что означает, что мне придется создавать свой собственный взломщик для тестирования?
5 ответов
Если вы написали свое собственное "новое" шифрование без каких-либо "стандартных методов шифрования", и вы не знаете, как его протестировать (т.е. вы не являетесь экспертом по криптографии), то я уже могу сообщить вам результат,
Ваша схема безнадежно испорчена и может быть взломана даже криптографами студенческого уровня. Не то, чтобы ваша схема когда-либо зашифровывала что-то настолько ценное, чтобы стоило потратить время на взлом.
Криптография НЕ для неопытных. Больше, чем любая другая дисциплина, она постоянно опирается на предыдущие знания. В криптографии нет "революций", и НИКОГДА не рекомендуется новая схема.
Брюс Шнайер хорошо написал на эту тему. Пожалуйста, прочтите Памятку для Дизайнера Любительских Шифров.
Вы бы преуспели в том, чтобы получить его книгу " Прикладная криптография", прочитать его блог, где он иногда указывает на некорректные схемы, прочитать статьи о криптоанализе, чтобы увидеть, как выглядит настоящая атака. Атаки обычно основаны на математических свойствах алгоритма.
И это только Шнайер. Есть много других криптологов, у которых вы могли бы поучиться. Прочитайте библиографию книги Шнайера для ссылок.
Если вы пишете программу для развлечения или для изучения шифрования, отлично, исследуйте и учитесь. Если вы используете основной язык, есть много доступных бесплатных библиотек, которые будут правильно выполнять шифрование для вас. Я настоятельно рекомендую использовать одну из этих библиотек, если вы делаете это в качестве профессионального усилия.
Если вы хотите узнать больше о шифровании, начните с книги "Прикладная криптография" Брюса Шнайера, она старая, но даст вам хорошее базовое понимание, и вы сможете найти новые тексты от него или других авторитетных авторов, чтобы основываться на этих знаниях. У него есть сайт по адресу http://www.schneier.com/
Я не могу согласиться с @abelenky и @MegaCraig: если вы действительно заботитесь о защите данных, создание собственной схемы шифрования - ужасная идея.
Если вы хотите учиться, вы можете начать со статьи в Википедии о криптоанализе.
Если вы ознакомитесь со статьями о различных типах криптоанализа, вы часто можете найти ссылки на инструменты, которые будут выполнять этот конкретный тип криптоанализа, например, этот инструмент для проведения частотного анализа.