Кстати, я использовал в примере аналог этих устройств. К сожалению, пока не могу здесть написать его название, т.к. устройство проходит соответствующую экспертизу.
Дело в том, что я использовал токен, который внутри себя содержит всю соответствующую математику, начиная от генерации ключей и их хранения, заканчивая выработкой ЭЦП и шифрования. Алгоритмы зашиты в само устройство. Это т.н. криптомашина. Плюс токен реализует режим съемного носителя.
Тут есть конечно вопрос, но он скорее организационный, чем технический. Ведь, к примеру, для того чтобы использовать средства ЭЦП, предоставляемые токеном, как минимум необходимо сгенерировать пару ключей (это можно сделать и сторонним приложением например) и параллельно записать настройки. Также внешнее web-приложение может «говорить», какую конфигурацию токена можно использовать для своих целей. Вариантов множество.
Ну хорошо. Ведь ничего не мешает положить на токен (токен еще и носитель) конфигурационный файл, в котором определить все настройки. Из внутренностей токена имеется возможность прочитать свою же память.
А почему не уверены, что обращение на локальный ip не проходит?
Самое первое что приходит в голову — реализовать для начала на токене сетевой стек и написать внутри токена сервис обработки команд. Естественно, для этого необходимо иметь доступ «внутренностям» самого токена.
Для реализации полной кроссплатформенности необходимо, чтобы web-сервер запускался и работал ВНУТРИ токена и следовательно сам токен притворялся в системе сетевым интерфейсом. Токен, на котором я делал данную демонстрацию, пока такой возможности не имеет. Я просто показал сам принцип.
А почему не уверены, что обращение на локальный ip не проходит?