module ActionController::HttpAuthentication::Digest
def expected_response(http_method, uri, credentials, password, password_is_ha1 = true)
Optional parameter +password_is_ha1+ is set to +true+ by default, since best practice is to store ha1 digest instead
Returns the expected response for a request of +http_method+ to +uri+ with the decoded +credentials+ and the expected +password+
def expected_response(http_method, uri, credentials, password, password_is_ha1 = true) ha1 = password_is_ha1 ? password : ha1(credentials, password) ha2 = ::Digest::MD5.hexdigest([http_method.to_s.upcase, uri].join(":")) ::Digest::MD5.hexdigest([ha1, credentials[:nonce], credentials[:nc], credentials[:cnonce], credentials[:qop], ha2].join(":")) end