Exemple #1
0
        /// <summary>
        /// Создание нового блока AES с новым вектором шифрования.
        /// </summary>
        /// <returns></returns>
        public static AES_Data NewAES()
        {
            AES_Data New = new AES_Data();

            New.CreateData();
            return(New);
        }
        /// <summary>
        /// Посылает запрос на сервер от имени пользователя и выдаёт его ответ
        /// </summary>
        /// <param name="CurUser">Пользователь, от имени которого подаётся запрос</param>
        /// <param name="Command">Команда запроса</param>
        /// <param name="Parameters">Параметры запроса</param>
        /// <param name="BinarInfo">Бинарная часть запроса</param>
        /// <returns></returns>
        static public List <string> Send_Get_Msg_To_Server(string Command,
                                                           string Parameters = "", byte[] BinarInfo = null)
        {
            // Буфер для входящих данных
            List <string> Res;

            // Получаем ответ от сервера
            if (Command == Commands.Login)
            {
                UserInfo UI = Login(new string[] { Parameters });
                Crypt = UI?.Key;
                Res   = UI == null
                    ? new List <string>()
                {
                    Answers.StartMsg, "", "NoUserID", Answers.EndMsg
                }
                    : Get_ListString_from_bytes(UI.Info);
            }
            else
            {
                MemoryStream Answer = Query(Command, new string[] { Parameters }, BinarInfo);
                Res = Get_ListString_from_bytes(Answer);
            }

            if (Res[1] == Answers.NoLogin)
            {
                Form1.CurUser = null;
            }

            return(Res);
        }