Module |
|
Header |
/Engine/Source/Runtime/Core/Public/Math/BigInt.h |
Include |
#include "Math/BigInt.h" |
namespace FEncryption
{
template<typename IntType>
static IntType FEncryption::CalculateMultiplicativeInverseOfExponent
(
IntType Exponent,
IntType Totient
)
}
Multiplicative inverse of exponent using extended GCD algorithm.
Extended gcd: ax + by = gcd(a, b), where a = exponent, b = fi(n), gcd(a, b) = gcd(e, fi(n)) = 1, fi(n) is the Euler's totient function of n We only care to find d = x, which is our multiplicatve inverse of e (a).