public function fetchKeys($iss) { $url = "{$iss}.well-known/jwks.json"; if (($secret = $this->cache->get($url)) === null) { $secret = []; $request = new RequestBuilder(array('domain' => $iss, 'basePath' => '.well-known/jwks.json', 'method' => 'GET', 'guzzleOptions' => $this->guzzleOptions)); $jwks = $request->call(); foreach ($jwks['keys'] as $key) { $secret[$key['kid']] = $this->convertCertToPem($key['x5c'][0]); } $this->cache->set($url, $secret); } return $secret; }