00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00023 #ifndef _CLASS_IVPARAMETERSPEC_H
00024 #define _CLASS_IVPARAMETERSPEC_H
00025
00026 #ifdef __cplusplus
00027
00028 #include "beecrypt/c++/array.h"
00029 using beecrypt::bytearray;
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 crypto {
00037 namespace spec {
00040 class BEECRYPTCXXAPI IvParameterSpec : public beecrypt::lang::Object, public beecrypt::security::spec::AlgorithmParameterSpec
00041 {
00042 private:
00043 bytearray _iv;
00044
00045 public:
00046 IvParameterSpec(const byte* iv, size_t offset, size_t length);
00047 IvParameterSpec(const bytearray& iv);
00048 virtual ~IvParameterSpec();
00049
00050 const bytearray& getIV() const throw ();
00051 bytearray* getIV();
00052 };
00053 }
00054 }
00055 }
00056
00057 #endif
00058
00059 #endif