This is entirely possible but requires custom code for your alternative solution. For an example see:
https://www.drupal.org/node/1109374#comment-4711644
From the linked thread you may simply:
(1) Create a new module, I called mine projectname_legacy_auth
/**
* supply alternate authentication schemes
*/
variable_set('password_inc', drupal_get_path('module', 'projectname_legacy_auth') . '/projectname_legacy_auth_password.inc');
function projectname_legacy_auth_uninstall() {
// put it back the way it was...
variable_set('password_inc', 'includes/password.inc');
}
function projectname_legacy_auth_disable() {
// put it back the way it was...
variable_set('password_inc', 'includes/password.inc');
}
(2) add the authentication mechanisms you need to projectname_legacy_auth_password.inc'.
In this case, it's md5().
/**
* simplified example for md5, no salting
*/
function user_check_password($password, $account) {
if ($account->pass == md5($password)) {
return TRUE;
}
return FALSE;
}
/**
* Simplified example for md5 hashes, no salting
*/
function user_hash_password($password, $count_log2 = 0) {
return md5($password);
}
/**
* this is probably a bad idea :-)
*/
function user_needs_new_hash($account) {
return FALSE;
}