예제 #1
0
파일: UT_SL2.cs 프로젝트: joeqian10/TzHash
 public void TestInv()
 {
     for (int i = 0; i < 5; i++)
     {
         var a = Random();
         var b = SL2.Inv(a);
         var c = a * b;
         Assert.AreEqual(SL2.ID, c);
     }
 }
예제 #2
0
파일: UT_SL2.cs 프로젝트: joeqian10/TzHash
        private SL2 Random()
        {
            var r = new SL2();

            r[0][0] = GF127.Random();
            r[0][1] = GF127.Random();
            r[1][0] = GF127.Random();
            // d = a^-1 * (1 + b*c)
            r[1][1] = GF127.Inv(r[0][0]) * (r[0][1] * r[1][0] + new GF127(1, 0));
            return(r);
        }