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

Уведомление

Icon
Error

3 Страницы<123
Опции
К последнему сообщению К первому непрочитанному
Offline ThinkingAnna  
#21 Оставлено : 25 января 2019 г. 12:26:03(UTC)
ThinkingAnna

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

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

Сказала «Спасибо»: 4 раз
Автор: Евгений Афанасьев Перейти к цитате
Предположительно, что-то изменилось в алгоритме каноникализации (других причин быть не должно).


Т.е., я правильно понимаю, что проблема именно в предложенной СМЭВом реализации SmevTransformSpi, и на их стороне каноникализация выполняется иначе, не по указанном алгоритму, да?


Online Евгений Афанасьев  
#22 Оставлено : 25 января 2019 г. 12:27:58(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,927
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 691 раз в 652 постах
Мы предполагаем, что так.
Offline two_oceans  
#23 Оставлено : 1 февраля 2019 г. 13:45:08(UTC)
two_oceans

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

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

Сказал(а) «Спасибо»: 110 раз
Поблагодарили: 394 раз в 366 постах
Автор: ThinkingAnna Перейти к цитате
two_oceans, подскажите, пожалуйста, когда Вы говорите про дополнительный трансформ, вы имеете ввиду SmevTransformSpi, представленный в документации СМЭВа? Вы его дорабатывали?
Похоже что речь о нем, только я своими средствами (не на Джаве) попытался воспроизвести тестовые примеры преобразования из документации СМЭВ 3. Воспроизвел, но с основной программой этот фрагмент еще не срастил и на реальных данных не проверял. У меня пока острую необходимость срочной реализации СМЭВ 3 сняли, так что на полтора месяца из темы выпадал (отчеты писал), но сейчас буду наверстывать.

Мое личное мнение - примеров из документации и близко недостаточно для проверки правильности. Причина: если сравнить с алгоритмом приведения к каноническому виду, где все мелочи расписаны, в документации СМЭВ 3 алгоритм SmevTransform накидан "широкими мазками" и можно реализовать его с множеством мелких различий в деталях.

В частности, у меня остался большой вопрос по поводу сортировки пространств имен - сортировать пространства имен "как цифры" (в данном случае под цифрами понимаются коды символов) или "как строки" - чтобы было понятнее: "1","2","10","11" ("b" "c" "ba" "bb") или "1","10","11","2" (лексикографический порядок, как windows сортирует папки с именами из цифр) ("b" "ba" "bb" "c") - в одном случае сортировка зависит от длины потом кода первого символа, в другом от кода первого символа потом длины.

В примере Ростелеком не стал напрягаться и сделал все пространства имен одной длины с отличающимся только последним символом, то есть порядок сортировки проверить примером невозможно, оба варианта сортировки выдадут одинаковую последовательность. В алгоритме тоже не указано нужно ли использовать лексикографический порядок сортировки из стандарта каноникализации. На реальных же данных выйдут "2 большие разницы".

Еще интереснее с зависимостью от порядка исходных данных - определение пространства самого тега вынесено в начало. Предполагаю, многие реализации будут глючить на этом месте когда в исходных данных куча тегов без префиксов. И таких мелочей еще штук пять находил при воспроизведении примеров - на тестовых данных все отлично, но тест их правильность не характеризует, отличия мелочей не проявляет. Поэтому я остерегаюсь что-либо советовать пока не проверил свою реализацию на реальных данных запросов-ответов из СМЭВ 3.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
3 Страницы<123
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.