vasek
Немного пояснения - может пригодится для диплома (и для понимания)
Исходя из всей информации, которую я прочитал за эти несколько дней. это тема явно не для одной лабораторной работы. Когда начинаешь изучать материал, вопросов становиться больше чем ответов, что меня немного пугает(сколько это может продолжаться?) и ты понимаешь, насколько маленькой частью информации ты обладаешь:D
Думаю для данной лабораторной работы я подведу следующие итоги:
1. Не существует идеального способа шифрования информации, который сможет удовлетворить все потребности в области защиты информации.
2. Защита информации должна быть комплексной и разрабатываться для определённых условий и факторов в которых она будет эксплуатироваться.
3. Современный стандарт шифрования информации содержит, размер блока 128 бит, размер ключа 256 бит, n-ое число раундов (пример шифр AES, "Кузнечик")
4. ОС на базе Linux имеют широкие возможности и инструменты для шифрования персональных данных (объект моего исследования инструмент LUKS).
5. Предоставить зашифрованную инструментом LUKS систему на основе дистрибутива Arch Linux (Арк Линукс) созданной по статье Хабр'а.
6. Предоставить самостоятельную наработку зашифрованной инструментом LUKS системы с "Двойным дном" на основе дистрибутива Arch Linux (Арк Линукс).

Задачи на ближайшее будущее:
1. Завершить зашифрованную систему с "Двойным дном" на основе дистрибутива Arch Linux (Арк Линукс).
2. Написать первую статью на Хабр'е.
3. Написать статью для сообщества Arch Linux (Арк Линукс).

Спасибо vasek, indeviral за помощь в освоении материала!
indeviral, vasek
Спасибо! Что помогаете мне в освоении темы шифрования устройств.

vasek
Нужно не верить, что пишут, а считать самому … или я не так что то понял?
Да извиняюсь, информация действительно неверная, прочитал другие статьи.

vasek
SkyRewir
AES | 128bit |128, 192, 256 бит | 10, 12, 14 (зависит от размера ключа)

Не понял, что это ???
Здесь я хотел привести сравнение западных и российских стандартов шифрования (Размер ключа, Длинна ключа). На следующей строчке описан шифр "Кузнечик".

Но я бы хотел взять более идеальные условия, где нету человеческого фактора, без применения сывороток правды и пыток:D
Программно-технические возможности и средства реализации.
indeviral
offtop: как по мне так, если есть что прятать. нужно выбрать такую схему которую сможешь обойти, когда с паяльником в попе, вдруг забудешь пароль. социальную инженерию ещё никто не отменял)))
Почему оффтоп? Данный метод тоже существует и применяется "Тук-тук-тук по дереву".
Согласен, не все могут противодействовать Бандитскому криптоанализу при отсутствии должной подготовки и в любом случае пароль придётся сказать, для этого можно использовать метод "Правдоподобного отрицания". Для ложной системы выбрать не очень сложный и при этом не слишком лёгкий пароль, который, при применении к тебе пыток ты не забудешь и сможешь его выдать за истинный.
vasek
Если исследование, то должно быть приведено сравнение методов шифрования (немного есть в Wiki). А если это безопасность, то способы шифрования всем известны и все хорошо описано, нет смысла повторять это.
Почему нет смысла повторять?
Вот пример из WIKI
AES | 128 bits |128, 192 or 256 bits| approved by the NSA for protecting "SECRET" and "TOP SECRET" classified US-government information (when used with a key size of 192 or 256 bits)
Одобренный Агенством Национальной Безопасности для защиты информации правительства США, классифицированной как "СЕКРЕТНО" и "СОВЕРШЕННО СЕКРЕТНО"
Из этой информации стоит сделать вывод, что наиболее современный и безопасный шифр это AES, но в дополнении к этому можно сделать вывод, что правительствами разных стран проводятся исследования для взлома данного шифра как наиболее распространённого, в отличии к примеру от менее распространённого шифра "Кузнечик", который прописан в ГОСТ'ах в качестве стандарта РФ Кузнечик.
Подведём небольшой вывод:
Современные стандарты шифрования имеют AES подобную структуру.
К сравнению
Шифр |Длинна ключа |Размер ключа |Число раундов
AES | 128bit |128, 192, 256 бит | 10, 12, 14 (зависит от размера ключа)
Kuznechik | 128bit |256 бит | 10
Я читал статью, к сожалению ссылку не нашел, что для взлома цифрового 6-ти значного ключа, который зашифрован AES, потребуется около полутора месяца (вне лабораторных условиях). Что делает его "на данное время" одним из самых криптостойких. Но все может измениться с появление квантовых компьютеров. Выдержка сделана на память.

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

[email protected] ~ # lsblk
NAME                        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
loop0                         7:0    0 474.1M  1 loop  /run/archiso/sfs/airootfs
sda                           8:0    0    20G  0 disk
├─sda1                        8:1    0   512M  0 part
└─sda2                        8:2    0  19.5G  0 part
  ├─wrapper-FakeSystem      254:0    0     8G  0 lvm
  │ └─FakeSystem            254:2    0     8G  0 crypt
  │   ├─FakeSystemRoot-swap 254:4    0     1G  0 lvm
  │   ├─FakeSystemRoot-root 254:5    0     5G  0 lvm
  │   └─FakeSystemRoot-home 254:6    0     2G  0 lvm
  └─wrapper-TrueSystem      254:1    0  11.5G  0 lvm
    └─TrueSystem            254:3    0  11.5G  0 crypt
      ├─TrueSystemRoot-swap 254:7    0     1G  0 lvm
      ├─TrueSystemRoot-root 254:8    0     5G  0 lvm
      └─TrueSystemRoot-home 254:9    0   5.5G  0 lvm
sr0                          11:0    1   586M  0 rom   /run/archiso/bootmnt
sr1                          11:1    1  1024M  0 rom
Вот пример кода

fdisk /dev/sda

#Разбиваем диск на 2 раздела
#sda1 раздел для /boot у меня UEFI

Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n
Partition number (1-128, default 1):
First sector (2048-41943006, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-41943006, default 41943006): +512M

Created a new partition 1 of type 'Linux filesystem' and of size 512 MiB.
Partition #1 contains a vfat signature.

Do you want to remove the signature? [Y]es/[N]o: Yes

The signature will be removed by a write command.

Command (m for help): t
Selected partition 1
Partition type (type L to list all types): 1
Changed type of partition 'Linux filesystem' to 'EFI System'.

#sda2 системный раздел

Command (m for help): n
Partition number (2-128, default 2):
First sector (1050624-41943006, default 1050624):
Last sector, +sectors or +size{K,M,G,T,P} (1050624-41943006, default 41943006):

Created a new partition 2 of type 'Linux filesystem' and of size 19.5 GiB.

#Записываем

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Проверяем, что получилось

[email protected] ~ # lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 474.1M  1 loop /run/archiso/sfs/airootfs
sda      8:0    0    20G  0 disk
├─sda1   8:1    0   512M  0 part
└─sda2   8:2    0  19.5G  0 part
sr0     11:0    1   586M  0 rom  /run/archiso/bootmnt
sr1     11:1    1  1024M  0 rom
Подготовка раздела sda1

#Раздел sda1 форматируем в FAT32
[email protected] ~ # mkfs.vfat /dev/sda1
mkfs.fat 4.1 (2017-01-24)
Подготовка раздела sda2 для "Контейнера с двойным дном", возможно я делаю это не правильно, это только моя догадка

#Инициализация физического LVM раздела
[email protected] ~ # pvcreate /dev/sda2
  Physical volume "/dev/sda2" successfully created.

#Создание группы разделов LVM
[email protected] ~ # vgcreate wrapper /dev/sda2
  Volume group "wrapper" successfully created

#Создаём два логических раздела
##Для ложной системы
lvcreate -L8G -n FakeSystem wrapper
  Logical volume "FakeSystem" created.

##Для настоящей системы
lvcreate -l100%FREE -n TrueSystem wrapper
  Logical volume "TrueSystem" created.

#Проверяем, что получилось
[email protected] ~ # lsblk
NAME                   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0                    7:0    0 474.1M  1 loop /run/archiso/sfs/airootfs
sda                      8:0    0    20G  0 disk
├─sda1                   8:1    0   512M  0 part
└─sda2                   8:2    0  19.5G  0 part
  ├─wrapper-FakeSystem 254:0    0     8G  0 lvm
  └─wrapper-TrueSystem 254:1    0  11.5G  0 lvm
sr0                     11:0    1   586M  0 rom  /run/archiso/bootmnt
sr1                     11:1    1  1024M  0 rom
Затем мы шифруем логические разделы

#Шифруем логический раздел с ложной системой
[email protected] ~ # cryptsetup -v luksFormat /dev/mapper/wrapper-FakeSystem

WARNING!
========
This will overwrite data on /dev/mapper/wrapper-FakeSystem irrevocably.

Are you sure? (Type uppercase yes): YES #Подтверждаем
Enter passphrase for /dev/mapper/wrapper-FakeSystem: #Придумываем пароль
Verify passphrase: #Подтверждаем пароль
Key slot 0 created.
Command successful.

#Шифруем логический раздел с настоящей системой
[email protected] ~ # cryptsetup -v luksFormat /dev/mapper/wrapper-TrueSystem    :(

WARNING!
========
This will overwrite data on /dev/mapper/wrapper-TrueSystem irrevocably.

Are you sure? (Type uppercase yes): YES #Подтверждаем
Enter passphrase for /dev/mapper/wrapper-TrueSystem: #Придумываем пароль
Verify passphrase:  #Подтверждаем пароль
Key slot 0 created.
Command successful.
Открываем наши LUKS-контейнеры

#Для ложной системы
[email protected] ~ # cryptsetup luksOpen /dev/mapper/wrapper-FakeSystem FakeSystem
Enter passphrase for /dev/mapper/wrapper-FakeSystem: #Пароль от ложной системы

#Для настоящей системы
[email protected] ~ # cryptsetup luksOpen /dev/mapper/wrapper-TrueSystem TrueSystem
Enter passphrase for /dev/mapper/wrapper-TrueSystem: #Пароль от настоящей системы
Подготовка зашифрованных LUKS-контейнеров

#Инициализируем физические LVM разделы для LUKS-контейнеров
##Для ложной системы
[email protected] ~ # pvcreate /dev/mapper/FakeSystem
  Physical volume "/dev/mapper/FakeSystem" successfully created.

##Для настоящей системы
[email protected] ~ # pvcreate /dev/mapper/TrueSystem
  Physical volume "/dev/mapper/TrueSystem" successfully created.

#Создаём группу разделов LVM для "Ложной системы" и "Настоящей системы"
##Для ложной системы
[email protected] ~ # vgcreate FakeSystemRoot /dev/mapper/FakeSystem
  Volume group "FakeSystemRoot" successfully created
##Для настоящей системы
[email protected] ~ # vgcreate TrueSystemRoot /dev/mapper/TrueSystem
  Volume group "TrueSystemRoot" successfully created

#Создание логических разделов для "Ложной системы" и "Настоящей системы"
##Для ложной системы
###Создаём раздел swap
[email protected] ~ # lvcreate -L1G -n swap FakeSystemRoot
  Logical volume "swap" created.
###Создаём раздел root
[email protected] ~ # lvcreate -L5G -n root FakeSystemRoot
  Logical volume "root" created.
###Создаём раздел home
[email protected] ~ # lvcreate -l100%FREE -n home FakeSystemRoot
  Logical volume "home" created.

##Для настоящей системы
###Создаём раздел swap
[email protected] ~ # lvcreate -L1G -n swap TrueSystemRoot
  Logical volume "swap" created.
###Создаём раздел root
[email protected] ~ # lvcreate -L5G -n root TrueSystemRoot
  Logical volume "root" created.
###Создаём раздел home
[email protected] ~ # lvcreate -l100%FREE -n home TrueSystemRoot
  Logical volume "home" created.
В результате у меня образовалась такая структура

[email protected] ~ # lsblk
NAME                        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
loop0                         7:0    0 474.1M  1 loop  /run/archiso/sfs/airootfs
sda                           8:0    0    20G  0 disk
├─sda1                        8:1    0   512M  0 part
└─sda2                        8:2    0  19.5G  0 part
  ├─wrapper-FakeSystem      254:0    0     8G  0 lvm
  │ └─FakeSystem            254:2    0     8G  0 crypt
  │   ├─FakeSystemRoot-swap 254:4    0     1G  0 lvm
  │   ├─FakeSystemRoot-root 254:5    0     5G  0 lvm
  │   └─FakeSystemRoot-home 254:6    0     2G  0 lvm
  └─wrapper-TrueSystem      254:1    0  11.5G  0 lvm
    └─TrueSystem            254:3    0  11.5G  0 crypt
      ├─TrueSystemRoot-swap 254:7    0     1G  0 lvm
      ├─TrueSystemRoot-root 254:8    0     5G  0 lvm
      └─TrueSystemRoot-home 254:9    0   5.5G  0 lvm
sr0                          11:0    1   586M  0 rom   /run/archiso/bootmnt
sr1                          11:1    1  1024M  0 rom
Дальше необходимо отформатировать разделы и установить две системы "Ложную" и "Настоящую"
Примерно такую схему я составил, но возник вопросы:
1.Возможно стоит дополнительно шифровать wrapper, а для FakeSystem и TrueSystem создать файл-пароль и в зависимости от того, какой пароль wrapper будет введён при загрузке, подключать файл-ключ нужной системы.
2.Как спрятать "Настоящую систему" от "Ложной системы", чтобы дисковое пространство раздела отображалось полностью, вне зависимости от то размера "Настоящей системы", одно дело, спрятать 100Мб, а другое несколько Гб.
vasek
Ну вот откуда такая мания шифровать диск. Статьи пишут не спецы по защите информаци, а простые юзеры и с одной целью - что то написать.
Еще не приходилось сталкиваться со специалистами, которые рекомендуют шифровать диск. Если есть желание что-то спрятать или ограничить доступ используют более ухищренные способы.
Это не мания шифрования:D
Я просто провожу исследование для лабораторной работы в университете, тема шифрование, я выбрал для себя под тему шифрования систем linux, провёл практическое исследование и у меня остались небольшие пробелы для полного усвоения темы.
Вот и решил создать данную тему, возможно кого-то тоже интересует данная область. Про подписку загрузчика и защиты его от подмены и Secure Boot режим в современных материнских платах
Добрый день сообщество ArchLinux!
Я бы хотел узнать о самом современном способе шифрования системы и данных, которые находятся на моём жёстком диске.
Недавно я прочитал и успешно реализовал способ, который был описан в этой статье на Хабр'е
Хотел бы узнать мнение сообщества и людей, которые разбираются в данной теме:
1. На сколько данный способ современен и имеется ли способ лучше?
2. Необходимо ли выполнять операцию sudo dd if=/dev/urandom of=/dev/sda2 bs=2M и для чего он нужен?
3. cryptsetup -v luksFormat /dev/sda2, какой вид шифрования выбрать?
4. Как возможно улучшить способ из статьи Хабра?

Всем добра!
Спасибо!
Eva_Berg
Попробуй линуксячий лаунчер, если виндовым пользуешься - там вайн собирают для евы специально. Хотя лично я настроила его на запуск нативного лаунчера. Емнип ему не хватало то ли libldap то ли lib32-libldap в арчике. А вообще на форуме иврукома есть специальная тема в техническом разделе про еву под линкуксом, лучче спрашивать там
Спасибо!
Точно не знаю в чем дело, переустановил libldap и lib32-libldap и все заработало!
Смог запустить клиент

winecfg->Библиотеки->Новое замещения для библиотеки->d3d11->Добавить->dxd11->Изменить->Отключить
Теперь говорит что нет сети
Форум, добрый день!
Помогите пожалуйста понять, что не хватает wine
Пытаюсь запустить EVE online, запускается лаунчер, авторизуюсь, пытаюсь запустить клиент
Клиент запускается, черный экран, слева внизу появляется кружок загрузки и win курсор, потом просто выкидывает
Как я понял чего-то не хватает

pacman -Qs wine
local/wine-staging 3.9-1
    A compatibility layer for running Windows programs - Staging branch
Вывод wine

0141:fixme:kerberos:kerberos_SpInstanceInit 65536,0x7dc893a0,(nil): stub
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0143:fixme:ver:GetCurrentPackageId (0x4d9fecc (nil)): stub
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0141:fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
0141:fixme:toolhelp:Heap32ListFirst : stub
0141:fixme:volume:GetVolumeNameForVolumeMountPointW Mounted Folders are not yet supported
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0141:fixme:explorerframe:taskbar_list_SetProgressValue iface 0x1f8318, hwnd 0x20170, ullCompleted 0, ullTotal 64 stub!
0141:fixme:explorerframe:taskbar_list_SetProgressState iface 0x1f8318, hwnd 0x20170, flags 0 stub!
0141:fixme:msg:ChangeWindowMessageFilterEx 0x2016c c054 1 (nil)
0141:fixme:process:SetProcessDEPPolicy (3): stub
0141:fixme:ntdll:EtwEventRegister ({d2d578d9-2936-45b6-a09f-30e32715f42d}, 0x1001b40, 0x2fe09b8, 0x300c148) stub.
0141:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33f3a8 1 C) semi-stub
0141:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33f188 1 C) semi-stub
0141:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33ef08 1 C) semi-stub
[0614/214149:ERROR:resource_bundle.cc(720)] Failed to load Z:\home\skyrewir\.wine\drive_c\EVE\launcher\resources\qtwebengine_devtools_resources.pak
Some features may not be available.
0141:fixme:nls:GetThreadPreferredUILanguages 00000038, 0x33f95c, (nil) 0x33f960
0141:fixme:nls:get_dummy_preferred_ui_language (0x38 0x33f95c (nil) 0x33f960) returning a dummy value (current locale)
0141:fixme:nls:GetThreadPreferredUILanguages 00000038, 0x33f95c, 0xe42f368 0x33f960
0141:fixme:nls:get_dummy_preferred_ui_language (0x38 0x33f95c 0xe42f368 0x33f960) returning a dummy value (current locale)
0141:fixme:winsock:WSALookupServiceBeginW (0x33f5f4 0x00000ff0 0x33f630) Stub!
[0614/214149:ERROR:network_change_notifier_win.cc(155)] WSALookupServiceBegin failed with: 8
0141:fixme:iphlpapi:NotifyAddrChange (Handle 0x33f760, overlapped 0xe42fcac): stub
0141:fixme:win:RegisterDeviceNotificationW (hwnd=0x20114, filter=0x33f748,flags=0x00000000) returns a fake device notification handle!
0141:fixme:win:RegisterDeviceNotificationW (hwnd=0x20114, filter=0x33f748,flags=0x00000000) returns a fake device notification handle!
0141:fixme:file:FindFirstFileExW flags not implemented 0x00000002
0141:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0141:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
015f:fixme:kerberos:kerberos_SpInstanceInit 65536,0x7dc983a0,(nil): stub
015f:fixme:process:SetProcessDEPPolicy (3): stub
015f:fixme:ntdll:EtwEventRegister ({d2d578d9-2936-45b6-a09f-30e32715f42d}, 0x10ae1b40, 0x12ac09b8, 0x12aec148) stub.
015f:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33f598 1 C) semi-stub
015f:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33f378 1 C) semi-stub
015f:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0x33f0f8 1 C) semi-stub
[0614/214150:ERROR:resource_bundle.cc(720)] Failed to load Z:\home\skyrewir\.wine\drive_c\EVE\launcher\resources\qtwebengine_devtools_resources.pak
Some features may not be available.
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
015f:fixme:dbghelp:elf_search_auxv can't find symbol in module
Еще появляются ошибки d3d и d3d11

Спасибо!
vs220
dolphin это файловый менеджер оконный в кде kwin и он композитный. Можно попробовать отключить эффекты в настройках. И примус переутановить попробовать
sudo pacman -Suy primus lib32-primus lib32-virtualgl 

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

vs220
del дубль
Полностью удалил и переустановил bbswitch bumblebee nvidia-390xx optimus primus
Все заработало!
Спасибо за помощь, вопрос закрыт!