Пример #1
0
        private string gen(geffe g, long len)
        {
            //string to_return = "";
            //for (long i = 0; i < len; ++i)
            //    to_return += geffe.next().ToString();
            //return to_return;
            var           watch = System.Diagnostics.Stopwatch.StartNew();
            StringBuilder sb    = new StringBuilder();

            for (long i = 0; i < len; ++i)
            {
                sb.Append(geffe.next().ToString());
            }
            watch.Stop();
            System.Console.WriteLine(watch.Elapsed);
            return(sb.ToString());
        }
Пример #2
0
        private string de(geffe g, string text)
        {
            short value_1 = 0;
            short value_2 = 0;

            List <int> encrypt = new List <int>();

            for (int i = 0; i < text.Length; ++i)
            {
                value_1 = g.next() == '0' ? (short)0 : (short)1;
                if (text[i] == '0')
                {
                    value_2 = 0;
                }
                else
                {
                    value_2 = 1;
                }
                encrypt.Add(((value_1 + value_2) % 2));
            }
            return(BinaryToString(string.Join("", encrypt.ToArray())));
        }
Пример #3
0
        private string gen(geffe g, string text)
        {
            short      value_1    = 0;
            short      value_2    = 0;
            string     binaryData = StringToBinary(text);
            List <int> encypt     = new List <int>();

            for (int i = 0; i < binaryData.Length; ++i)
            {
                value_1 = g.next() == '0' ? (short)0 : (short)1;
                if (binaryData[i] == '0')
                {
                    value_2 = 0;
                }
                else
                {
                    value_2 = 1;
                }

                encypt.Add(((value_1 + value_2) % 2));
            }

            return(string.Join("", encypt.ToArray()));
        }