Byłbym bardzo zaskoczony, gdyby faktycznie przechowywał hasło (zakodowane lub nie) w zaszyfrowanym pliku, ponieważ spowodowałoby to fundamentalny brak zrozumienia kryptografii, w takim przypadku zdecydowanie zaleca się przerzucenie oprogramowania, jeśli potrzebujesz zaszyfrowanych plików, aby były bezpieczne. Nie ma praktycznego powodu do przechowywania hasła.
Nawet niska cena nie jest powodem, aby go używać, jeśli to rzeczywiście przechowywać hasła, ponieważ istnieje wiele od innych programów , które są o wiele bardziej bezpieczne, a nawet za darmo (w rzeczywistości, nawet standardowe archiwizujące zapewniają bezpieczny funkcji szyfrowania (bez zapisywania hasła) .
Jeśli chodzi o Data Guardian, mam złe wieści. Zrobiłem kilka testów, a ty i Amazed macie rację. Wygląda na to, że hexIdentifier
pole nie jest powiązane tylko z hasłem, ale nie jest to nawet skrót, to rzeczywiste hasło! (aczkolwiek zakodowane, choć nie z dużym alfabetem).
Jeśli ciągle zapisujesz ten sam plik z hasłem o coraz większym rozmiarze (np. Jeden znak, dwa znaki, trzy…) spowoduje to zmianę pola, ale rozmiar pozostanie stały (64-bitowy), do ośmiu znaków, następnie od dziewięciu do 16 znaków pole zmienia się na 128-bit i tak dalej. Innymi słowy, składa się z części (padów?) I koduje hasło w 8-znakowych blokach. Gdyby to był skrót, rozmiar pola pozostałby stały bez względu na długość hasła. Dlatego faktycznie koduje i przechowuje samo hasło.
W folderze programu znajduje się biblioteka DLL, która wskazuje, że używa szyfru blokowego Blowfish (który korzysta z bloków 64-bitowych - pamiętasz powyższe fragmenty 64-bitowe?), Więc hasło jest prawdopodobnie zaszyfrowane zarówno tym, jak i danymi ( chociaż oddzielnie od danych, a nie jako część tego samego strumienia, co czyni go jeszcze bardziej wrażliwym).
Wykryłem już kilka aspektów algorytmu w ciągu zaledwie kilku minut po prostu przeprowadzeniu testów wewnątrz programu (jednocześnie oglądając telewizję) bez otwierania go w deasemblerie lub patrzenia na pojedynczy wiersz kodu. Nie sądzę, że byłoby to zbyt trudne dla kogoś z odpowiednią motywacją, aby całkowicie to odwrócić.
Podsumowując, Data Guardian nie jest wystarczająco wiarygodny, jeśli potrzebujesz szyfrowania (w pewnym sensie nie spełnia celu nazwy). Jeśli nie potrzebujesz szyfrowania lub dane nie są wrażliwe, możesz sobie z tym poradzić (jest to specjalny program do przechowywania danych w przeciwieństwie do ogólnego programu do szyfrowania). W przeciwnym razie, jeśli bezpieczeństwo jest konieczne, lepiej byłoby poszukać innego programu do zarządzania rekordami z silniejszym szyfrowaniem lub po prostu użyć zwykłego programu (lub nawet Data Guardian) i zaszyfrować zapisane pliki za pomocą ogólnego programu do szyfrowania (lub szyfrowania NTFS ).
Możesz także skontaktować się z deweloperem i zapytać, czy mogą zaimplementować silniejsze szyfrowanie (nawet standardowy Microsoft crypto API [1] [2] [3] [4] byłby dobry; również Crypto ++ jest powszechny, ponieważ Boost nie mógł go dodać).