Аппаратное шифрование на USB-накопителе / ​​флешке

367
linux_lover

Мне интересно, есть ли возможность зашифровать и расшифровать USB-накопитель или придерживаться какого-нибудь микроконтроллера или одноплатного компьютера (например, Raspberry Pi) на лету.

Например, я хочу зашифровать свой USB-накопитель, подключить его к телевизору и смотреть фильмы. Мой телевизор не поддерживает расшифровку, поэтому мне нужно устройство между моим приводом и телевизором.

Было бы удобно, если бы я мог использовать Raspberry Pi для этой цели. Какие-либо предложения?

2
В такой ситуации лучше использовать Pi в качестве * сетевого * файлового хоста, а затем передавать по DLNA или подобному. pjc50 6 лет назад 1
@ pjc50 конечно, это возможно, но телевизор был лишь примером. Что делать, если нет опции сети? Я намерен сделать его более переносимым для максимально возможного количества устройств. Большинство устройств имеют порт USB linux_lover 6 лет назад 0

1 ответ на вопрос

2
Jochen Lutz

USB различает хосты (то есть ваш компьютер) и устройства (например, мышь, USB-накопитель, веб-камеру). Обычно они не подлежат обмену (исключения см. Ниже). Большинство компьютеров x86 поддерживают работу только в режиме хоста.

В вашем случае использования требуется поддержка хоста для подключения к USB-накопителю и поддержка устройства для подключения к телевизору.

Одноплатные компьютеры часто поддерживают режим устройства (если порт USB переключается между режимом хоста и устройства, он часто помечается как «USB OTG»).

Во вселенной Raspberry модель A и Zero поддерживают USB OTG ( https://learn.adafruit.com/turning-your-raspberry-pi-zero-into-a-usb-gadget/overview ), но они есть только один порт USB, поэтому вы не можете использовать их в вашем случае использования.

Другими SBC, которые поддерживают режим устройства и имеют более одного USB-порта, являются, например, BeagleBoard (по крайней мере, модели "Green" и "Black rev C") и CubieBoard (по крайней мере, CB 3 (также известный как CubieTruck), возможно, также другие модели) и Odroid C2.

Еще один момент, который следует учитывать, - это если SBC может достаточно быстро расшифровать / расшифровать.

Программная часть тогда проста:

  • подключить USB-накопитель и настроить устройство шифрования

    предостережение: как вы планируете обрабатывать ключи шифрования? Прикрепить клавиатуру и экран к SBC?

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

Спасибо за этот ответ! Может быть, я использую биометрический датчик для ключей. Я хочу создать портативное устройство для шифрования и дешифрования любых устройств linux_lover 6 лет назад 0
Вы также можете добавить сенсорный экран для интерфейса пользователя и ввода пароля. Jochen Lutz 6 лет назад 0