* @copyright 2017 Jim Wigginton * @license http://www.opensource.org/licenses/mit-license.html MIT License * @link http://pear.php.net/package/Math_BigInteger */ namespace phpseclib\Math\BigInteger\Engines\BCMath; use phpseclib\Math\BigInteger\Engines\BCMath; /** * Built-In BCMath Modular Exponentiation Engine * * @package BCMath * @author Jim Wigginton * @access public */ abstract class BuiltIn extends BCMath { /** * Performs modular exponentiation. * * @return \phpseclib\Math\BigInteger\Engines\BCMath */ protected static function powModHelper(BCMath $x, BCMath $e, BCMath $n) { $temp = new BCMath(); $temp->value = bcpowmod($x->value, $e->value, $n->value); return $x->normalize($temp); } }