00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00023 #ifndef _CLASS_RSAKEYGENPARAMETERSPEC
00024 #define _CLASS_RSAKEYGENPARAMETERSPEC
00025
00026 #include "beecrypt/beecrypt.h"
00027
00028 #ifdef __cplusplus
00029
00030 #include "beecrypt/c++/lang/Object.h"
00031 using beecrypt::lang::Object;
00032 #include "beecrypt/c++/security/spec/AlgorithmParameterSpec.h"
00033 using beecrypt::security::spec::AlgorithmParameterSpec;
00034
00035 namespace beecrypt {
00036 namespace security {
00037 namespace spec {
00040 class BEECRYPTCXXAPI RSAKeyGenParameterSpec : public beecrypt::lang::Object, public beecrypt::security::spec::AlgorithmParameterSpec
00041 {
00042 public:
00043 static const mpnumber F0;
00044 static const mpnumber F4;
00045
00046 private:
00047 size_t _keysize;
00048 mpnumber _e;
00049
00050 public:
00051 RSAKeyGenParameterSpec(size_t, const mpnumber&);
00052 virtual ~RSAKeyGenParameterSpec();
00053
00054 size_t getKeysize() const throw ();
00055 const mpnumber& getPublicExponent() const throw ();
00056 };
00057 }
00058 }
00059 }
00060
00061 #endif
00062
00063 #endif