code: function Strategy(ikey, skey, host, loginUrl) {
    this._ikey = ikey;
    this._skey = skey;
    this._akey = utils.randomKey(44);
    this._host = host;
    this._loginUrl = loginUrl;
    passport.Strategy.call(this);
    this.name = 'duo';
  }
docs: `Strategy` constructor.
  
  The Duo authentication strategy authenticates requests based on the
  Duo security two-factor web authentication method.
  
  Applications must supply the integration key, secret key, application host, and the login URL for the UI, which
  contains the iframe for the Duo web SDK
  The Duo iframe will display the UI to either enroll, authenticate, or deny users.
  Upon successful authentication, the user will be redirected back to the original request that triggered the
  two-factor authentication
  ikey: '1234567890ABCD',
  skey: '1234567890ABCD1234567890ABCD',
  host: 'api-xxxxxxxx.duosecurity.com',
  loginUrl: '/login-duo',
  
  Examples:
  
  passport.use(new DuoStrategy(ikey, skey, host, loginUrl));
  
  References:
  - [Duo Web SDK](https://www.duosecurity.com/docs/duoweb)
  
  @param {String} ikey
  @param {String} skey
  @param {String} host
  @param {String} loginUrl
  @api public