GPG. Шифрование в Kali Linux. Лучшее из Open Source.

Spread the love

Всем привет. С вами Алина.

Сегодня поговорим про шифрование данных, про то как правильно шифровать данные. Также я расскажу про программу которая называется GPG. Это одна из самых популярных программ для того чтобы шифровать свои данные, я покажу на практике как шифровать данные и как вообще правильно её использовать, как создавать ключи.

Но для начала немножко теории. Сейчас очень мало есть программ которым можно доверять шифровать свои данные. Очень большое количество программ скомпрометированы, либо они не пользуются доверием. Например была программа которая называлась TrueCrypt и она была очень популярна до 2014 года, она имела большое количество пользователей которые ей доверяли. Но с ней произошла такая интересная вещь которая называется “Свидетельство канарейки”. Этот термин совсем недавний, он к нам произошёл от шахтёров. Шахтёры которые добывают уголь имеют большую вероятность отравиться угарным газом и поэтому они начали брать с собой канарейку. Канарейка быстрее чем человек чувствует угарный газ и она замолкает. Когда ты берёшь канарейку она всегда чирикает, издаёт какие-то звуки, но как только чувствует угарный газ – сразу молчит. Все сразу понимают что есть проблема. И фактически “свидетельство канарейки” это такой термин который означает передачу какой-то информации через молчание. Так например правительство может компании послать какой-то секретный акт о том что компания должна разглашать информацию о своих пользователях правительству. И компания не имеет права разглашать эту информацию о том что правительство прислало ей такое требование. Компании начали как-то выкручиться и придумывать различные способы. Например компания может вам прислать email в котором она скажет, что “Уважаемый пользователь. Мы за вами не следили с 2005 года до 13 февраля 2021 года.” И всем сразу становится понятно о чём идёт речь. Либо некоторые компании например каждые пол года публикуют какой-то репорт в котором они могут говорить что за эти пол года мы никаким правительствам не передавали никакие данные. И соответственно если через пол года этой строчки нет, то все понимают что произошла проблема. И такая же ситуация была с программой TrueCrypt. В 2014 году на неё оказали давление правительства различных стран и после чего разработчики забросили проект, они удалили все файлы из репозитория и порекомендовали использовать другие программы, сообщество естественно всё поняло. Фактически вот такой прецедент был. Сейчас сложно доверять каким-то решениям, особенно проприетарным. Я абсолютно недоверяю шифрование, какие-то хранения паролей и какую-то важную информацию программам с закрытым исходным кодом. Поэтому остаются только открытые опенсорсные программы. И самая лучшая и популярная из опенсорсных программ это как раз gpg. Нужно понимать, что она для асимметричного шифрования. Сейчас я расскажу просто теорию. Если вы теорию знаете уже хорошо, то можете проматывать вниз и читать уже практику.

Симметричное и асимметричное шифрование

Для начала нужно понимать, что бывает два вида шифрования – Симметричное и асимметричное.

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

Эти методы решают определённые задачи и обладают как достоинствами, так и недостатками. Конкретный выбор применяемого метода зависит от целей, с которыми информация подвергается шифрованию.

Симметричное шифрование.

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

Симметричные, а конкретнее, алфавитные алгоритмы шифрования были одними из первых алгоритмов. Позднее было изобретено асимметричное шифрование, в котором ключи у собеседников разные.

Самые популярные алгоритмы: AES, Blowfish, Twofish.

Недостатки:

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

Достоинства:

  • скорость
  • простота реализации (за счёт более простых операций)
  • меньшая требуемая длина ключа для сопоставимой стойкости
  • изученность (за счёт большего возраста)

Асимметричное шифрование.

Достоинство данного типа шифрования в том, что вы можете свой публичный ключ отдать через незащищенный канал. Так как этим ключом человек сможет только шифровать что-то. Но не сможет расшифровывать. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах: TLS, SSL, HTTPS, SSH, PGP. Первый недостаток асимметричного шифрования заключается в низкой скорости выполнения операций зашифровки и расшифровки, что обусловлено необходимостью обработки ресурсоемких операций. Как следствие, требования к аппаратной составляющей такой системы часто бывают неприемлемы. Вообще принцип асимметричного шифрования можно очень просто выразить одной фразой: “Можно сгенерировать пару очень больших чисел так, чтобы, зная одно, нельзя было вычислить другое за разумный срок. При этом механизм генерации является общеизвестным.” Все асимметричные алгоритмы можно описать очень кратко. Должно быть всего одно свойство. Если известно x то f(x) вычислить довольно просто. Если известно y=f(x), то для вычисления x нет простого пути. Один из самых популярных алгоритмов является алгоритм RSA

RSA (Алгоритм работы)

Алгоритм работает довольно просто. Мы просто берем два простых числа P и Q.

Умножим их друг на друга и в результате получим N. Потом выберем случайное число D. Оно должно быть взаимно простым с (P-1)*(Q-1). И определим число E, для которого будет истиной (E*D) mod ((P-1)*(Q-1))=1И у нас открытый ключ это числа E и N, а приватный – числа D и N

Теперь, чтоб нам зашифровать что-нибудь нашим открытым ключом {E,N} нам надо разбить наш шифруемый текст на блоки, каждый из которых можно представить в виде числа M(I)=0,1,2..., N-1

И зашифровать, как последовательность M(I) по формуле C(I)=(M(I)^e)mod N. А чтобы потом расшифровать это, просто используем секретный ключ {D,N}, по формуле M(I) = (C(I)^D) mod N

В результате получим исходный текст.

Практика.

Для начала давайте установим саму программу:

sudo apt install gpg
Далее вводим пароль от своей учётной записи и программа установится. Пароль пишется, просто вам он не отображается (новички иногда паникуют).

sudo добавляется когда вы сидите на из под rootа, а под обычной учёткой.

apt это приложение которое ищет то что вам нужно установить.

install это установить.

gpg это приложение которое вам нужно установить.

gpg это именно та утилита и тот инструментарий который мы будем использовать для шифрования наших данных.

После того как программа установилась нам нужно будет сгенерировать ключи шифрования при помощи которых мы будем всё шифровать:

gpg --full-gen-key

Первое, что у нас спрашивается, это то какие алгоритмы шифрования мы хотим использовать, давайте будем использовать RSA, это классический алгоритм который как раз для таких целей и используется. Жмём 1:

По умолчанию у нас длина ключа 3072 бита. Ставим максимальную длину ключа 4096 бит. Чем большую длину ключа мы ставим тем дольше у нас будет происходить шифрование и дешифрование, но при этом это более безопасно. Если у вас более менее мощный компьютер, то рекомендую ставить 4096 бит. В любом случае это достаточно быстро если вы не шифруете десятки или сотни гигабайт:

Далее нужно установить время жизни ключа. Мы сделаем ключ бессрочный:

Программа спрашивает всё ли правильно мы указали. Пишем: y
Это означает Yes (Да).

После этого программа спрашивает наше имя и наш email. В первую очередь это нужно для подписи данных. Мы сейчас говорим про шифрование данных, подписи это отдельная история для разработчиков ПО и так далее, они в данном случае нам не нужны. Поэтому тут можете указывать что хотите, рандомный email и имя, комментарий также абсолютно любой:

Программа опять уточнит всё ли правильно. Да всё правильно жмём: o.

Отлично. Теперь вылезет окошко, в нём придумываем пароль. Тут будьте очень внимательны и придумайте сложный пароль хотябы на 30-40 символов, этот пароль будет использован для доступа к нашим данным, пароль должен быть очень сложным и длинным. Лично у меня для моего ключа которым я пользуюсь длина пароля занимает 100+ символов и я запомнила его наизусть. Пароль не заменяет ключи это некий дополнительный механизм для дополнительной защиты наших данных. Всё шифроваться будет безусловно с использованием длинных и сложных ключей шифрования, но дополнительно вот ещё есть пароль. Давайте придумаем пароль и подтвердим его:

Я показываю вам в качестве примера. Поэтому длинный пароль тут делать себе не буду.

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

Всё. У нас сгенерировались ключи и теперь мы их собственно можем посмотреть и начать с ними работать.

Давайте посмотрим наши публичные ключи:

gpg -k
-k маленькая

У нас показывается публичный ключ. Вот он у нас публичный ключ:

И тамже ниже у нас будет ещё показан 1 публичный ключ который называется sub ключём:

Sub ключ это некий подключ, то есть у нас есть основной ключ pub и есть sub ключ. Если мы говорим про шифрование файлов, то мы используем gpg просто для шифрования файлов, можно не заморачиваться со всей это историей, она здесь нам в этом контексте не нужна. Если мы хотим использовать gpg для подписи данных, мы хотим там debian пакеты например публиковать в репозиториях как разработчик, то здесь уже нужно разбираться с ключами, как их отзывать, как их постить на сервера и так далее. Нам это сейчас здесь всё не нужно.

Таким образом мы тут видим 2 публичных ключа.

Теперь пропишем:

gpg -K
-K большая

Здесь у нас уже будут приватные ключи

И вот они у нас тут:

secret
ssb

Это 2 приватных ключа.

Мы уже сгенерировали 2 ключа и мы можем использовать их для шифрования наших данных.

Давайте теперь перейдём в директорию tmp:

cd /tmp
cd это команда для перехода в нужную директорию (папку)

Создадим в ней текстовый файлик:

echo "Пароли от серверов Пентагона" > /tmp/secretik.txt
echo это команда для создания текстового файла.

“Пароли от серверов Пентагона” текст который будет в файле.

> /tmp/secretik.txt путь где будет создан файл и его название

Проверим создался ли наш файл:

Команда ls показывает все объекты в текущем каталоге (папке) в котором мы сейчас находимся

Как видим он успешно создан. Давайте теперь с вами его зашифруем:

gpg -e -a -r alina@gmail.com secretik.txt
-e означает encrypt, то есть зашифровать файл.

-a это означает в ask формате сохранить результат, не в бинарнике, а в ask, потому что по умолчанию gpg всё шифрует и результат бинарный. С бинарником работать не всегда удобно. Ask текст удобно куда-то его переслать, сохранить, поэтому часто шифруют и выходной результат сохраняют просто как ask текст, как просто обычные символы которые можно открыть в любом текстовом редакторе.

-r это указание ключа которым мы будем шифровать. Здесь же мы можем указать просто email нашего ключа, либо idшник того ключа которым мы хотим зашифровать. В данном случае я просто укажу email и вот этими ключами мы будем шифровать.
secretik.txt тот файл который мы хотим зашифровать.

Проверяем:

ls
И вот у нас создался второй файлик: secretik.txt.asc

Давайте посмотрим, что написано в нашем незашифрованном файле:

vim secretik.txt.asc
vim это текстовый редактор для вывода содержимого файла на экран терминала и его последующего редактирования

И вот пожалуйста:

То есть у нас на входе была строчка: “Пароли от серверов Пентагона”.
А на выходе вот такая вот замечательная билеберда. Всё зашифровалось успешно.

Давайте попробуем расшифровать всю эту историю. Для начала удалим оригинальный файл без шифровки:

rm secretik.txt
rm команда для удаления файла. И сразу же проверим командой ls. Как видим он удалился.

Теперь расшифруем наш оставшийся зашифрованный файл:

gpg -d -o secretikdva.txt secretik.txt.asc
-d означает decrypt

-o это выходной файл. Сохраним его в secretikdva.txt например

secretik.txt.asc собственно тот файл который мы расшифровываем.

gpg сразу же нашла наши ключи и просит ввести пароль для расшифровки:

Так как ключи находятся на нашем компьютере, то соответственно gpg программа их нашла и подтянула.

Проверяем: ls
Как видим у нас появился расшифрованный файлик.
cat file.txt
Команда cat показывает то что написано в текстовом файле.

Мы всё успешно расшифровали и всё работает. То есть для расшифровки нам нужны и ключи и пароли. Если есть ключи, но нет пароля ничего не получится. Если есть пароль, но нет ключей тоже ничего не получится. Это конечно же очень хорошо.

Мы зашифровали наши файлы, сгенерировали ключи. Всё хорошо и замечательно, но ключи ведь эта штука такая. Хотелось бы их хранить как-то надёжно. Потому что сейчас вы наверняка не понимаете где они тут хранятся, gpg их там сгенерировал, куда-то сохранил.

Мы зашифровали файлы, далее их сбросили в облако например или вообще скинули эти зашифрованные файлы на флешку, а ключи у нас на этом компьютере. Это небезопасно, потому что компьютер может сломаться, перегореть, потеряться, украсть его могут, ещё что-то может произойти. Если наши данные настолько ценны что мы не хотим их потерять, то ключи нужно куда-то забэкапить. И gpg конечно же позволяет нам экспортировать публичные и приватные ключи просто в файлике который мы можем забэкапить куда угодно и впоследствии проимпортировать опять же в gpg и всем этим воспользоваться. Как эта вся история работает:

Для начала давайте удалим наш расшифрованный и зашифрованный файл из директории, чтобы они нам не мешали. Как это сделать командой rm смотрите выше.

Теперь давайте экспортируем наши ключи:

gpg --export alina@gmail.com > public.gpg
gpg –export это экспорт публичных ключей

Давайте его выведем:

cat publik.gpg
Он у нас в бинарнике.

Но я советую экспортировать в aske, чтобы не было такой жёсткой белеберды как выше.

Для этого добавляем интерпритатор -a:

gpg --export -a alina@gmail.com > public.gpg
Теперь всё более читаемо.

Эта команда экспортирует публичные ключи для указанной связки ключей.

Давайте экспортируем теперь приватные ключи:

gpg --export-secret-key -a alina@gmail.com > secret.gpg
Вводим пароль далее. Потом проверяем ls

Всё. Вот эти 2 файлика:

Вы можете скопировать на флешку и закопать эту флешку где-нибудь в огороде, чтобы никто её не нашёл. С компьютера ключи можем далее удалить.

Ещё раз:

gpg -k это публичные ключи.

gpg -K это приватные ключи.

Они лежат в директории ~/.gnupg/

ls ~/.gnupg/

Все ключи лежат в домашней директории в данном разделе. Соответственно давайте удалим их отсюда:

gpg --delete-secret-keys alina@gmail.com
Это удаление приватных ключей. Вас целых 4 раза попросит подтвердить своё действие.
gpg --delete-keys alina@gmail.com
Это удаление публичных ключей. Тут попросит подтвердить всего 1 раз.

Теперь давайте проверим:

gpg -k

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

Давайте мы их импортируем на компьютер обратно для того чтобы воспользоваться.

gpg --import public.gpg
gpg --import secret.gpg

И смотрим:

gpg -k
gpg -K

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

С шифрованием файлов более менее разобрались.

Как же теперь работать с паролями? Ведь к своей безопасности нужно относится серьёзно, и от каждого сервиса должен быть разный пароль не менее 30-40 символов. Как нам их все запомнить?

На самом деле используя gpg можно работать и с паролями. Для этого существует прекрасная утилита pass которая работает как раз таки на основе gpg. То есть на самом деле pass это просто bash скрипт. Абсолютно простейший и не очень большой, вы можете посмотреть его код, что там внутри написано, всё работает на основе gpg. То есть это просто небольшая упрощалка для работы с паролями в контексте gpg, это менеджер паролей который для шифрования данных использует gpg.

Давайте мы с вами его установим

sudo apt install -y pass

Давайте теперь посмотрим куда у нас установился pass:

which команда для поиска файлов в системе
vim /usr/bin/pass

Можете открыть его исходный код и покопаться посмотреть если интересно, простенький bash скрипт на 700 строк.

Но вернёмся к теме. Давайте проинициализируем хранилище наших паролей. Сюда нужно передать idшник ключа который мы будем использовать для шифрования паролей, в данном случае я просто указываю всю связку ключей через прикреплённую почту:

pass init alina@gmail.com
У нас создалась директория password store

Посмотрим, что в ней:

ls -la ~/.password-store
-l и -а это интерпретаторы, можно написать слитно -la
-l покажет подробный список файлов
-a покажет нам скрытые файлы, то есть перед которыми стоит точка (.)
Первые буквы или символы слева, d означает директория (папка), символ минус (-) означает что это файл.

Также добавлю, что вам не обязательно выполнять cd, чтобы переходить в саму директорию и посмотреть её содержимое, это можно сделать из любого места в системе с помощью ls, а затем нужно указать полный путь и добавить интерпретаторы если они вам нужны.

Видим файл .gpg-id с которым мы можем работать. Pass работает таким образом что каждый пароль хранится в отдельном файле. Мы можем на самом деле любую структуру сделать, но удобнее хранить пароли в отдельном файле. Например, давайте сохраним пароль на gmail:

pass insert Email/gmail.com
Далее вас попросит ввести пароль который вы хотите сохранить туда, вводим 2 раза и подтверждаем, далее пароль сохранится в наш файлик.

Посмотрим что получилось:

pass

Мы видим, что у нас появилась и хранится теперь одна запись в нашем хранилище паролей, в директории Email хранится запись gmail.com. На самом деле это реальная директория, это реальный файл. Давайте посмотрим:

tree ~/.password-store
tree это специальная утилита которая выводит всё дерево директорий (папок) и файлов внутри указанной директории.

Как видим у нас есть директория Email и внутри есть файлик gmail.com.gpg

Давайте посмотрим его содержимое:

cat ~/.password-store/Email/gmail.com.gpg
Зашифрованная бинарная билиберда

Как же мы можем его посмотреть теперь нормально в расшифрованном виде?

А посмотреть мы его можем следующим образом:

pass Email/gmail.com
Далее у нас попросит ввести пароль от gpg.
Увидим свой пароль после введения пароля расшифровки gpg

Также кому интересно можете почитать документацию от утилиты pass:

pass --help | less

Там всё написано, документация коротенькая, но полная. Всё что можно сделать при помощи pass там есть.

Я покажу ещё очень хорошую штуку, давайте сделаем так:

pass insert Social/vk -m
-m это называется мультилайн, то есть несколько строк можно хранить в этом зашифрованном хранилище. Не просто пароль, а прям текстовый файл и можем писать туда любой текст.

То есть мы создаём новую директорию паролей. Например социльные/vk. Вы можете придумать и создать любые категории которые вам нужны.

Теперь мы можем ввести туда ту информацию которую хотим сохранить:

Пишем что нам нужно, вставляем перенос строки и жмём Ctrl+D
Как видим всё удачно сохранилось

В целом вы можете использовать это и для хранения банковских каких-то реквизитов и так далее. Просто текстовый файлик который будет зашифрован надёжными и хорошими gpg ключами, но конечно же важно ваш пароль от них который вы вводите он тоже должен быть очень длинным и хорошим.

Также pass умеет генерировать пароль. Давайте попробуем сгенерировать:

pass generate Email/mail.ru 30
30 это указание длины пароля, тут можно поставить любое число которое вам нужно. Это очень удобно если вам лень составлять его самом или не можете придумать хороший и надёжный пароль сами.

После генерации автоматически создаётся директория с нашим паролем. Далее мы можем например установить его на наш email или куда вам нужно.

Также мы можем удалять наши сохранённые пароли:

pass rm Email/mail.ru
Как видим всё удалилось

Надеюсь всё понятно и доступна объяснила. В любом случае если будут вопросы, то задавайте мне их в личку.

Для закрепления.

Люди иногда пишут какие-то вещи и даже не понимают, что их могут читать другие люди и поверить им. Например:

“Да зачем нужен менеджер паролей и какое-то шифрование, я все пароли держу в голове”

“Да зачем нужен менеджер паролей, у меня всего два пароля, для важных сайтов сложный и для неважных несложный”

“Не нужен менеджер паролей и шифрование, ведь на бумаге надежнее”

“Да зачем париться о паролях и шифровании, ведь государство о тебе и так все знает”

Настолько безумные доводы, что прям хочется кричать. Нееет, так нельзя.

Или еще некоторые люди говорят:

Да у меня нет ничего важного, зачем мне эта безопасность

Да, даже если у тебя сейчас нет ничего важного и ты просто школьник, то тебе нужно учиться тому, как вести себя в интернете. Нужно понимать основы безопасности. Ведь ты когда-нибудь вырастешь и станешь взрослым. А если у тебя нет навыков, то все будет грустно. Точно так же мне кажется у людей ошибочная логика, в плане управления финансов. Когда люди говорят, да я все равно мало зарабатываю. Поэтому я и не веду учет финансов и не инвестирую. И на мой взгляд человек путает причину и следствия. Денег у тебя нет потому, что как раз ты не ведешь учет и не инвестируешь.

ОДИНАКОВЫЕ ПАРОЛИ

Ещё раз повторюсь не используйте одинаковые пароли для различных сервисов. Это огромная ошибка. Сервис может как-то потерять базу. И соответственно все ваши остальные сервисы будут под большой угрозой. Однажды я общалась с человеком, у которого был большой проект. Его знают множество людей, у него свой сервис, там больше трех миллионов пользователей и его базу данных угнали. И при этом все пароли в базе были в открытом виде. И эта база позже попала на bhf, один из хакерских форумов, а дальше их просто чекали все подряд на различные сервисы и сливали у людей деньги с кошельков. По нормальному вообще пароли должны быть захешированы. Но тут нам просто выложили огромную базу где есть почта и пароль в открытом виде. И уверяю вас, что каждый десятый человек не парится о собственной безопасности и использует один и тот же пароль для всех сервисов. И вот такие люди могут сильно пострадать. А после того как ты вошел в почту, то все. Меняешь пароль. А потом потихоньку восстанавливаешь пароли ко всяким банковским приложениям, читаешь почту, заходишь в пейпал. Ну просто представьте сами, что может сделать человек зайдя в вашу личную почту. Поэтому это очень важное правило. Никогда не используйте одинаковые пароли для разных сервисов.

ПАРОЛИ В ОТКРЫТОМ ВИДЕ

Не храните пароли в открытом виде (недавняя история с google-документами, которые были проиндексированы яндексом, это показала). Точно так же не слушайте людей, которые советуют вам записывать свои пароли на листочек. И сами не храните пароли просто в блокнотике. Самое оптимальное решение это менеджер паролей. Пора бы это уже усвоить.

РАЗГЛАШЕНИЕ ПАРОЛЯ

Никому не говорите пароль. Даже сотрудникам службы поддержки. И будьте уверены, что если кто-то когда-нибудь спрашивает ваш пароль, то это сто процентов скамеры. Все сервисы устроены так, чтобы пароль знали только вы. Ни один сотрудник компании не имеет права спрашивать у вас ваш пароль.

Wi-Fi

Не используйте бесплатные Wi-Fi сети. А если используете, будьте аккуратны и старайтесь не работать на сайтах без https-соединения. Лучше, конечно, никогда не использовать бесплатный вай-фай. Вы даже не представляете как легко развернуть бесплатную точку доступа чтобы как-то воровать чужие данные. Мобильный интернет стоит сейчас просто копейки. Используйте его и просто никогда не используйте бесплатный вай-фай.

ШИФРУЙТЕ ДИСК

Знаете, что будет, если вы потеряете свой ноутбук, и его найдет плохой человек? Он включит его с любой загрузочной флешкой и спокойно получит доступ ко всем вашим данным. Поэтому очень важно зашифровать весь диск. Чтобы при потере вашего девайса человек не смог получить к нему доступ. Для этого при установке Kali Linux выбирайте шифрование диска lvm, там будет такой пункт (нужно будет придумать очень сложный пароль для шифрования жёсткого диска хотябы на 40-50 символов и держать этот пароль у себя в голове). Не используйте легкие пароли: пароли, которые могут быть связаны с вами или найдены в словаре, их легко могут сбрутить.

Добавить комментарий

WP2Social Auto Publish Powered By : XYZScripts.com