Это должно работать. Пожалуйста, попробуйте этот код и дайте мне знать, работает ли он для вас, или если он не содержит пример пароля и хэша, который работает с хэш-функцией проверки phpbb, а не с вышеуказанным кодом C #.

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

Порт аутентификации PhPbb C #

Поэтому я написал поставщика членства, используя этот класс в функции «ValidateUser»:

public override bool ValidateUser(string username, string password)
    {
        ForumsDataContext db = Root.ForumsDataContext;
        PhPbbCryptoServiceProvider phpbbCrypt = new PhPbbCryptoServiceProvider();
        string remoteHash = db.Users.Where(u => u.UserName == username).FirstOrDefault().UserPassword;
        if (String.IsNullOrEmpty(remoteHash))
            return false;
        return phpbbCrypt.phpbbCheckHash(password, remoteHash);
    }

Однако это всегда возвращает false, так как phpbbCrypt.phpbbCheckHash возвращает false, и я не знаю достаточно о PhPbb, чтобы определить, почему хэши не совпадают.

Любые предложения?

Ответы на вопрос(1)

Ваш ответ на вопрос