Exemplo n.º 1
0
        public static int GiaiMaRSA(int p, int q, int C)
        {
            Khoa khoacongkhai = new Khoa();
            Khoa khoabimat    = new Khoa();
            int  N            = p * q;
            int  n            = (p - 1) * (q - 1);
            int  e            = 0;

            for (int i = 2; i < n; i++)
            {
                SoKetQua kq = GiaiThuat.TinhEuclid(i, n);
                if (kq.Ucln == 1)
                {
                    e = i;
                    break;
                }
            }
            int d = GiaiThuat.TinhEuclid(n, e).Nghichdao;

            khoacongkhai.So1 = e;
            khoacongkhai.So2 = N;
            khoabimat.So1    = d;
            khoabimat.So2    = N;
            int Mngang = binhphuonglientiep(C, d, N);

            return(Mngang);
        }
Exemplo n.º 2
0
 private void button1_Click(object sender, EventArgs e1)
 {
     try
     {
         int  p            = Convert.ToInt32(txtp.Text);
         int  q            = Convert.ToInt32(txtq.Text);
         Khoa khoacongkhai = new Khoa();
         Khoa khoabimat    = new Khoa();
         int  N            = p * q;
         int  n            = (p - 1) * (q - 1);
         int  e            = 0;
         for (int i = 2; i < n; i++)
         {
             SoKetQua kq = GiaiThuat.TinhEuclid(i, n);
             if (kq.Ucln == 1)
             {
                 e = i;
                 break;
             }
             else
             {
                 continue;
             }
         }
         int d = GiaiThuat.TinhEuclid(n, e).Nghichdao;
         txte.Text  = e.ToString();
         txtN.Text  = N.ToString();
         txtd.Text  = d.ToString();
         txtN2.Text = N.ToString();
     }
     catch
     {
         MessageBox.Show("Có lỗi xảy ra");
     }
 }
Exemplo n.º 3
0
 private void btnMaHoa_Click(object sender, EventArgs e1)
 {
     try
     {
         using (StreamReader sr = new StreamReader(duongdanfile))
         {
             string     ketqua      = "";
             int        e           = Convert.ToInt32(txte.Text);
             int        N           = Convert.ToInt32(txtN.Text);
             String     line        = sr.ReadToEnd();
             string     textnhapvao = line;
             char[]     mangchar    = line.ToCharArray();
             List <int> mangso      = new List <int>();
             foreach (char c in mangchar)
             {
                 mangso.Add(Convert.ToInt32(c));
             }
             foreach (int i in mangso)
             {
                 int  soketquagiaima = GiaiThuat.MaHoaBaoMatRSA(e, N, i);
                 char charduocmahoa  = (char)soketquagiaima;
                 ketqua = ketqua + charduocmahoa;
             }
             txtKetQua.Text = ketqua;
         }
     }
     catch
     {
         MessageBox.Show("Có lỗi xảy ra");
     }
 }
Exemplo n.º 4
0
 private void btnTestGMBM_Click(object sender, EventArgs e)
 {
     try
     {
         int C        = Convert.ToInt32(txtTestC.Text);
         int d        = Convert.ToInt32(txtd.Text);
         int N        = Convert.ToInt32(txtN.Text);
         int soketqua = GiaiThuat.GiaiMaChungThucRSA(d, N, C);
         txtTestResult.Text = soketqua.ToString();
     }
     catch
     {
         MessageBox.Show("Có lỗi xảy ra.");
     }
 }
Exemplo n.º 5
0
 private void btnTestMHBM_Click(object sender, EventArgs e1)
 {
     try
     {
         int M        = Convert.ToInt32(txtTestM.Text);
         int e        = Convert.ToInt32(txte.Text);
         int N        = Convert.ToInt32(txtN.Text);
         int soketqua = GiaiThuat.MaHoaBaoMatRSA(e, N, M);
         txtTestResult.Text = soketqua.ToString();
     }
     catch
     {
         MessageBox.Show("Có lỗi xảy ra.");
     }
 }
Exemplo n.º 6
0
        private void button4_Click(object sender, EventArgs e)
        {
            int ketqua = GiaiThuat.GiaiMaChungThucRSA(Convert.ToInt32(txte.Text), Convert.ToInt32(txtN.Text), 27);

            MessageBox.Show(ketqua.ToString());
        }