Po roku prac rozwojowych premiera projektu , rozwijającym fork systemu szyfrowania partycji TrueCrypt, swoje istnienie. VeraCrypt wyróżnia się zastąpieniem używanego w TrueCrypt algorytmu RIPEMD-160 algorytmami SHA-512 i SHA-256, zwiększeniem liczby iteracji haszowania, uproszczeniem procesu budowy dla Linux i macOS oraz eliminacją , ujawnionych w trakcie kodów źródłowych TrueCrypt. VeraCrypt zapewnia tryb kompatybilności z partycjami TrueCrypt i zawiera narzędzia do konwersji partycji TrueCrypt do formatu VeraCrypt. Kod opracowany przez projekt VeraCrypt jest na licencji Apache 2.0, a zapożyczenia z TrueCrypt dostępne na licencji TrueCrypt License 3.0.
W nowym wydaniu:
- Dla nie-systemowych partycji maksymalna długość haseł została zwiększona do 128 znaków w kodowaniu UTF-8. Aby zapewnić kompatybilność ze starszymi systemami, dodano opcję ograniczenia maksymalnego rozmiaru hasła do 64 znaków;
- Alternatywnie do instrukcji CPU RDRAND dodano wsparcie dla biblioteki , która wykorzystuje jitter (niepewność czasową) do sprzętowej generacji pseudolosowych liczb, opierając się na odchyleniu czasowym ponownego wykonania określonego zestawu instrukcji na CPU (jitter czasu wykonania CPU), które zależy od wielu wewnętrznych czynników i jest nieprzewidywalne bez fizycznej kontroli nad CPU;
- Przeprowadzono optymalizację wydajności trybu XTS na systemach 64-bitowych z wsparciem dla instrukcji SSE2. Optymalizacje umożliwiły średni wzrost wydajności o 10%;
- Dodano kod do wykrywania wsparcia w CPU dla instrukcji RDRAND/RDSEED oraz procesorów Hygon. Rozwiązano problemy z wykrywaniem wsparcia AVX2/BMI2;
- Dla Linux w CLI dodano opcję «--import-token-keyfiles», kompatybilną z trybem nieinteraktywnym;
- Dla Linux i macOS dodano sprawdzanie dostępności wolnego miejsca w systemie plików dla tworzonego kontenera plikowego. Aby wyłączyć sprawdzanie, przewidziano flagę «--no-size-check»;
- Dla Windows wprowadzono tryb przechowywania kluczy i haseł w pamięci w zaszyfrowanej formie, z wykorzystaniem szyfru ChaCha12, hasha t1ha i CSPRNG opartego na ChaCha20. Ten tryb jest domyślnie wyłączony, ponieważ zwiększa nakład pracy o około 10% i nie pozwala na wstrzymanie systemu. Dla Windows dodano również ochronę przed niektórymi atakami polegającymi na wydobywaniu danych z pamięci, opartą na zaimplementowanym w metoda ograniczenia dostępu do pamięci użytkowników, którzy nie mają uprawnień administratora. Dodano czyszczenie kluczy przed zakończeniem pracy, przed ponownym uruchomieniem lub (opcjonalnie) przy podłączeniu nowego urządzenia. Wprowadzono ulepszenia do bootloadera UEFI. Dodano wsparcie dla korzystania z instrukcji CPU RDRAND i RDSEED jako dodatkowego źródła entropii. Dodano tryb montowania bez przypisywania litery partycji.
Źródło: opennet.ru
