docs: function DigestStrategy(options, secret, validate) {
    if (typeof options == 'function') {
      validate = secret;
      secret = options;
      options = {};
    }
    if (!secret) throw new Error('HTTP Digest authentication strategy requires a secret function');
    
    passport.Strategy.call(this);
    this.name = 'digest';
    this._secret = secret;
    this._validate = validate;
    this._realm = options.realm || 'Users';
    if (options.domain) {
      this._domain = (Array.isArray(options.domain)) ? options.domain : [ options.domain ];
    }
    this._opaque = options.opaque;
    this._algorithm = options.algorithm;
    if (options.qop) {
      this._qop = (Array.isArray(options.qop)) ? options.qop : [ options.qop ];
    }
  }