alibek Posted June 19, 2015 Posted June 19, 2015 С такой странной проблемой столкнулся. Создаю XML-файл (запрос для ЕРДИ), кодировка CP1251, формат unix (перевод строки 0x0A). Подписываю такой командой: openssl smime -sign -in request.xml -out request.sig -signer key.pem -outform DER Пакую в zip-архив, копирую на свой рабочий ПК, на ПК распаковываю (чтобы при копировании по SFTP формат файла не менялся). Проверяю на https://www.gosuslugi.ru/pgu/eds/order - подпись не верна. Меняю формат файла (0x0A заменяю на 0x0D,0x0A), проверяю подпись - подпись верна. Не пойму, почему такое происходит. OpenSSL подписал не те данные, что были в файле? Может быть ему нужно задать ключ, что файл бинарный? Или это веб-сервис https://www.gosuslugi.ru/pgu/eds/order своевольничает? Вставить ник Quote
alibek Posted June 19, 2015 Author Posted June 19, 2015 И сам же себе отвечаю. Да, это OpenSSL чудил. Добавил ключ "-binary", теперь подпись проходит проверку. Но странно, что OpenSSL так некорректно работает с символом перевода строки. Вставить ник Quote
vop Posted June 19, 2015 Posted June 19, 2015 Но странно, что OpenSSL так некорректно работает с символом перевода строки. Видимо, он исключает его из подписи. Вставить ник Quote
alibek Posted June 19, 2015 Author Posted June 19, 2015 Видимо, он исключает его из подписи. Нет. Если в XML-файле вручную заменить 0x0A на 0x0D,0x0A, то тогда подпись проходит проверку. То есть OpenSSL подписал файл, в котором символ перевода строки 0x0D,0x0A. Вставить ник Quote
alibek Posted June 20, 2015 Author Posted June 20, 2015 Еще вопрос. Делаю проверку ЭЦП полученного дампа: #openssl smime -binary -verify -inform DER -in "$SIG" -content "$XML" Verification failure 140080318371496:error:21075075:PKCS7 routines:PKCS7_verify:certificate verify error:pk7_smime.c:328:Verify error:unable to get local issuer certificate Я неправильно проверяю? Или для проверки необходимо наличие цепочки доверия? Если да, то как подключить CA RTK? Вставить ник Quote
alibek Posted June 20, 2015 Author Posted June 20, 2015 Разобрался. Предлагаю ознакомиться: http://forum.nag.ru/forum/index.php?showtopic=79836&view=findpost&p=1141603 Вставить ник Quote
linx Posted June 23, 2015 Posted June 23, 2015 до 11.06.2015 17:00 проверка на перевод строки в их сервисе не было, в конце рабочего дня и рабочей недели вдруг удивительно перестала приниматься подпись. я верю в совпадения, но увиденной пост, что не только у меня возникли проблемы навевает на мысли о проверки на вшивость со стороны контролирующих органов Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.