Esempio n. 1
0
int main()
{
    long i;
    int sayac=0;

    for(i=1;;i++){
    if(asal(i))
    sayac++;
    if(sayac==10001)
    break;
    }
   printf("%ld",i);

    return 0;
}
Esempio n. 2
0
void asaliste(long double dizi[], int sayi){
    int i;
    dizi[0] = 2;
    for(i=1;i<sayi;i++)
        dizi[i] = asal();
}
int main()
{
	int p,g,a,b,t;
	unsigned long long int A, B, secret1, secret2;
	printf("*********Klasik Diffie Hellman Anahtar Degisimi*********\n\n");
	printf("NOT  :  'g' bir tamsayi, 'p' bir asal sayi ve 'p'-1>'g' olmalidir. \n\n");
	
	tekrar2:
	printf("Lutfen ortak 'g' taban degerini giriniz  :  "); 
	scanf("%d", &g);
	tekrar:
	printf("Lutfen ortak 'p' mod degerini giriniz    :  "); 
	scanf("%d", &p);
	
	t=asal(p);
	if(t==1)
	goto tekrar;
	t=aralarindaasal(g,p);
	if(t==1)
	goto tekrar2;
	
	printf("\n\tg  :  %d\n\tp  :  %d\n", g,p);
	
	printf("\nClient gizli degerini giriniz  :  "); 
	scanf("%d", &a);
	printf("Server gizli degerini giriniz  :  ");
	scanf("%d", &b);
	
	printf("\n\ta  :  %llu\n\tb  :  %llu\n", a,b);

	A=publickey(g,a,p);
	B=publickey(g,b,p);
	
	printf("\nPublic Deger Hesaplama=>    A  :  g^a mod p\n");
	printf("                            B  :  g^b mod p\n");
	printf("\nClient public degeri  =>    A  :  %d^%d mod %d\n", g,a,p);
	printf("Server public degeri  =>    B  :  %d^%d mod %d\n\n", g,b,p);
	
	printf("\tA  :  %llu\n\tB  :  %llu\n\n", A,B);

	printf("Gizli Deger Hesaplama => Client  :  B^a mod p  =  g^ba mod p\n");
	printf("                         Server  :  A^b mod p  =  g^ab mod p\n\n");
	printf("Client gizli degeri   =>    s1   :  %llu^%d mod %d\n", B,a,p);
	printf("Server gizli degeri   =>    s2   :  %llu^%d mod %d", A,b,p);
	secret1=secretkey(B,a,p);
	secret2=secretkey(A,b,p);
	
	printf("\n\n\ts1  :  %llu\n\ts2  :  %llu\n", secret1,secret2);
	
	if(secret1!=secret2)
	printf("\n\n's' degerleri esit cikmadi. Islemlerde bir sorun olabilir. \nKontrol ettikten sonra, tekrar deneyiniz.\n\n");
	
	else
	printf("\nOrtak gizli deger     =>    s  :  %llu",secret1);
	
	printf("\n\nClient'in Bildigi Degerler  :  g, p, a, A, B, s\n");
	printf("Server'in Bildigi Degerler  :  g, p, b, B, A, s");
	
	printf("\n\n\n\t*******Tolga Akkapulu*******\n\thttp://www.tolgaakkapulu.com");
	
	getch();
}