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

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline pzi  
#1 Оставлено : 12 мая 2012 г. 18:17:45(UTC)
pzi

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

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

а вот как то после установки криптопро(linux, debian), стала у нас виснуть аппликуха(вообще поток, но в итоге весь пул заканчивается) во время попытки создания темпового файла. И казалось бы, причем тут криптопро... :) А при том, что имя этого тестового файла, генериться с помощью SecureRandom, который берет у криптопровайдера первый сервис с типом "SecureRandom". А криптопро в свою очередь, возвращяет инстанс класса ru.CryptoPro.JCP.Random.TestRandom, который совсем плохой, и генерит от силы 30 различных значений. И так и бегает у нас File.createTempFile метод в цикле, все вызывая и вызывая SecureRandom пытаясь добыть уникальное имя темпового файла... Собственно бог с ними с темп фалами то, но вроде эта штука для защиты инфы нужна, не?
Offline bor1  
#2 Оставлено : 12 мая 2012 г. 19:03:05(UTC)
bor1

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

Группы: Участники
Зарегистрирован: 08.05.2008(UTC)
Сообщений: 41
Мужчина
Откуда: Крипто-Про

Поблагодарили: 1 раз в 1 постах
Инстанс ДСЧ JCP создается командами
SecureRandom rnd = SecureRandom.getInstance("CPRandom");
SecureRandom rnd = SecureRandom.getInstance("CPRandom", "JCP");
SecureRandom rnd = SecureRandom.getInstance(JCP.CP_RANDOM, JCP.PROVIDER_NAME);
Вы хотите сказать, что не срабатывает какая-то из этих команд?
Offline pzi  
#3 Оставлено : 12 мая 2012 г. 19:16:29(UTC)
pzi

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

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

bor1 написал:
Инстанс ДСЧ JCP создается командами
SecureRandom rnd = SecureRandom.getInstance("CPRandom");
SecureRandom rnd = SecureRandom.getInstance("CPRandom", "JCP");
SecureRandom rnd = SecureRandom.getInstance(JCP.CP_RANDOM, JCP.PROVIDER_NAME);
Вы хотите сказать, что не срабатывает какая-то из этих команд?


не, я хочу сказать, что SecureRandom используется не только криптопро, но и такой безобидной штукой как File.createTempFile, во время выполнения которого(сейчас лень искать где конкретно) встречается такая строчка как new SecureRandom(), конструктор которого запрашивает сервисы дефолтного провайдера(который криптопро), и выбирает первый который имеет тип "SecureRandom", и этот первый является инстансом ru.CryptoPro.JCP.Random.TestRandom. Вобщем я не уверен, но мне кажется везде(даже в коде самой JDK) где вместо SecureRandom.getInstance(...) используется new SecureRandom(), будет эта проблема.
Offline bor1  
#4 Оставлено : 12 мая 2012 г. 19:33:33(UTC)
bor1

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

Группы: Участники
Зарегистрирован: 08.05.2008(UTC)
Сообщений: 41
Мужчина
Откуда: Крипто-Про

Поблагодарили: 1 раз в 1 постах
Ну вы знаете, это, конечно, не очень хорошее качество, но не кошмар-кошмар. Кому нужен нормальный датчик в коде - не поленится и вызовет его по имени. Кому оно не нужно - тому и TestRandom сойдет.
Этот тоже можно вызвать по имени, и даже константный можно. Мы не ставили его в список первым или последним, поэтому, полагаю, то, какой именно датчик будет извлечен как первый в провайдере, будет зависеть от реализации множеств в конкретной яве.
Хотя я обсужу с коллегами - может, все эти лишние датчики и вовсе убрать из релиза, чтобы не смущали. Так что спасибо за замечание!
Offline pzi  
#5 Оставлено : 12 мая 2012 г. 19:53:19(UTC)
pzi

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

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

bor1 написал:
Ну вы знаете, это, конечно, не очень хорошее качество, но не кошмар-кошмар. Кому нужен нормальный датчик в коде - не поленится и вызовет его по имени. Кому оно не нужно - тому и TestRandom сойдет.
Этот тоже можно вызвать по имени, и даже константный можно. Мы не ставили его в список первым или последним, поэтому, полагаю, то, какой именно датчик будет извлечен как первый в провайдере, будет зависеть от реализации множеств в конкретной яве.
Хотя я обсужу с коллегами - может, все эти лишние датчики и вовсе убрать из релиза, чтобы не смущали. Так что спасибо за замечание!


Вы видимо не поняли... Речь идеь о SUN JDK!!! Т.е. Ваш провайдер "немного" не совместим с Sun JDK, а именно с java.io.File.createTempFile() Насчет реализаций множеств - есть такое слово, точнее префикс, как Linked, который позволяет итератору обходить колекцию в том порядке, в котором она наполнена ;)

Странно что вы отнекиваетесь от столь очевидного и элементарного для исправления бага.
Offline pzi  
#6 Оставлено : 12 мая 2012 г. 20:01:03(UTC)
pzi

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

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

bor1 написал:
Кому нужен нормальный датчик в коде - не поленится и вызовет его по имени. Кому оно не нужно - тому и TestRandom сойдет.


Скажите это ребятам из оракла. Ваш подход немного не работает, когда не знаешь какие алгоритмы поддерживает дефолтный криптопровайдер и хочется просто более менее надежно получить рандомное число. Скажем так, все те люди, которые используют jasper reports и другие фреймворки которые активно используют темп фалы, не смогут пользоваться криптопро.
Offline bor1  
#7 Оставлено : 12 мая 2012 г. 20:14:19(UTC)
bor1

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

Группы: Участники
Зарегистрирован: 08.05.2008(UTC)
Сообщений: 41
Мужчина
Откуда: Крипто-Про

Поблагодарили: 1 раз в 1 постах
Да я, в общем-то, не отнекиваюсь. Просто вы про защиту информации спросили, я и ответил про защиту.
Пока, если вам это мешает, сделайте провайдером по умолчанию что-то еще - это же вроде тоже не сложно.
В следуюшем релизе проблема будет решена.
Offline pzi  
#8 Оставлено : 12 мая 2012 г. 20:26:52(UTC)
pzi

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

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

bor1 написал:
Да я, в общем-то, не отнекиваюсь. Просто вы про защиту информации спросили, я и ответил про защиту.

Ну я же не знаю как там у вас в коде достается этот генегатор. Вдруг там тоже этот генератор подхватывается, а это согласитесь плохо.

bor1 написал:
Пока, если вам это мешает, сделайте провайдером по умолчанию что-то еще - это же вроде тоже не сложно.

Мешает, но и криптопро заказчик просит. Пока отложили втискивание криптопро, так как рабочая аппликуха без криптопро, лучше, чем нерабочая с криптопро :)

bor1 написал:
В следуюшем релизе проблема будет решена.

Спасибо, что все-таки согласились, что проблема на вашей стороне.
Offline pzi  
#9 Оставлено : 12 мая 2012 г. 20:28:13(UTC)
pzi

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

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

bor1 написал:
В следуюшем релизе проблема будет решена.


А Вы случайно не подскажите, когда планируется след. релиз?
Offline bor1  
#10 Оставлено : 12 мая 2012 г. 20:36:10(UTC)
bor1

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

Группы: Участники
Зарегистрирован: 08.05.2008(UTC)
Сообщений: 41
Мужчина
Откуда: Крипто-Про

Поблагодарили: 1 раз в 1 постах
pzi написал:

Ну я же не знаю как там у вас в коде достается этот генегатор. Вдруг там тоже этот генератор подхватывается, а это согласитесь плохо.

Нет :) У нас в коде его вообще, как понимаете, особого смысла нет звать через внешние интерфейсы.

pzi написал:

А Вы случайно не подскажите, когда планируется след. релиз?

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