public void BitsArraystoStringeTests()
        {
            int[] tmp = { 1, 1, 1, 1, 0, 1, 1 };
            Array.Reverse(tmp);

            Assert.AreEqual("123", NumberConverter.BitsArraystoString(tmp).ToString());
        }
        public void TestMethod1()
        {
            Elgamal          elgamal   = new Elgamal();
            NumberGenerator  ng        = new NumberGenerator();
            ElgamalDecryptor decryptor = new ElgamalDecryptor();

            int[] one = { 1 };

            elgamal.P = NumberConverter.IntToBits(547);
            elgamal.G = NumberConverter.IntToBits(9);
            elgamal.A = NumberConverter.IntToBits(23);
            elgamal.M = NumberConverter.IntToBits(100);
            elgamal.K = NumberConverter.IntToBits(125);

            elgamal.B = elgamal.GenerateB();

            Assert.AreEqual("81", NumberConverter.BitsArraystoString(elgamal.B).ToString());
            elgamal.Kprim = elgamal.GenerateKprim();
            Assert.AreEqual("83", NumberConverter.BitsArraystoString(elgamal.Kprim).ToString());
            elgamal.R = elgamal.GenerateR();
            Assert.AreEqual("304", NumberConverter.BitsArraystoString(elgamal.R).ToString());
            elgamal.S = ng.GetS(elgamal.Kprim, elgamal.M, elgamal.A, elgamal.R, MathOperations.BitsSubstraction(elgamal.P, one));
            Assert.AreEqual("172", NumberConverter.BitsArraystoString(elgamal.S).ToString());

            Assert.AreEqual("81", NumberConverter.BitsArraystoString(decryptor.GetX2(elgamal)).ToString());
            Assert.AreEqual("304", NumberConverter.BitsArraystoString(decryptor.GetBR(elgamal)).ToString());
            Assert.AreEqual("182", NumberConverter.BitsArraystoString(decryptor.GetRS(elgamal)).ToString());
            Assert.AreEqual("81", NumberConverter.BitsArraystoString(decryptor.GetX1(elgamal, decryptor.GetBR(elgamal), decryptor.GetRS(elgamal))).ToString());

            Assert.AreEqual(true, decryptor.IsCorrect(elgamal));
        }
Example #3
0
 public void DisplayKeys()
 {
     PText.Content        = NumberConverter.BitsArraystoString(_elgamal.P).ToString();
     BText.Content        = NumberConverter.BitsArraystoString(_elgamal.B).ToString();
     GText.Content        = NumberConverter.BitsArraystoString(_elgamal.G).ToString();
     RText.Content        = NumberConverter.BitsArraystoString(_elgamal.R).ToString();
     SText.Content        = NumberConverter.BitsArraystoString(_elgamal.S).ToString();
     MessageField.Content = NumberConverter.BitsArraystoString(_elgamal.M).ToString();
 }
Example #4
0
        public override string ToString()
        {
            var pp = NumberConverter.BitsArraystoString(P).ToString();
            var bb = NumberConverter.BitsArraystoString(B).ToString();
            var aa = NumberConverter.BitsArraystoString(A).ToString();
            var gg = NumberConverter.BitsArraystoString(G).ToString();
            var kk = NumberConverter.BitsArraystoString(K).ToString();
            var rr = NumberConverter.BitsArraystoString(R).ToString();
            var ss = NumberConverter.BitsArraystoString(S).ToString();
            var mm = NumberConverter.BitsArraystoString(M).ToString();

            return("p: " + pp + System.Environment.NewLine + " b :" + bb + System.Environment.NewLine + " a: " + aa + System.Environment.NewLine + " g: " + gg + System.Environment.NewLine + " k:" + kk + System.Environment.NewLine + " r:" + rr + System.Environment.NewLine + " kprim : " + NumberConverter.BitsArraystoString(Kprim).ToString() + System.Environment.NewLine + " s: " + ss + System.Environment.NewLine + " m: " + mm);
        }
Example #5
0
        public void Decrypt(object sender, RoutedEventArgs e)
        {
            if (FromFile)
            {
                x1Text.Content = NumberConverter.BitsArraystoString(_decryptor.GetX1(_elgamal, _decryptor.GetBR(_elgamal), _decryptor.GetRS(_elgamal))).ToString();
                x2Text.Content = NumberConverter.BitsArraystoString(_decryptor.GetX2(_elgamal)).ToString();
            }
            else
            {
                x1Text.Content = NumberConverter.BitsArraystoString(_decryptor.GetX1(_elgamal, _decryptor.GetBR(_elgamal), _decryptor.GetRS(_elgamal))).ToString();
                x2Text.Content = NumberConverter.BitsArraystoString(_decryptor.GetX2(_elgamal)).ToString();
            }

            ValidField.Content = _decryptor.IsCorrect(_elgamal) ? "TAK" : "NIE";
        }