count()) { return; } $hasPublicKeys = false; $hasPrivateKeys = false; foreach ($jwkset as $jwk) { switch ($jwk->get('kty')) { case 'OKP': case 'RSA': case 'EC': if ($jwk->has('d')) { $hasPrivateKeys = true; } else { $hasPublicKeys = true; } break; } } if ($hasPrivateKeys && $hasPublicKeys) { $bag->add(Message::high('This key set mixes public and private keys.')); } } }