Botan
1.11.15
|
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 }