FingerPrint
Физическое USB устройство со считывателем отпечатка пальца.
устройство должно поддерживать следующий функционал:
1. если на usb порт отправляется команда encryptlocal с параметром p, то по пути p на памяти "на борту" берется содержимое файла (или содержимое переменной p долговременной памяти - в зависимости от возможной реализации) и шифруется с помощью hash отпечатка пальца, ответ отдается по USB.:
2. аналогично для decryptlocal. P могут быть разные. Возможно требуется уточнение общего объема P.
3. если encryptremote (decryptremote) с параметром v, то значение v ( передается через USB порт) шифруется (расшифровывается) с помощью hash отпечатка пальца, результат отдается на usb;
4. если encryptremotetolocal с параметрами v и p, то значение v ( передается через USB порт) шифруется (расшифровывается) с помощью hash отпечатка пальца, результат отдается на usb, результат заносится в p, на usb успех или нет;
5. отпечаток пальца считыватся в течение паратетра ttl секунд (например если ttl при компиляции = 60, то считывание в течение 60 секунд после прихода команды), если в течение этого времени не введен отпечаток, то выдается ошибка (на USB ) и прекращается обработка команды.
6. реализация предполагает разводку схемы через usb hub таким образом, чтобы не составляло труда добавить другие usb устройства на этой плате через данный usb hub.