Exemple #1
0
 public void SendToAll(string package)
 {
     package = QEncryption.Encrypt(package);
     for (int i = 0; i < clients.Count; i++)
     {
         clients[i].SendWEncrypt(package);
     }
 }
Exemple #2
0
        //DC all sockets!
        public void CloseAllSockets()
        {
            string dcAllPackage = PacketDatas.PACKET_FORCE_DC + PacketDatas.PACKET_SPLIT + "DC all command";

            dcAllPackage = QEncryption.Encrypt(dcAllPackage);
            while (clients.Count != 0)
            {
                //clients[0].Close();

                if (clients[0] == null || clients[0].isClosed)
                {
                    clients.RemoveAt(0);
                }
                else
                {
                    clients[0].Close();
                }
            }
        }
Exemple #3
0
        public void Send(string dataToSend)
        {
            if (socket == null || !socket.Connected)
            {
                return;
            }

            dataToSend = QEncryption.Encrypt(dataToSend);
            dataToSend = PacketDatas.PACKET_HEADER + dataToSend;
            //We us UTF8 characterss so lets convert the bytes into utf8 string!
            byte[] dataBytes = Encoding.UTF8.GetBytes(dataToSend);
            //And then send it to our client.
            try
            {
                socket.Send(dataBytes, SocketFlags.None);
            }
            catch (Exception e)
            {
                Close();
            }
        }
Exemple #4
0
        private void OnReceive(byte[] buffer)
        {
            //Then we send this.

            string packetString = Encoding.Default.GetString(buffer);

            if (packetString[0].ToString() != PacketDatas.PACKET_HEADER)
            {
                Close();
                return;
            }
            string[] packets = packetString.Split(new string[] { PacketDatas.PACKET_HEADER }, StringSplitOptions.None);
            for (int i = 1; i < packets.Length; i++)
            {
                packets[i] = QEncryption.Decrypt(packets[i]);
                //Split the packet by our split character.
                string[] packetStrings = packets[i].Split(new string[] { PacketDatas.PACKET_SPLIT }, StringSplitOptions.None);
                receive(this, packetStrings);
            }

            /*
             *
             * string packetString = Encoding.Default.GetString(buffer);//The packet
             * //packetString = packetString.Trim('\0');
             * Eutils.WriteLine("received data:{0} at Time:{1} Length:{2}", packetString, DateTime.Now, packetString.Length);
             * packetString = QEncryption.Decrypt(packetString);
             * Eutils.WriteLine("received data:{0} at Time:{1} Length:{2}", packetString, DateTime.Now, packetString.Length);
             * //Split the packet by our split character.
             * string[] packetStrings = packetString.Split(new string[] { PacketDatas.PACKET_SPLIT }, StringSplitOptions.None);
             * if (packetStrings[0] != PacketDatas.PACKET_HEADER)//Is the packet header correct?
             * {
             *  Close();
             *  return;
             * }
             * received(this, packetStrings);*/
        }
Exemple #5
0
 public static byte[] Encrypt(this int value, int keyIndex = 0)
 {
     return(QEncryption.EncryptString(value.ToString(), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)));
 }
Exemple #6
0
 public static float DecryptFloat(this byte[] byteArray, int keyIndex = 0)
 {
     return(float.Parse(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex))));
 }
Exemple #7
0
 public static float DecryptFloat(this string value, int keyIndex = 0)
 {
     return(float.Parse(QEncryption.DecryptBytes(Array.ConvertAll(value.Split(StringDelimiter), byte.Parse), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex))));
 }
Exemple #8
0
 public static List <string> DecryptStringList(this byte[] byteArray, int keyIndex = 0)
 {
     return(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)).Split(StringDelimiter).ToList());
 }
Exemple #9
0
 public static List <string> DecryptStringList(this string value, int keyIndex = 0)
 {
     return(QEncryption.DecryptBytes(Array.ConvertAll(value.Split(StringDelimiter), byte.Parse), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)).Split(StringDelimiter).ToList());
 }
Exemple #10
0
 public static byte[] Encrypt(this List <string> stringList, int keyIndex = 0)
 {
     return(QEncryption.EncryptString(stringList.ToString(StringDelimiter), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)));
 }
Exemple #11
0
 public static byte[] Encrypt(this string[] stringArray, int keyIndex = 0)
 {
     return(QEncryption.EncryptString(stringArray.ToString(StringDelimiter), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)));
 }
Exemple #12
0
 public static List <bool> DecryptBoolList(this byte[] byteArray, int keyIndex = 0)
 {
     return(Array.ConvertAll(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)).Split(StringDelimiter), bool.Parse).ToList());
 }
Exemple #13
0
 public static bool[] DecryptBoolArray(this string value, int keyIndex = 0)
 {
     return(Array.ConvertAll(QEncryption.DecryptBytes(Array.ConvertAll(value.Split(StringDelimiter), byte.Parse), KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)).Split(StringDelimiter), bool.Parse));
 }
Exemple #14
0
 public static int[] DecryptIntArray(this byte[] byteArray, int keyIndex = 0)
 {
     return(Array.ConvertAll(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)).Split(StringDelimiter), int.Parse));
 }
Exemple #15
0
 public static string DecryptString(this byte[] byteArray, int keyIndex = 0)
 {
     return(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex)));
 }
Exemple #16
0
 public static bool DecryptBool(this byte[] byteArray, int keyIndex = 0)
 {
     return(bool.Parse(QEncryption.DecryptBytes(byteArray, KeyHolder.GetKey(keyIndex), KeyHolder.GetIV(keyIndex))));
 }