Botan  1.11.15
src/lib/pubkey/mce/goppa_code.h
Go to the documentation of this file.
00001 /**
00002  * (C) Copyright Projet SECRET, INRIA, Rocquencourt
00003  * (C) Bhaskar Biswas and  Nicolas Sendrier
00004  *
00005  * (C) 2014 cryptosource GmbH
00006  * (C) 2014 Falko Strenzke fstrenzke@cryptosource.de
00007  *
00008  * Botan is released under the Simplified BSD License (see license.txt)
00009  *
00010  */
00011 
00012 #ifndef BOTAN_MCE_GOPPA_CODE_H__
00013 #define BOTAN_MCE_GOPPA_CODE_H__
00014 
00015 #include <botan/polyn_gf2m.h>
00016 #include <botan/mceliece_key.h>
00017 
00018 namespace Botan {
00019 
00020 std::vector<byte> mceliece_encrypt(const secure_vector<byte>& cleartext,
00021                                    const std::vector<byte>& public_matrix,
00022                                    const secure_vector<gf2m> & err_pos,
00023                                    u32bit code_length);
00024 
00025 secure_vector<byte> mceliece_decrypt(secure_vector<gf2m> & error_pos,
00026                                      const byte *ciphertext,
00027                                      u32bit ciphertext_len,
00028                                      const McEliece_PrivateKey& key);
00029 
00030 }
00031 
00032 #endif