Соление и хэширование паролей, совместимость с Java и PHP

Я пытаюсь сделать игру, которая будет привязана к контенту сайта, и учетные записи пользователей будут совместно использоваться на сайте несколькими версиями клиента.

Проблема в том, что пароль должен быть хеширован в PHPи мне нужно иметь возможность проверить через Javaи я не могу найти информацию о безопасности cryptos (лайк PBKDF2) и обеспечение того, чтобы поколение PHP а также Java,

Я видел некоторую информацию об использовании PBKDF2 на PHP, ИЛИ ЖЕ Hmac с SHA-1, но не объединяя их, как это предлагается во имя Java «PBKDF2WithHmacSHA1«У меня есть ручка для индивидуального хеширования PHP или же Java,

Как настроить методы, чтобы иметь возможность генерировать соль и хэш на PHP, храните его в MySQL и сможете проверить пароли через функции хеширования Java?

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

Постскриптум Не особенно уверен, заслуживает ли это быть здесь или на Crypto SE. Я понял, так как я спрашивал о конкретных языках, я сначала попробую здесь.

1

Решение

Таким образом, оказывается, это было не так сложно, как я думал. я нашел этот вопрос это сказал что PHPэквивалентно Java«s PBKDF2WithHmacSha1 был hash_pbkdf2 функция с sha1 алгоритм. Оттуда это было просто вопросом передачи salt а также hash от PHP к Java, Вот как это закончилось:

1) PHP: Для этого я просто скопировал парня pbkdf2 функционировать и генерировать соль и хэш, как он сделал.

2) JavaВсе, что нужно было сделать, — это немного изменить преобразование байт-кода, и оно работало просто отлично.

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

Немного более подробный ответ доступен на этот другой вопрос.

0

Другие решения

Попробуйте рассмотреть возможность использования встроенного управления пользователями и паролями, например JBoss KeyCloak. Он основан на таких стандартах, как OAuth2 и OpenID Connect, и такие вещи, как сброс пароля, регистрация пользователя и социальный вход в систему, предоставляются бесплатно. Включает в себя соединители для Java и JavaScript. По-видимому коннекторы для PHP также доступны.

0

По вопросам рекламы [email protected]