| ||||
| ||||
Здравствуйте! Разбираюсь с TSP. Пытаюсь запустить пример из SDK для функции GetMSStamp Все компилируется, однако во время выполнения на VisualStudio: затыкается на строчке с вызовом обозначенной функции с сообщением типа "...Access Violation at adress... in module tspcli.dll..." На BCB6: Все проглатывется, но получаемый функцией штамп длиной 1 байт!!! При всем этом утилита командной строки никаких затруднений не испытывает tsputil.exe. Подскажите, пожалуйста, где можно искать ошибку. | ||||
Ответы: | ||||
| ||||
Сейчас постараюсь понять, в чем может быть дело... | ||||
| ||||
А вы в качестве сервера "MS-штампов" использовали tsputil.exe? | ||||
| ||||
Нет, в качестве сервера используется TSP Сервер CryptoPro. Так и не получилось использовать описанные функции, что странно, потому что через COM - проходит. Но все таки хотелось бы разобраться с GetMSStamp. | ||||
| ||||
Тогда ответ прост. Наша тестовая служба штампов времени работает по стандарту RFC3161, а функция GetMSStamp - служит для получения Authenticode-штампов (штампы Microsoft). См. раздел "Интерфейс клиентских приложений КриптоПро TSP (C++)" в документации по TSP SDK. | ||||
| ||||
Кстати, может, я не так понял и вы используете не тестовую службу (http://cryptopro.ru/tsp/tsp.srf), а сам продукт КриптоПро TSP.. В этом случае могу сказать всё то же самое. | ||||
| ||||
Все понял. Действительно возникла путаница из-за RFC 3161 и штампов времени Microsoft. Спасибо. | ||||