private void choas_creation(int length, double First_X, double U, ChoasEnum choas_select)
        {
            choas_number_bin    = new double[length + 1];
            choas_number_bin[0] = First_X;
            for (int i = 1; i <= length; i++)
            {
                switch (choas_select)
                {
                case ChoasEnum.First:
                {
                    choas_number_bin[i] = get_choas_value_PWLCM(choas_number_bin[i - 1], U);
                    break;
                }

                case ChoasEnum.Secend:
                {
                    choas_number_bin[i] = get_choas_value(choas_number_bin[i - 1], U);
                    break;
                }
                }
            }
            for (int i = 1; i <= length; i++)
            {
                choas_number_bin[i] = Math.Round(choas_number_bin[i]);
            }
        }
 public Encryption(int length, double First_X, double U, ChoasEnum choas_select)
 {
     choas_creation(length * 3, First_X, U, choas_select);
     choas_creation_oct();
 }
Esempio n. 3
0
        public static string EncryptString(string inputText, double First_X, double U, ChoasEnum choas_select)
        {
            try
            {
                UnicodeEncoding byteConverter = new UnicodeEncoding();
                byte[]          dataToEncrypt = byteConverter.GetBytes(inputText);

                return(Convert.ToBase64String(UtilityFunction.EncryptByte(dataToEncrypt, First_X, U, choas_select)));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 4
0
 public static byte[] EncryptByte(byte[] in_Byte, double First_X, double U, ChoasEnum choas_select)
 {
     try
     {
         Encryption t_encription = new Encryption(128, First_X, U, choas_select);
         byte[]     t_Output     = new byte[in_Byte.Length];
         int        i            = 0;
         byte[]     file_value   = new byte[128];
         int        in_c         = 0;
         int        out_c        = 0;
         while (in_c < in_Byte.Length)
         {
             file_value[i] = in_Byte[in_c++];
             i++;
             if (i == 128)
             {
                 t_encription.encrypt(file_value);
                 byte[] encrypt_data = t_encription.encrypt_information;
                 for (int i_f = 0; i_f < encrypt_data.Length; i_f++)
                 {
                     t_Output[out_c++] = encrypt_data[i_f];
                 }
                 i = 0;
             }
         }
         if (i != 0)
         {
             if (i % 2 == 0)
             {
                 byte[] file_value2 = new byte[i];
                 for (int j = 0; j < i; j++)
                 {
                     file_value2[j] = file_value[j];
                 }
                 t_encription.encrypt(file_value2);
                 byte[] encrypt_data = t_encription.encrypt_information;
                 for (int i_f = 0; i_f < encrypt_data.Length; i_f++)
                 {
                     t_Output[out_c++] = encrypt_data[i_f];
                 }
             }
             else
             {
                 byte[] file_value2 = new byte[i - 1];
                 for (int j = 0; j < i - 1; j++)
                 {
                     file_value2[j] = file_value[j];
                 }
                 if (i > 2)
                 {
                     t_encription.encrypt(file_value2);
                     byte[] encrypt_data = t_encription.encrypt_information;
                     for (int i_f = 0; i_f < encrypt_data.Length; i_f++)
                     {
                         t_Output[out_c++] = encrypt_data[i_f];
                     }
                 }
                 t_Output[out_c++] = file_value[i - 1];
             }
         }
         return(t_Output);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 5
0
 public static string DecryptString(string inputText, double First_X, double U, ChoasEnum choas_select)
 {
     try
     {
         byte[]          decryptedData = UtilityFunction.EncryptByte(Convert.FromBase64String(inputText), First_X, U, choas_select);
         UnicodeEncoding byteConverter = new UnicodeEncoding();
         return(byteConverter.GetString(decryptedData));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 6
0
 public static MemoryStream EncryptStream(MemoryStream inputStream, double First_X, double U, ChoasEnum choas_select)
 {
     try
     {
         byte[]       dataToEncrypt = inputStream.ToArray();
         var          encryptData   = UtilityFunction.EncryptByte(dataToEncrypt, First_X, U, choas_select);
         MemoryStream ms            = new MemoryStream();
         ms.Write(encryptData, 0, encryptData.Length);
         return(ms);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }