class Net::SMTP::AuthCramMD5

def cram_md5_response(secret, challenge)

CRAM-MD5: [RFC2195]
def cram_md5_response(secret, challenge)
  tmp = digest_class::MD5.digest(cram_secret(secret, IMASK) + challenge)
  digest_class::MD5.hexdigest(cram_secret(secret, OMASK) + tmp)
end