private void btnCreateKeys_Click(object sender, EventArgs e)
        {
            StartTimer(true);

            var CheckPrimer = checkPrimerNumberTxt(sender, e);

            if (!CheckPrimer)
            {
                return;
            }
            var Primer1 = CurrenyRsaKeyEntity.pPrimeNumber1;
            var Primer2 = CurrenyRsaKeyEntity.qPrimeNumber2;

            CurrenyRsaKeyEntity.pPrimeNumber1 = Primer1;
            CurrenyRsaKeyEntity.qPrimeNumber2 = Primer2;

            var Modules      = Primer1 * Primer2;                               //n=p-q
            var TotientValue = UUtilityManager.EulerFunction(Primer1, Primer2); //primer olması zorunlu olduğu için  φ(n) = (p-1)(q-1) olarak bulunur.
            //TotientValue ile aralarında asal bir sayı belirle 1<e<TotientValue
            //var ReturnPublicKey = _RSAKeyService.GenaretePublicKey(CurrenyRsaKeyEntity);
            //var ReturnPublicKey = new RSAKeyService(CurrenyRsaKeyEntity).GenaretePublicKey(CurrenyRsaKeyEntity);
            var ReturnPublicKey = new RSAKeyService(CurrenyRsaKeyEntity).setGenaretePublicKey();

            CurrenyRsaKeyEntity.ePublicKey = ReturnPublicKey.Sign;

            //var ReturnPrivateKey = new RSAKeyService(CurrenyRsaKeyEntity).GenaretePrivateKey(CurrenyRsaKeyEntity);
            var ReturnPrivateKey = new RSAKeyService(CurrenyRsaKeyEntity).setGenaretePrivateKey();

            CurrenyRsaKeyEntity.dPrivateKey = ReturnPrivateKey.Sign;


            txtPublicKey.Text  = ReturnPublicKey.ToString();
            txtPrivateKey.Text = ReturnPrivateKey.ToString();
            StopTimer(true);
        }
        private void CreatePrimerNumbers_Click(object sender, EventArgs e)
        {
            StartTimer(true);

            //Random Iki Adet asal sayı üterimi
            var ReturnList = UUtilityManager.RandomPrimerGenerateTwoNumber();

            if (ReturnList != null && ReturnList.Count > 1)
            {
                CurrenyRsaKeyEntity.pPrimeNumber1 = ReturnList[0];
                CurrenyRsaKeyEntity.qPrimeNumber2 = ReturnList[1];
                txtPrimerNumber1.Text             = ReturnList[0].ToString();
                txtPrimerNumber2.Text             = ReturnList[1].ToString();
            }
            //2 adet asal sayı belirle.


            StopTimer(true);
        }
        private bool checkPrimerNumberTxt(object sender, EventArgs e)
        {
            StartTimer(true);


            var Primer1 = CurrenyRsaKeyEntity.pPrimeNumber1;
            var Primer2 = CurrenyRsaKeyEntity.qPrimeNumber2;

            if (string.IsNullOrEmpty(txtPrimerNumber1.Text) && !int.TryParse(txtPrimerNumber1.Text, out Primer1))
            {
                MessageBox.Show("Asal sayı 1 alanı zorunludur!");
                return(false);
            }
            if (string.IsNullOrEmpty(txtPrimerNumber2.Text) && !int.TryParse(txtPrimerNumber2.Text, out Primer2))
            {
                MessageBox.Show("Asal sayı 2 alanı zorunludur!");
                return(false);
            }

            var CheckPrimer = UUtilityManager.CheckIfPrime(Primer1);

            if (!CheckPrimer)
            {
                MessageBox.Show("Asal sayı 1 alanı asal sayı olmalıdır girilen değer asal değil düzenleyip tekrar deneyiniz!");
                return(false);
            }
            CheckPrimer = UUtilityManager.CheckIfPrime(Primer2);
            if (!CheckPrimer)
            {
                MessageBox.Show("Asal sayı 2 alanı asal sayı olmalıdır girilen değer asal değil düzenleyip tekrar deneyiniz!");
                return(false);
            }

            CurrenyRsaKeyEntity.pPrimeNumber1 = Primer1;
            CurrenyRsaKeyEntity.qPrimeNumber2 = Primer2;

            StopTimer(true);

            return(true);
        }