Вы наверняка слышали об опасностях обмена файлами через интернет. В них тайком «подселяют» вредоносный код, который с определёнными правами может натворить на устройстве чёрт-те что. А если речь идёт об обмене важными рабочими файлами, опасность выходит на новый уровень: корпоративные данные сольют, текст договоров подменят — в общем, караул.
Для защиты на этом уровне используются криптографические алгоритмы. Базовая информация о них неплохо изложена в википедии. Если отбросить всю теорию, то обычно рассматривают симметричные, асимметричные и бесключевые криптографические алгоритмы. В первых для шифрования и дешифрования используется один и тот же ключ, во вторых — разные ключи, а в третьих ключи не используются вовсе. Каждый из типов алгоритмов применяется по-своему.
Хеш-функции
Беcключевые алгоритмы обычно используются для вычисления хеш-функций, или функций свёртки. Хеш-функция преобразовывает массив входных данных произвольной длины в выходную битовую строку установленной длины. Прелесть такого преобразования в том, что если объект изменился, то скорректируется и его хеш-функция.
VeraCrypt программа для шифрования данных, файлов и папок Шифрование диска или флешки на Windows
Рассмотрим это на примере утилиты openssl, установленной в Linux. К примеру, у нас есть текстовый файл, содержащий «this is simple text»:
Вычислим от этого файла хеш-функцию при помощи алгоритма md5:
А теперь изменим содержимое файла:
Обратите внимание: мы добавили в файл новую строку («but changed»), вычислили заново хеш от файла, и он стал другим. То есть при любом изменении содержимого файла хеш-функция не останется прежней. Это можно использовать для контроля целостности критических файлов: если их хеш изменится — системному администратору придёт оповещение. Или для проверки, загрузился ли файл полностью: если это так, на сайте опубликуется его хеш.
В Windows для вычисления хеша я рекомендую утилиту Sigcheck из пакета Sysinternals. Для примера вычислим значение хеша md5 от файла PsExec.exe:
Другой вариант — использовать утилиту certutil, предустановленную в Windows. Вычислим с её помощью значение хеша md5 от файла PsExec.exe:
Также можно загрузить пакет openssl для ОС Windows. Качаем архив под нужную архитектуру процессора отсюда, распаковываем его и переходим в консоли в каталог bin. Нам нужен файл openssl.exe:
Теперь нам доступны почти все возможности пакета openssl в Windows. Например, вычислить хеш, как делали в предыдущих примерах для Linux (не забываем про абсолютные и относительные пути к файлам):
Пакет лучше переместить в каталог C:/OpenSSL, а конфигурационный файл openssl.cnf — из каталога bin в каталог OpenSSL. Избежим ошибки, как на скрине выше:
Теперь рассмотрим реализацию криптографических алгоритмов.
Симметричные криптоалгоритмы
Если говорить упрощённо, то симметричные алгоритмы шифрования применяют один ключ для шифрования и дешифрования. Таких алгоритмов много, и на практике обычно применяют те, которые имеют достаточную длину ключа и ещё не были скомпрометированы. Симметричные алгоритмы делятся на блочные (DES, RC2, Blowfish, AES, «Кузнечик» и т. д.) и потоковые (RC4, SEAL, CryptMT и другие).
Стойкость к взлому у всех блочных криптографических алгоритмов во многом определяется длиной ключа. Если она составляет 128 бит и более, шифрование считается сильным, так как для расшифровки информации без ключа потребуются годы работы на мощных компьютерах. Кому любопытно — об алгоритмах шифрования с точки зрения длины ключа можно прочитать в посте на Хабре.
Попрактикуемся: при помощи пакета openssl зашифруем созданный нами ранее текстовый файл. Для этого используем команду:
openssl enc -e -aes256 -in simpletext.txt -out simple_enc_text.txt
- enc — указывает модуль для шифрования;
- -e — указывает, что файлы нужно шифровать;
- -aes256 — алгоритм шифрования;
- -in — указывает на исходный файл;
- -out — указывает на зашифрованный файл.
Выглядит это так:
Для расшифровки нужно указать введённый при шифровании ключ и используемый алгоритм. Команда примерно следующая:
openssl enc -d-aes256 -in simple_enc_text.txt -out simpletext.txt
- enc — указывает модуль для шифрования;
- -d — указывает, что файлы нужно расшифровать;
- -aes256 — алгоритм шифрования;
- -in — указывает на исходный файл;
- -out — указывает на расшифрованный файл.
При шифровании симметричными алгоритмами есть несколько интересных проблем.
- Длина ключа. Как уже упоминали, желательно не менее 128 бит
- Сложность использования при большом количестве шифруемых объектов — приходится запоминать много параметров.
- Сложность обмена параметрами шифрования (паролями, алгоритмами и подобным) — необходимо обеспечить их надёжную передачу адресату.
Такие проблемы обычно решают при помощи асимметричных алгоритмов шифрования.
Асимметричные алгоритмы шифрования
Главное преимущество асимметричного шифрования по сравнению с симметричным — возможность сторон обмениваться данными друг с другом, не используя секретные каналы связи.
Криптографическая система на основе асимметричного шифрования использует открытые (public key) и закрытые (private key) ключи для шифрования и расшифровки данных. Эти ключи образуют ключевую пару, компоненты которой связаны зависимостью, но отличаются друг от друга. Идея в том, что, зная открытый ключ, нельзя из него получить закрытый, хотя алгоритм генерации известен.
Открытый ключ передаётся по незащищённым каналам связи и известен всем. Его можно использовать для шифрования файлов и не только. Для расшифровки применяется закрытый ключ, который хранится в тайне.
У многих асимметричных алгоритмов, особенно тех, что основаны на проблемах теории чисел, минимальная длина ключа для надёжного шифрования — 1024 бит. Это сильно ограничивает их применение — симметричные алгоритмы позволяют с меньшей длиной ключа надёжно зашифровать файлы.
При практической реализации асимметричных алгоритмов обычно используют сертификат. Это файл, хранящий ключ (открытый и закрытый) в определённом формате. Подробнее об этом можно почитать в статье «Формат SSL-сертификата».
Рассмотрим два основных стандарта для реализации сертификатов шифрования.
X.509 — стандарт ITU-T для инфраструктуры открытых ключей. Определяет стандартные форматы данных и процедуры распределения открытых ключей с помощью соответствующих сертификатов с цифровыми подписями. Именно он обычно используется для электронной цифровой подписи (ЭЦП) и шифрования, например, в openssl.
OpenPGP — стандарт, выросший из программы PGP (к середине 90-х годов она распространилась в интернете как надёжное средство шифрования электронной почты). Став стандартом де-факто, PGP начал встраиваться во множество приложений и систем. С особенностями можно ознакомиться на специализированном ресурсе об OpenPGP.
Посмотрим, как это выглядит на практике. Начнём с асимметричных алгоритмов в openssl — для этого в Windows командную строку надо запустить с правами администратора.
Создадим закрытый ключ в виде сертификата. Команда следующая:
openssl genrsa -aes256 -out private.pem 8912
- genrsa — указывает, что мы используем модуль для генерации закрытого ключа на основе алгоритма RSA;
- -aes256 — указывает на алгоритм AES для шифрования сертификата;
- -out private.pem — файл для сохранения сертификата;
- 8912 — размер ключа.
Теперь надо извлечь из полученного закрытого ключа публичный. Сделать это можно командой:
openssl rsa -in private.pem -pubout -out public.pem
- rsa — модуль для работы с RSA;
- -in private.pem — задаёт путь к закрытому ключу, из которого извлечём открытый;
- -pubout — извлекает публичный ключ;
- -out public.pem — имя файла для полученного открытого ключа.
Ключ мы получили в виде сертификата в формате pem (ASCII-файл в кодировке base64). Это не единственный формат хранения сертификатов — с другими можно ознакомиться в материале, который уже рекомендовался выше.
Стоит учесть, что таким сертификатом мы не сможем зашифровать объект, превосходящий по размеру сам сертификат. Поэтому поступим хитрее: зашифруем файл симметричным алгоритмом, а ключ шифрования от этого алгоритма зашифруем при помощи сертификата. По шагам:
- Генерируем сертификаты (пару из открытого и закрытого ключа).
- Шифруем текст симметричным алгоритмом AES (его вроде бы ещё не взломали). Предположим, получим файл enc.1.
- Далее выбранный для шифрования пароль шифруем публичным ключом (предположим, получим файл enc.2).
- Теперь можно передать зашифрованный файл enc.1 и файл enc.2 по незащищённому каналу связи.
- На другом конце у получателя должна быть вторая часть ключа (закрытый ключ). Ей он вначале расшифровывает файл enc.2 и извлекает оттуда пароль для дешифровки файла enc.1.
- …
- Profit!
Вот как это выглядит на практике. Вначале шифруем текстовый файл алгоритмом AES (пароль 123456):
Теперь сохраним наш пароль (123456) в файл pass.txt. И зашифруем файл при помощи сертификата. Команда:
openssl rsautl -encrypt -inkey public.pem -pubin -in pass.txt -out pass.ssl
- rsautl — включаем модуль для шифрования, дешифрования и подписывания данных алгоритмом RSA;
- -inkey public.pem — указывает путь к открытому ключу;
- -pubin — указывает, что файл ключа является публичным ключом;
- -in pass.txt — файл для шифрования;
- -out pass.ssl — выходной зашифрованный файл.
Теперь можем переслать этот файл по открытому каналу связи. Перехват такой информации мало что даст злоумышленнику, если у него нет закрытого ключа. Попробуем расшифровать файл закрытым ключом и извлечь пароль для расшифровки:
Зачем нужно шифрование?
Даже если вы никогда не задумываетесь над этим,у вас наверняка есть тайны, достойные быть зашифрованными!
Serge Malenkovich
За века своего существования человечество придумало множество способов хранения тайны. В Древнем Риме, например, чтобы тайно передать письмо, брили голову рабу, писали на коже сообщение, а потом, дождавшись, когда волосы отрастут, отправляли его к адресату. Конечно, XXI век не позволяет делать дела столь неспешно, да и защита в этом примере обеспечивается только тем, что о письме никто не знает.
К счастью, компьютеры, изначально созданные для взлома военных шифров, дают каждому из нас прекрасный способ хранения личных тайн – информацию можно зашифровать. То, что долгое время было доступно только государственным службам, сегодня может применить любой пользователь. И, что более существенно, даже если вы не задумываетесь над этим, у вас наверняка есть тайны, достойные шифрования.
Есть что скрывать
«У меня нет никаких тайн, мне нечего скрывать», – часто можно услышать от пользователей, когда речь заходит о шифровании и других средствах защиты конфиденциальности. Обычно за этой фразой стоит нечто другое – «я считаю, что никто не потрудится лезть в мой телефон или компьютер, чтобы там найти что-то ценное». Но практика показывает, что это не так. Файл, сохраненный на рабочий стол компьютера или телефон, оставленный в гостиной, довольно быстро будет изучен кем-то из домочадцев.
Все ли письма, фотографии и документы вы готовы показывать жене, брату, теще, детям? Возможно, там нет ничего криминального. Но готовы ли вы сообщить номер своей кредитной карты и ее PIN-код детям-подросткам? Отдать брату пароли от почты и социальных сетей? Демонстрировать все семейные фото друзьям, которые пришли в гости и на пятнадцать минут сели за компьютер?
Есть ли желание объяснять жене, что Элеонора – это начальник отдела смежников на работе, а встреча с ней завтра – это совещание с участием еще десяти человек?
Ваши фото, номера банковских карт и просто личная переписка интересуют всех: домочадцев, работодателей и, конечно, киберпреступников
И уж конечно, совсем грустной будет история, если на компьютер проникнет вредоносное приложение. В последнее время встречаются зловреды, крадущие всю доступную информацию с компьютера: документы, изображения, сохраненные в браузере пароли и формы – все. Известны случаи, когда среди краденых изображений находились фото документов, которые были использованы для разных форм мошенничества. Или случаи, когда пикантные фото использовались для шантажа.
Особо неприятной формой кражи в последние два-три года стала кража смартфона. Теперь это делается не только для перепродажи краденой трубки, более «продвинутые» воры перед сбытом выключают все беспроводные модули и заглядывают в память устройства в надежде найти что-то ценное вроде тех же паролей, номеров кредиток и фото паспорта.
Семь бед – один ответ
Угроз, как мы видим, существует много, и от каждой из них можно придумать свой способ защиты: изолировать компьютер в запертой спальне, поставить PIN-код на включение смартфона и так далее. Но если защитить информацию не путем физической изоляции, а так, чтобы ее мог прочитать только владелец, результат будет более надежным и всеобъемлющим. Абсолютно все перечисленные неурядицы – большие и малые – могли бы не случиться, если бы важная информация, предназначенная не для всех глаз, хранилась бы в зашифрованном виде.
Иногда вы сталкиваетесь с шифрованием, даже если не задумываетесь об этом, – например, заходя в Gmail или на сайт онлайн-банкинга по протоколу HTTPS, вы связываетесь с банком по зашифрованному каналу. Встроено шифрование и в самый популярный сегодня стандарт сотовой связи GSM. Но сегодня мы сосредоточимся на другом – шифровании данных, хранящихся на компьютере или смартфоне.
Что такое шифрование
Шифрование – это преобразование информации, делающее ее нечитаемой для посторонних. При этом доверенные лица могут провести дешифрование и прочитать исходную информацию. Существует множество способов шифрования/дешифрования, но секретность данных основана не на тайном алгоритме, а на том, что ключ шифрования (пароль) известен только доверенным лицам.
Необходимо отличать шифрование от кодирования. Кодирование тоже преобразует информацию, но лишь для удобства хранения и передачи, секретность не является основной задачей. Типичные способы кодирования – азбука Морзе и двоичное кодирование букв для хранения в компьютере.
Ваш цифровой сейф
Самое удобное на сегодня решение по шифрованию файлов на компьютере – это создание «контейнера», который виден в системе как отдельный диск. На этот диск можно сохранять или копировать любую информацию, с ним можно работать из любой программы, он ничем, по сути, не отличается от флешки или раздела винчестера, чем и удобен.
Важное «но» – на самом деле контейнер является отдельным большим файлом на вашем винчестере, доступ к которому организован через специальную программу, например Kaspersky CRYSTAL. Любой файл, сохраняемый на этот особый диск, будет «на лету» зашифрован и записан в общий файл-контейнер.
Файл-хранилище может увидеть любой посторонний, его даже можно украсть (скопировать). Но это не даст злоумышленнику или просто любопытному ровным счетом ничего – внутри файла содержится лишь мешанина символов, и можно потратить многие годы на то, чтобы подобрать пароль, который превращает этот файл в диск с читабельными файлами.
Чтобы зашифрованный контейнер стал эффективной защитой вашей информации, нужно соблюдать несколько простых правил:
- ключ (пароль) шифрования является единственной защитой информации от посторонних. Он должен быть очень длинным, трудным для подбора, – в общем, стойким. Советы по выбору стойкого пароля можно прочитать в этом посте;
- на диске-хранилище нужно хранить всю конфиденциальную информацию;
- вся информация на диске доступна знающему пароль. Если у вас есть разные группы информации для разных пользователей, заведите несколько хранилищ с разными паролями;
- не держите диск-хранилище постоянно подключенным, иначе с него можно украсть файлы так же, как с обычного диска. Подключайте диск на время работы с важными данными и отключайте сразу после ее завершения;
- информация на зашифрованном диске будет потеряна целиком, если файл-контейнер окажется хоть немного поврежден. Регулярно проводите резервное копирование файла-контейнера;
- обязательно используйте всестороннюю защиту компьютера, чтобы обезопасить свой пароль от троянских приложений и «клавиатурных шпионов». Действующий шпион сводит парольную защиту на нет.
Сейф на смартфоне
Ответом на вышеописанную проблему с кражей смартфонов стало включение в современные мобильные ОС функций шифрования. Ключевая информация в смартфоне постоянно хранится в зашифрованном виде и всякий раз расшифровывается, когда владелец вводит пароль или PIN-код разблокировки. Apple не дает пользователю глубоко управлять этой функцией, но значительное количество информации подвергается шифровке при активации защитного PIN-кода на включение смартфона/планшета.
В Android в настройках безопасности имеется опция полной шифровки содержимого телефона, которая делает все данные на устройстве недоступными без ввода пароля. Для максимальной надежности в обоих случаях рекомендованы свежие версии мобильных ОС – iOS с 6.1 и Android с 4.1.
«Облачная» защита
Среди прочих видов информации в наибольшей степени требуют шифрованного хранения ваши пароли – ведь к каждому сайту и сервису они должны быть разными, оставаясь надежными, длинными и стойкими. Именно поэтому все качественные «хранители паролей» постоянно держат базу данных в зашифрованном виде. Это позволяет без особых опасений передавать ее по Интернету, синхронизируя между разными компьютерами и мобильными устройствами. Подобные сервисы помогают держать все свои пароли под рукой, не снижая уровень защищенности.
- Kaspersky Crystal
- конфиденциальность
- личные данные
- советы
- шифрование
Источник: www.kaspersky.ru
Как зашифровать файлы для защиты личных и деловых данных?
Шифрование можно определить как «перевод данных в секретный код». Это лучший способ обеспечения безопасности данных. Чтобы получить доступ или прочитать данные из зашифрованного файла, вы должны иметь секретный ключ или, проще говоря, пароль , который поможет вам в расшифровке файла. Для алгоритмов безопасности незашифрованные данные известны как обычный текст, в то время как зашифрованные данные известны как зашифрованный текст.
Данные в зашифрованных файлах хранятся в виде сложного кода, который будет трудно взломать в течение разумного периода времени. Следовательно, шифрование считается одним из лучших способов защиты личных или деловых данных. Для любой корпоративной, в том числе медицинской, финансовой или юридической информации, безопасность чрезвычайно важна.
Оставлять незашифрованные данные в облачном хранилище, таком как Google Drive, DropBox или OneDrive, или на вашем персональном компьютере — все равно что оставлять двери открытыми. После того, как злоумышленники узнают, что ваши данные не зашифрованы, становится легко ориентироваться на них.
Загружая ваши данные в облаке или храня их в системе, вы должны попытаться защитить их с помощью шифрования. Это касается как личного, так и организационного характера.
Преимущества шифрования
Широко доступны технологии шифрования данных, которые реализуются с помощью нескольких криптографических алгоритмов. Есть несколько преимуществ.
Целостность данных — повысить защиту данных и целостность информации. Однако одно только шифрование не может обеспечить целостность, но, защищая обязательные данные, оно может сохранить данные от хакера, который может использоваться предприятиями при принятии деловых решений.
Защита конфиденциальности — данные на телефоне, компьютере или в облаке могут содержать конфиденциальную информацию. Хакеры могут получить доступ и использовать ваши личные данные с вашего устройства и использовать их несанкционированным способом, где шифрование данных может быть доказано в качестве гарантии конфиденциальности ваших данных.
Повышение доверия — многим предприятиям может не потребоваться защита данных, но для того, чтобы показать своим клиентам, насколько они серьезно относятся к безопасности своих клиентов, они используют шифрование. Использование шифрования данных может повысить доверие клиентов, поскольку они узнают, насколько серьезно вы относитесь к конфиденциальности данных.
Работа удаленно — многие компании предпочитают удаленных сотрудников. Ожидается, что сотрудники будут использовать зашифрованные устройства. Тем не менее, в случае удаленной работы, риск взлома данных довольно высок. Шифрование данных может обеспечить полную безопасность информации.
Далее давайте рассмотрим некоторые из лучших программ для шифрования, доступных для Windows и MacOS.
1. Encrypto
С шифрованием AES-256 Encrypto делает обмен файлами намного безопаснее. Просто поместите в него свои файлы или папки, установите пароль, и вы готовы отправить его друзьям или коллегам, не беспокоясь о безопасности.
Поскольку люди, которым вы будете отправлять файлы, будут вам известны, вы также можете установить подсказку для пароля. Это гарантирует, что получатель может знать только подсказку, и никакой другой человек не сможет ее разблокировать.
Encrypto доступен для Mac и Windows.
2. NordLocker
Вместе с сервисами NordVPN и NordPass, NordLocker является еще одним продуктом компании, который является впечатляющим, как и другие. Вы можете начать с 2ГБ бесплатного шифрования ваших файлов, таких как:
- Фото
- Видео
- Личные заметки
- ID и пароли
- Финансовые документы
- Любые секретные файлы
Большинство из них предназначены для сохранения конфиденциальности и, зашифровав их с помощью NordLocker, вы предотвращаете их использование многими способами. Вы также можете зашифровать свои файлы перед загрузкой на облачные хранилища чтобы никто не мог получить к ним доступ.
Источник: itgap.ru