public Msg(int sender, int receiver, int op, float delayTime, object value = null) { key = new MsgKey(sender, receiver, op); this.delayTime = delayTime; this.value = value; }
public override string ToString() { var sb = new StringBuilder(); sb.AppendFormat("AuthKeyId: {0}\n", AuthKeyId.ToString("X")); sb.AppendFormat("MsgKey: {0}\n", MsgKey.ToString(16)); sb.AppendLine("-- Data --"); sb.Append(Data); return(sb.ToString()); }
public override int GetHashCode() { int hash = 1; if (MsgKey.Length != 0) { hash ^= MsgKey.GetHashCode(); } if (ExtI != 0) { hash ^= ExtI.GetHashCode(); } return(hash); }
public byte[] Serialize() { using (var ms = new MemoryStream()) { using (var bw = new BinaryWriter(ms)) { bw.Write(AuthKeyId); bw.Write(MsgKey.GetBytes()); byte[] aesKey = CalculateAesKey(0, MsgKey.GetBytes()); byte[] aesIV = CalculateIV(0, MsgKey.GetBytes()); var aesIge = new Aes256IgeManaged(aesKey, aesIV); bw.Write(aesIge.Encrypt(Data.Serialize())); } return(ms.ToArray()); } }