*
* @return BigInteger
*/
private static function exponentiate(RSAKey $key, BigInteger $c): BigInteger
{
if ($key->isPublic() || empty($key->getPrimes()) || empty($key->getExponents()) || null === $key->getCoefficient()) {
return $c->modPow($key->getExponent(), $key->getModulus());
}
$p = $key->getPrimes()[0];
$q = $key->getPrimes()[1];