2009/6/6 Rustam Rakhimov <rusyas...@gmail.com>: > So if you are so brave try the example given before. > Than you will feel reality. may be you are wright, i try , but i can not get the result. if a integer with m bits and another integer with n bits, if the multiple , there product has m+n bits or m+n-1 bits. 248911498900030209107 is a 21 bits number, so i think the p and q both are 11 bits number. i wrote a small program to find #include <openssl/bn.h> #include <openssl/bio.h> #include <string.h>
int main() { BIO *filebio; filebio = BIO_new(BIO_s_file()); BIO_set_fp(filebio, stdout, BIO_NOCLOSE); BN_CTX *mybnctx; mybnctx = BN_CTX_new(); BN_CTX_init(mybnctx); BIGNUM *myprime; BIGNUM *num1, *div, *rem; char str1[] = "248911498900030209107"; num1 = BN_new(); BN_dec2bn(&num1, str1); div = BN_new(); rem = BN_new(); int i; for (i = 0; i < 10000; i++){ /* * i don't know how many the prime integer with 34 bits, * so i just try,may be it is too naive think like this */ myprime = BN_generate_prime(NULL, 34, 0, NULL, NULL, NULL, NULL); BN_div(div, rem, num1, myprime, mybnctx); if(BN_is_zero(rem)) { /* if get it, then print them*/ BIO_printf(filebio, "%s\n", BN_bn2dec(div)); BIO_printf(filebio, "%s\n", BN_bn2dec(myprime)); } } BIO_free(filebio); BN_free(num1); BN_free(rem); BN_free(div); BN_free(myprime); BN_CTX_free(mybnctx); } i still not understand the problem. although i don''t get the result. > > ------------------------- > Best Regards Rustam !!! > ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org