示例#1
0
 void Send()
 {
     if (txbMessage.Text != string.Empty &&
         cmbIP.SelectedItem.ToString() != string.Empty &&
         cmbIP.SelectedItem.ToString() != "none")
     {
         string publicKey = ChoosePublicKey(cmbIP.SelectedItem.ToString());
         string cypher    = Convert.ToBase64String(RSA_Crypto.Encrypt(txbMessage.Text, publicKey));
         //client.Send(Serialize(client.LocalEndPoint.ToString() + "|" + cmbIP.SelectedItem.ToString() + "| " + txbMessage.Text));
         client.Send(Serialize(client.LocalEndPoint.ToString() + "|" + cmbIP.SelectedItem.ToString() + "| " + cypher));
     }
     SystemSounds.Beep.Play();
 }
示例#2
0
 void SendText()
 {
     if (txbMessage.Text != "")
     {
         string msg = txbMessage.Text;
         if (SelectedClient != null)
         {
             // mã hoá và kí lên bản băm của tin nhắn và gửi
             string publicKey = SelectedClient.PublicKey;
             string signature = Convert.ToBase64String(RSA_Crypto.SignatureGen(msg));
             string cypher    = Convert.ToBase64String(RSA_Crypto.Encrypt(msg, publicKey));
             clientSocket.Send(Serialize(clientSocket.LocalEndPoint.ToString() + "|" + SelectedClient.EndPoint + "|Text" + SelectedClient.MsgIndex + "|" + cypher + "|" + signature));
             // lưu lại tin nhắn đã gửi ở dạng đã băm
             MD5     md5       = MD5.Create();
             string  hashedMsg = Convert.ToBase64String(md5.ComputeHash(Encoding.UTF8.GetBytes(msg)));
             Message message   = new Message(SelectedClient.MsgIndex, hashedMsg);
             SelectedClient.SentMessages.Add(message);
         }
         // hiển thị tin nhắn
         DisplayText(txbMessage.Text, "send", SelectedClient.MsgIndex.ToString(), SelectedClient);
         // Chỉ số của tin nhắn của client tăng
         SelectedClient.MsgIndex++;
     }
 }
示例#3
0
 void Send()
 {
     if (txbMessage.Text != string.Empty &&
         cmbIP.SelectedItem.ToString() != string.Empty &&
         cmbIP.SelectedItem.ToString() != "none")
     {
         string publickey = "";
         for (int i = 0; i < index; i++)
         {
             if (cmbIP.SelectedItem.ToString() == IP_PK[i, 0])
             {
                 publickey = IP_PK[i, 1];
                 break;
             }
         }
         string cypher = Convert.ToBase64String(RSA_Crypto.Encrypt(txbMessage.Text, publickey));
         //client.Send(Serialize(client.LocalEndPoint.ToString() + "|" + cmbIP.SelectedItem.ToString() + "| " + txbMessage.Text));
         client.Send(Serialize(client.LocalEndPoint.ToString() + "|" + cmbIP.SelectedItem.ToString() + "| " + cypher));
     }
 }