Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Сперанский Денис  
#1 Оставлено : 17 марта 2010 г. 13:50:20(UTC)
Сперанский Денис

Статус: Новичок

Группы: Участники
Зарегистрирован: 17.03.2010(UTC)
Сообщений: 2

Добрый день!
Пожалуйста, помогите реализовать получения штампа времени на C# или рабочим примером.

Взял за основу пример на Visual Basic для COM-объектов, приведенный в документации:

Код:
TSPRequest oRequest = new TSPCOM.TSPRequest();
            TSPCOM.TSPStamp oStamp;
            CPICom.HashedData20 oHash = new CPICom.HashedData20();

            oHash.Algorithm = (CAPICOM.CAPICOM_HASH_ALGORITHM) CPICom.CPICOM_HASH_ALGORITHM.CAPICOM_HASH_ALGORITHM_GOST3411;
            oHash.Hash("ABC");

            oRequest.Hash = (HashedData) oHash;

            oRequest.UseNonce = true;
            oRequest.PolicyID = "";
            oRequest.CertReq = false;

            oRequest.TSAAddress = "http://localhost:80/tsp/tsp.srf";

            oRequest.TSAAuthType = TSPCOM.TSPCOM_AUTH_TYPE.TSPCOM_AUTH_TYPE_ANONYMOUS;
            oRequest.TSAUserName = "";
            oRequest.TSAPassword = "";
            
            string error = "";
            string result = "";
            try
            {
                oStamp = oRequest.Send(false);
                result = oStamp.Export();

            }
            catch (Exception ex)
            {
                error = ex.Message;
            }


В итоге у полученного oStamp:
DefaultAccuracy = -1
FailInfo = 33554432
Status = 2
StatusString = ""
остальные поля выглядят примерно так: Time = '((TSPCOM.TSPStampClass)(oStamp)).Time' threw an exception of type 'System.Runtime.InteropServices.COMException'

Описание ошибки при вызове oStamp.Export(): Группа или ресурс не находятся в нужном состоянии для выполнения требуемой операции.

P.S. Приложение tsputil.exe штамп времени возвращает. Использую так: tsputil.exe makestamp -u http://localhost:80/tsp/tsp.srf test.txt test.tsr

Отредактировано пользователем 17 марта 2010 г. 13:54:19(UTC)  | Причина: Не указана

Offline Сперанский Денис  
#2 Оставлено : 17 марта 2010 г. 18:05:09(UTC)
Сперанский Денис

Статус: Новичок

Группы: Участники
Зарегистрирован: 17.03.2010(UTC)
Сообщений: 2

Разобрался. Проблема была ни в коем случае не в C#, а в том что служба штампов времени остановлена.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.