Защита USB-накопителя в Java - PullRequest
2 голосов
/ 13 марта 2011

Я собираюсь создать программу на Java, которая позволяет «блокировать» USB-накопитель, делая его файлы доступными только с помощью пароля.Подобное программное обеспечение, которое делает это, является защитой USB.

Вот что я думаю сделать:

  1. Сохраните все файлы в одном архиве на USB.

  2. Шифрование архива с использованием AES или Blowfish

  3. Скрыть архив.

Проблема в том, как можноЯ "разблокирую" USB?Какой подход я могу использовать здесь?Вот что я подумал:

  • Ramdisk: Очень трудно, если не невозможно, загрузить Ramdisk из зашифрованного* 1027 архив *.Хотя это может быть правдоподобно в c ++, я думаю, что это может быть намного сложнее в Java и может включать в себя путаницу с системными классами, что может привести к нарушению совместимости программного обеспечения и разрушить всю цель использования Java.

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

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

  • Создание пользовательского файлового браузера, позволяющего пользователю просматривать архив - Используете ли вы winrar для просмотра ваших файлов?Хотели бы вы это сделать?Нет. Создание пользовательского файлового браузера займет много времени, и, опять же, это подверженный ошибкам и недружественный пользователю подход.

Я не могу придумать другой способделать это.Кто-нибудь может придумать лучший способ?Обратите внимание, что это будет бесплатное программное обеспечение с открытым исходным кодом.

1 Ответ

0 голосов
/ 02 мая 2011

TrueCrypt - это бесплатная программа с открытым исходным кодом для хранения зашифрованных файлов на устройстве хранения (например, USB-накопителе).Он работает на Windows, Linux и MacOS.TrueCrypt даже позволяет скрытые тома.Я бы начал с их исходного кода и продолжал оттуда.

...