Example #1
0
        private char[] AllChars()
        {
            MiMFa_CharBank cb = new MiMFa_CharBank();

            return(MiMFa_CollectionService.Concat <char>(
                       cb.EnglishCharacters,
                       cb.FarsiCharacters,
                       cb.NumberCharacters,
                       cb.SignCharacters,
                       cb.SymbolCharacter));
        }
Example #2
0
        public string[] MCBACCiphertoPlain(string[] Cipher, int scope = 4)
        {
            MiMFa_CharBank cb = new MiMFa_CharBank();

            char[]        allchar  = AllChars();
            List <char[]> Cipherlc = new List <char[]>();
            List <char[]> Plainlc  = new List <char[]>();

            string[] Plain = new string[Cipher.Length];
            char     mc;

            //
            foreach (var item in Cipher)
            {
                Cipherlc.Add(item.ToCharArray());
                Plainlc.Add(item.ToCharArray());
            }
            //
            for (int i = 0; i < Cipherlc.Count; i++)
            {
                for (int j = 0; j < Plainlc[i].Length; j++)
                {
                    if ((mc = FindInCharArrayToPlain(
                             ref allchar,
                             ref Cipherlc[i][j],
                             scope)) != InterfaceChar)
                    {
                        Plainlc[i][j] = mc;
                    }
                }
            }
            //
            int l = 0;

            foreach (var item in Plainlc)
            {
                Plain[l++] = new string(item);
            }
            return(Plain);
        }
Example #3
0
        public string[] CaesarCiphertoPlain(string[] cipher, int scope = 4)
        {
            MiMFa_CharBank cb       = new MiMFa_CharBank();
            List <char[]>  Cipherlc = new List <char[]>();
            List <char[]>  Plainlc  = new List <char[]>();

            string[] Plain = new string[cipher.Length];
            char     mc;
            bool     Find = false;

            //
            foreach (var item in cipher)
            {
                Cipherlc.Add(item.ToCharArray());
                Plainlc.Add(item.ToCharArray());
            }
            //
            for (int i = 0; i < Cipherlc.Count; i++)
            {
                for (int j = 0; j < Cipherlc[i].Length; j++)
                {
                    if (!Find &&
                        (mc = FindInCharArrayToPlain(
                             ref cb.EnglishCharacters,
                             ref Cipherlc[i][j],
                             scope)) != InterfaceChar)
                    {
                        Plainlc[i][j] = mc;
                        Find          = true;
                    }
                    if (!Find &&
                        (mc = FindInCharArrayToPlain(
                             ref cb.FarsiCharacters,
                             ref Cipherlc[i][j],
                             scope)) != InterfaceChar)
                    {
                        Plainlc[i][j] = mc;
                        Find          = true;
                    }
                    if (!Find &&
                        (mc = FindInCharArrayToPlain(
                             ref cb.NumberCharacters,
                             ref Cipherlc[i][j],
                             scope)) != InterfaceChar)
                    {
                        Plainlc[i][j] = mc;
                        Find          = true;
                    }
                    if (!Find &&
                        (mc = FindInCharArrayToPlain(
                             ref cb.SignCharacters,
                             ref Cipherlc[i][j],
                             scope)) != InterfaceChar)
                    {
                        Plainlc[i][j] = mc;
                        Find          = true;
                    }
                    Find = false;
                }
            }
            //
            int l = 0;

            foreach (var item in Plainlc)
            {
                Plain[l++] = new string(item);
            }
            return(Plain);
        }