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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline vyacheslav  
#1 Оставлено : 24 июня 2009 г. 17:01:15(UTC)
vyacheslav

Статус: Участник

Группы: Участники
Зарегистрирован: 27.12.2007(UTC)
Сообщений: 16
Откуда: Chelyabinsk

Проблема при попытке проверить detached подпись в программе на c#.
Вызываю с помощью
Код:
[DllImport("Crypt32.dll", SetLastError=true)]
  public static extern Boolean CryptVerifyDetachedMessageSignature (
    ref CRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
    Int32 dwSignerIndex,
    Byte[] pbDetachedSignBlob,
    Int32 cbDetachedSignBlob,
    Int32  cToBeSigned,
    Byte[][] rgpbToBeSigned,
    Int32[] rgcbToBeSigned,
    IntPtr ppSignerCert
  );


Описание CryptVerifyDetachedMessageSignature такое
Код:
BOOL WINAPI CryptVerifyDetachedMessageSignature(
  __in       PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
  __in       DWORD dwSignerIndex,
  __in       const BYTE *pbDetachedSignBlob,
  __in       DWORD cbDetachedSignBlob,
  __in       DWORD cToBeSigned,
  __in       const BYTE *rgpbToBeSigned[],
  __in       DWORD rgcbToBeSigned[],
  __out_opt  PCCERT_CONTEXT *ppSignerCert
);


При вызове получаю ексепшн
Message = "Невозможно упаковать \"parameter #6\": Упаковка вложенных массивов не поддерживается."

Как я понимаю, ошибка в том, что я const BYTE *rgpbToBeSigned[], массив байтовых указателей представляю как 2мерный байтовы массив в c#.
Подскажите, пожалуйста, как правильно описать переменную?

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