blob: 9767e51eff486e81edf2eae7cfed4f107a250193 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
/*
* Modular Exponentiation
* (C) 1999-2007 Jack Lloyd
*
* Distributed under the terms of the Botan license
*/
#include <botan/internal/default_engine.h>
#include <botan/internal/def_powm.h>
namespace Botan {
/*
* Choose a modular exponentation algorithm
*/
Modular_Exponentiator*
Default_Engine::mod_exp(const BigInt& n, Power_Mod::Usage_Hints hints) const
{
if(n.is_odd())
return new Montgomery_Exponentiator(n, hints);
return new Fixed_Window_Exponentiator(n, hints);
}
}
|