У меня есть несколько файлов PDF, которые мне нужно безопасно хранить на моем Mac (MacBook Air 2011, OSX Lion). Я провел быстрый поиск по программному обеспечению для шифрования, и то, что я нашел, оставило у меня несколько вопросов. Сначала о программном обеспечении для шифрования: похоже, оно шифрует ваши файлы с помощью выбранного алгоритма, и мне интересно, какой из них самый безопасный? И насколько безопасныйявляетсяэто на самом деле? Потому что мои (базовые) знания шифрования (шифрование паролей PHP и т. д.) говорят мне, что если зашифрованный файл можно расшифровать снова, то он по определению не так уж и безопасен (алгоритм можно «обратить»). Так какой же самый безопасный способ это сделать?
Еще одно. Я нашел несколько людей, которые используют Терминал, чтобы скрывать файлы, ставя точку перед именем файла, так что он не отображается в обычном пользовательском интерфейсе. Мне это кажется очень странным, потому что он все равно отображается в Терминале. Если бы вы могли указать мне правильное направление, это было бы очень ценно!
решение1
Ваш лучший вариант, как вы сказали, это сделать оба, т. е. зашифровать файл, а затем скрыть его. Лучший вариант - использовать образ диска, который можно использовать как каталог в Finder, для легкого доступа (при монтировании).
Создайте образ DMG с помощью "Disk Utility" (она находится в /Applications/Utilities/ или используйте Spotlight). Для этого нажмите Файл > Создать > Пустой образ диска. Затем вы можете выбрать размер (выберите достаточно большой, чтобы он соответствовал вашим потребностям) и шифрование (128- или 256-битный AES). Дайте ему имя и место хранения, и все готово.
Используя Терминал, вы можете переименовать файл, используя (предполагая, что изображение было сохранено в папке «Документы»)
mv ~/Documents/myImage.dmg ~/Documents/.myImage
Каждый раз, когда вам нужно получить доступ к вашему изображению, вы можете сделать это из Терминала:
open ~/Documents/.myImage
Вам будет предложено ввести пароль, а затем вы сможете использовать образ диска как обычно в Finder. Вы можете использовать любое имя, которое захотите.
Для большей безопасности вам необходимо очистить историю, чтобы никто не мог увидеть команду, которую вы ввели для открытия изображения (которая раскрывает его местоположение).
history -c && rm -f ~/.bash_history
Кроме того, после отключения образа обязательно удалите ссылку на него на левой панели Дисковой утилиты.
решение2
Стеганография — плохой способ обеспечения безопасности. Хотя она может добавить уровень защиты, сохраняя файлы на вашем компьютере в безопасности от нетехнических пользователей, она не обеспечивает никакой защиты от кого-либо еще. Большинство криминалистических приложений ищут необработанные данные для заголовков файлов и анализируют размеры файлов — среди прочего. Так, например, если бы выскрыть pdf файл в jpg, это было бы бесполезно против того, кто ищет заголовки pdf. (Вероятно, также выделялось бы изображение размером 25 МБ размером 320 на 320 пикселей...) По сути, стенография бесполезна в современных вычислениях против современных криминалистических методов. Кроме того, добавление "." перед файлом не скрывает его, а только позволяет фильтрам, которые отфильтровывают файлы с точками, отфильтровывать их. Вы все равно можете найти эти файлы, если попросите их конкретно.
Что касается стойкости AES, Blowfish, Rijndael или чего-то еще — они обладают лишь ограниченной безопасностью. Независимо от того, что вам говорят, эти алгоритмы не являются невзламываемыми и никогда не были разработаны как невзламываемые. Вы правы, говоря, что шифрование (в целом) основано на алгоритме, который можно обратить вспять; однако, чтобы обратить их вспять, требуется значительное количество усилий по обработке — больше, чем в настоящее время возможно или вероятно для вычисления простых чисел и получения исходного ключа.
Хороший способ поразмышлять о шифровании — спросить себя: «Сколько стоят мои данные?» и «Сколько усилий приложит кто-то другой, чтобы получить их?».
Если вы пытаетесь скрыть коды запуска ядерных ракет, то помещение их в текстовый файл в защищенном паролем zip-архиве будет недостаточным.
Theтолькошифрование, которое многие считают не поддающимся взлому, являетсяОдноразовый блокнот.
Итак, как мне спрятать свои вещи?
Я бы рекомендовал вам скачатьTruecryptи создайте большой контейнер, подходящий для хранения всех ваших файлов, которые вы хотите скрыть, - затем добавьте 30%-50%. После того, как вы создали контейнер, заполните его на 30%-50% файлами, которые кто-то другой может посчитать важными, но бесполезными. Эти файлы будут действовать как ваши файлы-отвлекающие маневры - приманка, если вас когда-нибудь заставят раскрыть ваш пароль.
После того, как вы это настроите, создайте еще одинскрытыйконтейнер в первом. Это то место, где вы будете размещать вашисупер секретфайлы. (Ознакомьтесь с документацией Truecrypt, чтобы узнать, как это сделать — это просто.)
Наконец, переименуйте свой файл, используя другое расширение, чтобы сбить людей со следа. Расширение .dmg в OS X хорошо подходит для этого - или даже .iso. Опять же, это имеет ограниченное применение, но заставляет некоторых людей чувствовать себя лучше.
Теперь у вас есть довольно безопасный контейнер, который скрывает ваши файлы, и если вы когда-нибудь окажетесь в ситуации, когда вам придется раскрыть свой пароль, вы можете раскрыть пароль к вашему разделу-обманке, и никто не сможет доказать обратное. Ходят слухи, чтоФБР не смогло взломать контейнер Truecrypt даже спустя 2 года.
Теперь, если вы действительно хотите перейти на новый уровень. ПолучитеUSB с паролеми используйте FileVault2 для шифрования вашего USB-накопителя и поместите контейнер Truecrypt на USB-накопитель.
У меня тоже есть ров с бешеными акулами, но YMMV...
решение3
сокрытие файлов не сравнимо с шифрованием.
В настоящее время AES является стандартным алгоритмом шифрования и очень безопасен, он так же безопасен, как и используемый вами пароль. Его можно расшифровать, только угадывая ваш пароль. Убедитесь, что вы не используете режим ECB, но ни одна серьезная программа даже не предлагает этот режим шифрования.
В MacOSX легко создать зашифрованный DMG-файл с помощью «Дисковой утилиты» с функцией «Новый образ».
решение4
О скрытых файлах
Трюк с точкой перед именем файла — это просто стандартное соглашение Unix: имя файла, начинающееся с точки, является скрытым файлом, который не должен отображаться через пользовательские интерфейсы. Однако в большинстве этих пользовательских интерфейсов есть способ сделать эти файлы видимыми. Использование этого трюка может скрыть файл от большинства людей, но может сделать его гораздо более очевидным для компьютерных гуру.
О шифровании
Современные методы шифрования основаны на математических гипотезах, что определенный класс операций не может быть легко отменен, если вы изначально не знаете, как именно они выполняются. Это предотвращает обратную разработку и криптоанализ. Таким образом, алгоритмы шифрования могут быть стандартизированы и опубликованы для всеобщего ознакомления.
Чтобы по-прежнему защищать ваши данные, шаги в алгоритмах принимают параметры, которые выводятся из ключа шифрования. Также будет предоставлен алгоритм расшифровки, который будет работать только в том случае, если указан исходный ключ шифрования. Если используется неправильный ключ, расшифрованный текст будет бессмыслицей. Большинство этих наборов алгоритмов шифрования также поставляются с математическими доказательствами того, что никакие другие практические алгоритмы не могут быть использованы для расшифровки данных без знания ключа шифрования.
О хасинге
Безопасная хэш-функция — это односторонняя функция, т. е. необратимая, с некоторыми дополнительными гарантиями ее свойств. Они на самом деле используются не для «шифрования», а для «доказательства».
Метод, который вы использовали для «шифрования» паролей в PHP, вероятно, представляет собой хэш-функцию, но на самом деле это не шифрование, поскольку, как вы знаете, суть в том, что хэшированные данные невозможно расшифровать.
Люди часто путают эти два понятия, потому что а) многие шифры можно использовать в качестве функций хеширования и б) хеширование также используется в пакетах шифрования для повышения безопасности.
Подробнее о б): Хеширование чаще всего используется для обработки ключей шифрования, чтобы сделать входные данные однородными и избежать известных слабостей. Таким образом, в более профессиональном программном обеспечении для шифрования вам часто будет предоставлен выбор как алгоритма шифрования (AES, RC4 и т. д.), так и алгоритма хеширования (MD5, SHA и т. д.)
Однако очевидно, что вы не можете использовать хеш-функцию для шифрования, поскольку смысл полезного шифрования в том, что вы можете получить обратно открытый текст.
Чтобы сделать эти знания практическими
... вам придется тщательно подумать о том, от кого вы пытаетесь скрыть данные, насколько хороши их навыки работы с компьютером и будут ли эти данные стоить того, чтобы нанять эксперта.
Если вы можете принять то, что люди находят зашифрованные файлы, но все равно не могут их открыть, то, вероятно, подойдет любое программное обеспечение для шифрования. Если вы хотите отрицания существования, т. е. люди не могут доказать, что у вас есть зашифрованный файл, без того, чтобы вы отказались от знаний, вы можете рассмотреть TrueCrypt.