Я пытаюсь интегрировать SigWeb API в свое приложение. Я хочу использовать цифровую подпись во всех современных браузерах. Теперь он работает только в IE, используя объект ActiveX. Проблема в том, что я не могу использовать ключ шифрования. Поясню:Невозможно зашифровать подпись, используя Topaz SigWeb API
Старая версия кода выглядит расслоение плотной, как:
SigPlus1.AutoKeyStart();
SigPlus1.AutoKeyData = "Some Key Data";
SigPlus1.AutoKeyFinish();
SigPlus1.EncryptionMode = 2;
SigPlus1.SigCompressionMode = 1;
var strSignature = SigPlus1.SigString;
Новая версия (с использованием SigWebTablet.js):
AutoKeyStart();
SetAutoKeyData("Some Key Data");
AutoKeyFinish();
SetEncryptionMode(2);
SetSigCompressionMode(1);
var strSignature = GetSigString();
Значение strSignature
передается на сервер и преобразованного to .jpg файл. На стороне сервера (Java) Я использую следующий код:
ClassLoader firma = (com.topaz.sigplus.SigPlus.class).getClassLoader();
sigObj = (SigPlus)Beans.instantiate(firma, "com.topaz.sigplus.SigPlus");
sigObj.autoKeyStart();
sigObj.setAutoKeyData("Some Key Data"); // the same data in front-end
sigObj.autoKeyFinish();
sigObj.setEncryptionMode (2);
sigObj.setSigCompressionMode(1);
sigObj.setSigString(strSignature);
Проблема в setSigString
метод - это не устанавливает новое значение (со старым кодом SigPlus1.SigString
работы), но если отключить setAutoKeyData
- это работает отлично. Планшетная модель: T-LBK766SE-BHSB-R