#include #include #include using namespace cppbox; CRSAOperator opr; void file_test() { if (!opr.generate_keypair("public.pem", "private.pem")) { std::cout << opr.get_last_error() << std::endl; } const char* pub = "public.pem"; const char* pri = "private.pem"; HData source_data; int size = 512; source_data.len = size; opr.alloc_hdata(source_data); source_data.len = std::snprintf((char *)source_data.data, source_data.len, "This is a cryp test!"); HData en_result_data; HData de_result_data; if (!opr.encrypt_pub(pub, source_data, en_result_data)) { std::cout << opr.get_last_error() << std::endl; } if (!opr.decrypt_pri(pri, en_result_data, de_result_data)) { std::cout << opr.get_last_error() << std::endl; } assert(strcmp((const char *)de_result_data.data, (const char *)source_data.data) == 0); opr.free_hdata(en_result_data); opr.free_hdata(de_result_data); remove(pub); remove(pri); std::cout << "cryp_test success!" << std::endl; } int main() { file_test(); return 0; }