//uint32_t generate_rsa_key(std::string& priv_key_str, std::string& pub_key_str);
//class RSA_signing_keypair 
//{ 
//	private:
//        	RSA_ptr rsa; 
//        	BN_ptr bn; 
//	public: 
//		RSA_signing_keypair(); 
		uint32_t generate_rsa_keypair(FILE* fp, std::string& priv_key_str, std::string& pub_key_str); //, uint8_t* hash); 
		uint32_t generate_rsa_keypair_hash(uint8_t* hash);
//}
int aes_cipher(int enc, unsigned char *key, unsigned char *iv, unsigned char* plaintext, int plaintext_len, unsigned char *ciphertext,  int* op_ciphertext_len, unsigned char* tag); 
