Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.12.2016(UTC) Сообщений: 114 Сказал «Спасибо»: 26 раз
|
А SignHash работает с ГОСТ 2012 на 512? Как не стараюсь не нравятся ему данные! Пойду проверю 256!
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,630 Сказал «Спасибо»: 494 раз Поблагодарили: 2035 раз в 1579 постах
|
Автор: 4eIIIupKo А SignHash работает с ГОСТ 2012 на 512? Как не стараюсь не нравятся ему данные! Пойду проверю 256! Работает. Ошибка в коде, видимо, который не предоставлен. |
|
1 пользователь поблагодарил Андрей * за этот пост.
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.12.2016(UTC) Сообщений: 114 Сказал «Спасибо»: 26 раз
|
Автор: Андрей * Автор: 4eIIIupKo А SignHash работает с ГОСТ 2012 на 512? Как не стараюсь не нравятся ему данные! Пойду проверю 256! Работает. Ошибка в коде, видимо, который не предоставлен. Вы правы у самого была ошибка! Вот в друг кому-то пригодится! Код:
//Генерируем объект хэша
var CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256 = 101;
var CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512 = 102;
var CADESCOM_BASE64_TO_BINARY = 1;
// Создаем объект CAdESCOM.HashedData
var oHashedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.HashedData");
// Алгоритм хеширования нужно указать до того, как будут переданы данные
oHashedData.Algorithm = CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512;
// Указываем кодировку данных
// Кодировка должна быть указана до того, как будут переданы сами данные
yield oHashedData.propset_DataEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);
//Впиливаем хэш данных в base64
yield oHashedData.Hash(window.btoa(Data));
var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
//Сертификат
var oStore = yield cadesplugin.CreateObjectAsync("CAdESCOM.Store");
yield oStore.Open();
var all_certs = yield oStore.Certificates;
var oCertificate;
for(var i=1;i<=(yield all_certs.Count);i++){
if(i==icert){
yield oSigner.propset_Certificate(yield all_certs.Item(i));
}
}
yield oStore.Close();
// Создаем объект CAdESCOM.CadesSignedData
var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
if(typeof(setDisplayData) != 'undefined'){
//Set display data flag flag for devices like Rutoken PinPad
yield oSignedData.propset_DisplayData(1);
}
var StartTime = Date.now();
// Вычисляем значение подписи
var sSignedMessage = '';
try{
sSignedMessage = yield oSignedData.SignHash(oHashedData,oSigner,CADESCOM_CADES_BES);
}catch(err){
console.log(cadesplugin.getLastError(err));
return;
}
var EndTime = Date.now();
Пока подписывает! Проблема была в том, что вечно путаю Асинхронные методы и свойства с синхронными! И вопрос yield oSignedData.VerifyHash(oHashedData, sSignedMessage, CADESCOM_CADES_BES); Теперь надо проверить на .NET в какую сторону копать? Среди примеров пока не вижу!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 21.11.2010(UTC) Сообщений: 1,037
Сказал(а) «Спасибо»: 7 раз Поблагодарили: 140 раз в 126 постах
|
Автор: 4eIIIupKo Вот в друг кому-то пригодится! Нескромный вопрос можно? Спасибо. Вы не знаете где на клавиатуре точка или вам лень её (точку) ставить? P.S. "вдруг" (внезапно) пишется слитно.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.12.2016(UTC) Сообщений: 114 Сказал «Спасибо»: 26 раз
|
Как быть с кириллицей в oHashedData.Hash? Сперва хотел вычислить хэш данных на клиенте! а на сервере его получать с помощью cryptcp! Создавая файл и вписывая в него текст с данными! Примерно так: Код:"C:\Program Files (x86)\Crypto Pro\CSP\cpverify.exe" -mk -alg GR3411_2012_512 %1
btoa() в js с кириллицей не работает. Тогда пытался сделать так Код:
function utoa(str){
return window.btoa(unescape(encodeURIComponent(str)));
}
И снова равно не совпадают! Где-то теряю кодировку! Находил такую строчку в примере... // Кодировка должна быть указана до того, как будут переданы сами данные yield oHashedData.propset_DataEncoding(CADESCOM_BASE64_TO_BINARY); она точно нужна??? без кирилицы пробывал строку вбивать чисто английских символов! Значения хэшей совпали без нее!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.12.2016(UTC) Сообщений: 114 Сказал «Спасибо»: 26 раз
|
Автор: 4eIIIupKo Как быть с кириллицей в oHashedData.Hash? Сперва хотел вычислить хэш данных на клиенте! а на сервере его получать с помощью cryptcp! Создавая файл и вписывая в него текст с данными! Примерно так: Код:"C:\Program Files (x86)\Crypto Pro\CSP\cpverify.exe" -mk -alg GR3411_2012_512 %1
btoa() в js с кириллицей не работает. Тогда пытался сделать так Код:
function utoa(str){
return window.btoa(unescape(encodeURIComponent(str)));
}
И снова равно не совпадают! Где-то теряю кодировку! Находил такую строчку в примере... // Кодировка должна быть указана до того, как будут переданы сами данные yield oHashedData.propset_DataEncoding(CADESCOM_BASE64_TO_BINARY); она точно нужна??? без кирилицы пробывал строку вбивать чисто английских символов! Значения хэшей совпали без нее! Может кто натыкался на рабочую версию?
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 21.12.2017(UTC) Сообщений: 8 Сказал(а) «Спасибо»: 3 раз
|
Доброго времени суток. 1 - Имеется сертификат открытым ключом ГОСТ Р 34.10-2001. Имеется хэш документа вычисленный по алгоритму GOST3411. Подписание происходит с помощью метода SignHash (у объекта CAdESCOM.HashedData указан вычисленный ранее хэш документа и указан алгоритм CADESCOM_HASH_ALGORITHM_CP_GOST_3411 = 100). Создается "Отсоединённая подпись" подпись которая успешно проходит проверку на https://dss.cryptopro.ru/Verify/Verify/Тут работает все как надо. 2 - Имеется сертификат открытым ключом ГОСТ Р 34.10-2012 256 бит. Имеется хэш документа вычисленный по алгоритму GOST3411_2012_256. Подписание происходит с помощью метода SignHash (у объекта CAdESCOM.HashedData указан вычисленный ранее хэш документа и указан алгоритм CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256 = 101). Создается подпись которая успешно проходит проверку на https://dss.cryptopro.ru/Verify/Verify/, если указан параметр "Присоединённая подпись", но не проходит при "Отсоединённой подписи" Почему во втором случае происходит формирование присоединенной подписи, хотя должна формироваться отсоединенная? Версия плагина: 2.0.12888 Версия криптопровайдера: 4.0.9842 Хэши документа вычисляются на сервере java с помощью провайдера BouncyCastleProvider Не актуально Отредактировано пользователем 13 марта 2018 г. 16:09:03(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.12.2016(UTC) Сообщений: 114 Сказал «Спасибо»: 26 раз
|
Автор: Dmitrii Доброго времени суток. 1 - Имеется сертификат открытым ключом ГОСТ Р 34.10-2001. Имеется хэш документа вычисленный по алгоритму GOST3411. Подписание происходит с помощью метода SignHash (у объекта CAdESCOM.HashedData указан вычисленный ранее хэш документа и указан алгоритм CADESCOM_HASH_ALGORITHM_CP_GOST_3411 = 100). Создается "Отсоединённая подпись" подпись которая успешно проходит проверку на https://dss.cryptopro.ru/Verify/Verify/Тут работает все как надо. 2 - Имеется сертификат открытым ключом ГОСТ Р 34.10-2012 256 бит. Имеется хэш документа вычисленный по алгоритму GOST3411_2012_256. Подписание происходит с помощью метода SignHash (у объекта CAdESCOM.HashedData указан вычисленный ранее хэш документа и указан алгоритм CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256 = 101). Создается подпись которая успешно проходит проверку на https://dss.cryptopro.ru/Verify/Verify/, если указан параметр "Присоединённая подпись", но не проходит при "Отсоединённой подписи" Почему во втором случае происходит формирование присоединенной подписи, хотя должна формироваться отсоединенная? Версия плагина: 2.0.12888 Версия криптопровайдера: 4.0.9842 Хэши документа вычисляются на сервере java с помощью провайдера BouncyCastleProvider Не актуально 256 хэш вычислял на стороне браузера?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close