1

Я предполагаю, что это, вероятно, очень длинный ответ, поэтому не стесняйтесь дать небольшое объяснение со ссылкой на полезную статью, учебник или мы

Как я могу зашифровать файл без использования одного из таких инструментов, как FileValut, Knox, Disk Utility, openssl, GnuPG и т.д.? Как на самом деле сделать это вручную ... Я не обязательно хочу это делать, но я хочу понять, как это работает ...

2 ответа2

3

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

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

Очень простой пример этого - шифрование XOR (XOR - логический оператор, "исключительный или"). Тривиально реализовать очень простую программу на языке C для шифрования заданного файла на основе ключа. Смотрите здесь для объяснения того, как все это сочетается и учебник: http://www.cprogramming.com/tutorial/xor.html

Вы также можете изучить различные алгоритмы, используемые в инструментах, однако заметьте, что они не так просты, как просто XOR-кодирование битов. Принцип тот же, хотя.

Итак, подведем итог: есть файл -> определить ключ -> запустить файл через некоторый алгоритм для шифрования на основе ключа -> зашифрованный файл.

Надеюсь, это поможет.

2

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

Сильный Крипто от руки: Solitare (Pontifex)

Интересный способ начать понимать криптографию состоит в том, чтобы получить колоду игральных карт и использовать метод шифрования Брюса Шнайера « Solitare », который использовался Нилом Стивенсоном в его книге Cryptonomicon.

Другие интернет-ресурсы

Хорошая бесплатная книга, которая начинается с Цезаря, - ftp://ftp.pgpi.org/pub/pgp/6.5/docs/english/IntroToCrypto.pdf

Более интересные вещи, чтобы попробовать Цезарь Шифр http://www.purdue.edu/discoverypark/gk12/downloads/Cryptography.pdf

Довольно математический подход к предмету http://math.scu.edu/~eschaefe/crylec.pdf

книги

Несколько замечательных книг:

  • Кодовая книга Саймона Сингха
  • Криптоанализ по Гейнсу

Обновление: вот выдержка из Википедии:

Слабая криптография от руки: Цезарь Шифр

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

Plain:    ABCDEFGHIJKLMNOPQRSTUVWXYZ
Cipher:   DEFGHIJKLMNOPQRSTUVWXYZABC

При шифровании человек просматривает каждую букву сообщения в "простой" строке и записывает соответствующую букву в строке "шифра". Расшифровка производится в обратном порядке.

Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
Plaintext:  the quick brown fox jumps over the lazy dog

Шифрование также может быть представлено с использованием модульной арифметики путем предварительного преобразования букв в числа, согласно схеме, A = 0, B = 1, ..., Z = 25. 1 Шифрование буквы x с помощью сдвига n может быть математически описывается как

Расшифровка выполняется аналогично,

(Существуют разные определения для операции по модулю. Выше результат находится в диапазоне 0 ... 25. То есть, если x+n или xn не находятся в диапазоне 0 ... 25, мы должны вычесть или добавить 26.) Замена остается неизменной на протяжении всего сообщения, поэтому шифр классифицируется как тип моноалфавитного замещения, в отличие от полиалфабетического замещения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .