Существует проблема следующего характера.
Устанавливаю реализацию криптопро для C++ - Csp - на платформу Centos 6.2, генерирую ключи, загружаю тестовый сертификат с УЦ в контейнер...далее пишу код на C++, который:
-CertOpenStore() - открывает хранилище сертификатов
-CertFindCertificateInStore() - ищет нужный сертификат
---CertGetCertificateContextProperty() - получает информацию о длине ключа
---CryptAcquireContext() - подключаюсь к криптопровайдеру
-CryptSetProvParam() - ввожу Пин код контейнера
---CryptCreateHash() - создаю хэш-объект
---CryptHashData() - хэширую данные
---CryptSignHash() - подписываю хэш
P.S>Пишу в Eclipse
Далее я сохраняю в base64 полученную подпись - отправляю серверу, который работает на платформе Windows 7 - 64bit... код проверки подписи на стороне сервера - проверяется посредством JCP - реализации криптопро для Java - в результате своей работы выдает FALSE
ЕСЛИ ЖЕ Я ДЕЛАЮ РАБОТУ, ВЫПОЛНЕННУЮ ПОД CENTOS, НА ПЛАТФОРМЕ WINDOWS 7 - 64bit, то результат проверки на сервере - TRUE!!!!!!!
Локальные проверки подписи ест-но выполняются успешно!!
ВОПРОС: С чем собственно может быть связана данная проблема и как ее решить?! из первого, что приходит в голову - какие то особенности установки CSP под Linux или быть может Centos - такая платформа именно в контексте КРИПТОПРО, которая собственно и является причиной такой несовместимости
Очень надеюсь на вашу помощь!!!
P.S>http://www.cryptopro.ru/forum2/Default.aspx?g=posts&t=4756&p=1 - тема из топика в разделе JCP, которую мы уже исчерпали, судя по всему!!!
Отредактировано пользователем 14 июня 2012 г. 19:29:17(UTC)
| Причина: Не указана