VeraCrypt
VeraCrypt — вільне, багатоплатформне програмне забезпечення, що використовується для миттєвого шифрування дисків та файлів. VeraCrypt започатковано 22 червня 2013 як форк програми TrueCrypt. Оприлюднена та підтримується французом Mounir Idrassi, засновником компанії IDRIX, і після того, як 28 травня 2014 було оголошено про припинення підтримки програми TrueCrypt, набирає популярність, як повноцінна заміна останнього[3].
| |
VeraCrypt 1.17 у Windows 10 | |
Тип | Дешифрування |
---|---|
Розробник | IDRIX |
Перший випуск | 22 червня 2013 |
Стабільний випуск | 1.19 (17 жовтня 2016 ) |
Репозиторій | www.veracrypt.fr/code/VeraCrypt/ |
Операційна система | Cross-platform — Windows, Mac OS, Linux |
GNU фреймворк | wxWidgets |
Мова програмування | C, C++, Assembly |
Доступні мови | перекладено 37 мовами[1] |
Українська | частково |
Стан розробки | активна[2] |
Ліцензія | Apache License 2.0 |
Вебсайт | veracrypt.fr |
VeraCrypt у Вікісховищі |
Схема шифрування
Алгоритми
VeraCrypt може використовувати наступні алгоритми шифрування: AES, Serpent, та Twofish. Додатково доступні 5 комбінацій цих алгоритмів: AES-Twofish, AES-Twofish-Serpent, Serpent-AES, Serpent-Twofish-AES і Twofish-Serpent[4].
Втілені криптографічні хеш-функції: RIPEMD-160, SHA-256, SHA-512 та Whirlpool[5].
Режими шифрування
VeraCrypt використовує режим шифрування XTS(англ.)
Ключі
Ключ заголовка і вторинний ключ заголовка для режиму XTS генеруються за допомогою алгоритму PBKDF2 з використанням 512-бітної криптографічної солі, число ітерацій становить від 327,661 до 655,331, залежно від використовуваної хеш-функції[6].
Удосконалення в порівнянні з TrueCrypt
За твердженнями розробників для VeraCrypt реалізовано ряд удосконалень в області безпеки в порівнянні з TrueCrypt.
В той час як TrueCrypt використовує 1000 ітерацій при генеруванні ключа, яким шифрується системний розділ при використанні алгоритму PBKDF2-RIPEMD-160, VeraCrypt використовує 327,661 ітерацій. Для стандартних розділів на диску, що шифруються, та файлових контейнерів, VeraCrypt використовує 655,331 ітерацій для хеш-функції RIPEMD-160 і 500,000 ітерацій для SHA-2 та Whirlpool. Це істотно уповільнює VeraCrypt при монтуванні зашифрованих розділів диска, але робить його не менше ніж в 10 (і не більше ніж в 300) раз більш стійким до атаки повним перебором[7].
Виправлена вразливість початкового завантажувача для Windows. Для режиму завантаження з зашифрованого розділу додано підтримку алгоритму SHA-256 і виправлено проблеми з вразливістю ShellExecute для Windows.
Для Linux і Mac OS X додано підтримку дисків з сектором більшим, ніж 512 байт. Для Linux реалізовано підтримку розділів, відформатованих під NTFS.
Вказані удосконалення привели до несумісності з форматом розділів TrueCrypt. Розробники VeraCrypt визнали старий формат TrueCrypt надто вразливим до потенційної атаки АНБ і відмовились від нього. Це є одним з головних відмінностей між VeraCrypt і конкуруючим проектом-форком TrueCrypt — CipherShed, який продовжує підтримувати старий формат. Починаючи з версії 1.0f, VeraCrypt може відкривати і конвертувати в свій формат розділи, відформатовані в форматі TrueCrypt але не може створювати нові розділи в цьому форматі[8][9].
Правдоподібне заперечення наявності зашифрованих даних
VeraCrypt, так само як і TrueCrypt, підтримує можливість використовувати заперечне шифрування[10], дозволяючи створити всередині зашифрованого тому ще один, «прихований том»[11]. Додатково, версія VeraCrypt для Windows дозволяє створювати і виконувати прихований екземпляр операційної системи Windows, наявність якого так само можна правдоподібно заперечувати .
В документації VeraCrypt перелічені способи, якими можна скомпрометувати цей спосіб шифрування (наприклад витік даних через тимчасові файли на незашифрованому диску) і можливі способи боротьби з цією проблемою[13].
Продуктивність
VeraCrypt підтримує паралельну роботу на багатопроцесорних і багатоядерних системах[14]. VeraCrypt вміє використовувати апаратне прискорення шифрування, доступне на процесорах, що реалізують набір інструкцій AES-NI[14].
Потенційні проблеми з безпекою
Станом на серпень 2015, не опубліковані відомості про явні вразливості VeraCrypt.
VeraCrypt схильний до ряду потенційних атак, до яких чутливе і інше програмне забезпечення шифрування дисків, наприклад BitLocker. Для пом'якшення цієї небезпеки, розробники VeraCrypt дали користувачам ряд профілактичних рекомендацій[13][15].
Деякі з цих проблем перелічено нижче.
Ключі шифрування, які зберігаються в оперативній пам'яті
VeraCrypt зберігає ключі в оперативній пам'яті у відкритому вигляді. Теоретично, зловмисник може отримати доступ до її вмісту за допомогою так званої атаки методом холодного перезавантаження — при якій зловмисник отримує фізичний доступ до вмісту модулів оперативної пам'яті комп'ютера після його виключення і за допомогою спеціального програмного забезпечення або обладнання відновлює їх старий вміст. Подібна атака була успішно застосована до розділів диску, зашифрованих за допомогою TrueCrypt[16].
Фізична безпека
VeraCrypt не забезпечує безпеки даних на комп'ютері, до якого зловмисник має фізичний доступ, як правило, таємний, в процесі роботи з зашифрованими даними. Ця вразливість відноситься не у випадку втрачених, конфіскованих або викрадених комп'ютерів, а у випадку, коли зловмисники мають можливість встановити на комп'ютер той чи інший вид троянського апаратного забезпечення — апаратний Keylogger, bus-master пристрій, що володіє прямим доступом до оперативної пам'яті або якийсь інший пристрій, призначений для рішення подібних задач[17].
Malware
VeraCrypt не забезпечує безпеку даних на комп'ютері з встановленим malware. Багато шкідливих програм цього типу містять в собі keylogger та можуть, зокрема, зчитувати паролі, що вводяться з клавіатури, і передавати їх зловмисникам[18].
Trusted Platform Module
VeraCrypt не підтримує взаємодію з TPM, так як, на думку розробників, TPM не повинен використовуватись для вирішення задач інформаційної безпеки[19], оскільки TPM не забезпечує ніякого захисту комп'ютера від зловмисника, який отримав фізичний доступ до комп'ютера і, наприклад, встановив апаратний keylogger.
Аудит
Незалежний аудит коду VeraCrypt весною 2015 був на стадії планування. Обговорювався його початок в липні 2015[20].
VeraCrypt спирається на джерельний код TrueCrypt, який успішно, хоч і з деякими зауваженнями, пройшов незалежний аудит коду.
17 жовтня 2016 фонд OSTIF (Open Source Technology Improvement Fund) оприлюднив[21] аудит кодової бази VeraCrypt версії 1.18, в котрому відзначив ряд недоліків та вразливостей, серед них 8 критичних[22]. Більшість з описаних в звіті недоліків було виправлено в VeraCrypt 1.19.
Модель ліцензування та розповсюдження текстів програми
З 28 червня 2015 року VeraCrypt ліцензовано під відкритою Apache License 2.0[23]. До цього він був опублікований під Microsoft Public License[24].
Оскільки VeraCrypt базується на коді TrueCrypt, на нього також розповсюджуються умови ліцензії 3.0 TrueCrypt[25], яка багатьма джерелами не вважається вільною.
Заплановані можливості
В планах розробників — забезпечити можливість шифрування дискових розділів, відформатованих в форматі GPT[26].
Див. також
- TrueCrypt
- Порівняння ПЗ для шифрування
Примітки
- VeraCrypt 1.16 Bundle перекладено 37 мовами
- github.com/veracrypt/VeraCrypt
- http://habrahabr.ru/sandbox/94379/ Может ли VeraCrypt стать следующим TrueCrypt?
- Encryption Algorithms. VeraCrypt Documentation. IDRIX. 4 січня 2015. Процитовано 4 січня 2015.
- Hash Algorithms. VeraCrypt Documentation. IDRIX. Процитовано 4 січня 2015.
- Header Key Derivation, Salt, and Iteration Count. VeraCrypt Documentation. IDRIX. 4 січня 2015. Процитовано 4 січня 2015.
- Paul Rubens.
- «VeraCrypt Release Notes»
- Castle, Alex (March, 2015).
- Plausible Deniability. VeraCrypt Documentation. IDRIX. 4 січня 2015. Процитовано 4 січня 2015.
- Hidden Volume. VeraCrypt Documentation. IDRIX. Процитовано 4 січня 2015.
- Security Requirements and Precautions Pertaining to Hidden Volumes. VeraCrypt Documentation. IDRIX. 4 січня 2015. Процитовано 4 січня 2015.
- VeraCrypt User Guide
- Security Requirements and Precautions. VeraCrypt Documentation. IDRIX. Процитовано 16 лютого 2015.
- Alex Halderman et al.
- VeraCrypt Documentation.
- VeraCrypt Documentation.
- VeraCrypt FAQ (англ.)
- Idrassi, Mounir (31 грудня 2014). Security audit. Процитовано 22 лютого 2015.
- The VeraCrypt Audit Results, October 17, 2016
- VeraCrypt 1.18 Security Assessment, Technical Report
- Apache License 2.0 (Apache). Процитовано 1 липня 2015.
- Microsoft Public License (Ms-PL). Процитовано 1 липня 2015.
- см.
- Issues. Процитовано 4 січня 2015.
Посилання
- Сайт проекту VeraCrypt (англ.)
- Чи може VeraCrypt стати наступним TrueCrypt? (рос.)
- Инструкция по использованию VeraCrypt : [рос.] // WebWare.biz. — 01.02.2015. — Дата звернення: 07.03.2016.
- VeraCrypt і CipherShed — форки TrueCrypt (рос.)
- VeraCrypt — достойная альтернатива TrueCrypt : [рос.] // WebWare.biz. — 14.10.2014. — Дата звернення: 13.01.2016.