Что использовать для хеширования пароля? Какая-либо причина не использовать jBCrypt?

Чтобы добавить мои 2 цента, исключение может возникнуть, даже если вы вызываете свой код через System.Windows.Threading.Dispatcher.CurrentDispatcher.Invoke(). Дело в том, что вам нужно вызвать Invoke() элемента Dispatcher элемента управления, к которому вы пытаетесь получить доступ, что в некоторых случаях может не совпадать с System.Windows.Threading.Dispatcher.CurrentDispatcher. Поэтому вместо этого вы должны использовать YourControl.Dispatcher.Invoke() для обеспечения безопасности. Я уже несколько часов стучал головой, прежде чем понял это.

17
задан 7 March 2009 в 23:34
поделиться

3 ответа

jBcrypt прекрасен, вероятно, как crypto алгоритм для Ваших паролей; шифр относительно силен. Хотя были некоторые дефекты реализации, о которых сообщают, в Шифре самостоятельно, я не нахожу, что что-либо очень сообщило о jBcrypt. С другой стороны, Шифр не был протестирован почти так в большой степени, как другие алгоритмы имеют, и , трещина - разрабатывает известное-plaintxt нападение, часто работает лучше, чем ожидалось, удивляя crypto фанатов.

, Таким образом, вот то, что я предложил бы:

  • разрешение и использование jBcrypt, но защищают Ваши файлы зашифрованного пароля до степени, Вы обоснованно можете - как Вы были бы с помощью/etc/shadow в системе UNIX.
  • Вопреки предложению Nikhil, я был бы вытягивать источники в Ваше управление версиями по двум причинам: (1) где еще был бы Вы сохранять их, так как Вам нужны они каждый раз, когда Вы создаете и (2) потому что всегда существует шанс , человек, делающий jBcrypt, будет идти дальше к другим вещам, и Вы не хотите находить себя оставленными свисание непосредственно перед доставкой (который является неизбежно, когда Вы узнали бы.) В этом виде ситуации, я поместил источники в Ваше управление версиями, как будто они были Вашим на коде, и затем любые изменения могут быть вставлены, как будто Вы создали новую версию сами. Никакая потребность быть более сложным, чем Вы обычно не была бы.
5
ответ дан 30 November 2019 в 14:43
поделиться

До Вашей озабоченности, что это не зрело, я собирался предположить, что Вы настраиваете свое собственное тестовое сравнение JUnit результатов jBcrypt и более доказанного Bcrypt, чтобы видеть, получаете ли Вы те же результаты и затем вносите тех, которые к jBcrypt проекту.

, Но это было уже сделано:

... поставки с рядом модульных тестов JUnit для проверки корректной деятельности библиотеки и совместимости с канонической реализацией C bcrypt алгоритма.

Просматривание JUnit тестирует, чтобы видеть, встречаются ли они, Ваш уровень удовлетворенности - то, где я запустил бы...

2
ответ дан 30 November 2019 в 14:43
поделиться

Я сомневаюсь, что устойчивость будет проблемой, так как bcrypt самой зрело, и ее крошечные, стандартизированные обертки не делают ничего экстраординарного. Я доволен другой bcrypt оберткой Damien Miller, python-bcrypt , который находится только на версии 0.1.

, я незнаком со Знатоком, но (предупреждение ереси!) Я сомневаюсь, что Вам нужно управление версиями для компонента, столь же простого как bcrypt. Для заключения в кавычки сайта изменения от v0.1 до v0.2 были "правильностью, опечаткой и тонкими настройками API (полностью назад совместимый)", и Список ожидающих выполнения задач пуст.

0
ответ дан 30 November 2019 в 14:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: