/************************************************* * EMSA3 Header File * * (C) 1999-2007 Jack Lloyd * *************************************************/ #ifndef BOTAN_EMSA3_H__ #define BOTAN_EMSA3_H__ #include #include namespace Botan { /************************************************* * EMSA3 * *************************************************/ class BOTAN_DLL EMSA3 : public EMSA { public: EMSA3(HashFunction* hash); ~EMSA3() { delete hash; } private: void update(const byte[], u32bit); SecureVector raw_data(); SecureVector encoding_of(const MemoryRegion&, u32bit, RandomNumberGenerator& rng); bool verify(const MemoryRegion&, const MemoryRegion&, u32bit) throw(); HashFunction* hash; SecureVector hash_id; }; } #endif