Botan  1.11.15
src/lib/pk_pad/eme.cpp
Go to the documentation of this file.
00001 /*
00002 * EME Base Class
00003 * (C) 1999-2008 Jack Lloyd
00004 *
00005 * Botan is released under the Simplified BSD License (see license.txt)
00006 */
00007 
00008 #include <botan/eme.h>
00009 
00010 namespace Botan {
00011 
00012 /*
00013 * Encode a message
00014 */
00015 secure_vector<byte> EME::encode(const byte msg[], size_t msg_len,
00016                                size_t key_bits,
00017                                RandomNumberGenerator& rng) const
00018    {
00019    return pad(msg, msg_len, key_bits, rng);
00020    }
00021 
00022 /*
00023 * Encode a message
00024 */
00025 secure_vector<byte> EME::encode(const secure_vector<byte>& msg,
00026                                size_t key_bits,
00027                                RandomNumberGenerator& rng) const
00028    {
00029    return pad(&msg[0], msg.size(), key_bits, rng);
00030    }
00031 
00032 /*
00033 * Decode a message
00034 */
00035 secure_vector<byte> EME::decode(const byte msg[], size_t msg_len,
00036                                size_t key_bits) const
00037    {
00038    return unpad(msg, msg_len, key_bits);
00039    }
00040 
00041 /*
00042 * Decode a message
00043 */
00044 secure_vector<byte> EME::decode(const secure_vector<byte>& msg,
00045                                size_t key_bits) const
00046    {
00047    return unpad(&msg[0], msg.size(), key_bits);
00048    }
00049 
00050 }