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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline MehAnat  
#1 Оставлено : 3 декабря 2019 г. 11:56:16(UTC)
MehAnat

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

Группы: Участники
Зарегистрирован: 10.11.2016(UTC)
Сообщений: 10
Российская Федерация

Добрый день, получаю значения хэша при помощи следующего кода:
Код:

var str = "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/Pgo8ZHRSZWdpc3Rlcj4KICAgIDx0eXBlPlVEVDwvdHlwZT4KICAgIDxudW1iZXI+NTU8L251bWJlcj4KICAgIDxjcmVhdGVEYXRlPjIwMTktMTItMDMrMDM6MDA8L2NyZWF0ZURhdGU+CiAgICA8ZmFjdG9yaW5nQ29udHJhY3ROdW1iZXI+MDg4LdCQMzwvZmFjdG9yaW5nQ29udHJhY3ROdW1iZXI+CiAgICA8ZGVidG9yTmFtZT43ODEyMDE0NTYwPC9kZWJ0b3JOYW1lPgogICAgPGRlYnRvcklubj43ODEyMDE0NTYwPC9kZWJ0b3JJbm4+CiAgICA8ZGVidG9yS3BwPjYzMTY0MzAwMTwvZGVidG9yS3BwPgogICAgPHN1cHBsaWVzPgogICAgICAgIDxzdXBwbHk+CiAgICAgICAgICAgIDxzdXBwbHlDb250cmFjdE51bWJlcj5BLTAwODNfdDwvc3VwcGx5Q29udHJhY3ROdW1iZXI+CiAgICAgICAgICAgIDxkZXNpcmVkRnVuZGluZ0RhdGU+MjAxOS0xMi0zMSswMzowMDwvZGVzaXJlZEZ1bmRpbmdEYXRlPgogICAgICAgICAgICA8ZG9jdW1lbnRUeXBlPkFDVDwvZG9jdW1lbnRUeXBlPgogICAgICAgICAgICA8ZG9jdW1lbnROdW1iZXI+NDUyNTQyMjU8L2RvY3VtZW50TnVtYmVyPgogICAgICAgICAgICA8ZG9jdW1lbnREYXRlPjIwMTktMTItMTgrMDM6MDA8L2RvY3VtZW50RGF0ZT4KICAgICAgICAgICAgPHJlY2VpdmVkRGF0ZT4yMDE5LTEyLTMxKzAzOjAwPC9yZWNlaXZlZERhdGU+CiAgICAgICAgICAgIDxwYXltZW50RGVsYXk+NDU8L3BheW1lbnREZWxheT4KICAgICAgICAgICAgPGludm9pY2VEYXRlPjIwMTktMTItMjQrMDM6MDA8L2ludm9pY2VEYXRlPgogICAgICAgICAgICA8c3VtV2l0aFZhdD40NTI0NS4wMDwvc3VtV2l0aFZhdD4KICAgICAgICA8L3N1cHBseT4KICAgIDwvc3VwcGxpZXM+CiAgICA8c3VtV2l0aFZhdCB4c2k6dHlwZT0ieHM6ZGVjaW1hbCIgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIj40NTI0NS4wMDwvc3VtV2l0aFZhdD4KPC9kdFJlZ2lzdGVyPgo=";
		cadesplugin.CreateObjectAsync("CAdESCOM.HashedData").then(oHData => oHData.propset_Algorithm(cadesplugin["CADESCOM_HASH_ALGORITHM_CP_GOST_3411"]).then(oHashedData => {oHData.Hash(str); console.log(oHData.Value)}));


В ответ получаю такой хэш: ED3ACC1A124A2E731B263028B80A5A4E514816AD70BBE13C9A1B85BFF4D9659A
Затем, сохраняю эту строку в файл и использую утилиту cpverify:
cpverify -mk -inverted_halfbytes 0 "C:\Users\meiha\Downloads\dt_register (12)\new_decoded.xml" -alg GR3411

в ответ получаю хэш 9F5DD554A69D1250C200227FE72B768B97A50630C07BB092463B0EC13C504C6F

Строка в обоих случаях одна и та же, алгорит везде указан ГОСТ 3411, в чем может быть проблема? почему значения хэша не совпадают?
Offline Анатолий Колкочев  
#2 Оставлено : 3 декабря 2019 г. 13:07:39(UTC)
TolikTipaTut1

Статус: Активный участник

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

Сказал(а) «Спасибо»: 43 раз
Поблагодарили: 69 раз в 61 постах
Добрый день.

Проблема может быть в кодировке данных, которую вы подаете на вход для вычисления хеша.
Offline two_oceans  
#3 Оставлено : 3 декабря 2019 г. 13:24:27(UTC)
two_oceans

Статус: Эксперт

Группы: Участники
Зарегистрирован: 05.03.2015(UTC)
Сообщений: 1,602
Российская Федерация
Откуда: Иркутская область

Сказал(а) «Спасибо»: 110 раз
Поблагодарили: 393 раз в 366 постах
Смысл в том, что плагин декодирует base64 перед вычислением хэша, а утилита что считала из файла то и берет на вычисление хэша.
Чтобы совпадало нужно или закодировать еще раз перед передачей в плагин или декодировать перед записью в файл.

Отредактировано пользователем 3 декабря 2019 г. 13:25:28(UTC)  | Причина: Не указана

Online Андрей Писарев  
#4 Оставлено : 3 декабря 2019 г. 15:28:45(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,630
Мужчина
Российская Федерация

Сказал «Спасибо»: 494 раз
Поблагодарили: 2035 раз в 1579 постах
Автор: MehAnat Перейти к цитате
Добрый день, получаю значения хэша при помощи следующего кода:
Код:

var str = "данные в base64;
		cadesplugin.CreateObjectAsync("CAdESCOM.HashedData").then(oHData => oHData.propset_Algorithm(cadesplugin["CADESCOM_HASH_ALGORITHM_CP_GOST_3411"]).then(oHashedData => {oHData.Hash(str); console.log(oHData.Value)}));


В ответ получаю такой хэш: ED3ACC1A124A2E731B263028B80A5A4E514816AD70BBE13C9A1B85BFF4D9659A
Затем, сохраняю эту строку в файл и использую утилиту cpverify:
cpverify -mk -inverted_halfbytes 0 "C:\Users\meiha\Downloads\dt_register (12)\new_decoded.xml" -alg GR3411

в ответ получаю хэш 9F5DD554A69D1250C200227FE72B768B97A50630C07BB092463B0EC13C504C6F

Строка в обоих случаях одна и та же, алгорит везде указан ГОСТ 3411, в чем может быть проблема? почему значения хэша не совпадают?



Особенности работы с данными в КриптоПро ЭЦП Browser plug-in

Правило:
Выставить перед хешированием\ присвоением данных
ContentEncoding = CADESCOM_BASE64_TO_BINARY;



Техническую поддержку оказываем тут
Наша база знаний
Online Андрей Писарев  
#5 Оставлено : 3 декабря 2019 г. 15:36:24(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,630
Мужчина
Российская Федерация

Сказал «Спасибо»: 494 раз
Поблагодарили: 2035 раз в 1579 постах
Автор: MehAnat Перейти к цитате

Затем, сохраняю эту строку в файл и использую утилиту cpverify:
cpverify -mk -inverted_halfbytes 0 "C:\Users\meiha\Downloads\dt_register (12)\new_decoded.xml" -alg GR3411

в ответ получаю хэш 9F5DD554A69D1250C200227FE72B768B97A50630C07BB092463B0EC13C504C6F

Строка в обоих случаях одна и та же, алгорит везде указан ГОСТ 3411, в чем может быть проблема? почему значения хэша не совпадают?


да, правильно, это хеш от base64.

Snimok ehkrana ot 2019-12-03 16-38-07.png (18kb) загружен 8 раз(а).

Отредактировано пользователем 3 декабря 2019 г. 15:38:39(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Online Андрей Писарев  
#6 Оставлено : 3 декабря 2019 г. 15:47:06(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,630
Мужчина
Российская Федерация

Сказал «Спасибо»: 494 раз
Поблагодарили: 2035 раз в 1579 постах
Из документации:
Цитата:

По умолчанию свойство ContentEncoding(DataEncoding для CPHashedData) имеет значение CADESCOM_STRING_TO_UCS2LE.



Применительно к той строке в base64:
Snimok ehkrana ot 2019-12-03 16-46-00.png (21kb) загружен 8 раз(а).
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.