Добрый день разработчики РК и администраторы этого сайта,
Мне как разработчику мобильных приложений, в работе случайно досталась задача проверки-подписи электронного документа в системе электронного документооборота (СЭД).
Ситуация такая, что у нас стоит интеграция СЭДов, и до этого
все работало. Есть гос компания у которой стоит СЭД "Документолог" и наша компания со СЭД "Domino Lotus Notes". Электронные документы с первой компанией отправляются в виде XML, и мы у нас проверяем документ и ЭЦП с помощью SDK Java(Kalkan) в формате САМРУК. --Я поискал что это за формат, но нормального ничего не нашел--
И вдруг первая компания меняет формат с САМРУКА на ЕСЭДО (от компании АО НИТ).
С этого момента все рушится, документы не проходят проверку и мы не можем отправить первой компании правильный документ. Кто с этим сталкивался поймет, что задача состоит в том, что нужно поменять массив электронного документа жирный плюс к этому меняется сам принцип формирования всего документа.
Я как новичок в криптографии или ЭЦП в целом берусь за это. Начинаю я с чтению существующего кода (6000 линий), но вся проблема в том что каждый раз считая что я наконец понял как это работает, натыкаюсь на еще большую яму.
В итоге я понял, что не поняв как вообще работает PKI, проверка-подпись ЭЦП на уровне псевдо-кода, OCSP, X.509 сертификат и т.д., мне сложно будет решить эту задачу.
Ребята если у вас есть ссылка как вообще работает инфраструктура, сам процесс проверки и подписи ЭЦП можете скинуть. Потом я хотел просто у себя протестировать проверку-подпись ЭЦП изолированно от продакшн, чтобы понять что,куда с debugging. Если вы это делали, можете описать как это можно сделать.
Заранее благодарю.