public override string Decriptare(string textCriptat)
        {
            string textClar = "";

            for (int i = 0; i < textCriptat.Length; i++)
            {
                if (!char.IsLetter(textCriptat[i]))
                {
                    textClar += textCriptat[i];
                }
                else
                {
                    char linie    = key[i % key.Length];
                    char original = Util.ShiftLetter(textCriptat[i], -(linie - 'a'));
                    if (Util.IsUpperCase(textCriptat[i]))
                    {
                        textClar += char.ToUpper(original);
                    }
                    else
                    {
                        textClar += original;
                    }
                }
            }
            return(textClar);
        }
        public override string Criptare(string textClar)
        {
            string textCriptat = "";


            for (int i = 0; i < textClar.Length; i++)
            {
                if (!char.IsLetter(textClar[i]))
                {
                    textCriptat += textClar[i];
                }
                else
                {
                    char linie = key[i % key.Length];


                    char coloana = char.ToLower(textClar[i]);

                    if (Util.IsUpperCase(textClar[i]))
                    {
                        textCriptat += char.ToUpper(perm[linie - 'a', coloana - 'a']);
                    }
                    else
                    {
                        textCriptat += perm[linie - 'a', coloana - 'a'];
                    }
                }
            }
            return(textCriptat);
        }