int keyGen(int pub) { int test=private-(pub*3); p=nth_prime(test/4,test/5); q=nth_prime(test/5,test/3); e=expGen(p,q); d=egcd(e,(p-1)*(q-1)); n=p*q; printf("Public key %d , test %d, P: %d, Q: %d, E: %d, D: %d, n: %d \n",pub,test,p,q,e,d,n); }
/* nth_prime_all_tests * */ int nth_prime_all_tests(void) { /* local variables */ int tests_passed; int expected; int result; tests_passed = 0; /* test 1 */ expected = 13; result = nth_prime(6); if (result != expected) { printf("%s\n", "Test 1 Failed!"); printf("%s%d%s%d\n", "Expected: ", expected, ". Result: ", result); } else { tests_passed++; } /* test 2 */ expected = 104743; result = nth_prime(10001); if (result != expected) { printf("%s\n", "Test 2 Failed!"); printf("%s%d%s%d\n", "Expected: ", expected, ". Result: ", result); } else { tests_passed++; } /* test 3 */ expected = 5; result = nth_prime(3); if (result != expected) { printf("%s\n", "Test 3 Failed!"); printf("%s%d%s%d\n", "Expected: ", expected, ". Result: ", result); } else { tests_passed++; } /* test 4 */ expected = 19; result = nth_prime(8); if (result != expected) { printf("%s\n", "Test 4 Failed!"); printf("%s%d%s%d\n", "Expected: ", expected, ". Result: ", result); } else { tests_passed++; } return tests_passed; }
int main() { printf("The 10,001st prime is %d.\n", nth_prime(10001)); }
int main(int argc, char *argv[]) { printf("%ld\n", nth_prime(TARGET_INDEX)); return 0; }