Я знаю, что это старое, но натолкнулся на это, а потом нашел ответ, так что я пост для других.
Поле пароля в joomla - это md5 пароля и случайно сгенерированной соли плюс двоеточие и случайно сгенерированной соли.
Это будет выглядеть примерно так:
33da105d239879dae4cdaf58557985c:L8QwPXN02cltv0lkGIyD3JRDU0AR5fcA
Так что вернемся к этому ...
1) Запрос БД для имени пользователя (опубликовано пользователем)
user = User.find_by_username(params[:username])
2) Затем разделите пароль и получите второй элемент в массиве:
salt = user.password.split(":")[1]
3) Возьмите пароль (опубликованный пользователем) плюс соль и сравните его с паролем в БД
user.password == Digest::MD5.hexdigest(params[:password] + salt).to_s + ":" + salt
Если у вас правильная комбинация пользователь / пароль, это должно быть правдой ...