2017-02-17 8 views
0

Есть ли способ, чтобы расшифровать PBKDF2 пароль в java.Java имеет реализацию «PBKDF2» алгоритм, как «PBKDF2WithHmacSHA1» я получил код, чтобы создать хэш пароля я говорил ниже ссылки для хеширования техникарасшифровывать и шифровать с помощью PBKDF2 Java

http://howtodoinjava.com/security/how-to-generate-secure-password-hash-md5-sha-pbkdf2-bcrypt-examples/

Мое требование хранить третий пароль сервера FTP Party в зашифрованном виде и получить обратно пароль в незашифрованном виде из БД, когда есть необходимость войти в сервер. Можно ли предложить лучшего шифрование паролей метод

+2

PBKDF2 используется для генерации ключей шифрования с паролями. В PBKDF2 нет зашифрованных паролей. –

+0

Проблема заключается в том, что дешифровать пароли в целом небезопасны. Особые меры предосторожности необходимо использовать, чтобы гарантировать, что зашифрованные пароли не находятся на сервере, который напрямую подключен к Интернету или использует HSM. Если оценка четких паролей абсолютно не нужна, другого способа не существует, это не должно быть сделано. – zaph

+0

Возможный дубликат [Расшифровать пароль, созданный crypto.pbkdf2 Object] (http://stackoverflow.com/questions/24563847/decrypt-password-created-by-crypto-pbkdf2-object), [Как расшифровать зашифрованный текст pbkdf2 без зная IV] (http://stackoverflow.com/q/16987336/608639), [Расшифровка пароля rfc2898] (http://stackoverflow.com/q/33796138/608639), [О том, как быстро вы можете использовать команду PBKDF2 ?] (http://stackoverflow.com/q/11298184/608639) и т. д. – jww

ответ

7

Обратите внимание, что PBKDF2 является хеширования-метод, а не шифрования метод (точнее: это способ вывести ключ шифрования из пароля, но он часто используется как метод хэширования паролей). Весь смысл PBKDF2 состоит в том, чтобы сделать невозможным получение исходного пароля, кроме как путем грубой угадывания, и сделать это как можно более сложным.

Если вы говорите о паролях своих пользователей: вы не сможете их полностью очистить - если вы это сделали и сообщите мне (например, указав мой пароль), я бы сразу пометил весь ваш сайт как небезопасный.

Если вам необходимо зашифровать пароль для вашего приложения для доступа к другой службе, тогда PBKDF2 является неправильным инструментом для задания, вместо этого используйте настоящий алгоритм шифрования, такой как AES.

+0

@Artjom B Piet.t - Спасибо за эту информацию, это помогло мне разобраться в деталях о безопасности пользователей. . Мое требование - хранить пароль стороннего FTP-сервера в зашифрованном формате и возвращать пароль, когда есть необходимость. для входа на сервер ** Можете ли вы предложить лучший способ сделать это. ** –

+0

Я знаю, что я «немного опоздал», любой поиск в Google скажет вам - хеширование - один из способов, шифрование - обратимое. Поэтому, как вы сказали, вы можете использовать AES или любое другое обратимое шифрование для восстановления пароля. –

0

Невозможно по дизайну! Интересно, почему?

После 2 статьи ответит на все ваши вопросы: https://nakedsecurity.sophos.com/2013/11/20/serious-security-how-to-store-your-users-passwords-safely/ https://crackstation.net/hashing-security.htm

+0

Спасибо за эту статью, помогли много . Мое требование - хранить пароль стороннего FTP-сервера в зашифрованном формате и возвращать пароль из БД при необходимости входа на сервер. На самом деле вам нужно будет зайти на сервер каждые 10-20 минут. ** Может кто-нибудь предложить любой метод шифрования пароля. ** –

+0

Ну, это просто делегирование проблемы на новый уровень. Предположим, вы выбрали алгоритм X. Как вы собираетесь защищать ключ шифрования, который вы будете использовать для шифрования пароля FTP-сервера? –