diff options
Diffstat (limited to 'modules/pk_pad/emsa_raw/emsa_raw.cpp')
-rw-r--r-- | modules/pk_pad/emsa_raw/emsa_raw.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/modules/pk_pad/emsa_raw/emsa_raw.cpp b/modules/pk_pad/emsa_raw/emsa_raw.cpp new file mode 100644 index 000000000..037e22375 --- /dev/null +++ b/modules/pk_pad/emsa_raw/emsa_raw.cpp @@ -0,0 +1,48 @@ +/************************************************* +* EMSA-Raw Source File * +* (C) 1999-2007 Jack Lloyd * +*************************************************/ + +#include <botan/emsa.h> + +namespace Botan { + +/************************************************* +* EMSA-Raw Encode Operation * +*************************************************/ +void EMSA_Raw::update(const byte input[], u32bit length) + { + message.append(input, length); + } + +/************************************************* +* Return the raw (unencoded) data * +*************************************************/ +SecureVector<byte> EMSA_Raw::raw_data() + { + SecureVector<byte> buf = message; + message.destroy(); + return buf; + } + +/************************************************* +* EMSA-Raw Encode Operation * +*************************************************/ +SecureVector<byte> EMSA_Raw::encoding_of(const MemoryRegion<byte>& msg, + u32bit, + RandomNumberGenerator&) + { + return msg; + } + +/************************************************* +* EMSA-Raw Verify Operation * +*************************************************/ +bool EMSA_Raw::verify(const MemoryRegion<byte>& coded, + const MemoryRegion<byte>& raw, + u32bit) throw() + { + return (coded == raw); + } + +} |