Добрый день! В случае, если Вам надо работать с ЭЦП, то альтернатив нет, NCA Layer навязанное приложение "с государственной лицензией", под капотом которой написанное API (Kalkan) поверх всем известного OpenSSL. Насколько оно безопасно можно оценить только изучив исходники NCA Layer и библиотеки Kalkan (написано на Java).
Единственное из того, что я знаю, статья
https://habr.com/ru/post/348348/ уже не актуальна. В старых версиях для взаимодействия с NCA Layer через web socket ЭЦП (p12 файл) и пароль от него сохранялись в хранилище браузера, в новых версиях они это поправили и сейчас вроде как вся "внутрянка" непосредственно в самом Java приложении происходит. Советую на всякий случай каким-нибудь wire shark или Burp убедиться, что ключи по сети не передаются и из NCA Layer на внешние ресурсы ничего не отправляется.