Альтернатива для апплета цифровой подписи под Chrome
На данный момент мы разработали систему, которая может цифровой подписи документов с помощью Java-апплета. Однако с запретом апплетов под Chrome мы ищем альтернативное решение для цифровой подписи.
На данный момент подпись работает следующим образом:
HTTP GET отправляется сервлету, чтобы получить документ, который будет подписан;Апплет запускается, драйвер цифровой подписи извлекается из файловой системы, и пользователь вводит PIN-код;Апплет получает цепочку сертификации, проверяет CRL / OSCP и подписывает документ;Апплет отправляет составной пост с уже подписанным файлом сервлету в системе.Одним из альтернативных решений было бы импортировать сертификат в браузер и использовать js для подписи. Но это не будет удобным для пользователя решением.
Другое решение может заключаться в том, чтобы попросить пользователя загрузить программу запуска с использованием JNLP, которая загружает и подписывает документ и автоматически выгружает его, используя HTTP-составную часть POST. Недостаток этого подхода заключается в том, что он требует дополнительных взаимодействий с пользователем (действие загрузки), и мы теряем сеанс http браузера, поэтому нам придется снова проходить аутентификацию.
Что является более жизнеспособным? Можете ли вы придумать альтернативу?